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); }
private StateDrinking() { if (_instance != null) { return; } _instance = this; }