diff options
Diffstat (limited to 'Assets/Scripts/Test')
-rw-r--r-- | Assets/Scripts/Test/ArmorSoldierScript_Anim.cs | 8 | ||||
-rw-r--r-- | Assets/Scripts/Test/ArmorSoldierScript_States.cs | 20 | ||||
-rw-r--r-- | Assets/Scripts/Test/SaionjiScript.cs | 1 | ||||
-rw-r--r-- | Assets/Scripts/Test/SaionjiScript_Effect.cs | 2 | ||||
-rw-r--r-- | Assets/Scripts/Test/SaionjiScript_States.cs | 18 |
5 files changed, 30 insertions, 19 deletions
diff --git a/Assets/Scripts/Test/ArmorSoldierScript_Anim.cs b/Assets/Scripts/Test/ArmorSoldierScript_Anim.cs index cf21a504..fd632ab7 100644 --- a/Assets/Scripts/Test/ArmorSoldierScript_Anim.cs +++ b/Assets/Scripts/Test/ArmorSoldierScript_Anim.cs @@ -12,7 +12,9 @@ public partial class ArmorSoldierScript : Avatar, IInteractable int Anim_MidiumHurt; int Anim_HeavyHurt; int Anim_GroundHurt; - int Anim_AirHurt; + int Anim_AirHurt;
+
+ int Anim_GetUp; void SetupAnim() @@ -26,6 +28,8 @@ public partial class ArmorSoldierScript : Avatar, IInteractable Anim_GroundHurt = Animator.StringToHash("Hurt_Ground"); Anim_AirHurt = Animator.StringToHash("Hurt_Air"); - } + Anim_GetUp = Animator.StringToHash("GetUp"); +
+ } }
\ No newline at end of file diff --git a/Assets/Scripts/Test/ArmorSoldierScript_States.cs b/Assets/Scripts/Test/ArmorSoldierScript_States.cs index 04532dd2..3df583f2 100644 --- a/Assets/Scripts/Test/ArmorSoldierScript_States.cs +++ b/Assets/Scripts/Test/ArmorSoldierScript_States.cs @@ -23,17 +23,18 @@ public partial class ArmorSoldierScript : Avatar, IInteractable m_StateGroundHurt = groundHurt; m_StateAirHurt = airHurt; - - //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - // conditions - //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - ConditionInAir condInAir = new ConditionInAir(m_BodyCollider); - + HurtState getUp = new HurtState(m_Animator, Anim_GetUp); +
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ // conditions
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ ConditionInAir condInAir = new ConditionInAir(m_BodyCollider); //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // actions //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ActionSwitchState switchToIdle = new ActionSwitchState(m_StateController, idle); + ActionSwitchState switchToGetUp = new ActionSwitchState(m_StateController, getUp); Trigger trigger = null;
@@ -49,9 +50,14 @@ public partial class ArmorSoldierScript : Avatar, IInteractable // air hurt
ConditionMotionAtEnd airAtEnd = new ConditionMotionAtEnd(m_Animator, Anim_AirHurt); - trigger = new Trigger(And(airAtEnd, Not(condInAir)), switchToIdle); + trigger = new Trigger(And(airAtEnd, Not(condInAir)), switchToGetUp); airHurt.AddTrigger(trigger); + // getup + ConditionMotionAtEnd getUpEnd = new ConditionMotionAtEnd(m_Animator, Anim_GetUp); + trigger = new Trigger(getUpEnd, switchToIdle); + getUp.AddTrigger(trigger); + m_StateController.ForceStart(idle); } diff --git a/Assets/Scripts/Test/SaionjiScript.cs b/Assets/Scripts/Test/SaionjiScript.cs index ae8ee6ff..1178b42a 100644 --- a/Assets/Scripts/Test/SaionjiScript.cs +++ b/Assets/Scripts/Test/SaionjiScript.cs @@ -28,7 +28,6 @@ public partial class SaionjiScript : Avatar public EffectHandler[] Effects;
- // Start is called before the first frame update
void Start()
{
base.Init();
diff --git a/Assets/Scripts/Test/SaionjiScript_Effect.cs b/Assets/Scripts/Test/SaionjiScript_Effect.cs index f07ce915..54de744e 100644 --- a/Assets/Scripts/Test/SaionjiScript_Effect.cs +++ b/Assets/Scripts/Test/SaionjiScript_Effect.cs @@ -4,8 +4,6 @@ using UnityEngine; public partial class SaionjiScript : Avatar { - public Transform m_Hips; - public override Vector3 GetEffectPosition()
{
return m_Hips.position;
diff --git a/Assets/Scripts/Test/SaionjiScript_States.cs b/Assets/Scripts/Test/SaionjiScript_States.cs index 0c733cd6..ce9fb8a6 100644 --- a/Assets/Scripts/Test/SaionjiScript_States.cs +++ b/Assets/Scripts/Test/SaionjiScript_States.cs @@ -40,13 +40,15 @@ public partial class SaionjiScript : Avatar AttackState airDash = new AttackState(animator, Anim_AirDash, m_Body); - AttackStateConfig config; - - //招式会绑定一个motion - HitDefination hitDef = new HitDefination - {
+ AttackStateConfig config;
+
+ //招式会绑定一个motion
+ HitDefination hitDef = new HitDefination
+ {
type = HitType.Air, - hurtAddForce = new Vector3(0, 20000, 0)
+ hurtAddForce = new Vector3(0, 20000, 0),
+ sparkName = "Bullet_WhiteSpark",
+ sparkHostType = HitSparkHost.Center
}; AttackState attk1 = new AttackState(animator, Anim_LightAttack1, m_Body); attk1.AddHitDefination(hitDef); @@ -79,7 +81,9 @@ public partial class SaionjiScript : Avatar hitDef = new HitDefination { type = HitType.Air, - hurtAddForce = new Vector3(0,10000,0) + hurtAddForce = new Vector3(0,10000,0),
+ sparkName = "Bullet_WhiteSpark",
+ sparkHostType = HitSparkHost.Center }; airAttk1.AddHitDefination(hitDef); |