From a80a8a8f4a9259cd970fcdbb25a634d55cb4da4e Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 24 Jun 2022 18:12:58 +0800 Subject: *Unit Animation -> Unit Action --- Erika/Assets/Art/Models/Characters/Default.meta | 8 + Erika/Assets/Art/Models/Characters/Erika2.meta | 8 + .../AbstractWiresEffect/Scripts.meta | 8 + .../Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta | 8 + .../Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta | 8 + Erika/Assets/Bundle/Materials/Unit/Effect.meta | 8 + Erika/Assets/Bundle/Shaders/Include.meta | 8 + Erika/Assets/Bundle/Shaders/Unit/Effect.meta | 8 + .../Unit/Monster/Robots_Prowler/ActionData.meta | 8 + .../Unit/Monster/Robots_Prowler/UnitData.meta | 8 + Erika/Assets/Bundle/Unit/NPC.meta | 8 + .../Bundle/Unit/PC/Erika/Materials/Normal.meta | 8 + Erika/Assets/Bundle/Unit/PC/Erika/Models.meta | 8 + Erika/Assets/Bundle/Unit/PC/Erika/UnitData.meta | 8 + .../Bundle/Unit/PC/ErikaCyborg/ActionData.meta | 8 + .../Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta | 8 + .../Bundle/Unit/PC/ErikaCyborg/AnimationData.meta | 8 + .../Unit/PC/ErikaCyborg/Materials/AfterImage.meta | 8 + .../Unit/PC/ErikaCyborg/Materials/Normal.meta | 8 + .../Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta | 8 + .../Bundle/Unit/PC/ErikaCyborg/RootMotion.meta | 8 + .../Bundle/Unit/PC/ErikaCyborg/UnitData.meta | 8 + .../Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta | 8 + Erika/Assets/Bundle/Unit/Prop.meta | 8 + Erika/Assets/ProBuilder Data.meta | 8 - Erika/Assets/Scripts/Curve3D.meta | 8 + Erika/Assets/Scripts/Drone.meta | 8 + Erika/Assets/Scripts/Managers/Physics.meta | 8 + Erika/Assets/Scripts/Props.meta | 8 + Erika/Assets/Scripts/Robot.meta | 8 + Erika/Assets/Scripts/Unit/AI/Actions.meta | 8 + Erika/Assets/Scripts/Unit/AI/Conditionals.meta | 8 + .../Scripts/Unit/Action/WaitForActionReachEnd.cs | 4 +- .../Scripts/Unit/Action/WaitForTransitionDone.cs | 4 +- Erika/Assets/Scripts/Unit/AnimatorLayerInfo.cs | 6 +- .../Components/UnitAnimation/MonsterAnimation.cs | 2 +- .../Unit/Components/UnitAnimation/PCAnimation.cs | 2 +- .../Unit/Components/UnitAnimation/UnitAction.cs | 222 +++++++++++++++++++++ .../Components/UnitAnimation/UnitAction.cs.meta | 11 + .../Unit/Components/UnitAnimation/UnitAnimation.cs | 222 --------------------- .../Components/UnitAnimation/UnitAnimation.cs.meta | 11 - .../Unit/Components/UnitState/MonsterState.cs | 2 +- .../Unit/Components/UnitState/PCState_States.cs | 2 +- .../Scripts/Unit/Controller/UnitController.cs | 2 +- Erika/Assets/Scripts/Unit/TimelineEventProxy.cs | 2 +- Erika/Assets/Scripts/Unit/UnitRootMotion.cs | 2 +- Erika/Assets/Scripts/Utils/LogTag.cs | 2 +- .../UMotion/UMotionExamples/Example Scene.meta | 8 - 48 files changed, 496 insertions(+), 264 deletions(-) create mode 100644 Erika/Assets/Art/Models/Characters/Default.meta create mode 100644 Erika/Assets/Art/Models/Characters/Erika2.meta create mode 100644 Erika/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta create mode 100644 Erika/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta create mode 100644 Erika/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta create mode 100644 Erika/Assets/Bundle/Materials/Unit/Effect.meta create mode 100644 Erika/Assets/Bundle/Shaders/Include.meta create mode 100644 Erika/Assets/Bundle/Shaders/Unit/Effect.meta create mode 100644 Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta create mode 100644 Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta create mode 100644 Erika/Assets/Bundle/Unit/NPC.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/Erika/Models.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/Erika/UnitData.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta create mode 100644 Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta create mode 100644 Erika/Assets/Bundle/Unit/Prop.meta delete mode 100644 Erika/Assets/ProBuilder Data.meta create mode 100644 Erika/Assets/Scripts/Curve3D.meta create mode 100644 Erika/Assets/Scripts/Drone.meta create mode 100644 Erika/Assets/Scripts/Managers/Physics.meta create mode 100644 Erika/Assets/Scripts/Props.meta create mode 100644 Erika/Assets/Scripts/Robot.meta create mode 100644 Erika/Assets/Scripts/Unit/AI/Actions.meta create mode 100644 Erika/Assets/Scripts/Unit/AI/Conditionals.meta create mode 100644 Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs create mode 100644 Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs.meta delete mode 100644 Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs delete mode 100644 Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs.meta delete mode 100644 Erika/Assets/ThirdParty/UMotion/UMotionExamples/Example Scene.meta diff --git a/Erika/Assets/Art/Models/Characters/Default.meta b/Erika/Assets/Art/Models/Characters/Default.meta new file mode 100644 index 00000000..43499fc7 --- /dev/null +++ b/Erika/Assets/Art/Models/Characters/Default.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e8a40298dd4efd14c9f90a63734ca39b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Art/Models/Characters/Erika2.meta b/Erika/Assets/Art/Models/Characters/Erika2.meta new file mode 100644 index 00000000..fd7369d9 --- /dev/null +++ b/Erika/Assets/Art/Models/Characters/Erika2.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 077f81003f9fc564791cce182048c2b0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta b/Erika/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta new file mode 100644 index 00000000..b76e98a5 --- /dev/null +++ b/Erika/Assets/Art/Vfx/GrabSquaresEffect/AbstractWiresEffect/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20381b3eecfbfe34a9d9222868969d29 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta b/Erika/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta new file mode 100644 index 00000000..41200932 --- /dev/null +++ b/Erika/Assets/Art/Vfx/GrabSquaresEffect/Scripts.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: abff7cb61c760094f8ab9437379e0f2c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta b/Erika/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta new file mode 100644 index 00000000..fa9e76cd --- /dev/null +++ b/Erika/Assets/Art/Vfx/GrabSquaresEffect/Shaders.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e38cb65072bb4a64cbe162792de9bec2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Materials/Unit/Effect.meta b/Erika/Assets/Bundle/Materials/Unit/Effect.meta new file mode 100644 index 00000000..fdf8c1db --- /dev/null +++ b/Erika/Assets/Bundle/Materials/Unit/Effect.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0525fec1eb7cc94458170e9e106955d5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Shaders/Include.meta b/Erika/Assets/Bundle/Shaders/Include.meta new file mode 100644 index 00000000..2666365a --- /dev/null +++ b/Erika/Assets/Bundle/Shaders/Include.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dc32af12c5122994d8791378227adeb6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Shaders/Unit/Effect.meta b/Erika/Assets/Bundle/Shaders/Unit/Effect.meta new file mode 100644 index 00000000..7df9a033 --- /dev/null +++ b/Erika/Assets/Bundle/Shaders/Unit/Effect.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9cc4684b9f432f149b16a51f148c9490 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta b/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta new file mode 100644 index 00000000..ca7266b0 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/ActionData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a1d7b6e0d8fb1a642a65011fb6cd7d89 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta b/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta new file mode 100644 index 00000000..142f5872 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/Monster/Robots_Prowler/UnitData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6ad7401709700f34db2b795830937d76 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/NPC.meta b/Erika/Assets/Bundle/Unit/NPC.meta new file mode 100644 index 00000000..eeea13e1 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/NPC.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ced034d375cdfa488814663ea17a79b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta b/Erika/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta new file mode 100644 index 00000000..8c41a6b2 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/Erika/Materials/Normal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5dc1b71affc68b54594096a1b96a5c00 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/Erika/Models.meta b/Erika/Assets/Bundle/Unit/PC/Erika/Models.meta new file mode 100644 index 00000000..11148d17 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/Erika/Models.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0d712421d808a43438a43d8a5d34effe +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/Erika/UnitData.meta b/Erika/Assets/Bundle/Unit/PC/Erika/UnitData.meta new file mode 100644 index 00000000..7d4b13eb --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/Erika/UnitData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 922befa8a94692845b88500a23229d7f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta new file mode 100644 index 00000000..f5434a00 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/ActionData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 07c3b2bf6cb8cc2498422bbb105cbad8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta new file mode 100644 index 00000000..4ed2c938 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationClip.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 827d77abe87680a47ae2d71a9e953a18 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta new file mode 100644 index 00000000..43a52cd1 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/AnimationData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7a2b72fbb41383047ac45e6c22ea9663 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta new file mode 100644 index 00000000..85d58a8c --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/AfterImage.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b2b0838fb0603964e99904eefe81ad7f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta new file mode 100644 index 00000000..dd867045 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Materials/Normal.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1c8a678ea9e801f439a1003d04f33cf5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta new file mode 100644 index 00000000..dc530723 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Models.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ebf636c7cf7b1934b885298ce1f5f42e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta new file mode 100644 index 00000000..b28b6f04 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/RootMotion.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2022e8298d3a8624992143eb57c0f8ac +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta new file mode 100644 index 00000000..eeca0d3b --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/UnitData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f6aa859c834c51f498ef0b3c3b83a0f5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta new file mode 100644 index 00000000..7f91da28 --- /dev/null +++ b/Erika/Assets/Bundle/Unit/PC/ErikaCyborg/Weapons.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: df69962f5b01e444a8bea87e31c7d0a4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Bundle/Unit/Prop.meta b/Erika/Assets/Bundle/Unit/Prop.meta new file mode 100644 index 00000000..affd6eed --- /dev/null +++ b/Erika/Assets/Bundle/Unit/Prop.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dafc173db1ebeab4c80641cc3d4fa528 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/ProBuilder Data.meta b/Erika/Assets/ProBuilder Data.meta deleted file mode 100644 index 8424bd32..00000000 --- a/Erika/Assets/ProBuilder Data.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 62b452114e207404bacccba32c7da124 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Erika/Assets/Scripts/Curve3D.meta b/Erika/Assets/Scripts/Curve3D.meta new file mode 100644 index 00000000..fef1c5e7 --- /dev/null +++ b/Erika/Assets/Scripts/Curve3D.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ad8b718b6b700d8419838dad07158567 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Drone.meta b/Erika/Assets/Scripts/Drone.meta new file mode 100644 index 00000000..694cff70 --- /dev/null +++ b/Erika/Assets/Scripts/Drone.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ec3412151f8a72a41b2ed21316763399 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Managers/Physics.meta b/Erika/Assets/Scripts/Managers/Physics.meta new file mode 100644 index 00000000..2296b3f8 --- /dev/null +++ b/Erika/Assets/Scripts/Managers/Physics.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 603d4624aaedd794cb89497954a83f4a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Props.meta b/Erika/Assets/Scripts/Props.meta new file mode 100644 index 00000000..bb96602e --- /dev/null +++ b/Erika/Assets/Scripts/Props.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f299520ed9fcf4a45858ad4ef5a8d5d1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Robot.meta b/Erika/Assets/Scripts/Robot.meta new file mode 100644 index 00000000..0b5a087e --- /dev/null +++ b/Erika/Assets/Scripts/Robot.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7c09ca1609552d24bbe697d1516f8aa9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Unit/AI/Actions.meta b/Erika/Assets/Scripts/Unit/AI/Actions.meta new file mode 100644 index 00000000..9b4ad463 --- /dev/null +++ b/Erika/Assets/Scripts/Unit/AI/Actions.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 971e9d55b8bc0894eb6a110fb962000b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Unit/AI/Conditionals.meta b/Erika/Assets/Scripts/Unit/AI/Conditionals.meta new file mode 100644 index 00000000..70a86da5 --- /dev/null +++ b/Erika/Assets/Scripts/Unit/AI/Conditionals.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 85b7e0c7ed1d12f42a5178bfbf3d934c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs b/Erika/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs index 22d7b014..e4dd7bb3 100644 --- a/Erika/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs +++ b/Erika/Assets/Scripts/Unit/Action/WaitForActionReachEnd.cs @@ -8,10 +8,10 @@ using UnityEngine; /// public class WaitForActionReachEnd : IEnumerator { - UnitAnimation m_UnitAnimation; + UnitAction m_UnitAnimation; int m_Layer; - public WaitForActionReachEnd(UnitAnimation unitAnim, int layer = 0) + public WaitForActionReachEnd(UnitAction unitAnim, int layer = 0) { m_UnitAnimation = unitAnim; m_Layer = layer; diff --git a/Erika/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs b/Erika/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs index 16fbc2e5..1e59b75d 100644 --- a/Erika/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs +++ b/Erika/Assets/Scripts/Unit/Action/WaitForTransitionDone.cs @@ -8,9 +8,9 @@ using UnityEngine; /// public class WaitForTransitionDone : IEnumerator { - UnitAnimation m_UnitAnimation; + UnitAction m_UnitAnimation; - public WaitForTransitionDone(UnitAnimation unitAnim) + public WaitForTransitionDone(UnitAction unitAnim) { m_UnitAnimation = unitAnim; } diff --git a/Erika/Assets/Scripts/Unit/AnimatorLayerInfo.cs b/Erika/Assets/Scripts/Unit/AnimatorLayerInfo.cs index ad8d812c..97af086a 100644 --- a/Erika/Assets/Scripts/Unit/AnimatorLayerInfo.cs +++ b/Erika/Assets/Scripts/Unit/AnimatorLayerInfo.cs @@ -32,7 +32,7 @@ public class AnimatorLayerInfo AnimatorClipInfo[] clipInfos = clipsInfo; if (clipInfos == null || clipInfos.Length == 0) { - LogHelper.LogError(LogTag.UnitAnimation, "No current animation."); + LogHelper.LogError(LogTag.UnitAction, "No current animation."); return null; } var clip = clipInfos[0]; //选第一个 @@ -173,7 +173,7 @@ public class AnimatorLayerInfo public bool applySpeedCurve { get; set; } - UnitAnimation m_UnitAnimation; + UnitAction m_UnitAnimation; Coroutine m_CalcPlaybackTimeCoroutine; @@ -181,7 +181,7 @@ public class AnimatorLayerInfo public string m_CurrentState; - public AnimatorLayerInfo(UnitAnimation unitAnimation, Animator animator, int layer) + public AnimatorLayerInfo(UnitAction unitAnimation, Animator animator, int layer) { this.m_UnitAnimation = unitAnimation; this.m_Animator = animator; diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs index 0600bf60..b0b34924 100644 --- a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs +++ b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -public class MonsterAnimation : UnitAnimation +public class MonsterAnimation : UnitAction { public enum ELayer { diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/PCAnimation.cs b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/PCAnimation.cs index fc0dafec..8ddf61f8 100644 --- a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/PCAnimation.cs +++ b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/PCAnimation.cs @@ -4,7 +4,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; -public class PCAnimation : UnitAnimation +public class PCAnimation : UnitAction { #if !ANIM_CROSS_FADE diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs new file mode 100644 index 00000000..b865f439 --- /dev/null +++ b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs @@ -0,0 +1,222 @@ +#define ANIM_CROSS_FADE +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +/// +/// 角色动作管理 +/// http://unitylore.org/wiki/doku.php?id=l3y0gj +/// +[DisallowMultipleComponent] +public class UnitAction : UnitComponent +{ + // 角色的所有动作数据,包括(动画、事件、RM) + public UnitActionData m_ActionData; + + // 当前动作,和AnimatorState不同,忽略过渡,即时切换 + protected string m_CurrentAction = "Idle"; + public string currentAction + { + get + { + return m_CurrentAction; + } + set + { + m_CurrentAction = value; + m_Dirty = true; + } + } + + private bool m_Dirty = true; + + public Animator animator { get { return m_Animator; } } + protected Animator m_Animator; + + public bool isInTransition + { + get + { + return m_Animator.IsInTransition(0); + } + } + + // 当前动作的AnimationData + private AnimationData m_CachedAnimationData; + public AnimationData animationData + { + get + { + if (m_Dirty) + { + m_CachedAnimationData = m_ActionData.GetAnimationData(currentAction); + m_Dirty = false; + } + return m_CachedAnimationData; + } + } + + // 当前动作的动画片段 + public AnimationClip animationClip + { + get + { + if(animationData != null) + { + AnimationClip clip = ResourceManager.Instance.LoadAsset(animationData.animationPath); + return clip; + } + return null; + } + } + + public float playbackNormalizedTime + { + get + { + AnimatorStateInfo state = stateInfo; + if (!state.loop && state.normalizedTime > 1) + return 1; + return state.normalizedTime % 1f; + } + } + + public AnimatorStateInfo stateInfo + { + get + { + AnimatorStateInfo stateInfo = m_Animator.GetCurrentAnimatorStateInfo(0); + if (isInTransition) // 过渡中的动作认为当前动作是下一个动作 + { + stateInfo = m_Animator.GetNextAnimatorStateInfo(0); + } + return stateInfo; + } + } + + public int stateHash + { + get + { + return stateInfo.shortNameHash; + } + } + + // 并非准确的播放时间,只是逻辑时间,因为动画会加速减速 + public float playbackTimeInSeconds + { + get + { + return playbackNormalizedTime * animationClip.length; + } + } + + TimelineEventProxy m_TimelineEventProxy; + + public float playbackSpeed + { + get + { + return m_Animator.GetFloat("PlaybackSpeed" + 0); + } + set + { + float v = Mathf.Clamp(value, 0, 10); + m_Animator.SetFloat("PlaybackSpeed" + 0, v); + } + } + + public override void OnUpdate() + { + base.OnUpdate(); + // 执行事件 + m_TimelineEventProxy.ExecuteAnimationEvents(animationData, playbackTimeInSeconds * TimelineEventProxy.FPS); + + // 播放速度控制 + if (/*applySpeedCurve && */animationData != null && animationData.speedCurve != null) + { + playbackSpeed = animationData.speedCurve.Evaluate(playbackNormalizedTime); + } + } + + public bool IsToggleOpen(EAnimationToogle toggle) + { + return animationData.IsToggleOpen(toggle, playbackNormalizedTime); + } + + public override void Initialize() + { + base.Initialize(); + + } + + public override void OnPostInitialize() + { + base.OnPostInitialize(); + + m_TimelineEventProxy = new TimelineEventProxy(this.owner); + playbackSpeed = 1f; + } + + /// + /// 直接播放动作 + /// + /// + /// + /// + public void Play(string targetAction, float normalizedTime = float.NegativeInfinity) + { + currentAction = targetAction; + + m_Animator.Play(targetAction, 0, normalizedTime); + m_TimelineEventProxy.ResetPrevAnimationData(); + + UnitRootMotion rm = m_Owner.GetComponent(); + if(rm) + { + rm.OnAnimationChange(); + } + } + + /// + /// CrossFade + /// + /// + /// + /// + /// + /// + public void CrossFade(string targetAction, float normalizedTransitionDuration, float normalizedTimeOffset = float.NegativeInfinity, float normalizedTransitionTime = 0.0f) + { + TransitionData transition = m_ActionData.GetTransitionData(currentAction, targetAction); + if(transition != null) + { + if(transition.type == TransitionData.TransitionType.NormalizedTime) + { + m_Animator.CrossFade(targetAction, transition.duration, 0, normalizedTimeOffset, normalizedTransitionTime); + } + else if(transition.type == TransitionData.TransitionType.FixedTime) + { + m_Animator.CrossFadeInFixedTime(targetAction, transition.duration, 0, normalizedTimeOffset, normalizedTransitionTime); + } + } + else + { + m_Animator.CrossFade(targetAction, normalizedTransitionDuration, 0, normalizedTimeOffset, normalizedTransitionTime); + } + currentAction = targetAction; + + m_TimelineEventProxy.ResetPrevAnimationData(); + + UnitRootMotion rm = m_Owner.GetComponent(); + if (rm) + { + rm.OnAnimationChange(); + } + } + +} diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs.meta b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs.meta new file mode 100644 index 00000000..d9a25bcd --- /dev/null +++ b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAction.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e99a41ae04c2aca428c3f0d1bda239c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs deleted file mode 100644 index 45276edc..00000000 --- a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs +++ /dev/null @@ -1,222 +0,0 @@ -#define ANIM_CROSS_FADE -using System; -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -#if UNITY_EDITOR -using UnityEditor; -#endif - -/// -/// 角色动作管理 -/// http://unitylore.org/wiki/doku.php?id=l3y0gj -/// -[DisallowMultipleComponent] -public class UnitAnimation : UnitComponent -{ - // 角色的所有动作数据,包括(动画、事件、RM) - public UnitActionData m_ActionData; - - // 当前动作,和AnimatorState不同,忽略过渡,即时切换 - protected string m_CurrentAction = "Idle"; - public string currentAction - { - get - { - return m_CurrentAction; - } - set - { - m_CurrentAction = value; - m_Dirty = true; - } - } - - private bool m_Dirty = true; - - public Animator animator { get { return m_Animator; } } - protected Animator m_Animator; - - public bool isInTransition - { - get - { - return m_Animator.IsInTransition(0); - } - } - - // 当前动作的AnimationData - private AnimationData m_CachedAnimationData; - public AnimationData animationData - { - get - { - if (m_Dirty) - { - m_CachedAnimationData = m_ActionData.GetAnimationData(currentAction); - m_Dirty = false; - } - return m_CachedAnimationData; - } - } - - // 当前动作的动画片段 - public AnimationClip animationClip - { - get - { - if(animationData != null) - { - AnimationClip clip = ResourceManager.Instance.LoadAsset(animationData.animationPath); - return clip; - } - return null; - } - } - - public float playbackNormalizedTime - { - get - { - AnimatorStateInfo state = stateInfo; - if (!state.loop && state.normalizedTime > 1) - return 1; - return state.normalizedTime % 1f; - } - } - - public AnimatorStateInfo stateInfo - { - get - { - AnimatorStateInfo stateInfo = m_Animator.GetCurrentAnimatorStateInfo(0); - if (isInTransition) // 过渡中的动作认为当前动作是下一个动作 - { - stateInfo = m_Animator.GetNextAnimatorStateInfo(0); - } - return stateInfo; - } - } - - public int stateHash - { - get - { - return stateInfo.shortNameHash; - } - } - - // 并非准确的播放时间,只是逻辑时间,因为动画会加速减速 - public float playbackTimeInSeconds - { - get - { - return playbackNormalizedTime * animationClip.length; - } - } - - TimelineEventProxy m_TimelineEventProxy; - - public float playbackSpeed - { - get - { - return m_Animator.GetFloat("PlaybackSpeed" + 0); - } - set - { - float v = Mathf.Clamp(value, 0, 10); - m_Animator.SetFloat("PlaybackSpeed" + 0, v); - } - } - - public override void OnUpdate() - { - base.OnUpdate(); - // 执行事件 - m_TimelineEventProxy.ExecuteAnimationEvents(animationData, playbackTimeInSeconds * TimelineEventProxy.FPS); - - // 播放速度控制 - if (/*applySpeedCurve && */animationData != null && animationData.speedCurve != null) - { - playbackSpeed = animationData.speedCurve.Evaluate(playbackNormalizedTime); - } - } - - public bool IsToggleOpen(EAnimationToogle toggle) - { - return animationData.IsToggleOpen(toggle, playbackNormalizedTime); - } - - public override void Initialize() - { - base.Initialize(); - - } - - public override void OnPostInitialize() - { - base.OnPostInitialize(); - - m_TimelineEventProxy = new TimelineEventProxy(this.owner); - playbackSpeed = 1f; - } - - /// - /// 直接播放动作 - /// - /// - /// - /// - public void Play(string targetAction, float normalizedTime = float.NegativeInfinity) - { - currentAction = targetAction; - - m_Animator.Play(targetAction, 0, normalizedTime); - m_TimelineEventProxy.ResetPrevAnimationData(); - - UnitRootMotion rm = m_Owner.GetComponent(); - if(rm) - { - rm.OnAnimationChange(); - } - } - - /// - /// CrossFade - /// - /// - /// - /// - /// - /// - public void CrossFade(string targetAction, float normalizedTransitionDuration, float normalizedTimeOffset = float.NegativeInfinity, float normalizedTransitionTime = 0.0f) - { - TransitionData transition = m_ActionData.GetTransitionData(currentAction, targetAction); - if(transition != null) - { - if(transition.type == TransitionData.TransitionType.NormalizedTime) - { - m_Animator.CrossFade(targetAction, transition.duration, 0, normalizedTimeOffset, normalizedTransitionTime); - } - else if(transition.type == TransitionData.TransitionType.FixedTime) - { - m_Animator.CrossFadeInFixedTime(targetAction, transition.duration, 0, normalizedTimeOffset, normalizedTransitionTime); - } - } - else - { - m_Animator.CrossFade(targetAction, normalizedTransitionDuration, 0, normalizedTimeOffset, normalizedTransitionTime); - } - currentAction = targetAction; - - m_TimelineEventProxy.ResetPrevAnimationData(); - - UnitRootMotion rm = m_Owner.GetComponent(); - if (rm) - { - rm.OnAnimationChange(); - } - } - -} diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs.meta b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs.meta deleted file mode 100644 index 75ce33fe..00000000 --- a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitAnimation.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4af875f33239ebf409f3e4954c0ee0cb -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Erika/Assets/Scripts/Unit/Components/UnitState/MonsterState.cs b/Erika/Assets/Scripts/Unit/Components/UnitState/MonsterState.cs index 43376f68..fd2251b1 100644 --- a/Erika/Assets/Scripts/Unit/Components/UnitState/MonsterState.cs +++ b/Erika/Assets/Scripts/Unit/Components/UnitState/MonsterState.cs @@ -29,7 +29,7 @@ public class MonsterState : UnitState [SerializeField] private EUnitState m_State; public EUnitState CurrentState { get { return m_State; } } - UnitAnimation unitAnimation { get { return m_Owner.unitAnimation; } } + UnitAction unitAnimation { get { return m_Owner.unitAnimation; } } public override void Initialize() { diff --git a/Erika/Assets/Scripts/Unit/Components/UnitState/PCState_States.cs b/Erika/Assets/Scripts/Unit/Components/UnitState/PCState_States.cs index a65ad23e..1a8d0010 100644 --- a/Erika/Assets/Scripts/Unit/Components/UnitState/PCState_States.cs +++ b/Erika/Assets/Scripts/Unit/Components/UnitState/PCState_States.cs @@ -93,7 +93,7 @@ public partial class PCState : UnitState if (m_Owner.isTowardRight && !param.isRight || !m_Owner.isTowardRight && param.isRight) { - //m_Owner.pcAnimation.Play(UnitAnimation.EActionState.Turn); + //m_Owner.pcAnimation.Play(UnitAction.EActionState.Turn); //yield return new WaitForActionReachEnd(m_Owner.pcAnimation); //if (param.isRight) // m_Owner.transform.rotation = Quaternion.Euler(0, 0, 0); diff --git a/Erika/Assets/Scripts/Unit/Controller/UnitController.cs b/Erika/Assets/Scripts/Unit/Controller/UnitController.cs index d3f936df..0e7510ae 100644 --- a/Erika/Assets/Scripts/Unit/Controller/UnitController.cs +++ b/Erika/Assets/Scripts/Unit/Controller/UnitController.cs @@ -28,7 +28,7 @@ public class UnitController : MonoBehaviour/*, Interactable*/ public PCState pcState { get { return unitState as PCState; } } public MonsterState monsterState { get { return unitState as MonsterState; } } - public UnitAnimation unitAnimation; + public UnitAction unitAnimation; public PCAnimation pcAnimation { get { return unitAnimation as PCAnimation; } } public MonsterAnimation monsterAnimation { get { return unitAnimation as MonsterAnimation; } } diff --git a/Erika/Assets/Scripts/Unit/TimelineEventProxy.cs b/Erika/Assets/Scripts/Unit/TimelineEventProxy.cs index 437b5b2d..453f1903 100644 --- a/Erika/Assets/Scripts/Unit/TimelineEventProxy.cs +++ b/Erika/Assets/Scripts/Unit/TimelineEventProxy.cs @@ -95,7 +95,7 @@ public partial class TimelineEventProxy public UnitController owner { get; private set; } - private UnitAnimation m_UnitAnimation { get { return owner.unitAnimation; } } + private UnitAction m_UnitAnimation { get { return owner.unitAnimation; } } private AnimationData m_PrevAnimationData; diff --git a/Erika/Assets/Scripts/Unit/UnitRootMotion.cs b/Erika/Assets/Scripts/Unit/UnitRootMotion.cs index fa3b3ab6..140882d3 100644 --- a/Erika/Assets/Scripts/Unit/UnitRootMotion.cs +++ b/Erika/Assets/Scripts/Unit/UnitRootMotion.cs @@ -28,7 +28,7 @@ public class UnitRootMotion : UnitComponent private float m_PrevNormalTime; - Dictionary m_RootMotionDic = new Dictionary(); + Dictionary m_RootMotionDic = new Dictionary(); public void Reset() { diff --git a/Erika/Assets/Scripts/Utils/LogTag.cs b/Erika/Assets/Scripts/Utils/LogTag.cs index 65dbfd54..7a735ee1 100644 --- a/Erika/Assets/Scripts/Utils/LogTag.cs +++ b/Erika/Assets/Scripts/Utils/LogTag.cs @@ -6,7 +6,7 @@ public enum LogTag { Resources, - UnitAnimation, + UnitAction, UnitState, } diff --git a/Erika/Assets/ThirdParty/UMotion/UMotionExamples/Example Scene.meta b/Erika/Assets/ThirdParty/UMotion/UMotionExamples/Example Scene.meta deleted file mode 100644 index 7c152025..00000000 --- a/Erika/Assets/ThirdParty/UMotion/UMotionExamples/Example Scene.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 13ba4d2ee6e74bf4b9aea7f330df39c2 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: -- cgit v1.1-26-g67d0