From ff6bce28067acc9f36d23dc67aaf7d4a8d93a9e0 Mon Sep 17 00:00:00 2001 From: Starpelly Date: Sun, 26 Dec 2021 23:48:39 -0500 Subject: [PATCH] Fixed AudioSource.time bug, check Conductor.cs for comment. --- .../Spaceball/Animations/Ball/Ball.controller | 2 +- .../Spaceball/Animations/Player.controller | 2 +- .../Sprites/Games/Spaceball/alien.png | Bin 0 -> 25346 bytes .../Sprites/Games/Spaceball/alien.png.meta | 96 +++++++++ .../Sprites/Games/Spaceball/alien_shadow.png | Bin 0 -> 979 bytes .../Games/Spaceball/alien_shadow.png.meta | 96 +++++++++ Assets/Scenes/Game.unity | 194 +++++++++++++++++- Assets/Scripts/Conductor.cs | 9 +- Assets/Scripts/Conductor.cs.meta | 2 +- Assets/Scripts/EventCaller.cs.meta | 2 +- Assets/Scripts/GameManager.cs.meta | 2 +- Assets/Scripts/Games/ClappyTrio/ClappyTrio.cs | 8 +- .../Scripts/Games/Spaceball/SpaceballBall.cs | 11 +- .../Games/Spaceball/SpaceballPlayer.cs | 7 + Assets/Scripts/WTF.cs | 5 +- Assets/spaceball.json | 2 +- 16 files changed, 413 insertions(+), 25 deletions(-) create mode 100644 Assets/Resources/Sprites/Games/Spaceball/alien.png create mode 100644 Assets/Resources/Sprites/Games/Spaceball/alien.png.meta create mode 100644 Assets/Resources/Sprites/Games/Spaceball/alien_shadow.png create mode 100644 Assets/Resources/Sprites/Games/Spaceball/alien_shadow.png.meta diff --git a/Assets/Resources/Sprites/Games/Spaceball/Animations/Ball/Ball.controller b/Assets/Resources/Sprites/Games/Spaceball/Animations/Ball/Ball.controller index 3b4299190..90f106ca4 100644 --- a/Assets/Resources/Sprites/Games/Spaceball/Animations/Ball/Ball.controller +++ b/Assets/Resources/Sprites/Games/Spaceball/Animations/Ball/Ball.controller @@ -72,7 +72,7 @@ AnimatorState: m_SpeedParameter: m_MirrorParameter: m_CycleOffsetParameter: - m_TimeParameter: + m_TimeParameter: time --- !u!1102 &6545529569560433763 AnimatorState: serializedVersion: 6 diff --git a/Assets/Resources/Sprites/Games/Spaceball/Animations/Player.controller b/Assets/Resources/Sprites/Games/Spaceball/Animations/Player.controller index dc46afbef..3cce060c3 100644 --- a/Assets/Resources/Sprites/Games/Spaceball/Animations/Player.controller +++ b/Assets/Resources/Sprites/Games/Spaceball/Animations/Player.controller @@ -14,7 +14,7 @@ AnimatorStateMachine: m_Position: {x: 200, y: 0, z: 0} - serializedVersion: 1 m_State: {fileID: 5229680916234562666} - m_Position: {x: 290, y: 70, z: 0} + m_Position: {x: 300, y: 150, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] diff --git a/Assets/Resources/Sprites/Games/Spaceball/alien.png b/Assets/Resources/Sprites/Games/Spaceball/alien.png new file mode 100644 index 0000000000000000000000000000000000000000..8f7e81f58bec7e8a312b08ac6e5b64c148139ac5 GIT binary patch literal 25346 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 y7-0=^2$yA(G-W z15!rs_bSw<4K6wFK+z?TE=tTYpjCDk+$tGDiqi?SCXD{hnw`*UyA3W0BU<#(pbOfC z=%?Ae`)+$0u(H=5- zch}7DbxWQP5C%Zh_%mtWmCwu^Wyt8=u+E|D3+|V208$2K9+QI(`EyoFfZGRm9rjUq zi3R2>NAv|Zv+*{AY#v+^Mu@yd=x#HCqoqtx{dvF2^ySVrK8_oMxDT~D|7Fv^{g%r2G8~a^xNf;BzbmJ)*KiUS> z3!jw;zbh^X`dd%R`0+f~p0`T1cePznzjN*Tj9b4>X6od1uB*StnZ4i_oHA*69_E31 zoom0~ME0uQ;-Gn+Yro)}t932Otl>U+oom0~MzcH!S{7czPK2TFYC*Ntf$JZpM_Y=} zG$G~Yp9|m3tNp4h^b*)vCDReftAqwsgB#6qoL-dGOr{oPoo1!b%H1|S-mgEtQCHYM zDqE1CHPKfeE;reC;}>v!_2ClHE9};}i5$_ZO+$k^iiMIeA_#6lE3e`nC%MD9t8EKr z>nqPo!Wfa4Ry?#qSse7Du8yDv3S!SY1Uf+V>*a|HGXV~jDz7-Nhv#u)Rpe*rZgH;VWs--G}F002ovPDHLkV1f%x B*`oje literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sprites/Games/Spaceball/alien_shadow.png.meta b/Assets/Resources/Sprites/Games/Spaceball/alien_shadow.png.meta new file mode 100644 index 000000000..029bf9ac1 --- /dev/null +++ b/Assets/Resources/Sprites/Games/Spaceball/alien_shadow.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 12fd4a4ff8d4a4349b7c74c8c290d35c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Game.unity b/Assets/Scenes/Game.unity index 87075fa00..49469622a 100644 --- a/Assets/Scenes/Game.unity +++ b/Assets/Scenes/Game.unity @@ -1371,7 +1371,7 @@ ParticleSystemRenderer: m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: -100 + m_SortingOrder: -300 m_RenderMode: 0 m_SortMode: 0 m_MinParticleSize: 0 @@ -7148,7 +7148,7 @@ MonoBehaviour: dspSongTime: 0 musicSource: {fileID: 0} firstBeatOffset: 0 - beatsPerLoop: 4 + beatsPerLoop: 2 completedLoops: 0 loopPositionInBeats: 0 loopPositionInAnalog: 0 @@ -7261,7 +7261,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &490794386 GameObject: @@ -11193,6 +11193,88 @@ Transform: m_Father: {fileID: 1144790344} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1351316437 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1351316438} + - component: {fileID: 1351316439} + m_Layer: 0 + m_Name: Square + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1351316438 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1351316437} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.0225, y: -0.2818, z: 0} + m_LocalScale: {x: 1.7749, y: 5.0237, z: 1} + m_Children: [] + m_Father: {fileID: 2018765196} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &1351316439 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1351316437} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: -200 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 0, g: 0, b: 0.45098042, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &1407723739 GameObject: m_ObjectHideFlags: 0 @@ -12890,6 +12972,101 @@ MonoBehaviour: OuterCircle: {fileID: 0} InnerCircle: {fileID: 0} Circle: {fileID: 0} +--- !u!1 &1776916804 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1776916807} + - component: {fileID: 1776916806} + - component: {fileID: 1776916805} + m_Layer: 0 + m_Name: Square + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1776916805 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1776916804} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 490e729f742a40644a3a2abd88fce1a3, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!212 &1776916806 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1776916804} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 2945 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 0, b: 0, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1776916807 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1776916804} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 3.3796077, y: 2.0854568, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 7 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1810132820 GameObject: m_ObjectHideFlags: 0 @@ -14041,7 +14218,8 @@ Transform: m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0.0023, y: 4.0373, z: 0} m_LocalScale: {x: 1.7275732, y: 1.7920761, z: 1.7214477} - m_Children: [] + m_Children: + - {fileID: 1351316438} m_Father: {fileID: 6433985} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -14209,7 +14387,7 @@ Transform: m_LocalScale: {x: 4000, y: 4000, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 3 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2072389417 MonoBehaviour: @@ -14357,15 +14535,15 @@ SpriteRenderer: m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 30 - m_Sprite: {fileID: 21300000, guid: 523719bd3643eea4e8b4e418b4571b7a, type: 3} + m_Sprite: {fileID: 21300000, guid: 7b1636bc53db72742b5cdfd9c94a8c44, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 0.3764706} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 - m_Size: {x: 12.8, y: 7.2} + m_Size: {x: 17.777779, y: 10} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 - m_WasSpriteAssigned: 0 + m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &2127056960 diff --git a/Assets/Scripts/Conductor.cs b/Assets/Scripts/Conductor.cs index 5b712afa3..f995e32c7 100644 --- a/Assets/Scripts/Conductor.cs +++ b/Assets/Scripts/Conductor.cs @@ -4,6 +4,8 @@ using UnityEngine; using Starpelly; +// I CANNOT STRESS THIS ENOUGH, SET "Project Settings/Audio/DSP Buffer Size" to "Best latency" or else AudioSource.time WILL NOT update every frame. + namespace RhythmHeavenMania { [RequireComponent(typeof(AudioSource))] @@ -71,7 +73,7 @@ namespace RhythmHeavenMania // musicSource.Play(); } - void Update() + public void Update() { // Conductor.instance.musicSource.pitch = Time.timeScale; @@ -99,9 +101,8 @@ namespace RhythmHeavenMania public float GetLoopPositionFromBeat(float startBeat, float length) { - float final = Starpelly.Mathp.Normalize(songPositionInBeats, startBeat, startBeat + length); - - return final; + float a = Mathp.Normalize(songPositionInBeats, startBeat, startBeat + length); + return a; } public void SetBpm(float bpm) diff --git a/Assets/Scripts/Conductor.cs.meta b/Assets/Scripts/Conductor.cs.meta index eeb956988..5cd9cca88 100644 --- a/Assets/Scripts/Conductor.cs.meta +++ b/Assets/Scripts/Conductor.cs.meta @@ -4,7 +4,7 @@ MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] - executionOrder: 50 + executionOrder: -20 icon: {instanceID: 0} userData: assetBundleName: diff --git a/Assets/Scripts/EventCaller.cs.meta b/Assets/Scripts/EventCaller.cs.meta index 140d2a563..40967c24e 100644 --- a/Assets/Scripts/EventCaller.cs.meta +++ b/Assets/Scripts/EventCaller.cs.meta @@ -4,7 +4,7 @@ MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] - executionOrder: 150 + executionOrder: -8 icon: {instanceID: 0} userData: assetBundleName: diff --git a/Assets/Scripts/GameManager.cs.meta b/Assets/Scripts/GameManager.cs.meta index f5da0c3f6..2ff6c7b17 100644 --- a/Assets/Scripts/GameManager.cs.meta +++ b/Assets/Scripts/GameManager.cs.meta @@ -4,7 +4,7 @@ MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] - executionOrder: 100 + executionOrder: -10 icon: {instanceID: 0} userData: assetBundleName: diff --git a/Assets/Scripts/Games/ClappyTrio/ClappyTrio.cs b/Assets/Scripts/Games/ClappyTrio/ClappyTrio.cs index c37ff448f..9425d512d 100644 --- a/Assets/Scripts/Games/ClappyTrio/ClappyTrio.cs +++ b/Assets/Scripts/Games/ClappyTrio/ClappyTrio.cs @@ -112,7 +112,13 @@ namespace RhythmHeavenMania.Games.ClappyTrio { SetFace(i, 4); Lion[i].GetComponent().Play("Clap", 0, 0); - Jukebox.PlayOneShotGame("clappyTrio/leftClap"); + + // lazy fix rn + if (i > 0) + Jukebox.PlayOneShotGame("clappyTrio/middleClap"); + else + Jukebox.PlayOneShotGame("clappyTrio/leftClap"); + clapIndex++; } break; diff --git a/Assets/Scripts/Games/Spaceball/SpaceballBall.cs b/Assets/Scripts/Games/Spaceball/SpaceballBall.cs index b7a27e76b..605d9e6bd 100644 --- a/Assets/Scripts/Games/Spaceball/SpaceballBall.cs +++ b/Assets/Scripts/Games/Spaceball/SpaceballBall.cs @@ -32,12 +32,17 @@ namespace RhythmHeavenMania.Games.Spaceball float beatLength = 1f; if (high) beatLength = 2f; - float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(startBeat, beatLength + 0.2f); + float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(startBeat, beatLength + 0.15f); + print(normalizedBeatAnim + " " + Time.frameCount); - if (high) + if (high) + { anim.Play("BallHigh", 0, normalizedBeatAnim); - else + } + else + { anim.Play("BallLow", 0, normalizedBeatAnim); + } anim.speed = 0; diff --git a/Assets/Scripts/Games/Spaceball/SpaceballPlayer.cs b/Assets/Scripts/Games/Spaceball/SpaceballPlayer.cs index 3a6e64f99..e6b82720d 100644 --- a/Assets/Scripts/Games/Spaceball/SpaceballPlayer.cs +++ b/Assets/Scripts/Games/Spaceball/SpaceballPlayer.cs @@ -37,6 +37,7 @@ namespace RhythmHeavenMania.Games.Spaceball anim = GetComponent(); } + int bruh; private void Update() { if (EligibleHits.Count == 0) @@ -46,6 +47,12 @@ namespace RhythmHeavenMania.Games.Spaceball { Swing(); } + + if (Conductor.instance.songPositionInBeats >= 5f && bruh == 0) + { + Swing(); + bruh++; + } } public void SetCostume(int costume) diff --git a/Assets/Scripts/WTF.cs b/Assets/Scripts/WTF.cs index 71323c038..aa2a7a6a4 100644 --- a/Assets/Scripts/WTF.cs +++ b/Assets/Scripts/WTF.cs @@ -6,9 +6,8 @@ namespace RhythmHeavenMania.Tests { public class WTF : MonoBehaviour { - // Start is called before the first frame update - void Start() + private void FixedUpdate() { } - } + } } \ No newline at end of file diff --git a/Assets/spaceball.json b/Assets/spaceball.json index 7d9c1783b..8a4ce2621 100644 --- a/Assets/spaceball.json +++ b/Assets/spaceball.json @@ -4,7 +4,7 @@ { "beat": 0, "length": 0, - "valA": 170, + "valA": 20, "datamodel": "spaceball/cameraZoom" }, {