//#---------------------------------------------------------- //# * Update //#---------------------------------------------------------- public override void Update() { if (!IsInAction()) _tickAction--; _tickHealing = (_tickHealing + 1) % 30; if (_aniAction == 0) _currentAction = Game_UnitAction.Null; if (_aniAction > -1) _aniAction--; if (IsDead()) _tickDespawn--; _aniBitmap = (_aniBitmap + 1) % 60; base.Update(); }
public bool IsReadyToStartAct(Game_UnitAction action) { if (IsDead() || IsInAction()) return false; if (action == Game_UnitAction.Jump) { foreach (bool connection in Connections) if (connection) return false; // can only jump when solo unit } return (_tickAction <= 0); }
//#---------------------------------------------------------- //# * Start Act //#---------------------------------------------------------- public void StartAct(Game_UnitAction action) { _tickAction = 60; _currentAction = action; if (action == Game_UnitAction.Move) _aniAction = 8; else if (action == Game_UnitAction.Jump) _aniAction = 8; else _aniAction = 20; }
public bool IsReadyToAct(Game_UnitAction action) { if (action != _currentAction) return false; if (IsDead()) return false; return (_aniAction == 10); }