diff options
author | chai <215380520@qq.com> | 2023-05-15 09:28:11 +0800 |
---|---|---|
committer | chai <215380520@qq.com> | 2023-05-15 09:28:11 +0800 |
commit | 3b036c6de871aa519a1f7fbfb52e09618945041f (patch) | |
tree | d5dc6d4f1d501e4ce3c6d69ca7a698a03634490c /WorldlineKeepers/Assets/Scripts/Unit | |
parent | 6fb204d494b897907d655b5752196983a82ceba2 (diff) |
*misc
Diffstat (limited to 'WorldlineKeepers/Assets/Scripts/Unit')
16 files changed, 202 insertions, 12 deletions
diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker.meta new file mode 100644 index 0000000..86a6143 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 65b7da83d18b0a045a33527f5d446de7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs new file mode 100644 index 0000000..bdb18a2 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs @@ -0,0 +1,15 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace WK +{ + + public class BerserkerBehaviour : CharacterBehaviour + { + + + + } + +} diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs.meta new file mode 100644 index 0000000..2718863 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBehaviour.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28a1e81c0e2cc314085ee6e5fc2528ed +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs new file mode 100644 index 0000000..9601783 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs @@ -0,0 +1,18 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace WK +{ + + public class BerserkerBuilder : CharacterBuilder + { + + protected override PlayerController BuildPhaseController() + { + return base.BuildPhaseController(); + } + + } + +} diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs.meta new file mode 100644 index 0000000..270e5a5 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Berserker/BerserkerBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e49b90c4b84cbc54bb4ad7d14925e5db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBehaviour.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBehaviour.cs index 7674523..f056056 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBehaviour.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBehaviour.cs @@ -11,7 +11,7 @@ namespace WK public abstract class CharacterBehaviour { private PlayerController m_Controller; - public PlayerController controller { get { return m_Controller; } } + protected PlayerController controller { get { return m_Controller; } } public CharacterInfo info { get { return m_Controller.info; } } @@ -19,14 +19,19 @@ namespace WK { } - public virtual void OnGlobalUpdate() + public virtual void OnPreUpdate() { } - public virtual void OnStageUpdate() + public virtual void OnUpdate() { } + public virtual void OnPostUpdate() + { + + } + } }
\ No newline at end of file diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs new file mode 100644 index 0000000..c51d565 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs @@ -0,0 +1,41 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using WK.Data; + +namespace WK +{ + + public class CharacterBuilder + { + protected GameObject m_Root; + protected CharacterMetadata m_Metadata; + + public GameObject Build(CharacterMetadata metadata) + { + m_Metadata = metadata; + + m_Root = BuildPhaseRootGameObject(); + + return m_Root; + } + + protected virtual GameObject BuildPhaseRootGameObject() + { + GameObject go = new GameObject(); + return go; + } + + protected virtual PlayerController BuildPhaseController() + { + return null; + } + + protected virtual void BuildPhaseSpriteRenderer() + { + + } + + } + +} diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs.meta new file mode 100644 index 0000000..a859554 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterBuilder.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4e33239fb24da54cb24d06bd2c5cc51 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterInfo.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterInfo.cs index 62dd830..63bf35f 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterInfo.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterInfo.cs @@ -118,7 +118,7 @@ namespace WK } /// <summary> - /// 角色当前状态 + /// 角色当前状态,包括: 属性数值、buff、perk /// </summary> public class CharacterInfo { @@ -132,6 +132,11 @@ namespace WK public CharacterPerksCollection perks { get { return m_Perks; } } public CharacterPerksCollection m_Perks; + public void OnUpdate() + { + + } + } } diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterMetadata.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterMetadata.cs index 81b80c0..c8409da 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterMetadata.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/CharacterMetadata.cs @@ -8,16 +8,19 @@ namespace WK.Data public class CharacterMetadata { - public string uid; public string name_key; - public Dictionary<string, string> stats; + public string stats; public string behaviour; - public string extra_data; + public string builder; + + public string level_stats; + + public Dictionary<string, string> extra_data; } } diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula.meta new file mode 100644 index 0000000..ffeee0a --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a9d6564032bf7864fbf3b2ef87aafa6d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs new file mode 100644 index 0000000..0789b9a --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs @@ -0,0 +1,10 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class DraculaBehaviour +{ + + + +} diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs.meta b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs.meta new file mode 100644 index 0000000..2ebde89 --- /dev/null +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Dracula/DraculaBehaviour.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9c1fd60947162c742a3ed5448c72b76b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/PlayerController.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/PlayerController.cs index 2f19fb3..5ca87e6 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/Characters/PlayerController.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/PlayerController.cs @@ -5,10 +5,13 @@ using UnityEngine; namespace WK { - public class PlayerController + /// <summary> + /// 玩家角色根节点 + /// </summary> + public sealed class PlayerController : INotification { /// <summary> - /// 角色所有当前数值 + /// 角色所有当前数值集合 /// </summary> private CharacterInfo m_CharacterInfo; public CharacterInfo info { get { return m_CharacterInfo; } } @@ -19,6 +22,32 @@ namespace WK private CharacterBehaviour m_CharacterBehaviour; public CharacterBehaviour behaviour { get { return m_CharacterBehaviour; } } + /// <summary> + /// gameobject根节点 + /// </summary> + private GameObject m_GameObject; + public GameObject gameObject { get { return m_GameObject;} } + + public void OnCreate() + { + } + + /// <summary> + /// 逻辑更新 + /// </summary> + public void OnUpdate() + { + // preupdate + behaviour.OnPreUpdate(); + + // update + info.OnUpdate(); + behaviour.OnUpdate(); + + // post update + behaviour.OnPostUpdate(); + } + } }
\ No newline at end of file diff --git a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Samurai/SamuraiScript.cs b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Samurai/SamuraiScript.cs index 966c3d0..6e877b3 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/Characters/Samurai/SamuraiScript.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/Characters/Samurai/SamuraiScript.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; using UnityEngine.UIElements; +using WK.Rendering; namespace MH { @@ -121,7 +122,7 @@ namespace MH m_Moving = false; } - GetComponent<Animator>().speed = m_Moving ? 1 : 0; + GetComponent<SpriteAnimationController>().playing = m_Moving ? true : false; if(Input.GetMouseButtonUp(0)) { diff --git a/WorldlineKeepers/Assets/Scripts/Unit/UnitManager.cs b/WorldlineKeepers/Assets/Scripts/Unit/UnitManager.cs index 9ec97f3..9ecb088 100644 --- a/WorldlineKeepers/Assets/Scripts/Unit/UnitManager.cs +++ b/WorldlineKeepers/Assets/Scripts/Unit/UnitManager.cs @@ -5,10 +5,13 @@ using UnityEngine; namespace WK { - public class UnitManager + public class UnitManager : Singleton<UnitManager> { - + /// <summary> + /// 公共的标准角色构建流程 + /// </summary> + public readonly CharacterBuilder standardCharacterBuilder = new CharacterBuilder(); } |