summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Test
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/Test')
-rw-r--r--Assets/Scripts/Test/ArmorSoldierScript.cs28
-rw-r--r--Assets/Scripts/Test/SaionjiScript.cs14
-rw-r--r--Assets/Scripts/Test/SaionjiScript_Ability.cs45
3 files changed, 48 insertions, 39 deletions
diff --git a/Assets/Scripts/Test/ArmorSoldierScript.cs b/Assets/Scripts/Test/ArmorSoldierScript.cs
index e4b051e1..924d7874 100644
--- a/Assets/Scripts/Test/ArmorSoldierScript.cs
+++ b/Assets/Scripts/Test/ArmorSoldierScript.cs
@@ -2,21 +2,17 @@
using System.Collections.Generic;
using UnityEngine;
-public class ArmorSoldierScript : MonoBehaviour
+public class ArmorSoldierScript : Avatar
{
- // Start is called before the first frame update
- void Start()
- {
-
- }
-
- // Update is called once per frame
- void Update()
- {
-
- }
+ int Anim_HurtFront;
- private void OnAnimatorMove()
+ private void Start()
+ {
+ base.Init();
+ Anim_HurtFront = Animator.StringToHash("Hurt_Front");
+ }
+
+ private void OnAnimatorMove()
{
Animator animator = GetComponent<Animator>();
@@ -34,4 +30,10 @@ public class ArmorSoldierScript : MonoBehaviour
}
}
+ public void Hurt()
+ {
+ Animator animator = GetComponent<Animator>();
+ animator.CrossFade(Anim_HurtFront, 0);
+ }
+
}
diff --git a/Assets/Scripts/Test/SaionjiScript.cs b/Assets/Scripts/Test/SaionjiScript.cs
index 10f2e9e3..90e4a7e0 100644
--- a/Assets/Scripts/Test/SaionjiScript.cs
+++ b/Assets/Scripts/Test/SaionjiScript.cs
@@ -21,6 +21,8 @@ public partial class SaionjiScript : Avatar
// Start is called before the first frame update
void Start()
{
+ base.Init();
+
animator = GetComponent<Animator>();
//animator.speed = 0;
PhysicsWorld.Instance.AddAnimator(animator);
@@ -35,11 +37,11 @@ public partial class SaionjiScript : Avatar
SetupAbilities();
}
- private void Update()
- {
- //if (EnableAbilitySystem)
- // m_AbilitySystem.OnUpdate();
- }
+ //private void Update()
+ //{
+ // //if (EnableAbilitySystem)
+ // // m_AbilitySystem.OnUpdate();
+ //}
// 更新顺序:
// internal animator update -> OnAnimatorMove() -> physics
@@ -57,7 +59,7 @@ public partial class SaionjiScript : Avatar
if(stateInfo.IsTag("IgnoreRootMotion"))
{
// ignore root motion
- Debug.Log("ignore root motion ");
+ //Debug.Log("ignore root motion ");
}
else
{
diff --git a/Assets/Scripts/Test/SaionjiScript_Ability.cs b/Assets/Scripts/Test/SaionjiScript_Ability.cs
index 8934b5da..d8233f56 100644
--- a/Assets/Scripts/Test/SaionjiScript_Ability.cs
+++ b/Assets/Scripts/Test/SaionjiScript_Ability.cs
@@ -4,10 +4,6 @@ using UnityEngine;
public partial class SaionjiScript : Avatar
{
- /// <summary>
- /// ability system
- /// </summary>
- AbilitySystem m_AbilitySystem = new AbilitySystem();
ConditionBase Not(ConditionBase cond)
{
@@ -19,7 +15,6 @@ public partial class SaionjiScript : Avatar
return new ConditionAnd(c1, c2);
}
-
ConditionBase Ands(params ConditionBase[] cond)
{
List<ConditionBase> conditions = new List<ConditionBase>();
@@ -71,13 +66,21 @@ public partial class SaionjiScript : Avatar
AttackAbilityConfig config;
- //招式会绑定一个motion
+ //招式会绑定一个motion
+ HitDefination hitDef = new HitDefination
+ {
+ };
AttackAbility attk1 = new AttackAbility(animator, Anim_LightAttack1, m_Body);
- AttackAbility attk2 = new AttackAbility(animator, Anim_LightAttack2, m_Body);
- AttackAbility attk3 = new AttackAbility(animator, Anim_LightAttack3, m_Body);
- AttackAbility attk4 = new AttackAbility(animator, Anim_LightAttack4, m_Body);
- AttackAbility attk5 = new AttackAbility(animator, Anim_LightAttack5, m_Body);
- AttackAbility attkRush = new AttackAbility(animator, Anim_LightAttackRush, m_Body);
+ attk1.AddHitDefination(hitDef);
+ AttackAbility attk2 = new AttackAbility(animator, Anim_LightAttack2, m_Body);
+ attk2.AddHitDefination(hitDef);
+ AttackAbility attk3 = new AttackAbility(animator, Anim_LightAttack3, m_Body);
+ attk3.AddHitDefination(hitDef);
+ AttackAbility attk4 = new AttackAbility(animator, Anim_LightAttack4, m_Body);
+ attk4.AddHitDefination(hitDef);
+ AttackAbility attk5 = new AttackAbility(animator, Anim_LightAttack5, m_Body);
+ attk5.AddHitDefination(hitDef);
+ AttackAbility attkRush = new AttackAbility(animator, Anim_LightAttackRush, m_Body);
config = new AttackAbilityConfig() {
animator = this.animator,
@@ -164,7 +167,7 @@ public partial class SaionjiScript : Avatar
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// idle ability
- trigger = new Trigger(condUpCmd, toJump) ;
+ trigger = new Trigger(condTriangleCmd, toJump) ;
idle.AddTrigger(trigger);
trigger = new Trigger(And(condTowardRight, condDRC), new List<ActionBase> { wipeCmdRecord, switchToSuperKick });
idle.AddTrigger(trigger);
@@ -187,10 +190,12 @@ public partial class SaionjiScript : Avatar
idle.AddTrigger(triggerTurnRight);
idle.AddTrigger(triggerTurnLeft);
- // move ability
- trigger = new Trigger(Or(Ands(condRightButtonHold, condTowardRight, condUpCmd), Ands(condLeftButtonHold, condTowardLeft, condUpCmd)), toJumpForward);
- move.AddTrigger(trigger);
- trigger = new Trigger(And(condTowardRight, And(condRightCmd, condRight2Cmd)), new List<ActionBase> { wipeCmdRecord, switchToDash, });
+ // move ability
+ //trigger = new Trigger(Or(Ands(condRightButtonHold, condTowardRight, condTriangleCmd), Ands(condLeftButtonHold, condTowardLeft, condTriangleCmd)), toJumpForward);
+ //move.AddTrigger(trigger);
+ trigger = new Trigger(condTriangleCmd, toJump);
+ move.AddTrigger(trigger);
+ trigger = new Trigger(And(condTowardRight, And(condRightCmd, condRight2Cmd)), new List<ActionBase> { wipeCmdRecord, switchToDash, });
move.AddTrigger(trigger);
trigger = new Trigger(And(condTowardLeft, And(condLeftCmd, condLeft2Cmd)), new List<ActionBase> { wipeCmdRecord, switchToDash });
move.AddTrigger(trigger);
@@ -217,8 +222,8 @@ public partial class SaionjiScript : Avatar
jump.AddTrigger(trigger);
trigger = new Trigger(And(condLeftButtonHold, condCheckJump), new List<ActionBase> { towardLeft, new ActionSetVelocityX(m_Body,-4) }, TriggerOnlyOnce.Off, TriggerSwallow.Off);
jump.AddTrigger(trigger);
- trigger = new Trigger(Ands(condCheckJump, Not(condRightButtonHold), Not(condLeftButtonHold)), new ActionSetVelocityX(m_Body, 0), TriggerOnlyOnce.Off, TriggerSwallow.Off);
- jump.AddTrigger(trigger);
+ //trigger = new Trigger(Ands(condCheckJump, Not(condRightButtonHold), Not(condLeftButtonHold)), new ActionSetVelocityX(m_Body, 0), TriggerOnlyOnce.Off, TriggerSwallow.Off);
+ //jump.AddTrigger(trigger);
trigger = new Trigger(condJumpOnGround, new ActionSetVelocity(m_Body, Vector3.zero), TriggerOnlyOnce.On, TriggerSwallow.Off);
jump.AddTrigger(trigger);
trigger = new Trigger(Ands(new ConditionJumpDone(jump, 0.4f), condJumpOnGround, Or(condRightButtonHold, condLeftButtonHold)), switchToMove);
@@ -244,8 +249,8 @@ public partial class SaionjiScript : Avatar
attk1.AddTrigger(trigger);
attk1.AddTrigger(triggerTurnRight);
attk1.AddTrigger(triggerTurnLeft);
- trigger = new Trigger(condIsHit, new ActionLog("hit!!!"));
- attk1.AddLateTrigger(trigger);
+ //trigger = new Trigger(condIsHit, new ActionLog("hit!!!"));
+ //attk1.AddLateTrigger(trigger);
//ConditionMotionRange condAttkRushGhostRange = new ConditionMotionRange(animator, 0f, 0.8f);
//trigger = new Trigger(condAttkRushGhostRange, enableGhost, false);