lastbeatpulse + gears are the only thing left

i was GONNA add both the beat based and constant gear animations but it just doesn't work out the way i want it to.
OHHHH WELLLLL
im gonna use straight up transforms anyways so i wont have to deal with unity animation (🤢)
This commit is contained in:
AstrlJelly 2023-12-22 19:26:52 -05:00
parent 7df7bf3333
commit b3542dfe6b
24 changed files with 935 additions and 472 deletions

View file

@ -1097,7 +1097,7 @@ GameObject:
- component: {fileID: 1827108650296241172}
- component: {fileID: 8880821737167752546}
m_Layer: 0
m_Name: BigGear (1)
m_Name: Big
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -1334,12 +1334,13 @@ MonoBehaviour:
TackAnim: {fileID: 8591333713642157499}
CartGuyParentAnim: {fileID: 8490229799144356405}
CartGuyAnim: {fileID: 2660979752167028621}
GearAnims:
- {fileID: 2010620652897398612}
- {fileID: 8277077324340739918}
- {fileID: 8880821737167752546}
- {fileID: 8634187518571851645}
- {fileID: 1267443179515578174}
bossAnnoyed: 0
cartEase: 0
cartBeat: 1.7976931348623157e+308
cartLength: 0
cartPhone: 0
cartDir: Left
--- !u!1 &2707801222513399487
GameObject:
m_ObjectHideFlags: 0
@ -1551,7 +1552,7 @@ GameObject:
- component: {fileID: 5740312479299997546}
- component: {fileID: 1267443179515578174}
m_Layer: 0
m_Name: BigGear (2)
m_Name: Big
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -1943,7 +1944,7 @@ GameObject:
- component: {fileID: 4781199580935872767}
- component: {fileID: 8277077324340739918}
m_Layer: 0
m_Name: SmallGear
m_Name: Small
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -2026,7 +2027,7 @@ Animator:
m_GameObject: {fileID: 5027933940018834288}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: b87b8184496fe9142a8c9a18e55d8080, type: 2}
m_Controller: {fileID: 9100000, guid: d43b9052abbcc984bafbb1cc011790fa, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
@ -2514,7 +2515,7 @@ GameObject:
- component: {fileID: 9177278018785002683}
- component: {fileID: 2010620652897398612}
m_Layer: 0
m_Name: BigGear
m_Name: Big
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -3566,7 +3567,7 @@ GameObject:
- component: {fileID: 18350484223611572}
- component: {fileID: 8634187518571851645}
m_Layer: 0
m_Name: SmallGear (1)
m_Name: Small
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -3649,7 +3650,7 @@ Animator:
m_GameObject: {fileID: 9071785972026254626}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: b87b8184496fe9142a8c9a18e55d8080, type: 2}
m_Controller: {fileID: 9100000, guid: d43b9052abbcc984bafbb1cc011790fa, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0

View file

@ -1,72 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BigGear
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 3617536227087970772}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &3617536227087970772
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 4160949591975908043}
m_Position: {x: 200, y: 0, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 4160949591975908043}
--- !u!1102 &4160949591975908043
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BigGearSpin
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: d6bc79a705983974fb034422acb0a888, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:

View file

@ -108,7 +108,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0, y: 0, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -214,7 +214,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0, y: 0, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -320,7 +320,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0, y: 0, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -426,7 +426,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0, y: 0, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -532,7 +532,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0, y: 0, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -639,7 +639,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: -5.833, y: 1.142, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -745,7 +745,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: -7.031, y: 0.127, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -851,7 +851,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: -6.517, y: 0.964, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -957,7 +957,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: -6.121, y: -0.12, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -1063,7 +1063,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: -5.646, y: -0.97, z: 0}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -1170,7 +1170,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: {x: 0.76, y: 0.76, z: 0.76}
inSlope: {x: Infinity, y: Infinity, z: Infinity}
outSlope: {x: Infinity, y: Infinity, z: Infinity}
@ -1277,7 +1277,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 1
inSlope: Infinity
outSlope: Infinity
@ -1386,7 +1386,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 1
inSlope: Infinity
outSlope: Infinity
@ -1423,7 +1423,7 @@ AnimationClip:
value: {fileID: 8969925656131713453, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.23333333
value: {fileID: 8969925656131713453, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.28333333
- time: 0.25
value: {fileID: 8969925656131713453, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
attribute: m_Sprite
path: BossTorso
@ -1450,7 +1450,7 @@ AnimationClip:
value: {fileID: 3108801417681170918, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.23333333
value: {fileID: 3108801417681170918, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.28333333
- time: 0.25
value: {fileID: 3108801417681170918, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
attribute: m_Sprite
path: BossHead
@ -1477,7 +1477,7 @@ AnimationClip:
value: {fileID: -4011833703415356042, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.23333333
value: {fileID: -4011833703415356042, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.28333333
- time: 0.25
value: {fileID: -4011833703415356042, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
attribute: m_Sprite
path: BossLeftLeg
@ -1504,7 +1504,7 @@ AnimationClip:
value: {fileID: 3980019249115040852, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.23333333
value: {fileID: 3980019249115040852, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.28333333
- time: 0.25
value: {fileID: 3980019249115040852, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
attribute: m_Sprite
path: BossArmLeft
@ -1531,7 +1531,7 @@ AnimationClip:
value: {fileID: -5596940865122316592, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.23333333
value: {fileID: -5596940865122316592, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
- time: 0.28333333
- time: 0.25
value: {fileID: -5596940865122316592, guid: adbc5b443bdc23e469209cc4f602d17d, type: 3}
attribute: m_Sprite
path: BossArmRight
@ -1731,7 +1731,7 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.3
m_StopTime: 0.26666668
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
@ -1841,7 +1841,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -5.833
inSlope: Infinity
outSlope: Infinity
@ -1950,7 +1950,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 1.142
inSlope: Infinity
outSlope: Infinity
@ -2059,7 +2059,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -2168,7 +2168,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -7.031
inSlope: Infinity
outSlope: Infinity
@ -2277,7 +2277,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0.127
inSlope: Infinity
outSlope: Infinity
@ -2386,7 +2386,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -2495,7 +2495,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -6.517
inSlope: Infinity
outSlope: Infinity
@ -2604,7 +2604,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0.964
inSlope: Infinity
outSlope: Infinity
@ -2713,7 +2713,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -2822,7 +2822,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -6.121
inSlope: Infinity
outSlope: Infinity
@ -2931,7 +2931,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -0.12
inSlope: Infinity
outSlope: Infinity
@ -3040,7 +3040,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3149,7 +3149,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 1
inSlope: Infinity
outSlope: Infinity
@ -3258,7 +3258,7 @@ AnimationClip:
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 1
inSlope: Infinity
outSlope: Infinity
@ -3367,7 +3367,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3476,7 +3476,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3585,7 +3585,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3694,7 +3694,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3803,7 +3803,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -3912,7 +3912,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4021,7 +4021,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -5.646
inSlope: Infinity
outSlope: Infinity
@ -4130,7 +4130,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: -0.97
inSlope: Infinity
outSlope: Infinity
@ -4239,7 +4239,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4348,7 +4348,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4457,7 +4457,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4566,7 +4566,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4675,7 +4675,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4784,7 +4784,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -4893,7 +4893,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -5002,7 +5002,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -5111,7 +5111,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -5220,7 +5220,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0
inSlope: Infinity
outSlope: Infinity
@ -5329,7 +5329,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0.76
inSlope: Infinity
outSlope: Infinity
@ -5438,7 +5438,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0.76
inSlope: Infinity
outSlope: Infinity
@ -5547,7 +5547,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.28333333
time: 0.25
value: 0.76
inSlope: Infinity
outSlope: Infinity
@ -5563,6 +5563,36 @@ AnimationClip:
classID: 4
script: {fileID: 0}
m_EulerEditorCurves:
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
@ -5653,36 +5683,6 @@ AnimationClip:
path: BossLeftLeg
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path: BossArmLeft
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []

View file

@ -27,15 +27,6 @@ AnimationClip:
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -6.3372, y: 0.894, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -52,15 +43,6 @@ AnimationClip:
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -6.469, y: 0.191, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -77,15 +59,6 @@ AnimationClip:
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -6.236, y: 0.192, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -102,15 +75,6 @@ AnimationClip:
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1
value: {x: -6.3371997, y: -0.116000004, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -159,7 +123,7 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 1
m_StopTime: 0
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
@ -187,15 +151,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -6.3372
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -215,15 +170,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0.894
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -243,15 +189,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -271,15 +208,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -6.469
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -299,15 +227,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0.191
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -327,15 +246,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -355,15 +265,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -6.236
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -383,15 +284,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0.192
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -411,15 +303,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -439,15 +322,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -6.3371997
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -467,15 +341,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: -0.116000004
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@ -495,15 +360,6 @@ AnimationClip:
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4

View file

@ -51,7 +51,7 @@ AnimatorState:
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 64179a2f6cc6e964f93701d25bd3188a, type: 2}
m_Motion: {fileID: 0}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:

View file

@ -240,7 +240,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0

View file

@ -0,0 +1,188 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-8920334486490912098
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Nothing
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 0
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 0}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1123870091294334072
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SpinOnceLeft
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 57c0a28a4081b964ea124371021beca8, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-847127939457641848
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SpinForeverRight
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: fa6d5c0083cf542489ebce618b5beedd, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Gear
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 3617536227087970772}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &3617536227087970772
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 4160949591975908043}
m_Position: {x: 270, y: 120, z: 0}
- serializedVersion: 1
m_State: {fileID: -8920334486490912098}
m_Position: {x: 390, y: 50, z: 0}
- serializedVersion: 1
m_State: {fileID: -1123870091294334072}
m_Position: {x: 270, y: 180, z: 0}
- serializedVersion: 1
m_State: {fileID: -847127939457641848}
m_Position: {x: 490, y: 120, z: 0}
- serializedVersion: 1
m_State: {fileID: 6492152016022738986}
m_Position: {x: 490, y: 180, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 400, y: 250, z: 0}
m_EntryPosition: {x: 410, y: 0, z: 0}
m_ExitPosition: {x: 400, y: 300, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -8920334486490912098}
--- !u!1102 &4160949591975908043
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SpinForeverLeft
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: d6bc79a705983974fb034422acb0a888, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &6492152016022738986
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SpinOnceRight
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: ca8a58d2f9ad1154db8405076b90f1ed, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:

View file

@ -6,7 +6,7 @@ AnimationClip:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SmallGearSpin
m_Name: GearSpinLeft
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
@ -21,15 +21,15 @@ AnimationClip:
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: -199.3551}
outSlope: {x: 0, y: 0, z: -2160}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 1.7666667
value: {x: 0, y: 0, z: -352.194}
inSlope: {x: -0, y: -0, z: -199.3551}
time: 0.16666667
value: {x: 0, y: 0, z: -360}
inSlope: {x: -0, y: -0, z: -2160}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
@ -63,12 +63,12 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 1.7666667
m_StopTime: 0.16666667
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@ -92,7 +92,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1.7666667
time: 0.16666667
value: 0
inSlope: -0
outSlope: 0
@ -120,7 +120,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1.7666667
time: 0.16666667
value: 0
inSlope: -0
outSlope: 0
@ -142,15 +142,15 @@ AnimationClip:
time: 0
value: 0
inSlope: 0
outSlope: -199.3551
outSlope: -2160
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1.7666667
value: -352.194
inSlope: -199.3551
time: 0.16666667
value: -360
inSlope: -2160
outSlope: 0
tangentMode: 69
weightedMode: 0

View file

@ -0,0 +1,217 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: GearSpinOnceLeft
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 407.29788}
outSlope: {x: 0, y: 0, z: 407.29788}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.13572778}
- serializedVersion: 3
time: 0.25
value: {x: 0, y: 0, z: 45}
inSlope: {x: -0, y: -0, z: 4.5571914}
outSlope: {x: 0, y: 0, z: 4.5571914}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.05835396}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.5
value: {x: 0, y: 0, z: 45}
inSlope: {x: 0, y: 0, z: 4.5571914}
outSlope: {x: 0, y: 0, z: 4.5571914}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.05835396}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 4
script: {fileID: 0}
typeID: 4
customType: 4
isPPtrCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.5
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.25
value: 0
inSlope: -0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.25
value: 0
inSlope: -0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 407.29788
outSlope: 407.29788
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.13572778
- serializedVersion: 3
time: 0.25
value: 45
inSlope: 4.5571914
outSlope: 4.5571914
tangentMode: 0
weightedMode: 0
inWeight: 0.05835396
outWeight: 0.33333334
- serializedVersion: 3
time: 0.5
value: 45
inSlope: 4.5571914
outSlope: 4.5571914
tangentMode: 0
weightedMode: 0
inWeight: 0.05835396
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.z
path:
classID: 4
script: {fileID: 0}
m_EulerEditorCurves:
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path:
classID: 4
script: {fileID: 0}
m_HasGenericRootTransform: 1
m_HasMotionFloatCurves: 0
m_Events: []

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7b974dc48b7196f4893f580bdaa87168
guid: 57c0a28a4081b964ea124371021beca8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000

View file

@ -0,0 +1,217 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!74 &7400000
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: GearSpinOnceRight
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 407.29788}
outSlope: {x: 0, y: 0, z: 407.29788}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.13572778}
- serializedVersion: 3
time: 0.25
value: {x: 0, y: 0, z: 45}
inSlope: {x: -0, y: -0, z: 4.5571914}
outSlope: {x: 0, y: 0, z: 4.5571914}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.05835396}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 0.5
value: {x: 0, y: 0, z: 45}
inSlope: {x: 0, y: 0, z: 4.5571914}
outSlope: {x: 0, y: 0, z: 4.5571914}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.05835396}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 4
script: {fileID: 0}
typeID: 4
customType: 4
isPPtrCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.5
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.25
value: 0
inSlope: -0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 0.25
value: 0
inSlope: -0
outSlope: 0
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 407.29788
outSlope: 407.29788
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.13572778
- serializedVersion: 3
time: 0.25
value: 45
inSlope: 4.5571914
outSlope: 4.5571914
tangentMode: 0
weightedMode: 0
inWeight: 0.05835396
outWeight: 0.33333334
- serializedVersion: 3
time: 0.5
value: 45
inSlope: 4.5571914
outSlope: 4.5571914
tangentMode: 0
weightedMode: 0
inWeight: 0.05835396
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAnglesRaw.z
path:
classID: 4
script: {fileID: 0}
m_EulerEditorCurves:
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.x
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.y
path:
classID: 4
script: {fileID: 0}
- curve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalEulerAngles.z
path:
classID: 4
script: {fileID: 0}
m_HasGenericRootTransform: 1
m_HasMotionFloatCurves: 0
m_Events: []

View file

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: b87b8184496fe9142a8c9a18e55d8080
guid: ca8a58d2f9ad1154db8405076b90f1ed
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View file

@ -6,7 +6,7 @@ AnimationClip:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BigGearSpin
m_Name: GearSpinRight
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
@ -21,15 +21,15 @@ AnimationClip:
time: 0
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 105.54176}
outSlope: {x: 0, y: 0, z: 2160}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 3.4
value: {x: 0, y: 0, z: 358.842}
inSlope: {x: -0, y: -0, z: 105.54176}
time: 0.16666667
value: {x: 0, y: 0, z: 360}
inSlope: {x: -0, y: -0, z: 2160}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
@ -63,12 +63,12 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 3.4
m_StopTime: 0.16666667
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@ -92,7 +92,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 3.4
time: 0.16666667
value: 0
inSlope: -0
outSlope: 0
@ -120,7 +120,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 3.4
time: 0.16666667
value: 0
inSlope: -0
outSlope: 0
@ -142,15 +142,15 @@ AnimationClip:
time: 0
value: 0
inSlope: 0
outSlope: 105.54176
outSlope: 2160
tangentMode: 69
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 3.4
value: 358.842
inSlope: 105.54176
time: 0.16666667
value: 360
inSlope: 2160
outSlope: 0
tangentMode: 69
weightedMode: 0

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fa6d5c0083cf542489ebce618b5beedd
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View file

@ -6,7 +6,7 @@ AnimationClip:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BaconHit
m_Name: BaconBallHit
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
@ -306,7 +306,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0

View file

@ -112,7 +112,7 @@ AnimatorState:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BaconHit
m_Name: BaconBallHit
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []

View file

@ -1,72 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-8432484601972260939
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SmallGearSpin
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 7b974dc48b7196f4893f580bdaa87168, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SmallGear
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 1605590776658830461}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &1605590776658830461
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -8432484601972260939}
m_Position: {x: 200, y: 0, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -8432484601972260939}

View file

@ -580,6 +580,16 @@ namespace HeavenStudio
private void LateUpdate()
{
OverlaysManager.instance.TogleOverlaysVisibility(Editor.Editor.instance == null || Editor.Editor.instance.fullscreen || ((PersistentDataManager.gameSettings.overlaysInEditor) && (!Editor.Editor.instance.fullscreen)) || HeavenStudio.Editor.GameSettings.InPreview);
if (!Conductor.instance.isPlaying)
return;
if (Conductor.instance.songPositionInBeatsAsDouble >= Math.Ceiling(_playStartBeat) + _latePulseTally)
{
if (_currentMinigame != null) _currentMinigame.OnLateBeatPulse(Math.Ceiling(_playStartBeat) + _latePulseTally);
onBeatPulse?.Invoke(Math.Ceiling(_playStartBeat) + _latePulseTally);
_latePulseTally++;
}
}
public void ToggleInputs(bool inputs)
@ -591,6 +601,7 @@ namespace HeavenStudio
private double _playStartBeat = 0;
private int _pulseTally = 0;
private int _latePulseTally = 0;
public void Play(double beat, float delay = 0f)
{
@ -598,6 +609,7 @@ namespace HeavenStudio
Debug.Log("Playing at " + beat);
_playStartBeat = beat;
_pulseTally = 0;
_latePulseTally = 0;
canInput = true;
if (!paused)
{

View file

@ -3,7 +3,6 @@ using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Starpelly;
namespace HeavenStudio.Games.Scripts_MeatGrinder
{
@ -19,8 +18,8 @@ namespace HeavenStudio.Games.Scripts_MeatGrinder
[NonSerialized] public double startBeat;
[NonSerialized] public MeatType meatType;
[NonSerialized] public double reactionBeats;
[NonSerialized] public int reaction;
[NonSerialized] public MeatGrinder.Reaction tackReaction;
[NonSerialized] public MeatGrinder.Reaction bossReaction;
private bool isHit = false;
@ -32,6 +31,7 @@ namespace HeavenStudio.Games.Scripts_MeatGrinder
private SpriteRenderer sr;
[SerializeField] private Sprite[] meats;
public enum MeatType
{
DarkMeat,
@ -52,8 +52,6 @@ namespace HeavenStudio.Games.Scripts_MeatGrinder
private void Start()
{
sr.sprite = meats[(int)meatType];
Debug.Log(startBeat);
Debug.Log(reactionBeats);
game.ScheduleInput(startBeat, 1, MeatGrinder.InputAction_Press, Hit, Miss, Nothing);
}
@ -109,9 +107,18 @@ namespace HeavenStudio.Games.Scripts_MeatGrinder
SoundByte.PlayOneShotGame("meatGrinder/" + (isBarely ? "tink" : "meatHit"));
game.TackAnim.DoScaledAnimationAsync("TackHit" + (isBarely ? "Barely" : "Success"), 0.5f);
if (reaction > 0) {
// if (meatType == MeatType.BaconBall) {
// game.DoExpressions(0, (int)MeatGrinder.BossExpressions.Scared);
// }
if (tackReaction.expression > 0) {
BeatAction.New(game, new List<BeatAction.Action>() {
new(startBeat + reactionBeats + 1, delegate { game.DoExpressions(reaction); })
new(startBeat + tackReaction.beat + 1, delegate { game.DoExpressions(tackReaction.expression); }),
});
}
if (bossReaction.expression > 0) {
BeatAction.New(game, new List<BeatAction.Action>() {
new(startBeat + bossReaction.beat + 1, delegate { game.DoExpressions(0, bossReaction.expression); }),
});
}
}

View file

@ -3,6 +3,7 @@ using HeavenStudio.InputSystem;
using System;
using System.Collections.Generic;
using UnityEngine;
using System.Linq;
namespace HeavenStudio.Games.Loaders
{
@ -11,6 +12,17 @@ namespace HeavenStudio.Games.Loaders
{
public static Minigame AddGame(EventCaller eventCaller)
{
List<Param> reactionParams = new() {
new Param("tackReaction", MeatGrinder.TackExpressions.None, "Tack Reaction", "If this is hit, what expression should tack do?", new List<Param.CollapseParam>() {
new((x, y) => (int)x != (int)MeatGrinder.TackExpressions.None, new string[] { "tackReactionBeats" }),
}),
new Param("tackReactionBeats", new EntityTypes.Float(0.5f, 10, 1), "Tack React After", "The amount of beats to wait until tack reacts"),
new Param("bossReaction", MeatGrinder.BossExpressions.None, "Boss Reaction", "If this is hit, what expression should boss do?", new List<Param.CollapseParam>() {
new((x, y) => (int)x != (int)MeatGrinder.BossExpressions.None, new string[] { "bossReactionBeats" }),
}),
new Param("bossReactionBeats", new EntityTypes.Float(0, 10, 0), "Boss React After", "The amount of beats to wait until boss reacts"),
};
return new Minigame("meatGrinder", "Meat Grinder", "501d18", false, false, new List<GameAction>()
{
new GameAction("bop", "Bop")
@ -32,7 +44,7 @@ namespace HeavenStudio.Games.Loaders
function = delegate {
var e = eventCaller.currentEntity;
SoundByte.PlayOneShotGame("meatGrinder/toss", forcePlay: true);
MeatGrinder.instance.MeatToss(e.beat, e["bacon"], e["reaction"], e["reactionBeats"]);
MeatGrinder.instance.MeatToss(e.beat, e["bacon"], e["tackReaction"], e["tackReactionBeats"], e["bossReaction"], e["bossReactionBeats"]);
},
inactiveFunction = delegate {
SoundByte.PlayOneShotGame("meatGrinder/toss", forcePlay: true);
@ -43,11 +55,7 @@ namespace HeavenStudio.Games.Loaders
parameters = new List<Param>()
{
new Param("bacon", false, "Bacon Ball", "Throw a bacon ball instead of the typical meat"),
new Param("reaction", MeatGrinder.TackExpressions.None, "Tack Reaction", "If this is hit, what expression should tack do?", new List<Param.CollapseParam>() {
new((x, y) => (int)x != (int)MeatGrinder.TackExpressions.None, new string[] { "reactionBeats" }),
}),
new Param("reactionBeats", new EntityTypes.Float(0.5f, 10, 1), "React After", "The amount of beats to wait until reacting"),
},
}.Concat(reactionParams).ToList(), // doing this because i want these params to always be the same
},
new GameAction("StartInterval", "Start Interval")
{
@ -70,13 +78,7 @@ namespace HeavenStudio.Games.Loaders
defaultLength = 0.5f,
priority = 2,
preFunctionLength = 1f,
parameters = new List<Param>()
{
new Param("reaction", MeatGrinder.TackExpressions.None, "Tack Reaction", "If this is hit, what expression should tack do?", new List<Param.CollapseParam>() {
new((x, y) => (int)x != (int)MeatGrinder.TackExpressions.None, new string[] { "reactionBeats" }),
}),
new Param("reactionBeats", new EntityTypes.Float(0.5f, 10, 1), "React After", "The amount of beats to wait until reacting"),
},
parameters = reactionParams,
},
new GameAction("passTurn", "Pass Turn")
{
@ -105,7 +107,23 @@ namespace HeavenStudio.Games.Loaders
parameters = new List<Param>() {
new Param("spider", false, "On Phone", "Put a spider in the box?"),
new Param("direction", MeatGrinder.CartGuyDirection.Right, "Direction", "The direction the cart will be carted to."),
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "What ease will"),
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "What ease will the cart use?"),
}
},
new GameAction("gears", "Gears")
{
function = delegate {
var e = eventCaller.currentEntity;
MeatGrinder.instance.Gears(e.beat, e.length, e["ease"], e["type"], e["speed"]);
},
resizable = true,
defaultLength = 1,
parameters = new List<Param>() {
new Param("type", MeatGrinder.GearMode.Constant, "Ease", "What type of movement will the gears use?", new List<Param.CollapseParam>() {
new((x, y) => (int)x != (int)MeatGrinder.GearMode.None, new string[] { "ease" }),
}),
new Param("speed", new EntityTypes.Float(0, 10, 1), "Speed", "How fast will the gears go?"),
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "What ease will the gears speed up with?"),
}
},
}
@ -134,6 +152,23 @@ namespace HeavenStudio.Games
public bool autoPassTurn;
}
public struct UpdateEasing
{
public double beat;
public float length;
public Util.EasingFunction.Ease ease;
}
public struct Reaction
{
public int expression;
public double beat;
public Reaction(int expression, double beat) {
this.expression = expression;
this.beat = beat;
}
}
private static List<RiqEntity> queuedMeats = new();
[Header("Objects")]
@ -144,15 +179,19 @@ namespace HeavenStudio.Games
public Animator TackAnim;
[SerializeField] Animator CartGuyParentAnim;
[SerializeField] Animator CartGuyAnim;
[SerializeField] Animator[] GearAnims;
[Header("Variables")]
private bool bossBop = true;
public bool bossAnnoyed = false;
public Util.EasingFunction.Ease cartEase = Util.EasingFunction.Ease.Linear;
public double cartBeat = double.MaxValue;
public float cartLength = 0;
public bool cartPhone = false;
public string cartDir = "Left";
private UpdateEasing cartEase;
private bool cartPhone = false;
private string cartDir = "Left";
private UpdateEasing gearEase;
private GearMode gearType = GearMode.Constant;
private float oldGearSpeed = 1;
private float currentGearSpeed = 1;
private float newGearSpeed = 1;
private const string sfxName = "meatGrinder/";
public static MeatGrinder instance;
@ -178,6 +217,13 @@ namespace HeavenStudio.Games
Left,
}
public enum GearMode
{
None,
Constant,
Beat,
}
protected static bool IA_PadAny(out double dt)
{
return PlayerInput.GetPadDown(InputController.ActionsPad.East, out dt)
@ -204,7 +250,7 @@ namespace HeavenStudio.Games
{
TackAnim.DoScaledAnimationAsync("TackEmptyHit", 0.5f);
TackAnim.SetBool("tackMeated", false);
SoundByte.PlayOneShotGame(sfxName + "whiff");
SoundByte.PlayOneShotGame("meatGrinder/whiff");
bossAnnoyed = false;
}
@ -219,30 +265,60 @@ namespace HeavenStudio.Games
passedTurns.Clear();
}
CartGuyParentAnim.gameObject.SetActive(cartLength != 0);
if (gearEase.length != 0)
{
float normalizedBeat = Conductor.instance.GetPositionFromBeat(gearEase.beat, gearEase.length);
Util.EasingFunction.Function func = Util.EasingFunction.GetEasingFunction(gearEase.ease);
currentGearSpeed = func(oldGearSpeed, newGearSpeed, normalizedBeat);
Debug.Log(currentGearSpeed);
if (normalizedBeat >= 1) cartEase.length = 0;
}
if (cartLength != 0)
if (cartEase.length != 0)
{
// CartGuyParentAnim.gameObject.SetActive(true);
if (cartPhone) CartGuyAnim.Play("Phone", 0, 0);
float normalizedBeat = Conductor.instance.GetPositionFromBeat(cartBeat, cartLength);
Util.EasingFunction.Function func = Util.EasingFunction.GetEasingFunction(cartEase);
float normalizedBeat = Conductor.instance.GetPositionFromBeat(cartEase.beat, cartEase.length);
Util.EasingFunction.Function func = Util.EasingFunction.GetEasingFunction(cartEase.ease);
float newPos = func(0f, 1f, normalizedBeat);
CartGuyParentAnim.DoNormalizedAnimation($"Move{cartDir}", newPos);
if (normalizedBeat >= 1) cartLength = 0;
if (normalizedBeat >= 1) cartEase.length = 0;
}
CartGuyParentAnim.gameObject.SetActive(cartEase.length != 0);
if (gearType != GearMode.Beat) {
UpdateGears();
}
}
public override void OnBeatPulse(double beat)
public override void OnLateBeatPulse(double beat)
{
if (!BossAnim.IsPlayingAnimationNames("BossCall", "BossSignal") && BeatIsInBopRegion(beat))
if (!BossAnim.IsPlayingAnimationNames("BossCall", "BossSignal", "BossScared") && BeatIsInBopRegion(beat))
{
BossAnim.DoScaledAnimationAsync(bossAnnoyed ? "BossMiss" : "Bop", 0.5f);
}
if (CartGuyParentAnim.gameObject.activeSelf)
{
if (CartGuyParentAnim.gameObject.activeSelf) {
Debug.Log(cartPhone ? "PhoneBop" : "Bop");
CartGuyAnim.DoScaledAnimationAsync(cartPhone ? "PhoneBop" : "Bop", 0.5f);
}
if (gearType == GearMode.Beat) {
UpdateGears();
}
}
private void UpdateGears()
{
Action<Animator> action = gearType switch {
GearMode.Constant => gear => gear.DoNormalizedAnimation(gear.gameObject.name == "Small" ? "SpinForeverLeft" : "SpinForeverRight", (Conductor.instance.songPositionInBeats / (10 * newGearSpeed)) % 1),
GearMode.Beat => gear => gear.DoScaledAnimationAsync(gear.gameObject.name == "Small" ? "SpinOnceLeft" : "SpinOnceRight", 0.5f),
_ => gear => gear.Play("Nothing", 0, 0), // GearMode.None
};
foreach (Animator gear in GearAnims) {
action.Invoke(gear);
}
}
public override void OnGameSwitch(double beat)
@ -254,7 +330,7 @@ namespace HeavenStudio.Games
}
if (queuedMeats.Count > 0)
{
foreach (var meat in queuedMeats) MeatToss(meat.beat, meat["bacon"], meat["reaction"], meat["reactionBeats"]);
foreach (var meat in queuedMeats) MeatToss(meat.beat, meat["bacon"], meat["tackReaction"], meat["tackReactionBeats"], meat["bossReaction"], meat["bossReactionBeats"]);
queuedMeats.Clear();
}
OnPlay(beat);
@ -306,16 +382,31 @@ namespace HeavenStudio.Games
public void CartGuy(double beat, float length, bool spider, int direction, int ease)
{
cartBeat = beat;
cartLength = length;
cartEase = new() {
beat = beat,
length = length,
ease = (Util.EasingFunction.Ease)ease,
};
cartPhone = spider;
cartDir = direction == 0 ? "Right" : "Left";
cartEase = (Util.EasingFunction.Ease)ease;
}
public void Gears(double beat, float length, int ease, int type, float speed)
{
gearEase = new() {
beat = beat,
length = length,
ease = (Util.EasingFunction.Ease)ease,
};
gearType = (GearMode)type;
oldGearSpeed = newGearSpeed;
newGearSpeed = speed;
}
public static void PreInterval(double beat, float length, bool autoPassTurn)
{
SoundByte.PlayOneShotGame(sfxName + "startSignal", beat - 1, forcePlay: true);
SoundByte.PlayOneShotGame("meatGrinder/startSignal", beat - 1, forcePlay: true);
if (GameManager.instance.currentGame == "meatGrinder")
{
@ -349,7 +440,7 @@ namespace HeavenStudio.Games
actions.Add(new BeatAction.Action(eventBeat, delegate
{
BossAnim.DoScaledAnimationAsync("BossCall", 0.5f);
SoundByte.PlayOneShotGame(sfxName + "signal");
SoundByte.PlayOneShotGame("meatGrinder/signal");
}));
}
}
@ -358,7 +449,7 @@ namespace HeavenStudio.Games
if (autoPassTurn)
{
PassTurn(beat + length, beat, length);
PassTurn(beat + length, beat, length, allCallEvents);
}
}
@ -367,14 +458,15 @@ namespace HeavenStudio.Games
queuedMeats.Add(entity);
}
public void MeatToss(double beat, bool bacon, int reaction, float reactionBeat)
public void MeatToss(double beat, bool bacon, int tackReaction, float tackReactionBeats, int bossReaction, float bossReactionBeats)
{
Meat meat = Instantiate(MeatBase, transform).GetComponent<Meat>();
meat.gameObject.SetActive(true);
meat.startBeat = beat;
meat.meatType = bacon ? Meat.MeatType.BaconBall : Meat.MeatType.DarkMeat;
meat.reactionBeats = reactionBeat;
meat.reaction = reaction;
meat.tackReaction = new Reaction(tackReaction, tackReactionBeats);
meat.bossReaction = new Reaction(bossReaction, bossReactionBeats);
// meat.reaction = reaction;
}
public static void PrePassTurn(double beat)
@ -397,24 +489,26 @@ namespace HeavenStudio.Games
if (lastInterval != null) PassTurn(beat, lastInterval.beat, lastInterval.length);
}
private void PassTurn(double beat, double intervalBeat, float intervalLength)
private void PassTurn(double beat, double intervalBeat, float intervalLength, List<RiqEntity> allCallEvents = null)
{
var allCallEvents = GetRelevantMeatCallsBetweenBeat(intervalBeat, intervalBeat + intervalLength);
allCallEvents.Sort((x, y) => x.beat.CompareTo(y.beat));
if (allCallEvents == null) {
allCallEvents = GetRelevantMeatCallsBetweenBeat(intervalBeat, intervalBeat + intervalLength);
allCallEvents.Sort((x, y) => x.beat.CompareTo(y.beat));
}
List<BeatAction.Action> meatCalls = new();
for (int i = 0; i < allCallEvents.Count; i++)
{
double relativeBeat = allCallEvents[i].beat - intervalBeat;
float reactionBeats = allCallEvents[i]["reactionBeats"];
int reaction = allCallEvents[i]["reaction"];
var tackReaction = new Reaction(allCallEvents[i]["tackReaction"], allCallEvents[i]["tackReactionBeats"]);
var bossReaction = new Reaction(allCallEvents[i]["bossReaction"], allCallEvents[i]["bossReactionBeats"]);
meatCalls.Add(new BeatAction.Action(beat + relativeBeat - 1, delegate
{
Meat meat = Instantiate(MeatBase, transform).GetComponent<Meat>();
meat.gameObject.SetActive(true);
meat.startBeat = beat + relativeBeat - 1;
meat.meatType = Meat.MeatType.LightMeat;
meat.reactionBeats = reactionBeats;
meat.reaction = reaction;
meat.tackReaction = tackReaction;
meat.bossReaction = bossReaction;
}));
}
BeatAction.New(this, meatCalls);

View file

@ -419,6 +419,13 @@ namespace HeavenStudio.Games
}
// added because OnBeatPulse had some animation issues going on
// if your bopping overlaps with other animations, use this instead
public virtual void OnLateBeatPulse(double beat)
{
}
public static MultiSound PlaySoundSequence(string game, string name, double startBeat, params SoundSequence.SequenceParams[] args)
{
Minigames.Minigame gameInfo = GameManager.instance.GetGameInfo(game);