Exemplo n.º 1
0
    public Orb MakeGhostOrb(Orb primaryOrb, Orb[] otherOrbs)
    {
        StoryManager storyManager = FindObjectOfType <StoryManager>();

        if (storyManager.storyBeat == StoryManager.Beat.FREE_PLAY_2)
        {
            storyManager.GotoBeat(StoryManager.Beat.INTERLUDE_2_PABS_EMERGE, 2f);
        }

        Orb ghostOrb = this.inactiveGhostOrbs.Pop();

        ghostOrb.AddChildOrb(primaryOrb);
        for (int i = 0; i < otherOrbs.Length; i++)
        {
            ghostOrb.AddChildOrb(otherOrbs[i]);
        }

        primaryOrb.item.state = Item.State.TRANSFORMED;
        for (int i = 0; i < otherOrbs.Length; i++)
        {
            otherOrbs[i].item.state = Item.State.TRANSFORMED;
        }

        ghostOrb.item.transform.position = primaryOrb.transform.position;
        ghostOrb.item.initialPosition    = ghostOrb.item.transform.position;

        return(ghostOrb);
    }