Ejemplo n.º 1
0
        public mg_ss_EItemTypes GetNextFruitToQueue(mg_ss_OrderSystem p_orderSystem)
        {
            mg_ss_EItemTypes result = mg_ss_EItemTypes.NULL;
            mg_ss_OrderStep  firstIncompleteStep = FirstIncompleteStep;

            if (p_orderSystem.IsItemSpawnedOnConveyor(firstIncompleteStep.FruitType))
            {
                LastStepQueued++;
                mg_ss_OrderStep mg_ss_OrderStep2 = null;
                if (LastStepQueued < Steps.Count && LastStepQueued < Steps.Count)
                {
                    mg_ss_OrderStep2 = Steps[LastStepQueued];
                }
                if (mg_ss_OrderStep2 != null && mg_ss_OrderStep2.State == mg_ss_EOrderStepState.INCOMPLETE)
                {
                    result = mg_ss_OrderStep2.FruitType;
                }
            }
            else
            {
                LastStepQueued = Steps.IndexOf(firstIncompleteStep);
                result         = firstIncompleteStep.FruitType;
            }
            return(result);
        }
Ejemplo n.º 2
0
        public void CompleteStep(mg_ss_EItemTypes p_fruitType)
        {
            mg_ss_OrderStep mg_ss_OrderStep2 = Steps.Find((mg_ss_OrderStep step) => step.State == mg_ss_EOrderStepState.INCOMPLETE && step.FruitType == p_fruitType);

            if (mg_ss_OrderStep2 != null)
            {
                mg_ss_OrderStep2.State = mg_ss_EOrderStepState.COMPLETE;
                OrderCompleted         = FirstIncompleteStep == null;
            }
        }
Ejemplo n.º 3
0
        public void GenerateGenericOrder(int p_length)
        {
            ClearOrder();
            mg_ss_OrderStep mg_ss_OrderStep2 = null;

            for (int i = 0; i < p_length; i++)
            {
                mg_ss_OrderStep2           = Steps[i];
                mg_ss_OrderStep2.FruitType = (mg_ss_EItemTypes)Random.Range(0, 12);
                mg_ss_OrderStep2.State     = mg_ss_EOrderStepState.INCOMPLETE;
            }
        }
Ejemplo n.º 4
0
        public void GenerateSpecialOrder(mg_ss_SpecialOrderData p_orderData)
        {
            ClearOrder();
            SpecialOrder = p_orderData;
            mg_ss_OrderStep mg_ss_OrderStep2 = null;

            for (int i = 0; i < SpecialOrder.Order.Count; i++)
            {
                mg_ss_OrderStep2           = Steps[i];
                mg_ss_OrderStep2.FruitType = SpecialOrder.Order[i];
                mg_ss_OrderStep2.State     = mg_ss_EOrderStepState.INCOMPLETE;
            }
        }
Ejemplo n.º 5
0
        public void CopyOrder(mg_ss_Order p_orderToCopy)
        {
            ClearOrder();
            SpecialOrder   = p_orderToCopy.SpecialOrder;
            LastStepQueued = p_orderToCopy.LastStepQueued;
            OrderCompleted = p_orderToCopy.OrderCompleted;
            mg_ss_OrderStep mg_ss_OrderStep2 = null;
            mg_ss_OrderStep mg_ss_OrderStep3 = null;

            for (int i = 0; i < Steps.Count; i++)
            {
                mg_ss_OrderStep2           = p_orderToCopy.Steps[i];
                mg_ss_OrderStep3           = Steps[i];
                mg_ss_OrderStep3.State     = mg_ss_OrderStep2.State;
                mg_ss_OrderStep3.FruitType = mg_ss_OrderStep2.FruitType;
            }
        }
 public void Initialize(mg_ss_OrderStep p_orderStepLogic)
 {
     m_orderStepLogic = p_orderStepLogic;
 }