Sumo Brothers Bug Fixes + More Customizability (#878)

* Bug Fixes + Recolorable BG

Fixed various bugs involving cueing in a Slap/Stomp from another game.
Also added a fully recolorable background using stolen code that I borrowed from Clap Trap.

* Force Slap / Stomp Event

Added a new event that allows you to play a slap/stomp input at any time with a bunch of customizability.
Changed the "Alternate Background" toggle for the Finishing Pose to persist across game switches.

* aisonaopisnfbe

kil da cod
This commit is contained in:
RaffyTaffy14 2024-04-18 23:11:36 -04:00 committed by GitHub
parent b3eec32450
commit 06afb421f4
11 changed files with 1356 additions and 43 deletions

View file

@ -2085,7 +2085,7 @@ Animator:
m_GameObject: {fileID: 1666934271208509736}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: 26474835033c1a249b43ae85decf69ee, type: 2}
m_Controller: {fileID: 9100000, guid: d416ee03178524347bbb32e8c927dcae, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
@ -2483,6 +2483,9 @@ MonoBehaviour:
dust: {fileID: 0}
bgMove: {fileID: 907213061987012567}
bgStatic: {fileID: 8786252013339787948}
backgroundMaterial: {fileID: 2100000, guid: bfba1d80bcdd5cb4895bdfd74075769a, type: 2}
bgTop: {fileID: 953444361880115960}
bgBtm: {fileID: 7755206070316719315}
camera: {fileID: 7621216590368296269}
cameraX: 0
cameraXNew: 0
@ -3692,7 +3695,7 @@ SpriteRenderer:
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 2100000, guid: bfba1d80bcdd5cb4895bdfd74075769a, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
@ -3713,7 +3716,7 @@ SpriteRenderer:
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: -1000
m_Sprite: {fileID: -8551528264012278953, guid: 3eeab378f5f7af04e9c1a69ca8659fd0, type: 3}
m_Sprite: {fileID: 1292925404, guid: 86723ca01743bb142b521de7fb5727ba, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
@ -9709,7 +9712,7 @@ SpriteRenderer:
m_Size: {x: 5.12, y: 5.12}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &4837859304220241771
@ -11262,7 +11265,7 @@ SpriteRenderer:
m_Size: {x: 8.53, y: 4.8}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &6081795588540371572
@ -11347,7 +11350,7 @@ SpriteRenderer:
m_Size: {x: 8.53, y: 4.8}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &6181681341935747238
@ -12813,7 +12816,7 @@ SpriteRenderer:
m_Size: {x: 5.12, y: 5.12}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &8505794553771142455
@ -13283,7 +13286,7 @@ Animator:
m_GameObject: {fileID: 8922138106869263797}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: 26474835033c1a249b43ae85decf69ee, type: 2}
m_Controller: {fileID: 9100000, guid: d416ee03178524347bbb32e8c927dcae, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
@ -13609,7 +13612,7 @@ SpriteRenderer:
m_Size: {x: 4, y: 4.8}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &9081158673666972172

View file

@ -0,0 +1,942 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-8578119605575064305
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPose2
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: 6e4fb351319c9d94c93109ab2e087dbf, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-7942997132695831298
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPose1
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: e850f43feb1e7de4b8e07a28b8fa835f, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-7089694039479477659
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGSlapLook
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: 95d88ef91c3aca74caff39b28877ec4d, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-6637465466633468288
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPoseBarely4
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: bad2bc56ea4e48344a5c802e72e2494c, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-5565582335196322166
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGIdle
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: 6cada228ea809e743bcb263d638dc5b6, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-5451048192466902402
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPSlapLookBarely
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: d4978cc4d1e523b4caf2583a5a38ec4f, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-3716559155378887396
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPStomp
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: 482a242a85152c14ab134e10ff9535e1, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-3120875493466564774
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGStomp
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: 37996f147092d1b4cbfeba483a204283, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2982427801763509652
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoUncanny
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: fc19856829334664e9f4677591d88aad, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-2850296303737637666
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: empty
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: f8950858171f3214685b0953ce3ce113, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1937867505249370705
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPoseAlt4
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: 7a9c71258543afd4cb45616f0c828d2a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1570453956463558445
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPose1
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: 2b0203d7efe99aa43b81ebf51ba3cb67, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1476988455725616844
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGSlap
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: aaad925ccf3b0af4794fa6bed8f394ff, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-804950379557689368
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPose4
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: 4801039ea5fefc7429d7cd229a5f8aff, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-576957074434953634
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPoseBarely1
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: 777f58b04eab23143b5317d79137420b, 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: SumoGHead
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 1273858468637306525}
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!1102 &309385593484491943
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPose3
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: aca3c00234cd02146ac6e00f0ede460c, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &326619440659893535
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPIdle
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: c9758592e464e2140bddc5469cf91bb5, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &426607300481352956
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPStompBarely
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: 8d4e5c48b1980474e872655524725f7a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &551963872462033676
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPose6
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: 2a11e1a5d87dc244fadf1415023b27a2, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &1273858468637306525
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: -5565582335196322166}
m_Position: {x: 200, y: 0, z: 0}
- serializedVersion: 1
m_State: {fileID: -1476988455725616844}
m_Position: {x: 200, y: 70, z: 0}
- serializedVersion: 1
m_State: {fileID: -7089694039479477659}
m_Position: {x: 235, y: 135, z: 0}
- serializedVersion: 1
m_State: {fileID: -3120875493466564774}
m_Position: {x: 270, y: 200, z: 0}
- serializedVersion: 1
m_State: {fileID: -7942997132695831298}
m_Position: {x: 305, y: 265, z: 0}
- serializedVersion: 1
m_State: {fileID: -8578119605575064305}
m_Position: {x: 340, y: 330, z: 0}
- serializedVersion: 1
m_State: {fileID: 309385593484491943}
m_Position: {x: 375, y: 395, z: 0}
- serializedVersion: 1
m_State: {fileID: 5815464172374806613}
m_Position: {x: 410, y: 460, z: 0}
- serializedVersion: 1
m_State: {fileID: -1937867505249370705}
m_Position: {x: 445, y: 525, z: 0}
- serializedVersion: 1
m_State: {fileID: 551963872462033676}
m_Position: {x: 480, y: 590, z: 0}
- serializedVersion: 1
m_State: {fileID: 326619440659893535}
m_Position: {x: 410, y: 0, z: 0}
- serializedVersion: 1
m_State: {fileID: 3361688674256580315}
m_Position: {x: 410, y: 70, z: 0}
- serializedVersion: 1
m_State: {fileID: 3159522662920833315}
m_Position: {x: 450, y: 130, z: 0}
- serializedVersion: 1
m_State: {fileID: -3716559155378887396}
m_Position: {x: 480, y: 200, z: 0}
- serializedVersion: 1
m_State: {fileID: -1570453956463558445}
m_Position: {x: 520, y: 260, z: 0}
- serializedVersion: 1
m_State: {fileID: 4716081782598219455}
m_Position: {x: 550, y: 330, z: 0}
- serializedVersion: 1
m_State: {fileID: 1813575129666017814}
m_Position: {x: 590, y: 390, z: 0}
- serializedVersion: 1
m_State: {fileID: -804950379557689368}
m_Position: {x: 620, y: 460, z: 0}
- serializedVersion: 1
m_State: {fileID: 4554366395989692658}
m_Position: {x: 690, y: 590, z: 0}
- serializedVersion: 1
m_State: {fileID: 8359105697788155265}
m_Position: {x: 620, y: 0, z: 0}
- serializedVersion: 1
m_State: {fileID: 6290254062210110090}
m_Position: {x: 620, y: 70, z: 0}
- serializedVersion: 1
m_State: {fileID: -5451048192466902402}
m_Position: {x: 660, y: 130, z: 0}
- serializedVersion: 1
m_State: {fileID: 426607300481352956}
m_Position: {x: 690, y: 200, z: 0}
- serializedVersion: 1
m_State: {fileID: -576957074434953634}
m_Position: {x: 730, y: 260, z: 0}
- serializedVersion: 1
m_State: {fileID: 5970325174021368749}
m_Position: {x: 760, y: 330, z: 0}
- serializedVersion: 1
m_State: {fileID: 4705007268577705860}
m_Position: {x: 800, y: 390, z: 0}
- serializedVersion: 1
m_State: {fileID: -6637465466633468288}
m_Position: {x: 830, y: 460, z: 0}
- serializedVersion: 1
m_State: {fileID: 6763750993478670928}
m_Position: {x: 900, y: 590, z: 0}
- serializedVersion: 1
m_State: {fileID: -2850296303737637666}
m_Position: {x: -10, y: -80, z: 0}
- serializedVersion: 1
m_State: {fileID: 4811533154975781555}
m_Position: {x: -150, y: 140, z: 0}
- serializedVersion: 1
m_State: {fileID: -2982427801763509652}
m_Position: {x: -150, y: 190, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 20, y: 0, z: 0}
m_EntryPosition: {x: 220, y: -80, z: 0}
m_ExitPosition: {x: 410, y: -80, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -2850296303737637666}
--- !u!1102 &1813575129666017814
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPose3
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: 4ba1af4a0531ad8439a11e437594af15, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &3159522662920833315
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPSlapLook
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: a13855789a01b1d46b335c6440159ff7, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &3361688674256580315
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPSlap
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: 24910a5b6d6e41149a9420b33c2acbcd, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4554366395989692658
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPose6
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: 29bcda1001245f64c9a53091cc77dd66, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4705007268577705860
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPoseBarely3
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: 6f48c865ca3c4064fb6953a3387f5590, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4716081782598219455
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPose2
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: 70c69034ab972fc4382c2d53546d117c, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4811533154975781555
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoNerd
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: 7f93dabbd928ba5439dfe14ea7cceb19, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &5815464172374806613
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoGPose4
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: 87c5939739127574aac0ad8412554d13, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &5970325174021368749
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPoseBarely2
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: 71eb6ee46ca1aba4bb75ca87bbaf74e3, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &6290254062210110090
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPSlapBarely
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: ef8e9556802a8ca49a559451339299d4, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &6763750993478670928
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPPoseBarely6
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: 601de7529a601574eb58066788c2dae4, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &8359105697788155265
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoPMiss
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: 17dd081bae3d12646a95e3cfd0221dbb, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d416ee03178524347bbb32e8c927dcae
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName: ctrsumou/common
assetBundleVariant:

View file

@ -396,7 +396,7 @@ AnimatorController:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: SumoHead
m_Name: SumoPHead
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:

View file

@ -0,0 +1,91 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: BGColor
m_Shader: {fileID: 4800000, guid: ff54fed5718ccc543808dec1f266d1c8, type: 3}
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _BumpScale: 1
- _ColorMask: 15
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _UVSec: 0
- _UseUIAlphaClip: 0
- _ZWrite: 1
m_Colors:
- _AddColor: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _ColorAlpha: {r: 1, g: 1, b: 0.007843138, a: 1}
- _ColorBravo: {r: 1, g: 1, b: 1, a: 1}
- _ColorDelta: {r: 1, g: 1, b: 0.4509804, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
m_BuildTextureStacks: []

View file

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

View file

@ -147,7 +147,7 @@ TextureImporter:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: background
name: backgroundold
rect:
serializedVersion: 2
x: 88
@ -512,7 +512,7 @@ TextureImporter:
width: 2048
height: 140
alignment: 0
pivot: {x: 0, y: 0}
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
@ -535,8 +535,8 @@ TextureImporter:
weights: []
secondaryTextures: []
nameFileIdTable:
background: -8551528264012278953
backgroundGlow: -2768974374605152282
backgroundold: -8551528264012278953
bgGreatWave: 1525428153
bgOtaniOniji: -1998133883
ground: 4054221790298107953

View file

@ -146,6 +146,27 @@ TextureImporter:
indices:
edges: []
weights: []
- serializedVersion: 2
name: background
rect:
serializedVersion: 2
x: 88
y: 80
width: 128
height: 1060
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 5db9ab8958cda124b81170cef5b71a7d
internalID: 1292925404
vertices: []
indices:
edges: []
weights: []
outline: []
physicsShape: []
bones: []
@ -157,6 +178,7 @@ TextureImporter:
weights: []
secondaryTextures: []
nameFileIdTable:
background: 1292925404
bgGreatWaveAlt: -777139864
bgOtaniOnijiAlt: 1714080886
spritePackingTag:

View file

@ -30,6 +30,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using DG.Tweening;
namespace HeavenStudio.Games.Loaders
{
@ -106,7 +107,7 @@ namespace HeavenStudio.Games.Loaders
new Param.CollapseParam((x, _) => (int)x == (int)SumoBrothers.PoseType.Finale, new string[] { "throw" })
}),
new Param("throw", true, "Throw Glasses", "If the Blue Sumo Brother will throw his glasses on a successful input."),
new Param("alternate", true, "Alternate Background", "Alternates between which of the backgrounds appear on a successful input.", new List<Param.CollapseParam>()
new Param("alternate", true, "Alternate Background", "Alternates between which of the backgrounds appear on a successful input. Persists between game switches.", new List<Param.CollapseParam>()
{
new Param.CollapseParam((x, _) => !(bool)x, new string[] { "bg" })
}),
@ -117,6 +118,22 @@ namespace HeavenStudio.Games.Loaders
priority = 2
},
new GameAction("background color", "Background Appearance")
{
function = delegate { var e = eventCaller.currentEntity; SumoBrothers.instance.BackgroundColor(e.beat, e.length, e["colorFrom"], e["colorTo"], e["colorFrom2"], e["colorTo2"], e["ease"]); },
defaultLength = 0.5f,
resizable = true,
parameters = new List<Param>()
{
new Param("colorFrom", SumoBrothers.defaultBgTopColor, "Color A Start", "Set the top-most color of the background gradient at the start of the event."),
new Param("colorTo", SumoBrothers.defaultBgTopColor, "Color A End", "Set the top-most color of the background gradient at the end of the event."),
new Param("colorFrom2", SumoBrothers.defaultBgBtmColor, "Color B Start", "Set the bottom-most color of the background gradient at the start of the event."),
new Param("colorTo2", SumoBrothers.defaultBgBtmColor, "Color B End", "Set the bottom-most color of the background gradient at the end of the event."),
new Param("ease", Util.EasingFunction.Ease.Linear, "Ease", "Set the easing of the action.")
},
},
new GameAction("look", "Look at Camera")
{
function = delegate { var e = eventCaller.currentEntity; SumoBrothers.instance.LookAtCamera(e.beat, e.length); },
@ -128,10 +145,42 @@ namespace HeavenStudio.Games.Loaders
resizable = true
},
new GameAction("forceinput", "Force Slapping / Stomping")
{
preFunction = delegate { var e = eventCaller.currentEntity; SumoBrothers.instance.ForceInputs(e.beat, e.length, e["type"], e["direction"], e["center"], e["switch"], e["prepare"]); },
parameters = new List<Param>()
{
new Param("type", SumoBrothers.ForceInputType.Slap, "Input Type", "Will the Sumo Brothers Slap or Stomp?", new List<Param.CollapseParam>()
{
new Param.CollapseParam((x, _) => (int)x == (int)SumoBrothers.ForceInputType.Slap, new string[] { "switch" }),
new Param.CollapseParam((x, _) => (int)x == (int)SumoBrothers.ForceInputType.Stomp, new string[] { "direction", "center" })
}),
new Param("direction", SumoBrothers.StompDirection.Automatic, "Stomp Direction", "Which direction the Sumo Brothers will begin stomping in."),
new Param("center", false, "Center Stomp", "The Sumo Brothers' first stomp will be toward the middle before resuming the direction selected above. Has no ready animation."),
new Param("switch", false, "Transition to Stomp", "The Sumo Brothers will play an alternate slap animation to signify transitioning into a stomp for the last slap."),
new Param("prepare", true, "Prepare Animation", "If the Sumo Brothers shall play the starting prepare animation."),
},
new List<string>() { "ctr", "keep" },
defaultLength = 1f,
resizable = true,
preFunctionLength = 1,
},
/*new GameAction("inusoundslol", "Inu Sounds (Only here because I can't build the damn asset bundles without everything breaking)")
{
function = delegate { var e = eventCaller.currentEntity; SumoBrothers.instance.InuSoundsLol(e.beat, e["type"]); },
parameters = new List<Param>()
{
new Param("type", new EntityTypes.Integer(0, 1, 0), "sound", "i am so desperate to get my showcase thingy out lol."),
},
defaultLength = 1.69f,
},*/
},
// Sumo asset bundles are really bugged for some reason, having almost all the head animations break
//new List<string>() { "ctr", "keep" },
//"ctrsumou", "en",
//new List<string>() { },
new List<string>() { },
chronologicalSortKey: 31
);
}
@ -143,6 +192,26 @@ namespace HeavenStudio.Games
// using Scripts_SumoBrothers;
public class SumoBrothers : Minigame
{
private static Color _defaultBgTopColor;
public static Color defaultBgTopColor
{
get
{
ColorUtility.TryParseHtmlString("#FFFF02", out _defaultBgTopColor);
return _defaultBgTopColor;
}
}
private static Color _defaultBgBtmColor;
public static Color defaultBgBtmColor
{
get
{
ColorUtility.TryParseHtmlString("#FFFF73", out _defaultBgBtmColor);
return _defaultBgBtmColor;
}
}
[Header("Animators")]
[SerializeField] Animator inuSensei;
[SerializeField] Animator sumoBrotherP;
@ -155,6 +224,26 @@ namespace HeavenStudio.Games
[SerializeField] Animator bgMove;
[SerializeField] Animator bgStatic;
[Header("Background Colors")]
public Material backgroundMaterial;
public SpriteRenderer bgTop;
public SpriteRenderer bgBtm;
// copypasted my stolen code from clap trap lmao
// i stole these from rhythm tweezers lol
private double colorStartBeat = -1;
private float colorLength = 0f;
private Color colorTopStart; //obviously put to the default color of the game
private Color colorBtmStart;
private Color colorTopEnd;
private Color colorBtmEnd;
private Util.EasingFunction.Ease colorEase; //putting Util in case this game is using jukebox
Tween bgColorTween;
private SpriteRenderer backgroundTopColor;
private SpriteRenderer backgroundBtmColor;
[Header("Properties")]
/*static List<queuedSumoInputs> queuedInputs = new List<queuedSumoInputs>();
public struct queuedSumoInputs
@ -222,7 +311,7 @@ namespace HeavenStudio.Games
}
private BGType bgType = BGType.None;
private BGType bgTypeNext = BGType.None;
static public BGType bgTypeNext = BGType.None;
public enum StompDirection
{
@ -231,6 +320,14 @@ namespace HeavenStudio.Games
Right = 2,
}
public enum ForceInputType
{
Stomp = 0,
Slap = 1,
//Pose? lolololololol
}
private enum SumoState
{
Idle,
@ -278,7 +375,17 @@ namespace HeavenStudio.Games
var beat = Conductor.instance.songPositionInBeatsAsDouble;
backgroundMaterial.SetColor("_ColorAlpha", defaultBgTopColor);
backgroundMaterial.SetColor("_ColorDelta", defaultBgBtmColor);
bgTop.color = defaultBgTopColor;
bgBtm.color = defaultBgBtmColor;
colorTopStart = defaultBgTopColor;
colorTopEnd = defaultBgTopColor;
colorBtmStart = defaultBgBtmColor;
colorBtmEnd = defaultBgBtmColor;
}
void OnDestroy()
@ -330,10 +437,13 @@ namespace HeavenStudio.Games
}
StompShake();
BackgroundColorUpdate();
}
public override void OnGameSwitch(double beat) // stole code from manzai
{
FindNextGameswitchBeat(beat);
foreach(var entity in GameManager.instance.Beatmap.Entities)
{
if(entity.beat > beat) //the list is sorted based on the beat of the entity, so this should work fine.
@ -345,15 +455,14 @@ namespace HeavenStudio.Games
continue;
}
bool isOnGameSwitchBeat = entity.beat == beat;
if(entity.datamodel == "sumoBrothers/stompSignal") {StompSignal(entity.beat, true, true, entity["look"], entity["StompDirection"]);}
if(entity.datamodel == "sumoBrothers/stompSignal") {StompSignal(entity.beat, true, true, entity["look"], entity["direction"]);}
if(entity.datamodel == "sumoBrothers/slapSignal") {SlapSignal(entity.beat, true, true);}
}
FindNextGameswitchBeat(beat);
}
public override void OnPlay(double beat)
{
bgTypeNext = BGType.None;
FindNextGameswitchBeat(beat);
}
@ -485,6 +594,7 @@ namespace HeavenStudio.Games
int stompType = 1;
bool startingLeftAfterTransition = false;
bool prepareAnimation = true;
if (startingDirection == 1)
{
@ -498,11 +608,14 @@ namespace HeavenStudio.Games
if (sumoStatePrevious == SumoState.Slap) {
stompType = 3;
prepareAnimation = false;
} else if (sumoStatePrevious == SumoState.Pose) {
stompType = 4;
prepareAnimation = false;
}
StompRecursive(beat + 3, 1, stompType, startingLeftAfterTransition);
StompRecursive(beat + 3, 1, stompType, startingLeftAfterTransition, false, prepareAnimation);
}
@ -515,15 +628,25 @@ namespace HeavenStudio.Games
}, forcePlay: true);
}
private void StompRecursive(double beat, double remaining, int type, bool startingLeftAfterTransition)
private void StompRecursive(double beat, double remaining, int type, bool startingLeftAfterTransition, bool autoDecreaseRemaining, bool prepareAnimation)
{
if (sumoState != SumoState.Stomp) { remaining -= 1; }
if (sumoState != SumoState.Stomp || autoDecreaseRemaining) { remaining -= 1; }
if (beat >= nextGameswitchBeat - 1) { remaining = 0; }
if (remaining <= 0) { return; }
if (type == 3) { // Stomp Animation - Transition from Slapping to Stomping
if (prepareAnimation)
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoBrotherP.DoScaledAnimationAsync("SumoStompPrepareL", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoStompPrepareL", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherPHead.DoScaledAnimationAsync("SumoPStomp", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGStomp", 0.5f); }),
});
}
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStompDir = true; }),
@ -550,38 +673,53 @@ namespace HeavenStudio.Games
new BeatAction.Action(beat + 1, delegate { if (sumoState == SumoState.Stomp && !inuSensei.IsPlayingAnimationNames("InuFloatMiss")) {inuSensei.DoScaledAnimationAsync("InuFloat", 0.5f);} })
});
} else if (type == 1) { // Stomp Animation - Left Stomp
if (prepareAnimation)
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStatePrevious = SumoState.Stomp; }),
new BeatAction.Action(beat, delegate { sumoStompDir = true; }),
new BeatAction.Action(beat, delegate { sumoBrotherP.DoScaledAnimationAsync("SumoStompPrepareL", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoStompPrepareR", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherPHead.DoScaledAnimationAsync("SumoPStomp", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGStomp", 0.5f); }),
});
}
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStatePrevious = SumoState.Stomp; }),
new BeatAction.Action(beat, delegate { sumoStompDir = true; }),
new BeatAction.Action(beat + 1, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGStomp", 0.5f); }),
new BeatAction.Action(beat + 1, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoStompR", 0.5f); }),
new BeatAction.Action(beat + 1, delegate { if (sumoState == SumoState.Stomp && !inuSensei.IsPlayingAnimationNames("InuFloatMiss")) {inuSensei.DoScaledAnimationAsync("InuFloat", 0.5f);} })
});
} else if (type == 2) { // Stomp Animation - Right Stomp
if (prepareAnimation)
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStatePrevious = SumoState.Stomp; }),
new BeatAction.Action(beat, delegate { sumoStompDir = false; }),
new BeatAction.Action(beat, delegate { sumoBrotherP.DoScaledAnimationAsync("SumoStompPrepareR", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoStompPrepareL", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherPHead.DoScaledAnimationAsync("SumoPStomp", 0.5f); }),
new BeatAction.Action(beat, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGStomp", 0.5f); }),
});
}
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStatePrevious = SumoState.Stomp; }),
new BeatAction.Action(beat, delegate { sumoStompDir = false; }),
new BeatAction.Action(beat + 1, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGStomp", 0.5f); }),
new BeatAction.Action(beat + 1, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoStompL", 0.5f); }),
new BeatAction.Action(beat + 1, delegate { if (sumoState == SumoState.Stomp && !inuSensei.IsPlayingAnimationNames("InuFloatMiss")) {inuSensei.DoScaledAnimationAsync("InuFloat", 0.5f);} })
});
}
if (type == 2 || startingLeftAfterTransition == true) {type = 1;} else { type = 2; }
if (type == 2) {type = 1;} else { type = 2; }
if (startingLeftAfterTransition && type == 3) {type = 1;}
var stompInput = ScheduleInput(beat , 1, InputAction_BasicPress, StompHit, StompMiss, Nothing);
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { StompRecursive(beat + 2, remaining, type, false); })
new BeatAction.Action(beat, delegate { StompRecursive(beat + 2, remaining, type, false, autoDecreaseRemaining, true); })
});
stompInput.IsHittable = () => {
@ -638,7 +776,7 @@ namespace HeavenStudio.Games
sumoStatePrevious = sumoState;
sumoState = SumoState.Slap;
SlapRecursive(beat + 4, 4);
SlapRecursive(beat + 4, 4, false, false);
BeatAction.New(instance, new List<BeatAction.Action>()
{
@ -658,25 +796,28 @@ namespace HeavenStudio.Games
}, forcePlay: true);
}
private void SlapRecursive(double beat, double remaining)
private void SlapRecursive(double beat, double remaining, bool autoDecreaseRemaining, bool slapSwitch)
{
if (sumoState != SumoState.Slap) {remaining -= 1; }
if (sumoState != SumoState.Slap || autoDecreaseRemaining) {remaining -= 1; }
if (remaining <= 0) { return; }
if (remaining == 1 && sumoState == SumoState.Stomp) {
if (remaining <= 1) {
if (sumoState == SumoState.Stomp || slapSwitch)
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat - 0.5, delegate { sumoSlapDir = 2; })
});
}
}
ScheduleInput(beat - 1, 1, InputAction_BasicPress, SlapHit, SlapMiss, Nothing);
if (beat >= nextGameswitchBeat - 1) { remaining = 0; }
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { SlapRecursive(beat + 1, remaining); })
new BeatAction.Action(beat, delegate { SlapRecursive(beat + 1, remaining, autoDecreaseRemaining, slapSwitch); })
});
@ -1067,6 +1208,101 @@ namespace HeavenStudio.Games
camera.position = new Vector3(newPosX, 0, 0);
//print("cX: " + cameraX + " cXN: " + cameraXNew + "nPX: " + newPosX + "sSL: " + stompShakeLength);
//print("cX: " + cameraX + " cXN: " + cameraXNew + " jSB: " + justStompBeat + " sST: " + stompShakeTimings + " sSV: " + stompShakeValues);
} else {
camera.position = new Vector3(0, 0, 0);
}
}
public void BackgroundColor(double beat, float length, Color startTop, Color endTop, Color startBtm, Color endBtm, int ease)
{
colorStartBeat = beat;
colorLength = length;
colorTopStart = startTop;
colorTopEnd = endTop;
colorBtmStart = startBtm;
colorBtmEnd = endBtm;
colorEase = (Util.EasingFunction.Ease)ease;
}
// more stolen code that i took from clap trap lmao
private void BackgroundColorUpdate() // stolen from tweezers too lol
{
float normalizedBeat = Mathf.Clamp01(Conductor.instance.GetPositionFromBeat(colorStartBeat, colorLength));
var func = Util.EasingFunction.GetEasingFunction(colorEase);
float newRT = func(colorTopStart.r, colorTopEnd.r, normalizedBeat);
float newGT = func(colorTopStart.g, colorTopEnd.g, normalizedBeat);
float newBT = func(colorTopStart.b, colorTopEnd.b, normalizedBeat);
float newRB = func(colorBtmStart.r, colorBtmEnd.r, normalizedBeat);
float newGB = func(colorBtmStart.g, colorBtmEnd.g, normalizedBeat);
float newBB = func(colorBtmStart.b, colorBtmEnd.b, normalizedBeat);
bgTop.color = new Color(newRT, newGT, newBT);
bgBtm.color = new Color(newRB, newGB, newBB);
backgroundMaterial.SetColor("_ColorAlpha", new Color(newRT, newGT, newBT));
backgroundMaterial.SetColor("_ColorDelta", new Color(newRB, newGB, newBB));
}
public void ForceInputs(double beat, float length, int forceInputType, int startingDirection, bool startCenter, bool slapSwitch, bool prepareAnimation)
{
if (forceInputType == 0)
{
int stompType = 1;
bool startingLeftAfterTransition = false;
if (startingDirection == 1)
{
startingLeftAfterTransition = true;
}
if (startingDirection == 2)
{
stompType = 2;
}
if (startCenter)
{
stompType = 3;
}
var stompAmount = (length + 1) / 2;
StompRecursive(beat - 1, stompAmount + 1, stompType, startingLeftAfterTransition, true, prepareAnimation);
} else if (forceInputType == 1) {
var slapAmount = length + 1;
sumoSlapDir = 0;
SlapRecursive(beat, slapAmount, true, slapSwitch);
if (prepareAnimation)
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat - 1, delegate { sumoBrotherP.DoScaledAnimationAsync("SumoSlapPrepare",0.5f); }),
new BeatAction.Action(beat - 1, delegate { sumoBrotherG.DoScaledAnimationAsync("SumoSlapPrepare",0.5f); }),
new BeatAction.Action(beat - 1, delegate { sumoBrotherPHead.DoScaledAnimationAsync("SumoPSlap", 0.5f); }),
new BeatAction.Action(beat - 1, delegate { sumoBrotherGHead.DoScaledAnimationAsync("SumoGSlap", 0.5f); })
});
}
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { sumoStatePrevious = SumoState.Slap; })
});
}
}
public void InuSoundsLol(double beat, int sound)
{
if (sound == 0)
{
SoundByte.PlayOneShotGame("sumoBrothers/stompSignal");
} else if (sound == 1)
{
SoundByte.PlayOneShotGame("sumoBrothers/slapSignal");
}
}

View file

@ -131,5 +131,8 @@ MonoBehaviour:
- Assets/Scripts/Games/ChargingChicken/ChargingChicken.cs
- Assets/Scripts/Games/Kitties/CtrTeppanPlayer.cs
- Assets/X-PostProcessing/Effects/PixelizeLed/PixelizeLed.cs
- Assets/Scripts/Games/Chameleon/Fly.cs
- Assets/Scripts/Games/BouncyRoad/BouncyRoad.cs
- Assets/Scripts/Games/Chameleon/Chameleon.cs
PathsToSkipImportEvent: []
PathsToIgnoreOverwriteSettingOnAttribute: []