summaryrefslogtreecommitdiff
path: root/Assets/Scripts
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-07-27 09:40:26 +0800
committerchai <chaifix@163.com>2021-07-27 09:40:26 +0800
commit8bbc03542340b4ea7ca1e2beec2f11ff335851e8 (patch)
tree15a4bdebe7b8d9448c476e0f67b94a5a50bc2ec5 /Assets/Scripts
parent4ceee84cd45e4e3ec40ebd888e41bd47a938c2d5 (diff)
*mic
Diffstat (limited to 'Assets/Scripts')
-rw-r--r--Assets/Scripts/Effects/FxClear.cs3
-rw-r--r--Assets/Scripts/Scene.meta8
-rw-r--r--Assets/Scripts/Unit/Component/UnitAnimation.cs43
-rw-r--r--Assets/Scripts/Unit/Component/UnitRender.cs15
-rw-r--r--Assets/Scripts/Unit/Component/UnitState.cs2
-rw-r--r--Assets/Scripts/Unit/Controller/PCController.cs22
-rw-r--r--Assets/Scripts/Unit/Controller/UnitController.cs22
-rw-r--r--Assets/Scripts/Unit/Editor.meta (renamed from Assets/Scripts/Props.meta)2
-rw-r--r--Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs7
-rw-r--r--Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs.meta11
-rw-r--r--Assets/Scripts/Unit/UnitActionData.cs17
-rw-r--r--Assets/Scripts/Unit/UnitActionData.cs.meta11
-rw-r--r--Assets/Scripts/Unit/UnitRootMotion.cs6
-rw-r--r--Assets/Scripts/Utils/LogHelper.cs17
-rw-r--r--Assets/Scripts/Utils/LogHelper.cs.meta11
-rw-r--r--Assets/Scripts/Utils/UnityExtends.cs16
-rw-r--r--Assets/Scripts/Utils/UnityExtends.cs.meta11
17 files changed, 182 insertions, 42 deletions
diff --git a/Assets/Scripts/Effects/FxClear.cs b/Assets/Scripts/Effects/FxClear.cs
index 83d08003..6f212eb9 100644
--- a/Assets/Scripts/Effects/FxClear.cs
+++ b/Assets/Scripts/Effects/FxClear.cs
@@ -55,13 +55,10 @@ public struct PlayEffectInfo
#endif
public class FxClear : MonoBehaviour
{
- #region inspector
[SerializeField]
public float ClearTime = 2f;
- #endregion
-
private EffectPlayTypes m_EffectPlayType = EffectPlayTypes.None;
/// <summary>
diff --git a/Assets/Scripts/Scene.meta b/Assets/Scripts/Scene.meta
deleted file mode 100644
index eb7a8716..00000000
--- a/Assets/Scripts/Scene.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: eaee2d0f48cff9b40baf0686a8105600
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/Scripts/Unit/Component/UnitAnimation.cs b/Assets/Scripts/Unit/Component/UnitAnimation.cs
index ac04148d..568863c9 100644
--- a/Assets/Scripts/Unit/Component/UnitAnimation.cs
+++ b/Assets/Scripts/Unit/Component/UnitAnimation.cs
@@ -6,13 +6,48 @@ using UnityEngine;
[DisallowMultipleComponent]
public class UnitAnimation : UnitComponent
{
- private Animator m_Animator;
+ // animator trigger值,切换动画
+ public enum ETrigger
+ {
+ Nein = 0,
+ ToIdle ,
+ ToMove ,
+ ToSpawn ,
+
+ ToDie ,
+ ToHitAir ,
+ ToHitAirAir,
+
+ ToHitKnockDown,
+
+ ToJump,
+ ToWalk,
+ }
+
+ private Animator m_Animator;
private TimelineEvent m_Timeline;
- public void Play()
- {
+ private UnitActionData m_ActionData;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ m_Timeline = this.m_Owner.unitObj.GetOrAddComponent<TimelineEvent>();
+ m_Animator = this.m_Owner.unitObj.GetComponent<Animator>();
+
+ if(m_Animator == null)
+ {
+ LogHelper.LogError("没有挂Animator组件");
+ }
+
+ }
- }
+ public void Play(ETrigger trigger)
+ {
+ string toAnim = trigger.ToString();
+ m_Animator.SetTrigger(toAnim);
+ }
}
diff --git a/Assets/Scripts/Unit/Component/UnitRender.cs b/Assets/Scripts/Unit/Component/UnitRender.cs
index cf308bab..2ba53a7d 100644
--- a/Assets/Scripts/Unit/Component/UnitRender.cs
+++ b/Assets/Scripts/Unit/Component/UnitRender.cs
@@ -2,18 +2,11 @@
using System.Collections.Generic;
using UnityEngine;
+// 控制角色渲染
[DisallowMultipleComponent]
-public class UnitRender : MonoBehaviour
+public class UnitRender : UnitComponent
{
- // Start is called before the first frame update
- void Start()
- {
-
- }
- // Update is called once per frame
- void Update()
- {
-
- }
+
+
}
diff --git a/Assets/Scripts/Unit/Component/UnitState.cs b/Assets/Scripts/Unit/Component/UnitState.cs
index d5b91cec..3832c933 100644
--- a/Assets/Scripts/Unit/Component/UnitState.cs
+++ b/Assets/Scripts/Unit/Component/UnitState.cs
@@ -85,7 +85,7 @@ public class UnitState : UnitComponent
}
IEnumerator Idle(IdleParam param)
{
- m_Owner.unitAnimation.Play();
+ //m_Owner.unitAnimation.Play();
yield return null;
}
void OnIdleExit(EUnitState nextState)
diff --git a/Assets/Scripts/Unit/Controller/PCController.cs b/Assets/Scripts/Unit/Controller/PCController.cs
index 8350b503..58745311 100644
--- a/Assets/Scripts/Unit/Controller/PCController.cs
+++ b/Assets/Scripts/Unit/Controller/PCController.cs
@@ -2,18 +2,18 @@
using System.Collections.Generic;
using UnityEngine;
+// 玩家角色控制器
[DisallowMultipleComponent]
-public class PCController : UnitComponent
+public class PCController : UnitController
{
- // Start is called before the first frame update
- void Start()
- {
-
- }
- // Update is called once per frame
- void Update()
- {
-
- }
+ public override void Initialize(GameObject obj)
+ {
+ base.Initialize(obj);
+
+
+
+ }
+
+
}
diff --git a/Assets/Scripts/Unit/Controller/UnitController.cs b/Assets/Scripts/Unit/Controller/UnitController.cs
index 76dc9791..066aad58 100644
--- a/Assets/Scripts/Unit/Controller/UnitController.cs
+++ b/Assets/Scripts/Unit/Controller/UnitController.cs
@@ -4,6 +4,8 @@ using UnityEngine;
public class UnitController : MonoBehaviour
{
+ // 角色共有的组件
+
public UnitRender unitRender;
public UnitState unitState;
@@ -12,10 +14,24 @@ public class UnitController : MonoBehaviour
public UnitSkill unitSkill;
- public void Initialize()
+ public GameObject unitObj; // 角色模型
+
+ public virtual void Initialize( GameObject obj )
{
- unitRender = GetComponent<UnitRender>();
-
+ unitObj = obj;
+
+ unitRender = gameObject.GetOrAddComponent<UnitRender>();
+ unitRender.Initialize();
+
+ unitState = gameObject.GetOrAddComponent<UnitState>();
+ unitState.Initialize();
+
+ unitAnimation = gameObject.GetOrAddComponent<UnitAnimation>();
+ unitAnimation.Initialize();
+
+ unitSkill = gameObject.GetOrAddComponent<UnitSkill>();
+ unitSkill.Initialize();
+
}
}
diff --git a/Assets/Scripts/Props.meta b/Assets/Scripts/Unit/Editor.meta
index bb96602e..45bf7867 100644
--- a/Assets/Scripts/Props.meta
+++ b/Assets/Scripts/Unit/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: f299520ed9fcf4a45858ad4ef5a8d5d1
+guid: 70a2febe367468c4ebf5c1b466b1a005
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs b/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs
new file mode 100644
index 00000000..8dace739
--- /dev/null
+++ b/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs
@@ -0,0 +1,7 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEditor;
+
+[CustomPropertyDrawer(typeof(TriggerAnimationDictionary))]
+public class TriggerAnimationDicDrawer : SerializableDictionaryPropertyDrawer { }
diff --git a/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs.meta b/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs.meta
new file mode 100644
index 00000000..1b2fcd94
--- /dev/null
+++ b/Assets/Scripts/Unit/Editor/TriggerAnimationDicDrawer.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 548e21e5e705cc44597ccc005450a9e2
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/UnitActionData.cs b/Assets/Scripts/Unit/UnitActionData.cs
new file mode 100644
index 00000000..dab76696
--- /dev/null
+++ b/Assets/Scripts/Unit/UnitActionData.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+[Serializable]
+public class TriggerAnimationDictionary : SerializableDictionary<UnitAnimation.ETrigger, AnimationClip> { }
+
+
+// 配置角色的动画
+[CreateAssetMenu(fileName = "Unit Action Data")]
+public class UnitActionData : ScriptableObject
+{
+ public TriggerAnimationDictionary actions;
+
+
+}
diff --git a/Assets/Scripts/Unit/UnitActionData.cs.meta b/Assets/Scripts/Unit/UnitActionData.cs.meta
new file mode 100644
index 00000000..ed3d6b70
--- /dev/null
+++ b/Assets/Scripts/Unit/UnitActionData.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 34c4f0be042b58840bbd5f39068e5007
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Unit/UnitRootMotion.cs b/Assets/Scripts/Unit/UnitRootMotion.cs
index 0d9d04a6..a2607700 100644
--- a/Assets/Scripts/Unit/UnitRootMotion.cs
+++ b/Assets/Scripts/Unit/UnitRootMotion.cs
@@ -15,4 +15,10 @@ public class UnitRootMotion : MonoBehaviour
m_Animator = GetComponent<Animator>();
}
+ public Vector3 UpdateRootMotion()
+ {
+
+ return Vector3.zero;
+ }
+
}
diff --git a/Assets/Scripts/Utils/LogHelper.cs b/Assets/Scripts/Utils/LogHelper.cs
new file mode 100644
index 00000000..9c835bbe
--- /dev/null
+++ b/Assets/Scripts/Utils/LogHelper.cs
@@ -0,0 +1,17 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public static class LogHelper
+{
+ public static void LogError(string msg)
+ {
+ Debug.LogError("[Erika] " + msg);
+ }
+
+ public static void Log(string msg)
+ {
+ Debug.Log("[Erika] " + msg);
+ }
+
+}
diff --git a/Assets/Scripts/Utils/LogHelper.cs.meta b/Assets/Scripts/Utils/LogHelper.cs.meta
new file mode 100644
index 00000000..c8d1f167
--- /dev/null
+++ b/Assets/Scripts/Utils/LogHelper.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: dd089c734de45ce41b5d8cf87dfbd0bf
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scripts/Utils/UnityExtends.cs b/Assets/Scripts/Utils/UnityExtends.cs
new file mode 100644
index 00000000..d1a66f48
--- /dev/null
+++ b/Assets/Scripts/Utils/UnityExtends.cs
@@ -0,0 +1,16 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public static class UnityExtends
+{
+ public static T GetOrAddComponent<T>(this GameObject go) where T : MonoBehaviour
+ {
+ T component = go.GetComponent<T>();
+ if (component == null)
+ component = go.AddComponent<T>();
+ return component;
+ }
+
+
+}
diff --git a/Assets/Scripts/Utils/UnityExtends.cs.meta b/Assets/Scripts/Utils/UnityExtends.cs.meta
new file mode 100644
index 00000000..44139deb
--- /dev/null
+++ b/Assets/Scripts/Utils/UnityExtends.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 3d655d75a9052fa499fa925877bb9340
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: