public override State Next() { State res = this; if (_stateMachine.animal.isHungry()) { res = new StateHungry(_stateMachine); } else if (_stateMachine.animal.isSad()) { res = new StateSad(_stateMachine); } else if (Vector3.Distance(_stateMachine.animal.transform.position, _game.transform.position) < 5) { res = new StateNearPlayer(_stateMachine); } else if (Random.Range(0, 600) == 1) { res = new StateSleeping(_stateMachine); } else if (Random.Range(0, 600) == 5) { res = new StateDrinking(_stateMachine); } return(res); }
public override State Next() { State res = this; if (_ate) { res = new StateWalking(_stateMachine); } if (_food == null) { res = new StateHungry(_stateMachine); } return(res); }
public override State Next() { State res = this; if (Vector3.Distance(_stateMachine.animal.transform.position, _game.transform.position) < 5) { res = new StateNearPlayer(_stateMachine); } else if (_stateMachine.animal.isHungry()) { res = new StateHungry(_stateMachine); } else if (_stateMachine.animal.isSad()) { res = new StateSad(_stateMachine); } else if (_drank) { res = new StateWalking(_stateMachine); } return(res); }