1
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MuHua {
|
||||
/// <summary>
|
||||
/// 角色动作
|
||||
/// </summary>
|
||||
public abstract class Ikinesis {
|
||||
/// <summary> 持续更新 </summary>
|
||||
public virtual void Update() { }
|
||||
|
||||
/// <summary> 动作过渡 </summary>
|
||||
public abstract bool Transition(Ikinesis kinesis);
|
||||
|
||||
public virtual void Startkinesis() { }
|
||||
|
||||
/// <summary> 触发动画特效 </summary>
|
||||
public virtual void AnimationEffects() { }
|
||||
/// <summary> 动画结束 </summary>
|
||||
public virtual void AnimationEnd() { }
|
||||
/// <summary> 动画退出 </summary>
|
||||
public virtual void AnimationExit() { }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e096ab8673cda9e42be867d97aae83eb
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,22 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MuHua {
|
||||
public class KinesisAttack : Ikinesis {
|
||||
public bool animEnd = false;
|
||||
public string animName;
|
||||
public IAnimator animator;
|
||||
|
||||
public KinesisAttack(ICharacter character, string name = "Attack01") {
|
||||
animName = name;
|
||||
animator = character.GetComponent<IAnimator>();
|
||||
}
|
||||
|
||||
public override bool Transition(Ikinesis kinesis) => animEnd;
|
||||
|
||||
public override void Startkinesis() => animator.Transition(animName);
|
||||
|
||||
public override void AnimationEnd() => animEnd = true;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6c910b7b6bba29d4381c9bb1d615ff77
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,15 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MuHua {
|
||||
public class KinesisIdle : Ikinesis {
|
||||
public IAnimator animator;
|
||||
|
||||
public KinesisIdle(ICharacter character) => animator = character.GetComponent<IAnimator>();
|
||||
|
||||
public override bool Transition(Ikinesis kinesis) => true;
|
||||
|
||||
public override void Startkinesis() => animator.Transition("Idle");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 190d2b1706b7e0b42b9700950c4e2c18
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,31 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MuHua {
|
||||
public class KinesisMove : Ikinesis {
|
||||
public Vector3 position;
|
||||
public IMovement movement;
|
||||
public IAnimator animator;
|
||||
public ICharacter character;
|
||||
|
||||
public KinesisMove(ICharacter character, Vector3 position) {
|
||||
this.position = position;
|
||||
this.character = character;
|
||||
movement = character.GetComponent<IMovement>();
|
||||
animator = character.GetComponent<IAnimator>();
|
||||
}
|
||||
|
||||
public override bool Transition(Ikinesis kinesis) => true;
|
||||
|
||||
public override void Startkinesis() => animator.Transition("Move");
|
||||
|
||||
public override void Update() {
|
||||
if (movement.UpdateMove(position, 5)) { character.Transitionkinesis(new KinesisIdle(character)); }
|
||||
|
||||
animator.SetFloat("MoveSpeed", movement.CurrentSpeed);
|
||||
animator.SetFloat("MoveX", movement.Direction.x);
|
||||
animator.SetFloat("MoveZ", movement.Direction.z);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7c4416dfc61926e439368a6fd3b26675
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,14 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using MuHua;
|
||||
using UnityEngine;
|
||||
|
||||
namespace MuHua {
|
||||
public class KinesisTurn : Ikinesis {
|
||||
|
||||
|
||||
public override bool Transition(Ikinesis kinesis) {
|
||||
throw new System.NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 891f774ac729c45409682ff40c2d4615
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user