示例#1
0
    // Private Functions

    private void emptyPlayerAction(Item counterItem)
    {
        // Player has nothing in hat.

        switch (counterItem)
        {
        case Item.DOG:
            // Picks up hotdog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.COOKED_DOG:
            // Picks up cooked hotdog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.BUN:
            // Picks up bun.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.KETCHUP:
            // Pick up ketchup.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.MUSTARD:
            // Pick up mustard.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_WITH_BUN:
            // Picks up finished dog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_BUN_W_KETCHUP:
            // Picks up ketchup bun.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_BUN_W_MUSTARD:
            // Picks up Mustard bun.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_RELISH:
            // Pick up relish dog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_K_AND_M:
            // Picks up Mustard and ketchup bun.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_RELISH_MUSTARD:
            // Pick up relish-mustard dog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.HOTDOG_RELISH_KETCHUP:
            // Pick up relish-ketchup dog.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.MICROWAVE_COOKING:
            Debug.Log("Not done cooking");
            break;

        case Item.MICROWAVE_DONE:
            // Get cooked hotdog from microwave.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.COOKED_DOG);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.MICROWAVE_OFF);
            break;

        case Item.FRIDGE:
            // Get hotdog from fridge.
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.DOG);
            if (!tutorialManager.cookDogPanelShown && tutorialState.tutorialOn)
            {
                tutorialManager.setPanel(0, false);
                tutorialManager.setPanel(1, true);
                tutorialManager.cookDogPanelShown = true;
            }
            break;

        case Item.BREADBOX:
            // Get bun from breadbox.
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.BUN);
            if (tutorialManager.getBunPanelShown && !tutorialManager.condimentsPanelShown && tutorialState.tutorialOn)
            {
                tutorialManager.setPanel(2, false);
                tutorialManager.setPanel(3, true);
                tutorialManager.condimentsPanelShown = true;
            }
            break;

        case Item.RELISH_JAR:
            // Pickup relish.
            itemManager.deleteAllItemsInPosition(stateManager.chefCounterPosition);
            counterManager.setItemHeldOnCounter(CounterPosition.HAT, counterItem);
            counterManager.setItemHeldOnCounter(stateManager.chefCounterPosition, Item.NONE);
            break;

        case Item.NONE:
            Debug.Log("No item held, no item on counter");
            break;

        default:
            Debug.Log("Wrong item");
            break;
        }
    }
示例#2
0
    private void checkRecipeTurnIn()
    {
        if (stateManager.currentHatItem != Item.NONE)
        {
            if (!holdingForbiddenItem())
            {
                if (Input.GetKeyDown(KeyCode.Alpha1))
                {
                    bool success = customerManager.checkIfRecipeMatchesHeldItem(1);
                    if (success)
                    {
                        stateManager.addMoney(customerManager.getMoneyFromCustomer(1));
                        customerManager.removeCustomer(1);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playMoneySound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                    else
                    {
                        // No money.
                        customerManager.removeCustomer(1);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playErrorSound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                }

                if (Input.GetKeyDown(KeyCode.Alpha2))
                {
                    bool success = customerManager.checkIfRecipeMatchesHeldItem(2);
                    if (success)
                    {
                        stateManager.addMoney(customerManager.getMoneyFromCustomer(2));
                        customerManager.removeCustomer(2);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playMoneySound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                    else
                    {
                        // No money.
                        customerManager.removeCustomer(2);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playErrorSound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                }
                if (Input.GetKeyDown(KeyCode.Alpha3))
                {
                    bool success = customerManager.checkIfRecipeMatchesHeldItem(3);
                    if (success)
                    {
                        stateManager.addMoney(customerManager.getMoneyFromCustomer(3));
                        customerManager.removeCustomer(3);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playMoneySound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                    else
                    {
                        // No money.
                        customerManager.removeCustomer(3);
                        counterManager.setItemHeldOnCounter(CounterPosition.HAT, Item.NONE);
                        itemManager.deleteAllItemsInPosition(CounterPosition.HAT);
                        soundManager.playErrorSound();
                        if (tutorialState.tutorialOn && tutorialManager.turnInPanelShown)
                        {
                            tutorialManager.setPanel(4, false);
                            tutorialManager.setPanel(5, true);
                        }
                    }
                }
            }
        }
    }