diff options
Diffstat (limited to 'Assets/Scripts/Test/SaionjiScript_Ability.cs')
-rw-r--r-- | Assets/Scripts/Test/SaionjiScript_Ability.cs | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/Assets/Scripts/Test/SaionjiScript_Ability.cs b/Assets/Scripts/Test/SaionjiScript_Ability.cs index 665b787c..ae211b89 100644 --- a/Assets/Scripts/Test/SaionjiScript_Ability.cs +++ b/Assets/Scripts/Test/SaionjiScript_Ability.cs @@ -136,10 +136,15 @@ public partial class SaionjiScript : Avatar ActionEffectGhost enableGhost = new ActionEffectGhost(Effects[0] as CharacterGhostEffect);
ActionDisableGhost disableGhost = new ActionDisableGhost(Effects[0] as CharacterGhostEffect);
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // conditions
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- ConditionCommand condLeftCmd = new ConditionCommand(GamepadButton.Left);
+ ActionActivateAfterImage enableAfterImage = new ActionActivateAfterImage(true);
+ ActionActivateAfterImage disaleAfterImage = new ActionActivateAfterImage(false);
+ ActionAfterImageInterval smallAfterImageInterval = new ActionAfterImageInterval(2);
+ ActionAfterImageInterval midiumAfterImageInterval = new ActionAfterImageInterval(5);
+
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ // conditions
+ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ ConditionCommand condLeftCmd = new ConditionCommand(GamepadButton.Left);
ConditionCommand condRightCmd = new ConditionCommand(GamepadButton.Right);
ConditionNoMoveButtonHold condNoMoveButtonHold = new ConditionNoMoveButtonHold();
ConditionButtonHold condRightButtonHold = new ConditionButtonHold(GamepadButton.Right);
@@ -226,11 +231,11 @@ public partial class SaionjiScript : Avatar move.AddTrigger(trigger);
// jump ability
- trigger = new Trigger(Ands(condInAir, condRightCmd, condRight2Cmd), new List<ActionBase> { towardRight, switchToAirDash, new ActionSetVelocity(m_Body, new Vector3(25, 0, 0)), new ActionDontUseGravity(m_Body) });
+ trigger = new Trigger(Ands(condInAir, condRightCmd, condRight2Cmd), new List<ActionBase> { towardRight, switchToAirDash, new ActionSetVelocity(m_Body, new Vector3(25, 0, 0)), new ActionDontUseGravity(m_Body), enableAfterImage, midiumAfterImageInterval});
jump.AddTrigger(trigger);
- trigger = new Trigger(Ands(condInAir, condLeftCmd, condLeft2Cmd), new List<ActionBase> { towardLeft, switchToAirDash, new ActionSetVelocity(m_Body, new Vector3(-25, 0, 0)), new ActionDontUseGravity(m_Body) });
+ trigger = new Trigger(Ands(condInAir, condLeftCmd, condLeft2Cmd), new List<ActionBase> { towardLeft, switchToAirDash, new ActionSetVelocity(m_Body, new Vector3(-25, 0, 0)), new ActionDontUseGravity(m_Body), enableAfterImage, midiumAfterImageInterval });
jump.AddTrigger(trigger);
- trigger = new Trigger(Ands(condInAir, condCircleCmd), new List<ActionBase> { switchToAirAttk1, new ActionSetLocalVelocity(m_Body, new Vector3(0, 0, 0)), new ActionDontUseGravity(m_Body)});
+ trigger = new Trigger(Ands(condInAir, condCircleCmd), new List<ActionBase> { switchToAirAttk1, new ActionSetLocalVelocity(m_Body, new Vector3(0, 0, 0)), new ActionDontUseGravity(m_Body), enableAfterImage, smallAfterImageInterval});
jump.AddTrigger(trigger);
ConditionCheckJumpState condCheckJump = new ConditionCheckJumpState(jump, JumpAbility.State.None, JumpAbility.Direction.Neutral);
trigger = new Trigger(And(condRightButtonHold, condCheckJump), new List<ActionBase> { towardRight, new ActionSetVelocityX(m_Body, 4)}, TriggerOnlyOnce.Off, TriggerSwallow.Off);
@@ -376,14 +381,21 @@ public partial class SaionjiScript : Avatar trigger = new Trigger(And(condGun4MotionRange, condLeft2Cmd), new List<ActionBase> { switchToDash, towardLeft });
gun4.AddTrigger(trigger);
- // air dash
- trigger = new Trigger(new ConditionMotionAtEnd(animator, Anim_AirDash), new List<ActionBase> { new ActionSetVelocity(m_Body, Vector3.zero), new ActionUseGravity(m_Body), toJump });
+ // air dash
+ trigger = new Trigger(new ConditionMotionRange(animator, 0.8f, 1f), disaleAfterImage, TriggerOnlyOnce.On, TriggerSwallow.Off);
+ airDash.AddTrigger(trigger);
+ trigger = new Trigger(new ConditionMotionAtEnd(animator, Anim_AirDash), new List<ActionBase> { new ActionSetVelocity(m_Body, Vector3.zero), new ActionUseGravity(m_Body), toJump });
airDash.AddTrigger(trigger);
- trigger = new Trigger(new ConditionMotionAtEnd(animator, Anim_AirAttack1), new List<ActionBase> { new ActionSetVelocity(m_Body, Vector3.zero), new ActionUseGravity(m_Body), toJump });
+ trigger = new Trigger(new ConditionMotionRange(animator, 0.18f, 1f), new ActionPlayEffect("Air_Attk1", this, new Vector3(-136.805f, 0, 0), new Vector3(0.8f, 0.8f, 0.8f)), TriggerOnlyOnce.On, TriggerSwallow.Off);
+ airAttk1.AddTrigger(trigger);
+ trigger = new Trigger(new ConditionMotionRange(animator, 0.6f,1f), disaleAfterImage, TriggerOnlyOnce.On, TriggerSwallow.Off);
+ airAttk1.AddTrigger(trigger);
+ trigger = new Trigger(new ConditionMotionAtEnd(animator, Anim_AirAttack1), new List<ActionBase> { new ActionSetVelocity(m_Body, Vector3.zero), new ActionUseGravity(m_Body), toJump});
airAttk1.AddTrigger(trigger);
+ airAttk1.AddHitDefination(hitDef);
- m_AbilitySystem.ForceStart(idle);
+ m_AbilitySystem.ForceStart(idle);
}
}
\ No newline at end of file |