public override SCS_Attack CreateAttackState() { SCS_SpecialAttack specialAttack = new SCS_SpecialAttack(); specialAttack.animationName = animationName; specialAttack.aerialLimit = aerialLimit; specialAttack.attackBuff = new AttackBuff(); return(specialAttack); }
protected void CheckForSpecialAttack(SCS_SpecialAttack specialAtk, int specCount) { if (specCount < specialAtk.aerialLimit || specialAtk.aerialLimit == 0) { if (ComboPower >= specialAtk.comboPowerCost) { ModifiyComboPower(-specialAtk.comboPowerCost); ChrSM.ChangeState(this, specialAtk); } } }
public virtual SCS_SpecialAttack CreateAttackState(ESpecial type) { SCS_SpecialAttack specialAttack = new SCS_SpecialAttack(); specialAttack.animationName = animationName; specialAttack.aerialLimit = aerialLimit; specialAttack.attackBuff = new AttackBuff(); specialAttack.type = type; specialAttack.comboPowerCost = comboPowerCost; return(specialAttack); }
public override void Init() { base.Init(); //soundFolderName = "Sounds/Player/"; //advancedMovementStates.Init(this); //CSMachine.ChangeState(SCS_Idle.InstanceP); //attackStates.Init(this); Ctr.wallslideSpeed = GetCurrentStatValue("WallslideSpeed"); ComboCounter.AComboIsOver += AddHealthAfterCombo; jabAtk = jab.CreateAttackState(); dTiltAtk = dTilt.CreateAttackState(); uTiltAtk = uTilt.CreateAttackState(); fTiltAtk = fTilt.CreateAttackState(); nAirAtk = nAir.CreateAttackState(); fAirAtk = fAir.CreateAttackState(); bAirAtk = bAir.CreateAttackState(); dAirAtk = dAir.CreateAttackState(); uAirAtk = uAir.CreateAttackState(); nSpecAtk = nSpec.CreateAttackState(ESpecial.NEUTRAL); sSpecAtk = sSpec.CreateAttackState(ESpecial.SIDE); uSpecAtk = uSpec.CreateAttackState(ESpecial.UP); dSpecAtk = dSpec.CreateAttackState(ESpecial.DOWN); AEnemyHit += OnEnemyHit; ComboPower = 0; }