protected override void FixedUpdateMyBehavior() { m_MovementStatus = m_PlayerReference.GetMovementStatus(); m_MovementDirection = m_PlayerReference.GetDirection(); m_NewPosition = m_PlayerReference.GetNewPosition(); MovingAnimation(); }
bool CheckCanMove() { if (m_MovementStatus == MOVEMENT_STATUS.MovingAnimation) { m_MovementDirection = DIRECTION.None; return(false); } if (m_MovementStatus == MOVEMENT_STATUS.Timeout) { m_MovementDirection = DIRECTION.None; MissedBeat(); return(false); } if (m_MovementStatus == MOVEMENT_STATUS.Standing) { m_MovementStatus = MOVEMENT_STATUS.MovingCombo; m_MovementBeat = BeatMaster.instance.GetBeatNumber(); return(true); } m_MovementBeat++; if (m_MovementBeat - BeatMaster.instance.GetBeatNumber() >= 1) { m_MovementDirection = DIRECTION.None; MissedBeat(); return(false); } return(true); }
void Moving(Tile _nextTile) { if (CheckCanMove() == false) { return; } if (Attack() == true) { return; } if (_nextTile.Contains <Wall>() != null) { _nextTile.Contains <Wall>().GetComponent <Wall>().Dig(1); return; } if (_nextTile.Contains <Gold>() != null) { m_Inventory.PickGold(_nextTile.Contains <Gold>()); } m_OldTile = m_CurrentTile; m_CurrentTile.RemoveFromTile(GetComponent <AboveTileObject>()); m_CurrentTile = _nextTile; m_CurrentTile.AddToTile(GetComponent <AboveTileObject>()); Vector3 new_position = m_CurrentTile.transform.position; m_NewPosition = new Vector3(new_position.x, new_position.y, m_CurrentTile.GetLayerNumber()); m_MovementStatus = MOVEMENT_STATUS.MovingAnimation; UpdatePlayerDirection(); NotifySubscribers(); }
void MissedBeat() { m_MovementStatus = MOVEMENT_STATUS.Timeout; m_TimeoutTime = 0; //f**k... chestia asta e urata rau de tot; //pe viitor trebuie sa am pe cineva care se ocupa de UI //pe asta ofac aici asa rapid pt cv vizual; BAD PRACTICE Instantiate(m_MissedBeatPrefab); }
void HandleTimeout() { if (m_MovementStatus != MOVEMENT_STATUS.Timeout) { return; } m_TimeoutTime += Time.fixedDeltaTime; if (m_TimeoutTime >= 0.5f) { m_MovementStatus = MOVEMENT_STATUS.Standing; } }
public void SetMovementStatus(MOVEMENT_STATUS _status) { m_MovementStatus = _status; }