From ca9a746b76b78cfba8e67df55e46fd6cb2554bac Mon Sep 17 00:00:00 2001 From: Roman <1325980292@qq.com> Date: Fri, 17 Dec 2021 01:27:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=EF=BC=9A=E6=90=AD=E5=BB=BA?= =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E7=9A=84=E7=B3=BB=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.编写以撒逻辑 (1.继承于Enemy (2.编写OnSave(男童)事件,当有男童被解救,会触发以撒的这个事件,后续逻辑等待讨论 (3.具有冲撞和闪电两种攻击方式,通过类似地藏的方式轮回随机决定攻击方式 (4.编写冲撞攻击逻辑 ((*.创建鬼魂脚本 ((*.创建鬼魂预制体,需要内含触发器 ((1.当执行,以玩家为中心向周围一圈固定距离随机方向的某处召唤鬼魂,并记录下此时自身到玩家的方向 ((2.等待一小段时间,令鬼魂以记录方向冲撞出去,利用Tweener动画营造一种先抖一下然后猛地创过来的感觉 ((3.动画结束后,鬼魂逐渐消隐 ((4.消隐结束后,删除游戏物体 ((5.冲撞过程中具有攻击判定,若创到玩家,触发玩家的受击事件,同时获取主人的攻击力传给玩家 (3.编写闪电攻击逻辑 ((1.当执行,在玩家头顶一定距离处生成鬼魂 ((2.淡入显示鬼魂,一小段时间后,命令鬼魂发动落雷攻击 ((3.发动时,激活场景内的巨型落雷,同时更改落雷的x位置到鬼魂的x,子物体具有触发器,(每帧)检测到玩家在内则对玩家造成伤害 ((4.在极短的时间后关闭落雷同时开始淡出鬼魂 ((5.淡出结束后删除游戏物体 2.编写男童逻辑 (1.继承于Interactive (2.编写解救男童逻辑 ((*.修改Interactive基类,新增OnCallCancel事件,当交互键抬起时触发一次 ((*.新增男童状态的枚举类型,包含:wait、saving、OK三个状态 ((*:新增一个变量记录男童状态 ((1.重写OnCall事件,当OnCall,修改状态至saving ((2.Update回调中,若处于saving状态,则开始减少CDLeft,同时判断CDLeft是否耗尽,若耗尽,触发OnSave ((3.编写OnSave函数,修改状态至OK,通知owner自己已经OnSave ((4.重写OnCallCancel事件,当触发,判定状态,若处于saving状态,则修改状态至wait,恢复CDLeft ((*.使得玩家救人的时候无法移动,而当交互键抬起,重新获得移动能力 ((*.修改可交互基类,当玩家交互过程中丢失catching,触发可交互物体的中断,同时告知玩家交互中断,触发中断事件 ((5.解救结束后,通知玩家解救结束 至此,以撒的Boss逻辑还差首尾部分 加速吧 --- Assets/InputAssets/Player.cs | 2 +- Assets/InputAssets/Player.inputactions | 2 +- Assets/Prefabs/以撒鬼魂.prefab | 116 ++ Assets/Prefabs/以撒鬼魂.prefab.meta | 7 + Assets/Scenes/YiSaStageTest.unity | 1169 ++++++++++++++++- Assets/Scripts/Boss.meta | 8 + Assets/Scripts/Boss/以撒.meta | 8 + Assets/Scripts/Boss/以撒/YiSa.cs | 168 +++ Assets/Scripts/Boss/以撒/YiSa.cs.meta | 11 + Assets/Scripts/Boss/以撒/YiSaGoust.cs | 100 ++ Assets/Scripts/Boss/以撒/YiSaGoust.cs.meta | 11 + Assets/Scripts/Boss/地藏.meta | 8 + Assets/Scripts/{ => Boss/地藏}/Bell.cs | 0 Assets/Scripts/{ => Boss/地藏}/Bell.cs.meta | 0 Assets/Scripts/{ => Boss/地藏}/DiZang.cs | 0 Assets/Scripts/{ => Boss/地藏}/DiZang.cs.meta | 0 Assets/Scripts/{ => Boss/地藏}/DiZangsHadn.cs | 0 .../{ => Boss/地藏}/DiZangsHadn.cs.meta | 0 .../Scripts/{ => Boss/地藏}/ThrowingPoint.cs | 0 .../{ => Boss/地藏}/ThrowingPoint.cs.meta | 0 Assets/Scripts/Boss/木马.meta | 8 + Assets/Scripts/{ => Boss/木马}/Boomer.cs | 0 Assets/Scripts/{ => Boss/木马}/Boomer.cs.meta | 0 Assets/Scripts/{ => Boss/木马}/TrojanHorse.cs | 0 .../{ => Boss/木马}/TrojanHorse.cs.meta | 0 Assets/Scripts/可交互.meta | 8 + Assets/Scripts/可交互/Boy.cs | 125 ++ Assets/Scripts/可交互/Boy.cs.meta | 11 + Assets/Scripts/{ => 可交互}/Coin.cs | 0 Assets/Scripts/{ => 可交互}/Coin.cs.meta | 0 Assets/Scripts/{ => 可交互}/MoneyBox.cs | 0 Assets/Scripts/{ => 可交互}/MoneyBox.cs.meta | 0 Assets/Scripts/小怪.meta | 8 + Assets/Scripts/{ => 小怪}/AiYuPin.cs | 0 Assets/Scripts/{ => 小怪}/AiYuPin.cs.meta | 0 Assets/Scripts/{ => 小怪}/JiDu.cs | 0 Assets/Scripts/{ => 小怪}/JiDu.cs.meta | 0 .../LightningAttackAdministrator.cs | 0 .../LightningAttackAdministrator.cs.meta | 0 Assets/Scripts/{ => 小怪}/NormalEnemy.cs | 0 Assets/Scripts/{ => 小怪}/NormalEnemy.cs.meta | 0 Assets/Scripts/{ => 小怪}/YiSiLan.cs | 0 Assets/Scripts/{ => 小怪}/YiSiLan.cs.meta | 0 Assets/Scripts/抽象.meta | 8 + Assets/Scripts/{ => 抽象}/Enemy.cs | 0 Assets/Scripts/{ => 抽象}/Enemy.cs.meta | 0 Assets/Scripts/{ => 抽象}/HorseGround.cs | 0 Assets/Scripts/{ => 抽象}/HorseGround.cs.meta | 0 Assets/Scripts/{ => 抽象}/Interactive.cs | 19 +- Assets/Scripts/{ => 抽象}/Interactive.cs.meta | 0 Assets/Scripts/{ => 抽象}/VibrationManager.cs | 0 .../{ => 抽象}/VibrationManager.cs.meta | 0 Assets/Scripts/玩家.meta | 8 + Assets/Scripts/{ => 玩家}/Hammer.cs | 0 Assets/Scripts/{ => 玩家}/Hammer.cs.meta | 0 Assets/Scripts/{ => 玩家}/MyPlayer.cs | 45 +- Assets/Scripts/{ => 玩家}/MyPlayer.cs.meta | 0 Assets/Scripts/{ => 玩家}/Sickle.cs | 0 Assets/Scripts/{ => 玩家}/Sickle.cs.meta | 0 Assets/Sprites/早期临时混乱/3关boss.png | Bin 0 -> 4750 bytes Assets/Sprites/早期临时混乱/3关boss.png.meta | 132 ++ Logs/ApiUpdaterCheck.txt | 20 + 62 files changed, 1961 insertions(+), 41 deletions(-) create mode 100644 Assets/Prefabs/以撒鬼魂.prefab create mode 100644 Assets/Prefabs/以撒鬼魂.prefab.meta create mode 100644 Assets/Scripts/Boss.meta create mode 100644 Assets/Scripts/Boss/以撒.meta create mode 100644 Assets/Scripts/Boss/以撒/YiSa.cs create mode 100644 Assets/Scripts/Boss/以撒/YiSa.cs.meta create mode 100644 Assets/Scripts/Boss/以撒/YiSaGoust.cs create mode 100644 Assets/Scripts/Boss/以撒/YiSaGoust.cs.meta create mode 100644 Assets/Scripts/Boss/地藏.meta rename Assets/Scripts/{ => Boss/地藏}/Bell.cs (100%) rename Assets/Scripts/{ => Boss/地藏}/Bell.cs.meta (100%) rename Assets/Scripts/{ => Boss/地藏}/DiZang.cs (100%) rename Assets/Scripts/{ => Boss/地藏}/DiZang.cs.meta (100%) rename Assets/Scripts/{ => Boss/地藏}/DiZangsHadn.cs (100%) rename Assets/Scripts/{ => Boss/地藏}/DiZangsHadn.cs.meta (100%) rename Assets/Scripts/{ => Boss/地藏}/ThrowingPoint.cs (100%) rename Assets/Scripts/{ => Boss/地藏}/ThrowingPoint.cs.meta (100%) create mode 100644 Assets/Scripts/Boss/木马.meta rename Assets/Scripts/{ => Boss/木马}/Boomer.cs (100%) rename Assets/Scripts/{ => Boss/木马}/Boomer.cs.meta (100%) rename Assets/Scripts/{ => Boss/木马}/TrojanHorse.cs (100%) rename Assets/Scripts/{ => Boss/木马}/TrojanHorse.cs.meta (100%) create mode 100644 Assets/Scripts/可交互.meta create mode 100644 Assets/Scripts/可交互/Boy.cs create mode 100644 Assets/Scripts/可交互/Boy.cs.meta rename Assets/Scripts/{ => 可交互}/Coin.cs (100%) rename Assets/Scripts/{ => 可交互}/Coin.cs.meta (100%) rename Assets/Scripts/{ => 可交互}/MoneyBox.cs (100%) rename Assets/Scripts/{ => 可交互}/MoneyBox.cs.meta (100%) create mode 100644 Assets/Scripts/小怪.meta rename Assets/Scripts/{ => 小怪}/AiYuPin.cs (100%) rename Assets/Scripts/{ => 小怪}/AiYuPin.cs.meta (100%) rename Assets/Scripts/{ => 小怪}/JiDu.cs (100%) rename Assets/Scripts/{ => 小怪}/JiDu.cs.meta (100%) rename Assets/Scripts/{ => 小怪}/LightningAttackAdministrator.cs (100%) rename Assets/Scripts/{ => 小怪}/LightningAttackAdministrator.cs.meta (100%) rename Assets/Scripts/{ => 小怪}/NormalEnemy.cs (100%) rename Assets/Scripts/{ => 小怪}/NormalEnemy.cs.meta (100%) rename Assets/Scripts/{ => 小怪}/YiSiLan.cs (100%) rename Assets/Scripts/{ => 小怪}/YiSiLan.cs.meta (100%) create mode 100644 Assets/Scripts/抽象.meta rename Assets/Scripts/{ => 抽象}/Enemy.cs (100%) rename Assets/Scripts/{ => 抽象}/Enemy.cs.meta (100%) rename Assets/Scripts/{ => 抽象}/HorseGround.cs (100%) rename Assets/Scripts/{ => 抽象}/HorseGround.cs.meta (100%) rename Assets/Scripts/{ => 抽象}/Interactive.cs (71%) rename Assets/Scripts/{ => 抽象}/Interactive.cs.meta (100%) rename Assets/Scripts/{ => 抽象}/VibrationManager.cs (100%) rename Assets/Scripts/{ => 抽象}/VibrationManager.cs.meta (100%) create mode 100644 Assets/Scripts/玩家.meta rename Assets/Scripts/{ => 玩家}/Hammer.cs (100%) rename Assets/Scripts/{ => 玩家}/Hammer.cs.meta (100%) rename Assets/Scripts/{ => 玩家}/MyPlayer.cs (93%) rename Assets/Scripts/{ => 玩家}/MyPlayer.cs.meta (100%) rename Assets/Scripts/{ => 玩家}/Sickle.cs (100%) rename Assets/Scripts/{ => 玩家}/Sickle.cs.meta (100%) create mode 100644 Assets/Sprites/早期临时混乱/3关boss.png create mode 100644 Assets/Sprites/早期临时混乱/3关boss.png.meta diff --git a/Assets/InputAssets/Player.cs b/Assets/InputAssets/Player.cs index 8a7a035..ba49c48 100644 --- a/Assets/InputAssets/Player.cs +++ b/Assets/InputAssets/Player.cs @@ -195,7 +195,7 @@ public class @Player : IInputActionCollection, IDisposable { ""name"": """", ""id"": ""d5e36b3d-645c-4a18-914e-7a7ae9046eda"", - ""path"": ""/buttonNorth"", + ""path"": ""/buttonNorth"", ""interactions"": """", ""processors"": """", ""groups"": ""Play"", diff --git a/Assets/InputAssets/Player.inputactions b/Assets/InputAssets/Player.inputactions index f634b89..0a03e0c 100644 --- a/Assets/InputAssets/Player.inputactions +++ b/Assets/InputAssets/Player.inputactions @@ -182,7 +182,7 @@ { "name": "", "id": "d5e36b3d-645c-4a18-914e-7a7ae9046eda", - "path": "/buttonNorth", + "path": "/buttonNorth", "interactions": "", "processors": "", "groups": "Play", diff --git a/Assets/Prefabs/以撒鬼魂.prefab b/Assets/Prefabs/以撒鬼魂.prefab new file mode 100644 index 0000000..707684d --- /dev/null +++ b/Assets/Prefabs/以撒鬼魂.prefab @@ -0,0 +1,116 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7242342954004886428 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7242342954004886426} + - component: {fileID: 7242342954004886429} + - component: {fileID: 7242342954004886427} + - component: {fileID: 7242342954004886424} + m_Layer: 0 + m_Name: "\u4EE5\u6492\u9B3C\u9B42" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7242342954004886426 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7242342954004886428} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -3.18, y: 6.39, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &7242342954004886429 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7242342954004886428} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 1 + m_Sprite: {fileID: 21300000, guid: 11b9cff6c92a53541a1acf380bc46247, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 0} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!70 &7242342954004886427 +CapsuleCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7242342954004886428} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: -0.03, y: -0.16} + m_Size: {x: 1.04, y: 1.55} + m_Direction: 0 +--- !u!114 &7242342954004886424 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7242342954004886428} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6734e02ccd3528e41b593315751e810f, type: 3} + m_Name: + m_EditorClassIdentifier: + rushTime: 0.6 + lightning: {fileID: 0} diff --git a/Assets/Prefabs/以撒鬼魂.prefab.meta b/Assets/Prefabs/以撒鬼魂.prefab.meta new file mode 100644 index 0000000..efd855d --- /dev/null +++ b/Assets/Prefabs/以撒鬼魂.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b115139c858522e4284c9609bb70fd44 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/YiSaStageTest.unity b/Assets/Scenes/YiSaStageTest.unity index 6262843..5dba08b 100644 --- a/Assets/Scenes/YiSaStageTest.unity +++ b/Assets/Scenes/YiSaStageTest.unity @@ -153,6 +153,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 8552cc6ae4e3ee6439c72af8eff091ff, type: 3} m_Name: m_EditorClassIdentifier: + doNotStopShakeNum: itemNow: 0 inHorseStage: 0 --- !u!114 &244109272 @@ -277,6 +278,66 @@ Transform: m_Father: {fileID: 1776031632} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &331703667 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 331703669} + - component: {fileID: 331703668} + m_Layer: 0 + m_Name: "\u76F8\u673A\u79FB\u52A8\u8303\u56F4" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!60 &331703668 +PolygonCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 331703667} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0, y: 0} + oldSize: {x: 0, y: 0} + newSize: {x: 0, y: 0} + adaptiveTilingThreshold: 0 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + m_Points: + m_Paths: + - - {x: 20.075207, y: 10.098453} + - {x: -12.679279, y: 9.978619} + - {x: -12.93613, y: -11.131971} + - {x: 20.188332, y: -11.327976} +--- !u!4 &331703669 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 331703667} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -3.5936167, y: 0.48384646, z: -10.485832} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 8 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &337096685 GameObject: m_ObjectHideFlags: 0 @@ -332,7 +393,7 @@ Camera: far clip plane: 1000 field of view: 60 orthographic: 1 - orthographic size: 5 + orthographic size: 3.55 m_Depth: -1 m_CullingMask: serializedVersion: 2 @@ -356,7 +417,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 337096685} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -4.08, y: -2.82, z: -10} + m_LocalPosition: {x: -1.8, y: 4.9, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} @@ -547,7 +608,6 @@ GameObject: m_Component: - component: {fileID: 820618557} - component: {fileID: 820618560} - - component: {fileID: 820618559} - component: {fileID: 820618558} m_Layer: 0 m_Name: cm @@ -592,33 +652,6 @@ MonoBehaviour: m_YawDamping: 0 m_RollDamping: 0 m_AngularDamping: 0 ---- !u!114 &820618559 -MonoBehaviour: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 820618556} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3} - m_Name: - m_EditorClassIdentifier: - m_TrackedObjectOffset: {x: 0, y: 0, z: 0} - m_LookaheadTime: 0 - m_LookaheadSmoothing: 0 - m_LookaheadIgnoreY: 0 - m_HorizontalDamping: 0.5 - m_VerticalDamping: 0.5 - m_ScreenX: 0.5 - m_ScreenY: 0.5 - m_DeadZoneWidth: 0 - m_DeadZoneHeight: 0 - m_SoftZoneWidth: 0.8 - m_SoftZoneHeight: 0.8 - m_BiasX: 0 - m_BiasY: 0 - m_CenterOnActivate: 1 --- !u!114 &820618560 MonoBehaviour: m_ObjectHideFlags: 3 @@ -631,6 +664,256 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!1 &1181501080 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1181501083} + - component: {fileID: 1181501082} + - component: {fileID: 1181501081} + - component: {fileID: 1181501084} + m_Layer: 0 + m_Name: "\u7537\u7AE5\uFF08\u53F3\u4E0B" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!61 &1181501081 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181501080} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!212 &1181501082 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181501080} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1181501083 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181501080} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 16.357, y: -8.996, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 12 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1181501084 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1181501080} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b37c034eab19bf54384191c0f3c82043, type: 3} + m_Name: + m_EditorClassIdentifier: + itemName: 2 + saveNeedTime: 3 + saveNeedTimeLeft: 0 +--- !u!1 &1205897358 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1205897361} + - component: {fileID: 1205897360} + - component: {fileID: 1205897359} + - component: {fileID: 1205897362} + m_Layer: 0 + m_Name: "\u7537\u7AE5\uFF08\u5DE6\u4E0A" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!61 &1205897359 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1205897358} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!212 &1205897360 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1205897358} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1205897361 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1205897358} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -15.734, y: 5.019, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 13 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1205897362 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1205897358} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b37c034eab19bf54384191c0f3c82043, type: 3} + m_Name: + m_EditorClassIdentifier: + itemName: 2 + saveNeedTime: 3 + saveNeedTimeLeft: 0 --- !u!1 &1233383169 GameObject: m_ObjectHideFlags: 0 @@ -740,6 +1023,115 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &1355032012 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1355032014} + - component: {fileID: 1355032013} + - component: {fileID: 1355032015} + m_Layer: 0 + m_Name: "\u843D\u96F7" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!212 &1355032013 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1355032012} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1355032014 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1355032012} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -2.8158715, y: 0.4, z: 0} + m_LocalScale: {x: 2.84, y: 23.24, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 16 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!61 &1355032015 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1355032012} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 --- !u!1 &1368840529 GameObject: m_ObjectHideFlags: 0 @@ -862,6 +1254,115 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &1404003809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1404003811} + - component: {fileID: 1404003810} + - component: {fileID: 1404003812} + m_Layer: 9 + m_Name: "\u7A7A\u6C14\u5899\uFF08\u53F3" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &1404003810 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1404003809} + m_Enabled: 0 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1404003811 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1404003809} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 16.9, y: 4.5758963, z: 0} + m_LocalScale: {x: 1, y: 29.63, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 10 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!61 &1404003812 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1404003809} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 --- !u!1 &1461589708 GameObject: m_ObjectHideFlags: 0 @@ -872,6 +1373,7 @@ GameObject: m_Component: - component: {fileID: 1461589710} - component: {fileID: 1461589709} + - component: {fileID: 1461589711} m_Layer: 0 m_Name: CM vcam1 m_TagString: Untagged @@ -901,7 +1403,7 @@ MonoBehaviour: m_Follow: {fileID: 1776031632} m_Lens: FieldOfView: 60 - OrthographicSize: 5 + OrthographicSize: 3.55 NearClipPlane: 0.3 FarClipPlane: 1000 Dutch: 0 @@ -922,13 +1424,30 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1461589708} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -4.08, y: -2.82, z: -10} + m_LocalPosition: {x: -1.8, y: 4.9, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 820618557} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1461589711 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1461589708} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a2fba25a5cd15594e8f050a11e386c80, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ConfineMode: 0 + m_BoundingVolume: {fileID: 0} + m_BoundingShape2D: {fileID: 331703668} + m_ConfineScreenEdges: 1 + m_Damping: 0 --- !u!1 &1465041717 GameObject: m_ObjectHideFlags: 0 @@ -1196,7 +1715,7 @@ PolygonCollider2D: - {x: -10.977545, y: -4.9716005} - {x: -13.761342, y: -5.0032625} - {x: -13.787243, y: -6.1572742} - - {x: -17.105335, y: -6.2320833} + - {x: -17.105335, y: -6.186406} - {x: -17.079742, y: -8.001633} - {x: 17.746246, y: -7.856061} - {x: 17.69706, y: -6.2101793} @@ -1235,6 +1754,131 @@ PolygonCollider2D: - {x: -5.707261, y: 3.5044587} - {x: 5.7573247, y: 3.5044587} - {x: 5.7573247, y: 7.86} +--- !u!1 &1740401870 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1740401873} + - component: {fileID: 1740401872} + - component: {fileID: 1740401871} + - component: {fileID: 1740401874} + m_Layer: 0 + m_Name: "\u7537\u7AE5\uFF08\u5DE6\u4E0B" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!61 &1740401871 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1740401870} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!212 &1740401872 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1740401870} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: -1 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &1740401873 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1740401870} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -15.983, y: -8.992, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 11 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1740401874 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1740401870} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b37c034eab19bf54384191c0f3c82043, type: 3} + m_Name: + m_EditorClassIdentifier: + itemName: 2 + saveNeedTime: 3 + saveNeedTimeLeft: 0 --- !u!1 &1776031625 GameObject: m_ObjectHideFlags: 0 @@ -1365,6 +2009,22 @@ MonoBehaviour: m_CallState: 2 m_ActionId: d92eaf00-7eaf-4292-ae80-6bfff20b5930 m_ActionName: Normal/Sickle[/Keyboard/u,/XInputControllerWindows/rightTrigger] + - m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1776031628} + m_TargetAssemblyTypeName: MyPlayer, Assembly-CSharp + m_MethodName: OnInteractive + m_Mode: 0 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_ActionId: 7cf0a787-dc2d-42b1-9ed9-c840ccfa3ce9 + m_ActionName: Normal/Interactive[/XInputControllerWindows/buttonNorth,/Keyboard/f] m_NeverAutoSwitchControlSchemes: 0 m_DefaultControlScheme: Play m_DefaultActionMap: Normal @@ -1393,12 +2053,14 @@ MonoBehaviour: catingAiYuPin: {fileID: 0} catching: {fileID: 0} specialMoneyCount: 0 + isAnnoying: 0 inputDir: 0 isLanding: 0 hammerCDLeft: 0 sickleCDLeft: 0 inControl: 1 HPLeft: 0 + isInteractive: 0 --- !u!50 &1776031629 Rigidbody2D: serializedVersion: 4 @@ -1505,7 +2167,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1776031625} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -4.08, y: -2.82, z: 0} + m_LocalPosition: {x: -1.8, y: 4.9, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1873098829} @@ -1525,6 +2187,7 @@ GameObject: m_Component: - component: {fileID: 1784345427} - component: {fileID: 1784345426} + - component: {fileID: 1784345428} m_Layer: 0 m_Name: "\u4EE5\u6492\u96D5\u50CF" m_TagString: Untagged @@ -1597,6 +2260,145 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1784345428 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1784345425} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc2fd53966d9d3e42991b3656f32ef6c, type: 3} + m_Name: + m_EditorClassIdentifier: + HP: 0 + ATK: 0 + speed: 0 + coin: 0 + canBeHit: 1 + state: 0 + HPLeft: 0 + timeBetweenAttacks: 1 + goust: {fileID: 7242342954004886428, guid: b115139c858522e4284c9609bb70fd44, type: 3} + atkOffsetDistance: 2 +--- !u!1 &1813717210 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7242342954004886428, guid: b115139c858522e4284c9609bb70fd44, type: 3} + m_PrefabInstance: {fileID: 7242342955549758278} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1813717211 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813717210} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4d0390bd8b8ffd640b34fe25065ff1df, type: 3} + m_Name: + m_EditorClassIdentifier: + updateType: 0 + isSpeedBased: 0 + hasOnStart: 0 + hasOnPlay: 0 + hasOnUpdate: 0 + hasOnStepComplete: 0 + hasOnComplete: 0 + hasOnTweenCreated: 0 + hasOnRewind: 0 + onStart: + m_PersistentCalls: + m_Calls: [] + onPlay: + m_PersistentCalls: + m_Calls: [] + onUpdate: + m_PersistentCalls: + m_Calls: [] + onStepComplete: + m_PersistentCalls: + m_Calls: [] + onComplete: + m_PersistentCalls: + m_Calls: [] + onTweenCreated: + m_PersistentCalls: + m_Calls: [] + onRewind: + m_PersistentCalls: + m_Calls: [] + targetIsSelf: 1 + targetGO: {fileID: 0} + tweenTargetIsTargetGO: 1 + delay: 0 + duration: 0.6 + easeType: 23 + easeCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + loopType: 0 + loops: 1 + id: + isRelative: 0 + isFrom: 0 + isIndependentUpdate: 0 + autoKill: 1 + autoGenerate: 1 + isActive: 1 + isValid: 1 + target: {fileID: 1813717212} + animationType: 1 + targetType: 11 + forcedTargetType: 0 + autoPlay: 1 + useTargetAsV3: 0 + endValueFloat: 0 + endValueV3: {x: 0, y: 4.3, z: 0} + endValueV2: {x: 0, y: 0} + endValueColor: {r: 1, g: 1, b: 1, a: 1} + endValueString: + endValueRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + endValueTransform: {fileID: 0} + optionalBool0: 0 + optionalBool1: 0 + optionalFloat0: 0 + optionalInt0: 0 + optionalRotationMode: 0 + optionalScrambleMode: 0 + optionalString: +--- !u!4 &1813717212 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + m_PrefabInstance: {fileID: 7242342955549758278} + m_PrefabAsset: {fileID: 0} --- !u!1 &1873098828 GameObject: m_ObjectHideFlags: 0 @@ -1748,3 +2550,302 @@ MonoBehaviour: optionalRotationMode: 0 optionalScrambleMode: 0 optionalString: +--- !u!1 &2062160390 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2062160393} + - component: {fileID: 2062160392} + - component: {fileID: 2062160391} + - component: {fileID: 2062160394} + m_Layer: 0 + m_Name: "\u7537\u7AE5\uFF08\u53F3\u4E0A" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!61 &2062160391 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062160390} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!212 &2062160392 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062160390} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &2062160393 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062160390} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 15.9, y: 5.009, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 14 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2062160394 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2062160390} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b37c034eab19bf54384191c0f3c82043, type: 3} + m_Name: + m_EditorClassIdentifier: + itemName: 2 + saveNeedTime: 3 + saveNeedTimeLeft: 0 +--- !u!1 &2137328813 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2137328815} + - component: {fileID: 2137328814} + - component: {fileID: 2137328816} + m_Layer: 9 + m_Name: "\u7A7A\u6C14\u5899\uFF08\u5DE6" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!212 &2137328814 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137328813} + m_Enabled: 0 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Sprite: {fileID: 7482667652216324306, guid: 48e93eef0688c4a259cb0eddcd8661f7, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 1, y: 1} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 +--- !u!4 &2137328815 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137328813} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -16.9, y: 4.5758963, z: 0} + m_LocalScale: {x: 1, y: 29.63, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!61 &2137328816 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2137328813} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0.5, y: 0.5} + oldSize: {x: 1, y: 1} + newSize: {x: 1, y: 1} + adaptiveTilingThreshold: 0.5 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!1001 &7242342955549758278 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalPosition.x + value: -3.18 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalPosition.y + value: 6.39 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886426, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886428, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_Name + value: "\u4EE5\u6492\u9B3C\u9B42" + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886428, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7242342954004886429, guid: b115139c858522e4284c9609bb70fd44, type: 3} + propertyPath: m_Color.a + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b115139c858522e4284c9609bb70fd44, type: 3} diff --git a/Assets/Scripts/Boss.meta b/Assets/Scripts/Boss.meta new file mode 100644 index 0000000..525ea4f --- /dev/null +++ b/Assets/Scripts/Boss.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cb4cecb07f02a5a4eb1cb7612af729b7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Boss/以撒.meta b/Assets/Scripts/Boss/以撒.meta new file mode 100644 index 0000000..f592831 --- /dev/null +++ b/Assets/Scripts/Boss/以撒.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d19c3e112c484414c9da80172ff8b7da +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Boss/以撒/YiSa.cs b/Assets/Scripts/Boss/以撒/YiSa.cs new file mode 100644 index 0000000..062e25a --- /dev/null +++ b/Assets/Scripts/Boss/以撒/YiSa.cs @@ -0,0 +1,168 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using DG.Tweening; +using Sirenix.OdinInspector; + +/// +/// 以撒类,控制以撒Boss +/// +public class YiSa : Enemy +{ + // _____ _ _ _ + // | __ \ | | | (_) + // | |__) | _| |__ | |_ ___ + // | ___/ | | | '_ \| | |/ __| + // | | | |_| | |_) | | | (__ + // |_| \__,_|_.__/|_|_|\___| + + /// + /// 攻击之间的间隔时间 + /// + [Header("攻击之间的间隔时间")][FoldoutGroup("以撒")] + public float timeBetweenAttacks; + /// + /// 攻击用鬼魂的预制体 + /// + [Header("攻击用鬼魂的预制体")][FoldoutGroup("预制体")] + public GameObject goust; + /// + /// 鬼魂攻击玩家时,生成位置离玩家的距离 + /// + [Header("鬼魂攻击玩家时,生成位置离玩家的距离")][FoldoutGroup("以撒")] + public float atkOffsetDistance; + + // _____ _ _ + // | __ \ (_) | | + // | |__) | __ ___ ____ _| |_ ___ + // | ___/ '__| \ \ / / _` | __/ _ \ + // | | | | | |\ V / (_| | || __/ + // |_| |_| |_| \_/ \__,_|\__\___| + + /// + /// 返回类型为协程、参数为空的委托类型 + /// + private delegate IEnumerator Action(); + private MyPlayer player; + + // _____ _ _ ____ _ + // / ____| | | | _ \ | | + // | | __ _| | | |_) | __ _ ___| | __ + // | | / _` | | | _ < / _` |/ __| |/ / + // | |___| (_| | | | |_) | (_| | (__| < + // \_____\__,_|_|_|____/ \__,_|\___|_|\_\ + + void Start(){ + Init(); + //测试用开启 + StartCoroutine(StartAATK()); + } + + + // _ _ _ + // | \ | | | | + // | \| | ___ _ __ _ __ ___ __ _| | + // | . ` |/ _ \| '__| '_ ` _ \ / _` | | + // | |\ | (_) | | | | | | | | (_| | | + // |_| \_|\___/|_| |_| |_| |_|\__,_|_| + + private void Init(){ + //找到必要的物体和组件 + player = FindObjectOfType(); + } + + /// + /// 执行一次攻击 + /// + private IEnumerator StartAATK(){ + //等待攻击间隔 + yield return new WaitForSeconds(timeBetweenAttacks); + //决定行动 + Action action = DecideAAction(); + //开始行动 + StartCoroutine(action()); + } + + /// + /// 决定行动的函数 + /// + private Action DecideAAction(){ + Action action; + ///从0、1中随机生成一种 + int r = Random.Range(0,2); + if(r == 0) + action = Rush; + else + action = Lighting; + return action; + } + + private IEnumerator Rush(){ + yield return new WaitForEndOfFrame(); + Debug.Log("以撒使用了冲撞"); + //当以撒使用冲撞时 + //首先构建一个生成位置,以玩家为中心,向随机位置偏移固定距离便是 + Vector3 appearPos = ( + //玩家位置 + player.transform.position + + //加上定长随机方向偏移量 + new Vector3( + Random.Range(-1f,1f),Random.Range(-1f,1f),0 + ).normalized * + atkOffsetDistance + ); + //在该位置生成一个鬼魂 + YiSaGoust t = Instantiate( + goust, + appearPos, + Quaternion.identity + ).GetComponent(); + //让鬼魂淡出 + Tweener tweener = t.GetComponent().DOFade(1,0.5f); + //记录一下本次攻击的冲撞方向 + Vector2 rushDir = player.transform.position - t.transform.position; + //告知该鬼魂执行冲撞攻击 + yield return new WaitForSeconds(1f); + t.RushATK(rushDir); + //ATKEnd(); + } + + private IEnumerator Lighting(){ + yield return new WaitForEndOfFrame(); + Debug.Log("以撒使用了落雷"); + //在玩家头顶某位置召唤鬼魂 + YiSaGoust t = Instantiate( + goust,player.transform.position + + new Vector3(0,2f,0),Quaternion.identity + ).GetComponent(); + //0.5秒淡入显示鬼魂 + Tweener tweener = t.GetComponent().DOFade(1,0.5f); + //给玩家一秒的反应时间 + yield return new WaitForSeconds(1f); + t.LightningATK(); + //ATKEnd(); + } + + /// + /// 攻击结束的时候触发,重新开始新一轮攻击 + /// + public void ATKEnd(){StartCoroutine(StartAATK());} + + // ______ _ + // | ____| | | + // | |____ _____ _ __ | |_ + // | __\ \ / / _ \ '_ \| __| + // | |___\ V / __/ | | | |_ + // |______\_/ \___|_| |_|\__| + + /// + /// 当有男童被救的时候从男童触发 + /// + public void OnSave(Boy boy){ + } + + + + + +} diff --git a/Assets/Scripts/Boss/以撒/YiSa.cs.meta b/Assets/Scripts/Boss/以撒/YiSa.cs.meta new file mode 100644 index 0000000..0b95d2e --- /dev/null +++ b/Assets/Scripts/Boss/以撒/YiSa.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dc2fd53966d9d3e42991b3656f32ef6c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Boss/以撒/YiSaGoust.cs b/Assets/Scripts/Boss/以撒/YiSaGoust.cs new file mode 100644 index 0000000..6d4a670 --- /dev/null +++ b/Assets/Scripts/Boss/以撒/YiSaGoust.cs @@ -0,0 +1,100 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using DG.Tweening; +using Sirenix.OdinInspector; + +/// +/// 以撒鬼魂类,控制以撒攻击时出现的鬼魂 +/// +public class YiSaGoust : MonoBehaviour +{ + /// + /// 冲撞将消耗的时间 + /// + [Header("冲撞将消耗的时间")] + public float rushTime; + private YiSa owner; + /// + /// 落雷的游戏物体 + /// + [Header("落雷的游戏物体")] + public GameObject lightning; + void Start(){ + Init(); + } + private void Init(){ + //找到必要的组件和物体 + owner = FindObjectOfType(); + //如果落雷没有落雷组件,则添加一个 + if(!lightning.TryGetComponent(out Lightning t)) + lightning.AddComponent(); + } + public void RushATK(Vector2 rushDir){ + //创建并执行一段冲锋的动画 + Tweener tweener = transform.DOMove( + transform.position + (Vector3)rushDir * 2, + rushTime + ); + tweener.SetEase(Ease.InElastic); + //结束后,鬼魂逐渐消隐 + TweenCallback action = () => { + GetComponent().DOFade(0,1); + //消隐结束后删除自己 + Invoke("DestroySelf",1.1f); + //宣告攻击结束 + owner.ATKEnd(); + }; + tweener.OnStepComplete(action); + } + + + public void LightningATK(){ + //激活落雷 + lightning.SetActive(true); + //将落雷的X位置改变到鬼魂的X + lightning.transform.position = new Vector3( + transform.position.x, + lightning.transform.position.y, + lightning.transform.position.z + ); + //极短的时间后关闭落雷 + Invoke("TurnOffLightning",0.2f); + //宣告攻击结束 + owner.ATKEnd(); + //淡出鬼魂 + GetComponent().DOFade(0,1).OnStepComplete(()=>{ + //淡出结束后,删除游戏物体 + Destroy(gameObject); + }); + } + + private void TurnOffLightning(){lightning.SetActive(false);} + private void DestroySelf(){Destroy(gameObject);} + + void OnTriggerEnter2D(Collider2D other) + { + //如果创到玩家 + if(other.gameObject.TryGetComponent(out MyPlayer player)){ + //告诉玩家,你被攻击了 + player.OnBeHit(owner.ATK, + ((transform.position.x - + player.transform.position.x) + > 0) ? 1 : -1);//通过自身位置和玩家位置的比较来返回玩家本次的受击方向 + } + } + + private class Lightning : MonoBehaviour + { + void OnTriggerStay2D(Collider2D other){ + //如果创到玩家 + if(other.gameObject.TryGetComponent(out MyPlayer player)){ + //告诉玩家,你被攻击了 + player.OnBeHit(FindObjectOfType().ATK, + ((transform.position.x - + player.transform.position.x) + > 0) ? 1 : -1);//通过自身位置和玩家位置的比较来返回玩家本次的受击方向 + } + } + } +} diff --git a/Assets/Scripts/Boss/以撒/YiSaGoust.cs.meta b/Assets/Scripts/Boss/以撒/YiSaGoust.cs.meta new file mode 100644 index 0000000..4c79926 --- /dev/null +++ b/Assets/Scripts/Boss/以撒/YiSaGoust.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6734e02ccd3528e41b593315751e810f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Boss/地藏.meta b/Assets/Scripts/Boss/地藏.meta new file mode 100644 index 0000000..20f0350 --- /dev/null +++ b/Assets/Scripts/Boss/地藏.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 10157fa843dabbb4a8f5b247c02c084f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Bell.cs b/Assets/Scripts/Boss/地藏/Bell.cs similarity index 100% rename from Assets/Scripts/Bell.cs rename to Assets/Scripts/Boss/地藏/Bell.cs diff --git a/Assets/Scripts/Bell.cs.meta b/Assets/Scripts/Boss/地藏/Bell.cs.meta similarity index 100% rename from Assets/Scripts/Bell.cs.meta rename to Assets/Scripts/Boss/地藏/Bell.cs.meta diff --git a/Assets/Scripts/DiZang.cs b/Assets/Scripts/Boss/地藏/DiZang.cs similarity index 100% rename from Assets/Scripts/DiZang.cs rename to Assets/Scripts/Boss/地藏/DiZang.cs diff --git a/Assets/Scripts/DiZang.cs.meta b/Assets/Scripts/Boss/地藏/DiZang.cs.meta similarity index 100% rename from Assets/Scripts/DiZang.cs.meta rename to Assets/Scripts/Boss/地藏/DiZang.cs.meta diff --git a/Assets/Scripts/DiZangsHadn.cs b/Assets/Scripts/Boss/地藏/DiZangsHadn.cs similarity index 100% rename from Assets/Scripts/DiZangsHadn.cs rename to Assets/Scripts/Boss/地藏/DiZangsHadn.cs diff --git a/Assets/Scripts/DiZangsHadn.cs.meta b/Assets/Scripts/Boss/地藏/DiZangsHadn.cs.meta similarity index 100% rename from Assets/Scripts/DiZangsHadn.cs.meta rename to Assets/Scripts/Boss/地藏/DiZangsHadn.cs.meta diff --git a/Assets/Scripts/ThrowingPoint.cs b/Assets/Scripts/Boss/地藏/ThrowingPoint.cs similarity index 100% rename from Assets/Scripts/ThrowingPoint.cs rename to Assets/Scripts/Boss/地藏/ThrowingPoint.cs diff --git a/Assets/Scripts/ThrowingPoint.cs.meta b/Assets/Scripts/Boss/地藏/ThrowingPoint.cs.meta similarity index 100% rename from Assets/Scripts/ThrowingPoint.cs.meta rename to Assets/Scripts/Boss/地藏/ThrowingPoint.cs.meta diff --git a/Assets/Scripts/Boss/木马.meta b/Assets/Scripts/Boss/木马.meta new file mode 100644 index 0000000..92c32cb --- /dev/null +++ b/Assets/Scripts/Boss/木马.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5dda11ffdb64a7b4fbba53d1fb0c6a7d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Boomer.cs b/Assets/Scripts/Boss/木马/Boomer.cs similarity index 100% rename from Assets/Scripts/Boomer.cs rename to Assets/Scripts/Boss/木马/Boomer.cs diff --git a/Assets/Scripts/Boomer.cs.meta b/Assets/Scripts/Boss/木马/Boomer.cs.meta similarity index 100% rename from Assets/Scripts/Boomer.cs.meta rename to Assets/Scripts/Boss/木马/Boomer.cs.meta diff --git a/Assets/Scripts/TrojanHorse.cs b/Assets/Scripts/Boss/木马/TrojanHorse.cs similarity index 100% rename from Assets/Scripts/TrojanHorse.cs rename to Assets/Scripts/Boss/木马/TrojanHorse.cs diff --git a/Assets/Scripts/TrojanHorse.cs.meta b/Assets/Scripts/Boss/木马/TrojanHorse.cs.meta similarity index 100% rename from Assets/Scripts/TrojanHorse.cs.meta rename to Assets/Scripts/Boss/木马/TrojanHorse.cs.meta diff --git a/Assets/Scripts/可交互.meta b/Assets/Scripts/可交互.meta new file mode 100644 index 0000000..a5d6763 --- /dev/null +++ b/Assets/Scripts/可交互.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3c6eb224c698c554eaaa5241aa5f775a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/可交互/Boy.cs b/Assets/Scripts/可交互/Boy.cs new file mode 100644 index 0000000..ff613e1 --- /dev/null +++ b/Assets/Scripts/可交互/Boy.cs @@ -0,0 +1,125 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using DG.Tweening; +using Sirenix.OdinInspector; + +/// +/// 男童类,基督Boss关的那个 +/// +public class Boy : Interactive +{ + // _____ _ _ _ + // | __ \ | | | (_) + // | |__) | _| |__ | |_ ___ + // | ___/ | | | '_ \| | |/ __| + // | | | |_| | |_) | | | (__ + // |_| \__,_|_.__/|_|_|\___| + + public enum State {wait, saving, OK} + /// + /// 救下一个男童需要的时间 + /// + [Header("救下一个男童需要的时间")] + public float saveNeedTime; + + // _____ _ _ + // | __ \ (_) | | + // | |__) | __ ___ ____ _| |_ ___ + // | ___/ '__| \ \ / / _` | __/ _ \ + // | | | | | |\ V / (_| | || __/ + // |_| |_| |_| \_/ \__,_|\__\___| + + private State state; + /// + /// 救这个男童还需要多长时间 + /// + [Header("救这个男童还需要多长时间")][SerializeField][ReadOnly] + private float saveNeedTimeLeft; + private YiSa yiSa; + + // _____ _ _ ____ _ + // / ____| | | | _ \ | | + // | | __ _| | | |_) | __ _ ___| | __ + // | | / _` | | | _ < / _` |/ __| |/ / + // | |___| (_| | | | |_) | (_| | (__| < + // \_____\__,_|_|_|____/ \__,_|\___|_|\_\ + + void Start(){ + Init(); + } + void Update(){ + //若处于被救中状态 + if(state == State.saving){ + //减少被救需要的剩余时间 + saveNeedTimeLeft -= Time.deltaTime; + //判断是否已被救,若已成功被救 + if(saveNeedTimeLeft < 0) + //触发被救事件 + OnSave(); + } + } + + // _ _ _ + // | \ | | | | + // | \| | ___ _ __ _ __ ___ __ _| | + // | . ` |/ _ \| '__| '_ ` _ \ / _` | | + // | |\ | (_) | | | | | | | | (_| | | + // |_| \_|\___/|_| |_| |_| |_|\__,_|_| + private void Init(){ + //找到必须的组件和游戏物体 + yiSa = FindObjectOfType(); + //初始化救这个男童需要的剩余时间 + saveNeedTimeLeft = saveNeedTime; + } + /// + /// 成功被救的时候触发 + /// + private void OnSave(){ + //修改状态至OK + state = State.OK; + //通知主人自己已被救 + yiSa.OnSave(this); + //通知玩家自己已被救 + FindObjectOfType().OnSave(this); + } + + // ______ _ + // | ____| | | + // | |____ _____ _ __ | |_ + // | __\ \ / / _ \ '_ \| __| + // | |___\ V / __/ | | | |_ + // |______\_/ \___|_| |_|\__| + + /// + /// 当玩家对男童使用交互 + /// + public override void OnCall(){ + //只有当自己还在等待的时候,才能触发被救 + if(state == State.wait) + //修改自身状态至saving + state = State.saving; + } + /// + /// 当玩家抬起交互键的时候触发 + /// + public override void OnCallCancel(){ + if(state == State.saving){ + Debug.Log("救人中断了"); + state = State.wait; + saveNeedTimeLeft = saveNeedTime; + } + } + /// + /// 当玩家离开catching范围时触发 + /// + public override void OnLeave(){ + //如果正在救,则触发玩家的中断事件 + if(state == State.saving){ + FindObjectOfType().OnInteractiveException(); + } + } + public override int RetuenState(){ + return (int)state; + } +} diff --git a/Assets/Scripts/可交互/Boy.cs.meta b/Assets/Scripts/可交互/Boy.cs.meta new file mode 100644 index 0000000..692590c --- /dev/null +++ b/Assets/Scripts/可交互/Boy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b37c034eab19bf54384191c0f3c82043 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Coin.cs b/Assets/Scripts/可交互/Coin.cs similarity index 100% rename from Assets/Scripts/Coin.cs rename to Assets/Scripts/可交互/Coin.cs diff --git a/Assets/Scripts/Coin.cs.meta b/Assets/Scripts/可交互/Coin.cs.meta similarity index 100% rename from Assets/Scripts/Coin.cs.meta rename to Assets/Scripts/可交互/Coin.cs.meta diff --git a/Assets/Scripts/MoneyBox.cs b/Assets/Scripts/可交互/MoneyBox.cs similarity index 100% rename from Assets/Scripts/MoneyBox.cs rename to Assets/Scripts/可交互/MoneyBox.cs diff --git a/Assets/Scripts/MoneyBox.cs.meta b/Assets/Scripts/可交互/MoneyBox.cs.meta similarity index 100% rename from Assets/Scripts/MoneyBox.cs.meta rename to Assets/Scripts/可交互/MoneyBox.cs.meta diff --git a/Assets/Scripts/小怪.meta b/Assets/Scripts/小怪.meta new file mode 100644 index 0000000..3fc209f --- /dev/null +++ b/Assets/Scripts/小怪.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4e0cd0f0f375cf14d91889634c738717 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/AiYuPin.cs b/Assets/Scripts/小怪/AiYuPin.cs similarity index 100% rename from Assets/Scripts/AiYuPin.cs rename to Assets/Scripts/小怪/AiYuPin.cs diff --git a/Assets/Scripts/AiYuPin.cs.meta b/Assets/Scripts/小怪/AiYuPin.cs.meta similarity index 100% rename from Assets/Scripts/AiYuPin.cs.meta rename to Assets/Scripts/小怪/AiYuPin.cs.meta diff --git a/Assets/Scripts/JiDu.cs b/Assets/Scripts/小怪/JiDu.cs similarity index 100% rename from Assets/Scripts/JiDu.cs rename to Assets/Scripts/小怪/JiDu.cs diff --git a/Assets/Scripts/JiDu.cs.meta b/Assets/Scripts/小怪/JiDu.cs.meta similarity index 100% rename from Assets/Scripts/JiDu.cs.meta rename to Assets/Scripts/小怪/JiDu.cs.meta diff --git a/Assets/Scripts/LightningAttackAdministrator.cs b/Assets/Scripts/小怪/LightningAttackAdministrator.cs similarity index 100% rename from Assets/Scripts/LightningAttackAdministrator.cs rename to Assets/Scripts/小怪/LightningAttackAdministrator.cs diff --git a/Assets/Scripts/LightningAttackAdministrator.cs.meta b/Assets/Scripts/小怪/LightningAttackAdministrator.cs.meta similarity index 100% rename from Assets/Scripts/LightningAttackAdministrator.cs.meta rename to Assets/Scripts/小怪/LightningAttackAdministrator.cs.meta diff --git a/Assets/Scripts/NormalEnemy.cs b/Assets/Scripts/小怪/NormalEnemy.cs similarity index 100% rename from Assets/Scripts/NormalEnemy.cs rename to Assets/Scripts/小怪/NormalEnemy.cs diff --git a/Assets/Scripts/NormalEnemy.cs.meta b/Assets/Scripts/小怪/NormalEnemy.cs.meta similarity index 100% rename from Assets/Scripts/NormalEnemy.cs.meta rename to Assets/Scripts/小怪/NormalEnemy.cs.meta diff --git a/Assets/Scripts/YiSiLan.cs b/Assets/Scripts/小怪/YiSiLan.cs similarity index 100% rename from Assets/Scripts/YiSiLan.cs rename to Assets/Scripts/小怪/YiSiLan.cs diff --git a/Assets/Scripts/YiSiLan.cs.meta b/Assets/Scripts/小怪/YiSiLan.cs.meta similarity index 100% rename from Assets/Scripts/YiSiLan.cs.meta rename to Assets/Scripts/小怪/YiSiLan.cs.meta diff --git a/Assets/Scripts/抽象.meta b/Assets/Scripts/抽象.meta new file mode 100644 index 0000000..9dd3d17 --- /dev/null +++ b/Assets/Scripts/抽象.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a28c3501b715f4d459b9b7106b6ad7ae +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Enemy.cs b/Assets/Scripts/抽象/Enemy.cs similarity index 100% rename from Assets/Scripts/Enemy.cs rename to Assets/Scripts/抽象/Enemy.cs diff --git a/Assets/Scripts/Enemy.cs.meta b/Assets/Scripts/抽象/Enemy.cs.meta similarity index 100% rename from Assets/Scripts/Enemy.cs.meta rename to Assets/Scripts/抽象/Enemy.cs.meta diff --git a/Assets/Scripts/HorseGround.cs b/Assets/Scripts/抽象/HorseGround.cs similarity index 100% rename from Assets/Scripts/HorseGround.cs rename to Assets/Scripts/抽象/HorseGround.cs diff --git a/Assets/Scripts/HorseGround.cs.meta b/Assets/Scripts/抽象/HorseGround.cs.meta similarity index 100% rename from Assets/Scripts/HorseGround.cs.meta rename to Assets/Scripts/抽象/HorseGround.cs.meta diff --git a/Assets/Scripts/Interactive.cs b/Assets/Scripts/抽象/Interactive.cs similarity index 71% rename from Assets/Scripts/Interactive.cs rename to Assets/Scripts/抽象/Interactive.cs index da67add..e69b208 100644 --- a/Assets/Scripts/Interactive.cs +++ b/Assets/Scripts/抽象/Interactive.cs @@ -13,7 +13,8 @@ public class Interactive : MonoBehaviour /// public enum ItemName{ 塞钱箱, - 硬币 + 硬币, + 男童 }; public ItemName itemName; @@ -29,9 +30,21 @@ public class Interactive : MonoBehaviour //如果目前退出当前交互区域的时候,玩家的捕捉物体是自己,才把玩家的捕捉清空。否则说明玩家在推出前就捕捉到了新的 //对象。这样是用来解决排布密集的可交互物体的问题 if(player.catching == this)player.catching = null; + //触发一个离开事件 + OnLeave(); } } - public virtual void OnCall(){} - public virtual void OnBeGaveMoney(){} + + /// + /// 交互键按下触发 + /// + public virtual void OnCall(){} + public virtual void OnBeGaveMoney(){} + /// + /// 交互键抬起触发 + /// + public virtual void OnCallCancel(){} + public virtual void OnLeave(){} + public virtual int RetuenState(){return 0;} } diff --git a/Assets/Scripts/Interactive.cs.meta b/Assets/Scripts/抽象/Interactive.cs.meta similarity index 100% rename from Assets/Scripts/Interactive.cs.meta rename to Assets/Scripts/抽象/Interactive.cs.meta diff --git a/Assets/Scripts/VibrationManager.cs b/Assets/Scripts/抽象/VibrationManager.cs similarity index 100% rename from Assets/Scripts/VibrationManager.cs rename to Assets/Scripts/抽象/VibrationManager.cs diff --git a/Assets/Scripts/VibrationManager.cs.meta b/Assets/Scripts/抽象/VibrationManager.cs.meta similarity index 100% rename from Assets/Scripts/VibrationManager.cs.meta rename to Assets/Scripts/抽象/VibrationManager.cs.meta diff --git a/Assets/Scripts/玩家.meta b/Assets/Scripts/玩家.meta new file mode 100644 index 0000000..633c4e5 --- /dev/null +++ b/Assets/Scripts/玩家.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dc30443dcaaf65e4eac14f3668ed9ca0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Hammer.cs b/Assets/Scripts/玩家/Hammer.cs similarity index 100% rename from Assets/Scripts/Hammer.cs rename to Assets/Scripts/玩家/Hammer.cs diff --git a/Assets/Scripts/Hammer.cs.meta b/Assets/Scripts/玩家/Hammer.cs.meta similarity index 100% rename from Assets/Scripts/Hammer.cs.meta rename to Assets/Scripts/玩家/Hammer.cs.meta diff --git a/Assets/Scripts/MyPlayer.cs b/Assets/Scripts/玩家/MyPlayer.cs similarity index 93% rename from Assets/Scripts/MyPlayer.cs rename to Assets/Scripts/玩家/MyPlayer.cs index 1635fd7..ee92336 100644 --- a/Assets/Scripts/MyPlayer.cs +++ b/Assets/Scripts/玩家/MyPlayer.cs @@ -125,6 +125,11 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj ///反击侦察器组件 /// private CounterScout counterScout; + /// + /// 此时自己是否正在与物体交互 + /// + [Header("此时自己是否正在与物体交互")][ReadOnly][SerializeField][FoldoutGroup("状态")] + private bool isInteractive = false; @@ -182,14 +187,18 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj atkMethodMagnification.Add(AtkMethod.反弹炸弹,2); } - //移动函数,处理水平方向移动 + //移动函数,每帧运行一次,处理水平方向移动 private void Move() { + //只有不受击\不攻击的情况下可以移动 if(inControl && !isAttacking){ //直接修改刚体速度 m_rigidbody.velocity = new Vector2(inputDir * speed,//水平方向以输入方向乘以预设速度大小 m_rigidbody.velocity.y);//垂直方向不变 } + if(isInteractive){ + m_rigidbody.velocity = Vector2.zero; + } } @@ -232,7 +241,7 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj { //移动动画 if (inputDir == 0) m_Animator.SetBool("isWalking", false); - else m_Animator.SetBool("isWalking", true); + else if(!isInteractive)m_Animator.SetBool("isWalking", true); //跳跃动画 m_Animator.SetBool("isJumping",isJumping); //下落动画 @@ -387,7 +396,9 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj } public void OnInteractive(InputAction.CallbackContext context){ + //当按下交互键 if(context.performed && catching != null){ + //根据所捕获物体的不同,区分一下操作 switch(catching.itemName){ case Interactive.ItemName.塞钱箱 : if( @@ -402,8 +413,23 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj IPickedACoin(); catching.OnCall(); break; + case Interactive.ItemName.男童 : + if(catching.RetuenState() == (int)Boy.State.wait){ + catching.OnCall(); + isInteractive = true; + } + break; + default : + catching.OnCall(); + isInteractive = true; + break; } } + //当抬起交互键触发OnCallCancle + if(context.canceled && catching != null){ + catching.OnCallCancel(); + isInteractive = false; + } } // ______ _ @@ -514,6 +540,21 @@ public class MyPlayer : MonoBehaviour, Boomer.I_CanBeBoomedObj //恢复减速减益 speed *= 2f; } + + /// + /// 当交互中断,从可交互物体触发 + /// + public void OnInteractiveException(){ + Debug.Log("我超!什么玩意"); + isInteractive = false; + } + /// + /// 当有男童被救从男童触发 + /// + /// + public void OnSave(Boy boy){ + isInteractive = false; + } // _____ _ __ diff --git a/Assets/Scripts/MyPlayer.cs.meta b/Assets/Scripts/玩家/MyPlayer.cs.meta similarity index 100% rename from Assets/Scripts/MyPlayer.cs.meta rename to Assets/Scripts/玩家/MyPlayer.cs.meta diff --git a/Assets/Scripts/Sickle.cs b/Assets/Scripts/玩家/Sickle.cs similarity index 100% rename from Assets/Scripts/Sickle.cs rename to Assets/Scripts/玩家/Sickle.cs diff --git a/Assets/Scripts/Sickle.cs.meta b/Assets/Scripts/玩家/Sickle.cs.meta similarity index 100% rename from Assets/Scripts/Sickle.cs.meta rename to Assets/Scripts/玩家/Sickle.cs.meta diff --git a/Assets/Sprites/早期临时混乱/3关boss.png b/Assets/Sprites/早期临时混乱/3关boss.png new file mode 100644 index 0000000000000000000000000000000000000000..a08453e44f21b7c42946114c747dbbae85f09a0f GIT binary patch literal 4750 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 literal 0 HcmV?d00001 diff --git a/Assets/Sprites/早期临时混乱/3关boss.png.meta b/Assets/Sprites/早期临时混乱/3关boss.png.meta new file mode 100644 index 0000000..8fd0dc7 --- /dev/null +++ b/Assets/Sprites/早期临时混乱/3关boss.png.meta @@ -0,0 +1,132 @@ +fileFormatVersion: 2 +guid: 11b9cff6c92a53541a1acf380bc46247 +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 200 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + - serializedVersion: 3 + buildTarget: Android + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 5e97eb03825dee720800000000000000 + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Logs/ApiUpdaterCheck.txt b/Logs/ApiUpdaterCheck.txt index 762c935..6539a92 100644 --- a/Logs/ApiUpdaterCheck.txt +++ b/Logs/ApiUpdaterCheck.txt @@ -165,3 +165,23 @@ C# parse time : 221ms candidates check time : 46ms console write time : 0ms +[api-updater (non-obsolete-error-filter)] 2021/12/16 19:48:01 : Starting D:/unity/Editor/2020.3.20f1c1/Editor/Data/Tools/ScriptUpdater/APIUpdater.NonObsoleteApiUpdaterDetector.exe +[api-updater (non-obsolete-error-filter)] +---------------------------------- +jit/startup time : 789.0123ms +moved types parse time: 57ms +candidates parse time : 1ms +C# parse time : 575ms +candidates check time : 46ms +console write time : 0ms + +[api-updater (non-obsolete-error-filter)] 2021/12/16 19:48:19 : Starting D:/unity/Editor/2020.3.20f1c1/Editor/Data/Tools/ScriptUpdater/APIUpdater.NonObsoleteApiUpdaterDetector.exe +[api-updater (non-obsolete-error-filter)] +---------------------------------- +jit/startup time : 74.0739ms +moved types parse time: 59ms +candidates parse time : 1ms +C# parse time : 193ms +candidates check time : 46ms +console write time : 0ms +