public void Start() { if (isWorking) { return; } isWorking = true; this.enabled = true; conveyor.SetState(ConveyorState.Working); }
private void GenerateOrder() { if (anyOrder || !isWorking) { return; } if (receivingConveyor.CurrentState == ConveyorState.Waiting) { var randomSequenceSize = 2; if (Player.PlayerScores.Scores >= 4) { randomSequenceSize = Random.Range(2, currentOrder.MaxOrderSequenceLength + 1); } currentOrder.CreateOrder(randomSequenceSize); anyOrder = true; StartCoroutine(OrderTimer()); receivingConveyor.SetState(ConveyorState.Working); OnNextOrderNotify?.Invoke(currentOrder); } }