Пример #1
0
    /**
     * Picks up a block if there's a moveable on in front,
     * or drops a block if the alpaca has one and there's a platform it can fall on.
     */
    bool AttemptPickUpOrPlaceBlock()
    {
        Vector3 curr = alpaca.GetCurrAlpacaLocation();
        Vector3 dest = alpaca.GetCurrAlpacaDest(clickedWhere);

        // Is there a block above attempted block?
        if (GetBlockAbove(dest) != null && GetBlockAbove(dest).b_type == Block.BlockType.MOVEABLE)
        {
            return(false);
        }
        bool temp = (map.TryHoldOrPlaceBlock(dest));

        if (temp)
        {
            alpaca.SetBlock(map.IsBlockHeld());
            scoreboardController.incrementNumMoves();
        }
        else
        {
            map.LoadTryHoldBlock(dest, false);
        }
        if (control_scheme == 2)
        {
            UpdateBlockButt();
            alpaca.StopWalk();
        }
        return(temp);
    }
Пример #2
0
    void InteractWithNPC(ref NPCInteractionController npc)
    {
        if (npc != null)
        {
            comicController.SetComicAndMinigame(ref npc.comic, npc.minigameSceneName);
            comicController.DisplayComicAndShiftCam();
            gameMode = GameMode.COMIC;
        }

        UpdateInteractability();         // Unhighlight NPC
        alpaca.StopWalk();
    }