EnemyType

This commit is contained in:
fu-majime 2024-03-17 11:05:12 +09:00
parent 59489e8cec
commit d271e7f251
22 changed files with 742 additions and 45 deletions

View file

@ -17974,6 +17974,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 30bf004c389468f4eb27ba49ceb01c3d, type: 3}
m_Name:
m_EditorClassIdentifier:
enemyAnim: {fileID: 5033613110298741416}
effectHolder: {fileID: 727132065477534931}
trajectoryEffect: {fileID: 5431016040243098561}
originEffect: {fileID: 235219454747548232}
@ -23084,8 +23085,8 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5431016040243098561}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1.25, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 0.5, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3969861781120183164}
@ -28438,7 +28439,7 @@ MonoBehaviour:
introGate: {fileID: 6767934292219209870}
monitor: {fileID: 4632575707632497822}
captain: {fileID: 40791317368152064}
scaleSpeed: 0.2
scaleSpeed: 0.16
PlacementPattern:
- posPattern:
- posData:

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3fd2caed50c63614ab394c67ac398b30
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,68 @@
%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: basic
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves:
- curve:
- time: 0
value: {fileID: -2136356488, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
attribute: m_Sprite
path: sprite
classID: 212
script: {fileID: 0}
m_SampleRate: 30
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: 891129758
attribute: 0
script: {fileID: 0}
typeID: 212
customType: 23
isPPtrCurve: 1
pptrCurveMapping:
- {fileID: -2136356488, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.033333335
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: []
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []

View file

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

View file

@ -0,0 +1,113 @@
%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: endless
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_PPtrCurves:
- curve:
- time: 0
value: {fileID: 1452378717, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
attribute: m_Sprite
path: sprite
classID: 212
script: {fileID: 0}
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: 1233911557
attribute: 2086281974
script: {fileID: 0}
typeID: 1
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 891129758
attribute: 0
script: {fileID: 0}
typeID: 212
customType: 23
isPPtrCurve: 1
pptrCurveMapping:
- {fileID: 1452378717, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.016666668
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
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: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []

View file

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

View file

@ -27,6 +27,63 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1107 &-4395611113876697967
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Sprite Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -2354518090425078094}
m_Position: {x: 250, y: 20, z: 0}
- serializedVersion: 1
m_State: {fileID: 2225405494376700410}
m_Position: {x: 240, y: 110, z: 0}
- serializedVersion: 1
m_State: {fileID: 532535503686845107}
m_Position: {x: 240, y: 180, z: 0}
- serializedVersion: 1
m_State: {fileID: 7333629473457676120}
m_Position: {x: 240, y: 230, 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: -2354518090425078094}
--- !u!1102 &-2354518090425078094
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Basic
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: cb5bb39a4a68f3345b50cae480aa812a, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1821123917934627129
AnimatorState:
serializedVersion: 6
@ -35,7 +92,7 @@ AnimatorState:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: enemyMiss
m_Speed: 2
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
@ -75,6 +132,70 @@ AnimatorController:
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
- serializedVersion: 5
m_Name: Sprite Layer
m_StateMachine: {fileID: -4395611113876697967}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 1
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &376031281380393262
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: practice
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: e1aa7d57706ba9048a53475d91e77c7b, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &532535503686845107
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Endless
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: d194034e5caa9924a993b4c8272c6863, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &1515220813287879215
AnimatorState:
serializedVersion: 6
@ -101,6 +222,58 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &2225405494376700410
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Lockstep
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: eb2c9b18ebc2bc743b282b9198e910bd, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &7333629473457676120
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Practice
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: e1aa7d57706ba9048a53475d91e77c7b, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &7431207317530354340
AnimatorStateTransition:
m_ObjectHideFlags: 1
@ -144,6 +317,9 @@ AnimatorStateMachine:
- serializedVersion: 1
m_State: {fileID: -1821123917934627129}
m_Position: {x: 305, y: 195, z: 0}
- serializedVersion: 1
m_State: {fileID: 376031281380393262}
m_Position: {x: 340, y: 260, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []

View file

@ -0,0 +1,113 @@
%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: lockstep
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_PPtrCurves:
- curve:
- time: 0
value: {fileID: -2032356040, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
attribute: m_Sprite
path: sprite
classID: 212
script: {fileID: 0}
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: 1233911557
attribute: 2086281974
script: {fileID: 0}
typeID: 1
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 891129758
attribute: 0
script: {fileID: 0}
typeID: 212
customType: 23
isPPtrCurve: 1
pptrCurveMapping:
- {fileID: -2032356040, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.016666668
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
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: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []

View file

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

View file

@ -0,0 +1,113 @@
%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: practice
serializedVersion: 6
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves: []
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves: []
m_ScaleCurves: []
m_FloatCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_PPtrCurves:
- curve:
- time: 0
value: {fileID: -915250394, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
attribute: m_Sprite
path: sprite
classID: 212
script: {fileID: 0}
m_SampleRate: 30
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: 1233911557
attribute: 2086281974
script: {fileID: 0}
typeID: 1
customType: 0
isPPtrCurve: 0
- serializedVersion: 2
path: 891129758
attribute: 0
script: {fileID: 0}
typeID: 212
customType: 23
isPPtrCurve: 1
pptrCurveMapping:
- {fileID: -915250394, guid: c0445b9380dc33d44b0c690894ddec9c, type: 3}
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 0.033333335
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 1
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: Infinity
outSlope: Infinity
tangentMode: 103
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_IsActive
path: sprite/far
classID: 1
script: {fileID: 0}
m_EulerEditorCurves: []
m_HasGenericRootTransform: 0
m_HasMotionFloatCurves: 0
m_Events: []

View file

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

View file

@ -131,7 +131,7 @@ TextureImporter:
serializedVersion: 2
x: 2408
y: 3624
width: 464
width: 348
height: 464
alignment: 0
pivot: {x: 0.5, y: 0.5}
@ -932,7 +932,7 @@ TextureImporter:
width: 850
height: 530
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: []
@ -953,7 +953,7 @@ TextureImporter:
width: 420
height: 272
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: []
@ -974,7 +974,7 @@ TextureImporter:
width: 334
height: 181
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: []
@ -995,7 +995,7 @@ TextureImporter:
width: 351
height: 288
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: []
@ -1016,7 +1016,7 @@ TextureImporter:
width: 238
height: 306
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: []
@ -1037,7 +1037,7 @@ TextureImporter:
width: 388
height: 308
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: []
@ -1058,7 +1058,7 @@ TextureImporter:
width: 142
height: 138
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: []
@ -1079,7 +1079,7 @@ TextureImporter:
width: 141
height: 137
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: []
@ -1100,7 +1100,7 @@ TextureImporter:
width: 168
height: 178
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: []
@ -1121,7 +1121,7 @@ TextureImporter:
width: 178
height: 173
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: []
@ -1142,7 +1142,7 @@ TextureImporter:
width: 172
height: 392
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: []
@ -1163,7 +1163,7 @@ TextureImporter:
width: 499
height: 380
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: []
@ -1184,7 +1184,7 @@ TextureImporter:
width: 393
height: 382
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: []
@ -1205,7 +1205,7 @@ TextureImporter:
width: 264
height: 212
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: []
@ -1226,7 +1226,7 @@ TextureImporter:
width: 195
height: 273
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: []
@ -1247,7 +1247,7 @@ TextureImporter:
width: 167
height: 173
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: []
@ -1268,7 +1268,7 @@ TextureImporter:
width: 156
height: 173
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: []
@ -1289,7 +1289,7 @@ TextureImporter:
width: 167
height: 173
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: []
@ -1310,7 +1310,7 @@ TextureImporter:
width: 214
height: 46
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: []
@ -1322,6 +1322,48 @@ TextureImporter:
indices:
edges: []
weights: []
- serializedVersion: 2
name: shoot_enemy_3
rect:
serializedVersion: 2
x: 1584
y: 3624
width: 302
height: 464
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 4f574f01b791465488b0986f207a568c
internalID: 1452378717
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: shoot_enemy_4
rect:
serializedVersion: 2
x: 1168
y: 3624
width: 309
height: 464
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: d0b6b80282641a8499aa543d224c4df1
internalID: -915250394
vertices: []
indices:
edges: []
weights: []
outline: []
physicsShape: []
bones: []
@ -1345,6 +1387,8 @@ TextureImporter:
shoot_enemy_0: -2136356488
shoot_enemy_1: -2032356040
shoot_enemy_2: -2103752361
shoot_enemy_3: 1452378717
shoot_enemy_4: -915250394
shoot_handle1: 1240971331
shoot_handle2: 1770004620
shoot_handle3: -765527450

View file

@ -10,14 +10,18 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
{
public class Enemy : MonoBehaviour
{
[NonSerialized] public double createBeat;
[NonSerialized] public Vector2 pos;
[Header("References")]
public Animator enemyAnim;
public Transform effectHolder;
public GameObject trajectoryEffect;
public GameObject originEffect;
public GameObject impactEffect;
[Header("Parameters")]
[NonSerialized] public double createBeat;
[NonSerialized] public int type;
[NonSerialized] public Vector2 pos;
[NonSerialized] public float scaleSpeed;
Vector3 scaleRate => new Vector3(scaleSpeed, scaleSpeed, scaleSpeed) / (Conductor.instance.pitchedSecPerBeat * 2f);
bool isScale;
@ -28,13 +32,15 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
{
game = ShootEmUp.instance;
transform.localPosition = new Vector3(5.05f/3*pos.x, 2.5f/3*pos.y + 1.25f, 0);
enemyAnim = GetComponent<Animator>();
enemyAnim.Play(Enum.GetName(typeof(ShootEmUp.EnemyType), type));
isScale = true;
}
public void StartInput(double beat, double length)
{
game = ShootEmUp.instance;
game.ScheduleInput(beat, length, ShootEmUp.InputAction_Press, Just, Miss, Empty);
// (type == (int)ShootEmUp.EnemyType.Endless ? : )
}
private void Just(PlayerActionEvent caller, float state)
{
@ -46,7 +52,7 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
JudgeAnim("miss");
return;
}
game.hitEffect.Play();
game.hitEffect.PlayScaledAsyncAllChildren(0.45f);
JudgeAnim("just");
}
@ -76,7 +82,7 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
public void SpawnAnim()
{
this.GetComponent<Animator>().Play("enemySpawn", 0, 0);
enemyAnim.DoScaledAnimationAsync("enemySpawn", 1f);
var trajectory = Instantiate(trajectoryEffect, effectHolder);
trajectory.transform.localPosition = this.transform.localPosition;
@ -93,6 +99,7 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
}
trajectory.transform.eulerAngles = angle;
trajectory.gameObject.SetActive(true);
trajectory.GetComponent<Animator>().DoScaledAnimationAsync("trajectory", 1f);
}
public void JudgeAnim(string type)
@ -103,6 +110,7 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
GameObject origin = Instantiate(originEffect, effectHolder);
origin.transform.localPosition = currentPos;
origin.gameObject.SetActive(true);
origin.GetComponent<Animator>().DoScaledAnimationAsync("origin", 1f);
isScale = false;
transform.localScale = new Vector3(1.25f, 1.25f, 1.25f);
@ -113,13 +121,14 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
switch (type)
{
case "just":
this.GetComponent<Animator>().Play("enemyAttack", 0, 0);
enemyAnim.DoScaledAnimationAsync("enemyAttack", 1f);
impact = Instantiate(impactEffect, effectHolder);
impact.transform.localPosition = nextPos;
impact.gameObject.SetActive(true);
impact.GetComponent<Animator>().DoScaledAnimationAsync("impact", 1f);
break;
case "attack":
this.GetComponent<Animator>().Play("enemyAttack", 0, 0);
enemyAnim.DoScaledAnimationAsync("enemyAttack", 1f);
if (pos.x > 0) {
nextPos = new Vector3(-5, -3, 0);
} else if (pos.x < 0) {
@ -130,9 +139,10 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
impact = Instantiate(impactEffect, effectHolder);
impact.transform.localPosition = nextPos;
impact.gameObject.SetActive(true);
impact.GetComponent<Animator>().DoScaledAnimationAsync("impact", 1f);
break;
case "miss":
this.GetComponent<Animator>().DoScaledAnimationAsync("enemyMiss", 0.5f);
enemyAnim.DoScaledAnimationAsync("enemyMiss", 1f);
break;
default:
break;
@ -147,7 +157,7 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
trajectory.transform.eulerAngles = angle;
trajectory.transform.localScale = scale;
trajectory.gameObject.SetActive(true);
trajectory.GetComponent<Animator>().Play("trajectory_damage", 0, 0);
trajectory.GetComponent<Animator>().DoScaledAnimationAsync("trajectory_damage", 1f);
}
void End()

View file

@ -17,8 +17,8 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
public void Shoot()
{
shipAnim.Play("shipShoot", 0, 0);
laserAnim.Play("laser", 0, 0);
shipAnim.DoScaledAnimationAsync("shipShoot", 1f);
laserAnim.DoScaledAnimationAsync("laser", 1f);
}
public void Damage()
@ -30,8 +30,8 @@ namespace HeavenStudio.Games.Scripts_ShootEmUp
// }
isDamage = true;
shipAnim.Play("shipDamage", 0, 0);
damageAnim.Play("damage", 0, 0);
shipAnim.DoScaledAnimationAsync("shipDamage", 1f);
damageAnim.DoScaledAnimationAsync("damage", 1f);
}
public void DamageEnd()

View file

@ -54,6 +54,7 @@ namespace HeavenStudio.Games.Loaders
new Param("y_int", new EntityTypes.Integer(-3, 3, 0), "Y (Integer)"),
new Param("x_float", new EntityTypes.Float(-8, 8, 0), "X (Decimal)"),
new Param("y_float", new EntityTypes.Float(-8, 8, 0), "Y (Decimal)"),
new Param("type", ShootEmUp.EnemyType.Basic, "Enemy", "Choose the enemy to spawn."),
},
},
new GameAction("passTurn", "Pass Turn")
@ -116,6 +117,14 @@ namespace HeavenStudio.Games
Manual,
}
public enum EnemyType
{
Basic = 0,
Practice,
Endless,
Lockstep = 100,
}
[System.Serializable]
public struct PatternItem
{
@ -154,7 +163,7 @@ namespace HeavenStudio.Games
{
foreach (var crEvent in crHandlerInstance.queuedEvents)
{
SpawnEnemy(crEvent.beat, crEvent.DynamicData["pos"], false, crHandlerInstance.intervalLength, true);
SpawnEnemy(crEvent.beat, crEvent.DynamicData["pos"], (int)Enum.Parse(typeof(EnemyType), crEvent.tag), false, crHandlerInstance.intervalLength, true);
}
}
}
@ -227,12 +236,13 @@ namespace HeavenStudio.Games
}
}
public void SpawnEnemy(double beat, Vector2 pos, bool active = true, float interval = 4f, bool awake = false)
public void SpawnEnemy(double beat, Vector2 pos, int type,
bool active = true, float interval = 4f, bool awake = false)
{
if (!awake)
{
if (crHandlerInstance.queuedEvents.Count > 0 && crHandlerInstance.queuedEvents.Find(x => x.beat == beat || (beat >= x.beat && beat <= x.beat + x.length)) != null) return;
crHandlerInstance.AddEvent(beat, crParams: new(){
crHandlerInstance.AddEvent(beat, tag: Enum.GetName(typeof(EnemyType), type), crParams: new(){
new CallAndResponseHandler.CallAndResponseEventParam("pos", pos),
});
}
@ -240,9 +250,9 @@ namespace HeavenStudio.Games
var newEnemy = Instantiate(baseEnemy, enemyHolder).GetComponent<Enemy>();
spawnedEnemies.Add(newEnemy);
newEnemy.createBeat = beat;
newEnemy.scaleSpeed = scaleSpeed/interval;
newEnemy.type = type;
newEnemy.pos = pos;
newEnemy.Init();
newEnemy.scaleSpeed = scaleSpeed/interval;
if (active)
{
@ -252,6 +262,7 @@ namespace HeavenStudio.Games
new BeatAction.Action(beat, delegate
{
newEnemy.gameObject.SetActive(true);
newEnemy.Init();
newEnemy.SpawnAnim();
})
});
@ -259,6 +270,7 @@ namespace HeavenStudio.Games
else
{
newEnemy.gameObject.SetActive(true);
newEnemy.Init();
}
}
@ -294,7 +306,7 @@ namespace HeavenStudio.Games
var posData = plcPattern.posPattern[relevantIndex].posData;
int posDataIndex = Mathf.Min(posData.Length - 1, i);
var pos = posData[posDataIndex];
SpawnEnemy(evt.beat, pos, evt.beat >= gameSwitchBeat, interval);
SpawnEnemy(evt.beat, pos, evt["type"], evt.beat >= gameSwitchBeat, interval);
}
}
else
@ -303,7 +315,7 @@ namespace HeavenStudio.Games
{
Vector2 pos = new Vector2(evt["x_int"], evt["y_int"]);
if (evt["fine"]) pos = new Vector2(evt["x_float"], evt["y_float"]);
SpawnEnemy(evt.beat, pos, evt.beat >= gameSwitchBeat, interval);
SpawnEnemy(evt.beat, pos, evt["type"], evt.beat >= gameSwitchBeat, interval);
}
}
if (autoPassTurn)
@ -362,7 +374,7 @@ namespace HeavenStudio.Games
public static void PrePassTurn(double beat)
{
if (GameManager.instance.currentGame == "tambourine")
if (GameManager.instance.currentGame == "shootEmUp")
{
instance.PassTurnStandalone(beat);
}
@ -427,6 +439,7 @@ namespace HeavenStudio.Games
break;
case (int)MonitorAnimation.Bop:
canBop = true;
captain.DoScaledAnimationAsync("capBop", 1f);
break;
}
}
@ -435,6 +448,12 @@ namespace HeavenStudio.Games
{
introGate.Play("gateShow", 0, 0);
if (close) return;
MultiSound.Play(new MultiSound.Sound[]
{
new MultiSound.Sound("shootEmUp/gate1", beat),
new MultiSound.Sound("shootEmUp/gate2", beat + length),
new MultiSound.Sound("shootEmUp/gate3", beat + 2*length),
});
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate {