public bool Update() { if (animationTimer == 0) { if (FireSystem.IsAlreadyTargetTimes()) { FireSystem.ClearRecordFireTarget(); FireSystem.Action(new SpecFireAction() { Target = Target }, true); } else { FireSystem.Fire(Target); FireSystem.RecordFireTarget(Target); } } else if (animationTimer > 0.2) { return(true); } animationTimer += Time.deltaTime; return(false); }
public bool Update() { if (animationTimer == 0) { FireSystem.Stock(Target); } if (lastTimer < 1 && animationTimer >= 1) { FireSystem.SpecFire(Target); } else if (animationTimer > 1.2) { return(true); } lastTimer = animationTimer; animationTimer += Time.deltaTime; return(false); }
public bool Update() { switch (Step) { case MoveToTargetAndAttackActionStep.Pendding: if (IsCloseToTarget() == false) { Step = MoveToTargetAndAttackActionStep.MoveToTarget; } else { Step = MoveToTargetAndAttackActionStep.Attack; } break; case MoveToTargetAndAttackActionStep.MoveToTarget: if (IsCloseToTarget() == false) { MoveToTarget(Time.deltaTime); } else { Step = MoveToTargetAndAttackActionStep.Attack; } break; case MoveToTargetAndAttackActionStep.Attack: if (animationTimer == 0) { FireSystem.SwordAttack(Target); } else if (animationTimer > 0.5) { Step = MoveToTargetAndAttackActionStep.End; return(true); } animationTimer += Time.deltaTime; break; } return(false); }
void MoveToTarget(float deltaTime) { FireSystem.MoveToPositionStep(Target.transform.position, deltaTime); }
public void OnFireSystemSwordAttack(FireSystem fs, GameObject target, object info) { print("OnFireSystemSwordAttack"); }
public void OnFireSystemSpecFire(FireSystem fs, GameObject target, object info) { print("OnFireSystemSpecFire"); }