Setting Up A State in a FSM
I'm using an class based FSM for the first time and I'm a little confused on what the best practice is to set-up the initial state.

I've added a FSM to my `Screen` class that I want to use to handle (mostly) transitions.  Traditionally I'd do something like this:

    function update(frameTime : Number) : void
    {
        switch(_currentState)
        {
            case STATE_TRANSITIONING_IN:
                slideTheButtonsIn();
                if(buttonsInPlace == true)
                    changeState(STATE_ACTIVE);
            break;
            case STATE_ACTIVE:
                if(buttonClicked() == true)
                    changeState(STATE_TRANSITIONING_OUT)
            break;
            case STATE_TRANSITIONING_OUT:
                slideButtonsOut();
                if(buttonsInPlace == true)
                    removeThisScreen();
            break;
        }
    }

I think that's a pretty standard approach.

So my problem with my new states are, WHO is responsible for creating all the objects on screen?  Should my `Screen` create all the buttons and stuff and then pass them to the `MainMenuTransitionInState` class or should the `MainMenuTransitionState` class create the buttons and then pass them around or have I missed the mark entirely?

Appreciate your sage advice here.  Thanks!
Setting Up A State in a FSM
===

I'm using an class based FSM for the first time and I'm a little confused on what the best practice is to set-up the initial state.

I've added a FSM to my `Screen` class that I want to use to handle (mostly) transitions.  Traditionally I'd do something like this:

    function update(frameTime : Number) : void
    {
        switch(_currentState)
        {
            case STATE_TRANSITIONING_IN:
                slideTheButtonsIn();
                if(buttonsInPlace == true)
                    changeState(STATE_ACTIVE);
            break;
            case STATE_ACTIVE:
                if(buttonClicked() == true)
                    changeState(STATE_TRANSITIONING_OUT)
            break;
            case STATE_TRANSITIONING_OUT:
                slideButtonsOut();
                if(buttonsInPlace == true)
                    removeThisScreen();
            break;
        }
    }

I think that's a pretty standard approach.

So my problem with my new states are, WHO is responsible for creating all the objects on screen?  Should my `Screen` create all the buttons and stuff and then pass them to the `MainMenuTransitionInState` class or should the `MainMenuTransitionState` class create the buttons and then pass them around or have I missed the mark entirely?

Appreciate your sage advice here.  Thanks!