diff --git a/assets/Data/GameSettings.json b/assets/Data/GameSettings.json index b2c6228..ca4a25b 100644 --- a/assets/Data/GameSettings.json +++ b/assets/Data/GameSettings.json @@ -471,7 +471,7 @@ "individualEnemySpawners": [ { "common": { - "enemyId": "BasicEnemy", + "enemyId": "BasicBoss", "startDelay": 0, "stopDelay": 59, "cooldown": 1 diff --git a/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph b/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph new file mode 100644 index 0000000..8cd7dbe --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph @@ -0,0 +1,174 @@ +[ + { + "__type__": "cc.animation.AnimationGraph", + "_name": "", + "_objFlags": 0, + "_native": "", + "_layers": [ + { + "__id__": 1 + } + ], + "_variables": {} + }, + { + "__type__": "cc.animation.Layer", + "_stateMachine": { + "__id__": 2 + }, + "name": "", + "weight": 1, + "mask": null + }, + { + "__type__": "cc.animation.StateMachine", + "_states": [ + { + "__id__": 3 + }, + { + "__id__": 4 + }, + { + "__id__": 5 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + } + ], + "_transitions": [ + { + "__id__": 10 + }, + { + "__id__": 11 + } + ], + "_entryState": { + "__id__": 3 + }, + "_exitState": { + "__id__": 4 + }, + "_anyState": { + "__id__": 5 + } + }, + { + "__type__": "cc.animation.State", + "__editorExtras__": { + "centerX": -143, + "centerY": -22, + "id": "16724216539930.48119152753701666" + }, + "name": "Entry" + }, + { + "__type__": "cc.animation.State", + "name": "Exit" + }, + { + "__type__": "cc.animation.State", + "__editorExtras__": { + "centerX": 126, + "centerY": 0, + "id": "16724216387450.1472316540497729" + }, + "name": "Any" + }, + { + "__type__": "cc.animation.Motion", + "__editorExtras__": { + "centerX": 14, + "centerY": -116.5, + "id": "16724216351510.5534679250082009" + }, + "name": "Shoot", + "_components": [], + "motion": { + "__id__": 7 + }, + "speed": 1, + "speedMultiplier": "", + "speedMultiplierEnabled": false + }, + { + "__type__": "cc.animation.ClipMotion", + "__editorExtras__": { + "id": "16724216351480.6384312560331595", + "centerX": 0, + "centerY": 0, + "name": "" + }, + "clip": { + "__uuid__": "02f5cb0a-b58e-418e-aa60-45f28f5a4e9f", + "__expectedType__": "cc.AnimationClip" + } + }, + { + "__type__": "cc.animation.Motion", + "__editorExtras__": { + "centerX": 14, + "centerY": -31.5, + "id": "16724216351510.4468726373332348" + }, + "name": "Move", + "_components": [], + "motion": { + "__id__": 9 + }, + "speed": 1, + "speedMultiplier": "", + "speedMultiplierEnabled": false + }, + { + "__type__": "cc.animation.ClipMotion", + "__editorExtras__": { + "id": "16724216351510.04360222304205896", + "centerX": 0, + "centerY": 0, + "name": "" + }, + "clip": { + "__uuid__": "01f039bc-a24c-45e7-a938-336d2111f3dc", + "__expectedType__": "cc.AnimationClip" + } + }, + { + "__type__": "cc.animation.AnimationTransition", + "from": { + "__id__": 8 + }, + "to": { + "__id__": 6 + }, + "conditions": [], + "duration": 0.3, + "relativeDuration": false, + "exitConditionEnabled": true, + "destinationStart": 0, + "relativeDestinationStart": false, + "interruptionSource": 0, + "_exitCondition": 1 + }, + { + "__type__": "cc.animation.AnimationTransition", + "from": { + "__id__": 6 + }, + "to": { + "__id__": 8 + }, + "conditions": [], + "duration": 0.3, + "relativeDuration": false, + "exitConditionEnabled": true, + "destinationStart": 0, + "relativeDestinationStart": false, + "interruptionSource": 0, + "_exitCondition": 1 + } +] \ No newline at end of file diff --git a/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph.meta b/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph.meta new file mode 100644 index 0000000..d111c1e --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/Barbarian/Animation Graph.animgraph.meta @@ -0,0 +1,11 @@ +{ + "ver": "1.1.0", + "importer": "animation-graph", + "imported": true, + "uuid": "10c1208e-fa86-4f5b-851b-7fb7c52ebcf1", + "files": [ + ".json" + ], + "subMetas": {}, + "userData": {} +} diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim b/assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim similarity index 87% rename from assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim rename to assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim index 55a97ac..2da7a79 100644 --- a/assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim +++ b/assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim @@ -1,7 +1,7 @@ [ { "__type__": "cc.AnimationClip", - "_name": "Hit", + "_name": "Attack", "_objFlags": 0, "__editorExtras__": { "embeddedPlayerGroups": [] @@ -9,7 +9,7 @@ "_native": "", "sample": 60, "speed": 1, - "wrapMode": 1, + "wrapMode": 2, "enableTrsBlending": false, "_duration": 1, "_hash": 500763545, @@ -115,19 +115,19 @@ }, "_channels": [ { - "__id__": 10 + "__id__": 11 }, { - "__id__": 12 + "__id__": 13 }, { - "__id__": 14 + "__id__": 15 }, { - "__id__": 16 + "__id__": 17 } ], - "_nComponents": 3 + "_nComponents": 2 }, { "__type__": "cc.animation.TrackPath", @@ -135,17 +135,24 @@ { "__id__": 9 }, - "position" + { + "__id__": 10 + }, + "anchorPoint" ] }, { "__type__": "cc.animation.HierarchyPath", "path": "Graphics" }, + { + "__type__": "cc.animation.ComponentPath", + "component": "cc.UITransform" + }, { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 11 + "__id__": 12 } }, { @@ -158,7 +165,7 @@ "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 32, + "value": 0.3499999940395355, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, @@ -172,7 +179,7 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 13 + "__id__": 14 } }, { @@ -185,7 +192,7 @@ "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 0, + "value": 0.5, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, @@ -199,34 +206,20 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 15 + "__id__": 16 } }, { "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ - { - "__type__": "cc.RealKeyframeValue", - "interpolationMode": 0, - "tangentWeightMode": 0, - "value": 0, - "rightTangent": 0, - "rightTangentWeight": 1, - "leftTangent": 0, - "leftTangentWeight": 1, - "easingMethod": 0 - } - ], + "_times": [], + "_values": [], "preExtrapolation": 1, "postExtrapolation": 1 }, { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 17 + "__id__": 18 } }, { diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim.meta b/assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim.meta similarity index 90% rename from assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim.meta rename to assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim.meta index 74441b9..cda42f8 100644 --- a/assets/Media/Animation/Game/Enemies/BossOrcKing/Hit.anim.meta +++ b/assets/Media/Animation/Game/Enemies/BossOrcKing/Attack.anim.meta @@ -8,6 +8,6 @@ ], "subMetas": {}, "userData": { - "name": "Hit" + "name": "Attack" } } diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim.meta b/assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim.meta deleted file mode 100644 index 9653558..0000000 --- a/assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim.meta +++ /dev/null @@ -1 +0,0 @@ -{"ver":"2.0.3","importer":"animation-clip","imported":true,"uuid":"f5f4561e-514f-48db-940f-d534eb6a4073","files":[".cconb"],"subMetas":{},"userData":{"name":"Move"}} diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim b/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim new file mode 100644 index 0000000..caa82c7 --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim @@ -0,0 +1,105 @@ +[ + { + "__type__": "cc.AnimationClip", + "_name": "Run", + "_objFlags": 0, + "__editorExtras__": { + "embeddedPlayerGroups": [] + }, + "_native": "", + "sample": 60, + "speed": 1, + "wrapMode": 2, + "enableTrsBlending": false, + "_duration": 1.2, + "_hash": 500763545, + "_tracks": [ + { + "__id__": 1 + } + ], + "_exoticAnimation": null, + "_events": [], + "_embeddedPlayers": [] + }, + { + "__type__": "cc.animation.ObjectTrack", + "_binding": { + "__type__": "cc.animation.TrackBinding", + "path": { + "__id__": 2 + } + }, + "_channel": { + "__id__": 5 + } + }, + { + "__type__": "cc.animation.TrackPath", + "_paths": [ + { + "__id__": 3 + }, + { + "__id__": 4 + }, + "spriteFrame" + ] + }, + { + "__type__": "cc.animation.HierarchyPath", + "path": "Graphics" + }, + { + "__type__": "cc.animation.ComponentPath", + "component": "cc.Sprite" + }, + { + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 6 + } + }, + { + "__type__": "cc.ObjectCurve", + "_times": [ + 0, + 0.2, + 0.4, + 0.6, + 0.8, + 1, + 1.1833333333333333 + ], + "_values": [ + { + "__uuid__": "38d5b6fa-5846-475e-be1c-53c1de249680@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "dedb1480-df6b-413c-a6a9-e77239cfb701@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "c9022d9f-b94f-4dd6-a4de-c5307b1cfa0e@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "ddb4559b-7178-408d-b8ba-7b3189e6f495@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "f6f22ec1-ebec-4118-9174-e484228b79cb@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "90cd9124-8828-4d53-940f-d67567525a42@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "90cd9124-8828-4d53-940f-d67567525a42@f9941", + "__expectedType__": "cc.SpriteFrame" + } + ] + } +] \ No newline at end of file diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim.meta b/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim.meta new file mode 100644 index 0000000..e1f0950 --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/BossOrcKing/Run.anim.meta @@ -0,0 +1,13 @@ +{ + "ver": "2.0.3", + "importer": "animation-clip", + "imported": true, + "uuid": "f5f4561e-514f-48db-940f-d534eb6a4073", + "files": [ + ".cconb" + ], + "subMetas": {}, + "userData": { + "name": "Run" + } +} diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim similarity index 85% rename from assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim rename to assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim index 7c8c1b5..307b766 100644 --- a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim +++ b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim @@ -1,7 +1,7 @@ [ { "__type__": "cc.AnimationClip", - "_name": "Hit", + "_name": "Attack", "_objFlags": 0, "__editorExtras__": { "embeddedPlayerGroups": [] @@ -9,7 +9,7 @@ "_native": "", "sample": 60, "speed": 1, - "wrapMode": 1, + "wrapMode": 2, "enableTrsBlending": false, "_duration": 1.2, "_hash": 500763545, @@ -115,19 +115,19 @@ }, "_channels": [ { - "__id__": 10 + "__id__": 11 }, { - "__id__": 12 + "__id__": 13 }, { - "__id__": 14 + "__id__": 15 }, { - "__id__": 16 + "__id__": 17 } ], - "_nComponents": 3 + "_nComponents": 2 }, { "__type__": "cc.animation.TrackPath", @@ -135,17 +135,24 @@ { "__id__": 9 }, - "position" + { + "__id__": 10 + }, + "anchorPoint" ] }, { "__type__": "cc.animation.HierarchyPath", "path": "Graphics" }, + { + "__type__": "cc.animation.ComponentPath", + "component": "cc.UITransform" + }, { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 11 + "__id__": 12 } }, { @@ -158,12 +165,15 @@ "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 8, + "value": 0.4, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, "leftTangentWeight": 1, - "easingMethod": 0 + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } } ], "preExtrapolation": 1, @@ -172,7 +182,7 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 13 + "__id__": 14 } }, { @@ -185,12 +195,15 @@ "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 0, + "value": 0.5, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, "leftTangentWeight": 1, - "easingMethod": 0 + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } } ], "preExtrapolation": 1, @@ -199,34 +212,20 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 15 + "__id__": 16 } }, { "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ - { - "__type__": "cc.RealKeyframeValue", - "interpolationMode": 0, - "tangentWeightMode": 0, - "value": 0, - "rightTangent": 0, - "rightTangentWeight": 1, - "leftTangent": 0, - "leftTangentWeight": 1, - "easingMethod": 0 - } - ], + "_times": [], + "_values": [], "preExtrapolation": 1, "postExtrapolation": 1 }, { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 17 + "__id__": 18 } }, { diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim.meta b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim.meta similarity index 90% rename from assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim.meta rename to assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim.meta index 08ca45f..48503a1 100644 --- a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Hit.anim.meta +++ b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Attack.anim.meta @@ -8,6 +8,6 @@ ], "subMetas": {}, "userData": { - "name": "Hit" + "name": "Attack" } } diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim.meta b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim.meta deleted file mode 100644 index 3bb0d27..0000000 --- a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim.meta +++ /dev/null @@ -1 +0,0 @@ -{"ver":"2.0.3","importer":"animation-clip","imported":true,"uuid":"17cd09d9-cdb4-4467-ae38-4d61c12588e6","files":[".cconb"],"subMetas":{},"userData":{"name":"Move"}} diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim new file mode 100644 index 0000000..cf7f749 --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim @@ -0,0 +1,105 @@ +[ + { + "__type__": "cc.AnimationClip", + "_name": "Move", + "_objFlags": 0, + "__editorExtras__": { + "embeddedPlayerGroups": [] + }, + "_native": "", + "sample": 60, + "speed": 1, + "wrapMode": 2, + "enableTrsBlending": false, + "_duration": 1.25, + "_hash": 500763545, + "_tracks": [ + { + "__id__": 1 + } + ], + "_exoticAnimation": null, + "_events": [], + "_embeddedPlayers": [] + }, + { + "__type__": "cc.animation.ObjectTrack", + "_binding": { + "__type__": "cc.animation.TrackBinding", + "path": { + "__id__": 2 + } + }, + "_channel": { + "__id__": 5 + } + }, + { + "__type__": "cc.animation.TrackPath", + "_paths": [ + { + "__id__": 3 + }, + { + "__id__": 4 + }, + "spriteFrame" + ] + }, + { + "__type__": "cc.animation.HierarchyPath", + "path": "Graphics" + }, + { + "__type__": "cc.animation.ComponentPath", + "component": "cc.Sprite" + }, + { + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 6 + } + }, + { + "__type__": "cc.ObjectCurve", + "_times": [ + 0, + 0.26666666666666666, + 0.4666666666666667, + 0.6666666666666666, + 0.8666666666666667, + 1.0666666666666667, + 1.2333333333333334 + ], + "_values": [ + { + "__uuid__": "d609c5a5-5c06-45ba-8934-34a42df5ceca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "e658fd40-f4e5-4d89-84b1-310180f4b7de@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "4ce10baf-806b-4417-bc79-9ee731dfb1ca@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "3f662b5e-e9d1-42b3-8a07-c280956e6fe0@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "5aab8ada-5346-4d53-a88c-978b9f4f159b@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "814f0ac2-bf60-40a6-aa3e-16c91750f7b6@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + { + "__uuid__": "814f0ac2-bf60-40a6-aa3e-16c91750f7b6@f9941", + "__expectedType__": "cc.SpriteFrame" + } + ] + } +] \ No newline at end of file diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim.meta b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim.meta new file mode 100644 index 0000000..e9154ea --- /dev/null +++ b/assets/Media/Animation/Game/Enemies/BossStoneGolem/Run.anim.meta @@ -0,0 +1,13 @@ +{ + "ver": "2.0.3", + "importer": "animation-clip", + "imported": true, + "uuid": "17cd09d9-cdb4-4467-ae38-4d61c12588e6", + "files": [ + ".cconb" + ], + "subMetas": {}, + "userData": { + "name": "Run" + } +} diff --git a/assets/Media/Animation/ScreenFader.meta b/assets/Media/Animation/ScreenFader.meta new file mode 100644 index 0000000..975de36 --- /dev/null +++ b/assets/Media/Animation/ScreenFader.meta @@ -0,0 +1,12 @@ +{ + "ver": "1.1.0", + "importer": "directory", + "imported": true, + "uuid": "d44728e2-a63e-4f64-84c8-6aa7744cf265", + "files": [], + "subMetas": {}, + "userData": { + "compressionType": {}, + "isRemoteBundle": {} + } +} diff --git a/assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim b/assets/Media/Animation/ScreenFader/Close.anim similarity index 58% rename from assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim rename to assets/Media/Animation/ScreenFader/Close.anim index 10a3f6b..fd04941 100644 --- a/assets/Media/Animation/Game/Enemies/BossOrcKing/Move.anim +++ b/assets/Media/Animation/ScreenFader/Close.anim @@ -1,7 +1,7 @@ [ { "__type__": "cc.AnimationClip", - "_name": "Move", + "_name": "Close", "_objFlags": 0, "__editorExtras__": { "embeddedPlayerGroups": [] @@ -9,16 +9,13 @@ "_native": "", "sample": 60, "speed": 1, - "wrapMode": 2, + "wrapMode": 1, "enableTrsBlending": false, - "_duration": 1.2, + "_duration": 0.3333333333333333, "_hash": 500763545, "_tracks": [ { "__id__": 1 - }, - { - "__id__": 7 } ], "_exoticAnimation": null, @@ -26,16 +23,27 @@ "_embeddedPlayers": [] }, { - "__type__": "cc.animation.ObjectTrack", + "__type__": "cc.animation.ColorTrack", "_binding": { "__type__": "cc.animation.TrackBinding", "path": { "__id__": 2 } }, - "_channel": { - "__id__": 5 - } + "_channels": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + }, + { + "__id__": 10 + } + ] }, { "__type__": "cc.animation.TrackPath", @@ -43,16 +51,9 @@ { "__id__": 3 }, - { - "__id__": 4 - }, - "spriteFrame" + "color" ] }, - { - "__type__": "cc.animation.HierarchyPath", - "path": "Graphics" - }, { "__type__": "cc.animation.ComponentPath", "component": "cc.Sprite" @@ -60,87 +61,137 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 6 + "__id__": 5 } }, { - "__type__": "cc.ObjectCurve", + "__type__": "cc.RealCurve", "_times": [ 0, - 0.2, - 0.4, - 0.6, - 0.8, - 1, - 1.1833333333333333 + 0.3333333333333333 ], "_values": [ { - "__uuid__": "38d5b6fa-5846-475e-be1c-53c1de249680@f9941", - "__expectedType__": "cc.SpriteFrame" + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } }, { - "__uuid__": "dedb1480-df6b-413c-a6a9-e77239cfb701@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "c9022d9f-b94f-4dd6-a4de-c5307b1cfa0e@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "ddb4559b-7178-408d-b8ba-7b3189e6f495@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "f6f22ec1-ebec-4118-9174-e484228b79cb@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "90cd9124-8828-4d53-940f-d67567525a42@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "90cd9124-8828-4d53-940f-d67567525a42@f9941", - "__expectedType__": "cc.SpriteFrame" - } - ] - }, - { - "__type__": "cc.animation.VectorTrack", - "_binding": { - "__type__": "cc.animation.TrackBinding", - "path": { - "__id__": 8 - } - }, - "_channels": [ - { - "__id__": 10 - }, - { - "__id__": 12 - }, - { - "__id__": 14 - }, - { - "__id__": 16 + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } } ], - "_nComponents": 3 + "preExtrapolation": 1, + "postExtrapolation": 1 }, { - "__type__": "cc.animation.TrackPath", - "_paths": [ + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 7 + } + }, + { + "__type__": "cc.RealCurve", + "_times": [ + 0, + 0.3333333333333333 + ], + "_values": [ { - "__id__": 9 + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } }, - "position" - ] + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + } + ], + "preExtrapolation": 1, + "postExtrapolation": 1 }, { - "__type__": "cc.animation.HierarchyPath", - "path": "Graphics" + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 9 + } + }, + { + "__type__": "cc.RealCurve", + "_times": [ + 0, + 0.3333333333333333 + ], + "_values": [ + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + }, + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + } + ], + "preExtrapolation": 1, + "postExtrapolation": 1 }, { "__type__": "cc.animation.Channel", @@ -151,14 +202,15 @@ { "__type__": "cc.RealCurve", "_times": [ - 0 + 0, + 0.3333333333333333 ], "_values": [ { "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 16, + "value": 255, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, @@ -167,23 +219,7 @@ "__editorExtras__": { "tangentMode": 0 } - } - ], - "preExtrapolation": 1, - "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 13 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ + }, { "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, @@ -201,48 +237,5 @@ ], "preExtrapolation": 1, "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 15 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ - { - "__type__": "cc.RealKeyframeValue", - "interpolationMode": 0, - "tangentWeightMode": 0, - "value": 0, - "rightTangent": 0, - "rightTangentWeight": 1, - "leftTangent": 0, - "leftTangentWeight": 1, - "easingMethod": 0, - "__editorExtras__": { - "tangentMode": 0 - } - } - ], - "preExtrapolation": 1, - "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 17 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [], - "_values": [], - "preExtrapolation": 1, - "postExtrapolation": 1 } ] \ No newline at end of file diff --git a/assets/Media/Animation/ScreenFader/Close.anim.meta b/assets/Media/Animation/ScreenFader/Close.anim.meta new file mode 100644 index 0000000..6d79cf6 --- /dev/null +++ b/assets/Media/Animation/ScreenFader/Close.anim.meta @@ -0,0 +1,13 @@ +{ + "ver": "2.0.3", + "importer": "animation-clip", + "imported": true, + "uuid": "03c7a83d-bc15-48b9-b343-7c930ab88d2c", + "files": [ + ".cconb" + ], + "subMetas": {}, + "userData": { + "name": "Close" + } +} diff --git a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim b/assets/Media/Animation/ScreenFader/Open.anim similarity index 58% rename from assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim rename to assets/Media/Animation/ScreenFader/Open.anim index 82e5342..fe4b65f 100644 --- a/assets/Media/Animation/Game/Enemies/BossStoneGolem/Move.anim +++ b/assets/Media/Animation/ScreenFader/Open.anim @@ -1,7 +1,7 @@ [ { "__type__": "cc.AnimationClip", - "_name": "Move", + "_name": "Open", "_objFlags": 0, "__editorExtras__": { "embeddedPlayerGroups": [] @@ -9,16 +9,13 @@ "_native": "", "sample": 60, "speed": 1, - "wrapMode": 2, + "wrapMode": 1, "enableTrsBlending": false, - "_duration": 1.25, + "_duration": 0.3333333333333333, "_hash": 500763545, "_tracks": [ { "__id__": 1 - }, - { - "__id__": 7 } ], "_exoticAnimation": null, @@ -26,16 +23,27 @@ "_embeddedPlayers": [] }, { - "__type__": "cc.animation.ObjectTrack", + "__type__": "cc.animation.ColorTrack", "_binding": { "__type__": "cc.animation.TrackBinding", "path": { "__id__": 2 } }, - "_channel": { - "__id__": 5 - } + "_channels": [ + { + "__id__": 4 + }, + { + "__id__": 6 + }, + { + "__id__": 8 + }, + { + "__id__": 10 + } + ] }, { "__type__": "cc.animation.TrackPath", @@ -43,16 +51,9 @@ { "__id__": 3 }, - { - "__id__": 4 - }, - "spriteFrame" + "color" ] }, - { - "__type__": "cc.animation.HierarchyPath", - "path": "Graphics" - }, { "__type__": "cc.animation.ComponentPath", "component": "cc.Sprite" @@ -60,87 +61,137 @@ { "__type__": "cc.animation.Channel", "_curve": { - "__id__": 6 + "__id__": 5 } }, { - "__type__": "cc.ObjectCurve", + "__type__": "cc.RealCurve", "_times": [ 0, - 0.26666666666666666, - 0.4666666666666667, - 0.6666666666666666, - 0.8666666666666667, - 1.0666666666666667, - 1.2333333333333334 + 0.3333333333333333 ], "_values": [ { - "__uuid__": "d609c5a5-5c06-45ba-8934-34a42df5ceca@f9941", - "__expectedType__": "cc.SpriteFrame" + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } }, { - "__uuid__": "e658fd40-f4e5-4d89-84b1-310180f4b7de@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "4ce10baf-806b-4417-bc79-9ee731dfb1ca@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "3f662b5e-e9d1-42b3-8a07-c280956e6fe0@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "5aab8ada-5346-4d53-a88c-978b9f4f159b@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "814f0ac2-bf60-40a6-aa3e-16c91750f7b6@f9941", - "__expectedType__": "cc.SpriteFrame" - }, - { - "__uuid__": "814f0ac2-bf60-40a6-aa3e-16c91750f7b6@f9941", - "__expectedType__": "cc.SpriteFrame" - } - ] - }, - { - "__type__": "cc.animation.VectorTrack", - "_binding": { - "__type__": "cc.animation.TrackBinding", - "path": { - "__id__": 8 - } - }, - "_channels": [ - { - "__id__": 10 - }, - { - "__id__": 12 - }, - { - "__id__": 14 - }, - { - "__id__": 16 + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } } ], - "_nComponents": 3 + "preExtrapolation": 1, + "postExtrapolation": 1 }, { - "__type__": "cc.animation.TrackPath", - "_paths": [ + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 7 + } + }, + { + "__type__": "cc.RealCurve", + "_times": [ + 0, + 0.3333333333333333 + ], + "_values": [ { - "__id__": 9 + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } }, - "position" - ] + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + } + ], + "preExtrapolation": 1, + "postExtrapolation": 1 }, { - "__type__": "cc.animation.HierarchyPath", - "path": "Graphics" + "__type__": "cc.animation.Channel", + "_curve": { + "__id__": 9 + } + }, + { + "__type__": "cc.RealCurve", + "_times": [ + 0, + 0.3333333333333333 + ], + "_values": [ + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + }, + { + "__type__": "cc.RealKeyframeValue", + "interpolationMode": 0, + "tangentWeightMode": 0, + "value": 0, + "rightTangent": 0, + "rightTangentWeight": 1, + "leftTangent": 0, + "leftTangentWeight": 1, + "easingMethod": 0, + "__editorExtras__": { + "tangentMode": 0 + } + } + ], + "preExtrapolation": 1, + "postExtrapolation": 1 }, { "__type__": "cc.animation.Channel", @@ -151,7 +202,8 @@ { "__type__": "cc.RealCurve", "_times": [ - 0 + 0, + 0.3333333333333333 ], "_values": [ { @@ -167,28 +219,12 @@ "__editorExtras__": { "tangentMode": 0 } - } - ], - "preExtrapolation": 1, - "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 13 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ + }, { "__type__": "cc.RealKeyframeValue", "interpolationMode": 0, "tangentWeightMode": 0, - "value": 0, + "value": 255, "rightTangent": 0, "rightTangentWeight": 1, "leftTangent": 0, @@ -201,48 +237,5 @@ ], "preExtrapolation": 1, "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 15 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [ - 0 - ], - "_values": [ - { - "__type__": "cc.RealKeyframeValue", - "interpolationMode": 0, - "tangentWeightMode": 0, - "value": 0, - "rightTangent": 0, - "rightTangentWeight": 1, - "leftTangent": 0, - "leftTangentWeight": 1, - "easingMethod": 0, - "__editorExtras__": { - "tangentMode": 0 - } - } - ], - "preExtrapolation": 1, - "postExtrapolation": 1 - }, - { - "__type__": "cc.animation.Channel", - "_curve": { - "__id__": 17 - } - }, - { - "__type__": "cc.RealCurve", - "_times": [], - "_values": [], - "preExtrapolation": 1, - "postExtrapolation": 1 } ] \ No newline at end of file diff --git a/assets/Media/Animation/ScreenFader/Open.anim.meta b/assets/Media/Animation/ScreenFader/Open.anim.meta new file mode 100644 index 0000000..a75ee05 --- /dev/null +++ b/assets/Media/Animation/ScreenFader/Open.anim.meta @@ -0,0 +1,13 @@ +{ + "ver": "2.0.3", + "importer": "animation-clip", + "imported": true, + "uuid": "62a2bbe7-81e3-4f5d-85a7-e6ed018e783a", + "files": [ + ".cconb" + ], + "subMetas": {}, + "userData": { + "name": "Open" + } +} diff --git a/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit00.png.meta b/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit00.png.meta index ce21829..822bf84 100644 --- a/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit00.png.meta +++ b/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit00.png.meta @@ -56,7 +56,7 @@ "borderRight": 0, "packable": true, "pixelsToUnit": 100, - "pivotX": 0.5, + "pivotX": 0.2, "pivotY": 0.5, "meshType": 0, "vertices": { diff --git a/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit05.png.meta b/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit05.png.meta index b23a25b..f874d3f 100644 --- a/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit05.png.meta +++ b/assets/Media/Images/Game/Enemies/BossOrcKing/BossOrcKingHit05.png.meta @@ -56,7 +56,7 @@ "borderRight": 0, "packable": true, "pixelsToUnit": 100, - "pivotX": 0.5, + "pivotX": 0.2, "pivotY": 0.5, "meshType": 0, "vertices": { diff --git a/assets/Media/Prefabs/Game/Enemies/BossOrcKing.prefab b/assets/Media/Prefabs/Game/Enemies/BossOrcKing.prefab index 0f839ab..6dfbcd6 100644 --- a/assets/Media/Prefabs/Game/Enemies/BossOrcKing.prefab +++ b/assets/Media/Prefabs/Game/Enemies/BossOrcKing.prefab @@ -257,37 +257,6 @@ "__type__": "cc.CompPrefabInfo", "fileId": "5dR8969SVAfLXx5AY1X9B5" }, - { - "__type__": "7f8b6NKHsNNW5nLY3fwejhw", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 1 - }, - "_enabled": true, - "__prefab": { - "__id__": 13 - }, - "collider": { - "__id__": 10 - }, - "sprite": { - "__id__": 5 - }, - "defaultMaterial": { - "__uuid__": "fda095cb-831d-4601-ad94-846013963de8", - "__expectedType__": "cc.Material" - }, - "whiteMaterial": { - "__uuid__": "9cb17675-370b-48ed-bfa2-bb613a88af44", - "__expectedType__": "cc.Material" - }, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "b5ONKVkchBpaoqReE981lo" - }, { "__type__": "cc.Animation", "_name": "", @@ -297,7 +266,7 @@ }, "_enabled": true, "__prefab": { - "__id__": 15 + "__id__": 13 }, "playOnLoad": true, "_clips": [ @@ -320,6 +289,43 @@ "__type__": "cc.CompPrefabInfo", "fileId": "ceZm5iAAtLvZZkGagrT+R2" }, + { + "__type__": "8daaeyGqNVNzp9oN99xFcSw", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, + "collider": { + "__id__": 10 + }, + "sprite": { + "__id__": 5 + }, + "defaultMaterial": { + "__uuid__": "fda095cb-831d-4601-ad94-846013963de8", + "__expectedType__": "cc.Material" + }, + "whiteMaterial": { + "__uuid__": "9cb17675-370b-48ed-bfa2-bb613a88af44", + "__expectedType__": "cc.Material" + }, + "bossCollider": { + "__id__": 10 + }, + "animation": { + "__id__": 12 + }, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "aftvjAqS9O07aFH14xggGY" + }, { "__type__": "cc.PrefabInfo", "root": { diff --git a/assets/Media/Prefabs/Game/Enemies/BossStoneGolem.prefab b/assets/Media/Prefabs/Game/Enemies/BossStoneGolem.prefab index 00be6b1..1b79ae1 100644 --- a/assets/Media/Prefabs/Game/Enemies/BossStoneGolem.prefab +++ b/assets/Media/Prefabs/Game/Enemies/BossStoneGolem.prefab @@ -258,7 +258,7 @@ "fileId": "5dR8969SVAfLXx5AY1X9B5" }, { - "__type__": "7f8b6NKHsNNW5nLY3fwejhw", + "__type__": "cc.Animation", "_name": "", "_objFlags": 0, "node": { @@ -268,6 +268,35 @@ "__prefab": { "__id__": 13 }, + "playOnLoad": true, + "_clips": [ + { + "__uuid__": "17cd09d9-cdb4-4467-ae38-4d61c12588e6", + "__expectedType__": "cc.AnimationClip" + }, + { + "__uuid__": "2bea8879-9efb-482c-8382-d149f9145629", + "__expectedType__": "cc.AnimationClip" + } + ], + "_defaultClip": null, + "_id": "" + }, + { + "__type__": "cc.CompPrefabInfo", + "fileId": "ceZm5iAAtLvZZkGagrT+R2" + }, + { + "__type__": "8daaeyGqNVNzp9oN99xFcSw", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 1 + }, + "_enabled": true, + "__prefab": { + "__id__": 15 + }, "collider": { "__id__": 10 }, @@ -282,43 +311,17 @@ "__uuid__": "9cb17675-370b-48ed-bfa2-bb613a88af44", "__expectedType__": "cc.Material" }, - "_id": "" - }, - { - "__type__": "cc.CompPrefabInfo", - "fileId": "b5ONKVkchBpaoqReE981lo" - }, - { - "__type__": "cc.Animation", - "_name": "", - "_objFlags": 0, - "node": { - "__id__": 1 + "bossCollider": { + "__id__": 10 }, - "_enabled": true, - "__prefab": { - "__id__": 15 - }, - "playOnLoad": true, - "_clips": [ - { - "__uuid__": "17cd09d9-cdb4-4467-ae38-4d61c12588e6", - "__expectedType__": "cc.AnimationClip" - }, - { - "__uuid__": "2bea8879-9efb-482c-8382-d149f9145629", - "__expectedType__": "cc.AnimationClip" - } - ], - "_defaultClip": { - "__uuid__": "17cd09d9-cdb4-4467-ae38-4d61c12588e6", - "__expectedType__": "cc.AnimationClip" + "animation": { + "__id__": 12 }, "_id": "" }, { "__type__": "cc.CompPrefabInfo", - "fileId": "ceZm5iAAtLvZZkGagrT+R2" + "fileId": "db8ajCf5ZPvolZEYBbeLjn" }, { "__type__": "cc.PrefabInfo", diff --git a/assets/Scenes/Menu.scene b/assets/Scenes/Menu.scene index 64e3a71..d27f5f4 100644 --- a/assets/Scenes/Menu.scene +++ b/assets/Scenes/Menu.scene @@ -24,11 +24,11 @@ "_active": true, "_components": [], "_prefab": { - "__id__": 78 + "__id__": 81 }, "autoReleaseAssets": false, "_globals": { - "__id__": 79 + "__id__": 82 }, "_id": "1a3bccb5-bbb7-4058-846c-ed41b52415b0" }, @@ -183,31 +183,34 @@ }, { "__id__": 70 + }, + { + "__id__": 73 } ], "_active": true, "_components": [ - { - "__id__": 73 - }, - { - "__id__": 74 - }, - { - "__id__": 75 - }, { "__id__": 76 }, { "__id__": 77 + }, + { + "__id__": 78 + }, + { + "__id__": 79 + }, + { + "__id__": 80 } ], "_prefab": null, "_lpos": { "__type__": "cc.Vec3", "x": 320, - "y": 480.00000000000006, + "y": 479.99999999999994, "z": 0 }, "_lrot": { @@ -2410,6 +2413,114 @@ ], "_id": "16B4Ez0O1Ob7mNngLSL2Y/" }, + { + "__type__": "cc.Node", + "_name": "ScreenFader", + "_objFlags": 0, + "_parent": { + "__id__": 10 + }, + "_children": [], + "_active": false, + "_components": [ + { + "__id__": 74 + }, + { + "__id__": 75 + } + ], + "_prefab": null, + "_lpos": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_lrot": { + "__type__": "cc.Quat", + "x": 0, + "y": 0, + "z": 0, + "w": 1 + }, + "_lscale": { + "__type__": "cc.Vec3", + "x": 1, + "y": 1, + "z": 1 + }, + "_layer": 8388608, + "_euler": { + "__type__": "cc.Vec3", + "x": 0, + "y": 0, + "z": 0 + }, + "_id": "94InV0g5lPEL9T8UP6gS83" + }, + { + "__type__": "cc.UITransform", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 73 + }, + "_enabled": true, + "__prefab": null, + "_contentSize": { + "__type__": "cc.Size", + "width": 640, + "height": 960 + }, + "_anchorPoint": { + "__type__": "cc.Vec2", + "x": 0.5, + "y": 0.5 + }, + "_id": "8eB/xQWtlBM6LZmo5nize7" + }, + { + "__type__": "cc.Sprite", + "_name": "", + "_objFlags": 0, + "node": { + "__id__": 73 + }, + "_enabled": true, + "__prefab": null, + "_customMaterial": null, + "_srcBlendFactor": 2, + "_dstBlendFactor": 4, + "_color": { + "__type__": "cc.Color", + "r": 0, + "g": 0, + "b": 0, + "a": 255 + }, + "_spriteFrame": { + "__uuid__": "0a917d5c-2810-46e1-8332-63f00395d63a@f9941", + "__expectedType__": "cc.SpriteFrame" + }, + "_type": 0, + "_fillType": 0, + "_sizeMode": 0, + "_fillCenter": { + "__type__": "cc.Vec2", + "x": 0, + "y": 0 + }, + "_fillStart": 0, + "_fillRange": 0, + "_isTrimmedMode": true, + "_useGrayscale": false, + "_atlas": { + "__uuid__": "c4872559-07b2-44e5-9613-5f22506b1989", + "__expectedType__": "cc.SpriteAtlas" + }, + "_id": "cfe3CQC7dFSIe0kaPgVHQa" + }, { "__type__": "cc.UITransform", "_name": "", @@ -2459,8 +2570,8 @@ "_target": null, "_left": 0, "_right": 0, - "_top": 5.684341886080802e-14, - "_bottom": 5.684341886080802e-14, + "_top": -5.684341886080802e-14, + "_bottom": -5.684341886080802e-14, "_horizontalCenter": 0, "_verticalCenter": 0, "_isAbsLeft": true, @@ -2532,19 +2643,19 @@ { "__type__": "cc.SceneGlobals", "ambient": { - "__id__": 80 - }, - "shadows": { - "__id__": 81 - }, - "_skybox": { - "__id__": 82 - }, - "fog": { "__id__": 83 }, - "octree": { + "shadows": { "__id__": 84 + }, + "_skybox": { + "__id__": 85 + }, + "fog": { + "__id__": 86 + }, + "octree": { + "__id__": 87 } }, { diff --git a/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts b/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts new file mode 100644 index 0000000..e872d24 --- /dev/null +++ b/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts @@ -0,0 +1,41 @@ +import { Animation, Collider2D, Contact2DType, _decorator } from "cc"; +import { GroupType } from "../../GroupType"; +import { Enemy } from "./Enemy"; +const { ccclass, property } = _decorator; + +@ccclass("BossEnemy") +export class BossEnemy extends Enemy { + @property(Collider2D) private bossCollider: Collider2D; + @property(Animation) private animation: Animation; + + private isAnimatingAttack = false; + + public start(): void { + this.bossCollider.on(Contact2DType.BEGIN_CONTACT, this.collisionBegin, this); + this.bossCollider.on(Contact2DType.END_CONTACT, this.collisionEnd, this); + } + + private collisionBegin(_selfCollider: Collider2D, otherCollider: Collider2D): void { + if (otherCollider.group === GroupType.PLAYER) { + this.animateAttack(); + } + } + + private collisionEnd(_selfCollider: Collider2D, otherCollider: Collider2D): void { + if (otherCollider.group === GroupType.PLAYER) { + this.animateMove(); + } + } + + private animateAttack(): void { + if (this.isAnimatingAttack) return; + this.isAnimatingAttack = true; + this.animation.play("Attack"); + } + + private animateMove(): void { + if (!this.isAnimatingAttack) return; + this.isAnimatingAttack = false; + this.animation.play("Run"); + } +} diff --git a/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts.meta b/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts.meta new file mode 100644 index 0000000..3a43788 --- /dev/null +++ b/assets/Scripts/Game/Unit/Enemy/BossEnemy.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.23", + "importer": "typescript", + "imported": true, + "uuid": "8daaec86-a8d5-4dce-9f68-37df7115c4b0", + "files": [], + "subMetas": {}, + "userData": {} +} diff --git a/assets/Scripts/Utils/OpenCloseAnimator.ts b/assets/Scripts/Utils/OpenCloseAnimator.ts new file mode 100644 index 0000000..18915a9 --- /dev/null +++ b/assets/Scripts/Utils/OpenCloseAnimator.ts @@ -0,0 +1,33 @@ +import { Animation, Component, _decorator } from "cc"; +import { delay } from "../Services/Utils/AsyncUtils"; +const { ccclass, property } = _decorator; + +@ccclass("OpenCloseAnimator") +export class OpenCloseAnimator extends Component { + @property(Animation) private animation: Animation; + + private readonly openStateName = "Open"; + private readonly closeStateName = "Close"; + + private openDuration = 0; + private closeDuration = 0; + + public start(): void { + this.node.active = false; + this.openDuration = this.animation.getState(this.openStateName).duration; + this.closeDuration = this.animation.getState(this.closeStateName).duration; + } + + public async playOpen(): Promise { + this.node.active = true; + this.animation.play(this.openStateName); + await delay(this.openDuration); + } + + public async playClose(): Promise { + this.node.active = true; + this.animation.play(this.openStateName); + await delay(this.closeDuration); + this.node.active = false; + } +} diff --git a/assets/Scripts/Utils/OpenCloseAnimator.ts.meta b/assets/Scripts/Utils/OpenCloseAnimator.ts.meta new file mode 100644 index 0000000..5cc62a7 --- /dev/null +++ b/assets/Scripts/Utils/OpenCloseAnimator.ts.meta @@ -0,0 +1,9 @@ +{ + "ver": "4.0.23", + "importer": "typescript", + "imported": true, + "uuid": "f9bdc2e9-98c7-4882-a58d-3a07ad74cbf5", + "files": [], + "subMetas": {}, + "userData": {} +}