예제 #1
0
파일: Finish.cs 프로젝트: atgote/cubecourse
    // generic interaction
    public void Interact(GameObject interactor)
    {
        // if we have player or player tower (i.e. some stacked Cubes)
        Stacked sc = interactor.GetComponent <Stacked>();

        if (sc != null)
        {
            GameObject top    = sc.GetFirst();
            Player     player = top.GetComponent <Player>();

            if (player != null)
            {
                // promote to next level
                player.Promote();
            }
        }
    }
예제 #2
0
파일: Cube.cs 프로젝트: atgote/cubecourse
    // When the Cube is interacted by other object (Player or other cube), generic (withou direction)
    public void Interact(GameObject interactor)
    {
        // if the interactor is a Stacked object (Player or Player's "Cube tower")
        Stacked stacked = interactor.GetComponent <Stacked>();

        if (stacked != null)
        {
            Player player = stacked.GetFirst().GetComponent <Player>();
            //if (top.GetComponent<Player>() != null) // if is interacted not by Player or Player's "Cube tower"
            if (player == null) // if is interacted not by Player or Player's "Cube tower"
            {
                return;
            }

            // else - stack
            stacked.Stack(gameObject);
        }
    }