public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 6);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            HeroObject targetObject = GetHeroObjectField.BuildFieldE("Update a different object?", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);

            SimpleLayout.EndVertical();

            if (targetObject != null)
            {
                ActionCommon.GetAnimation("", actionParams, heroAction.actionFields[2], heroAction.actionFields[3], heroAction.actionFields[4], AnimatorControllerParameterType.Float, targetObject);

                SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                GetFloatField.BuildFieldA("New value for the float:", actionParams, heroAction.actionFields[5]);
                SimpleLayout.EndVertical();
            }
        }
示例#2
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 3);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            HeroObject targetHO = GetHeroObjectField.BuildFieldC("Get float from this hero object template:", actionParams, heroAction.actionFields[0]);

            if (targetHO != null)
            {
                GetFloatField.BuildFieldC("The float:", actionParams, heroAction.actionFields[1], targetHO);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetFloatField.BuildFieldB("Save the float here:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
示例#3
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 12);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetCameraField.BuildField("", actionParams, heroAction.actionFields[0], heroAction.actionFields[11]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            string[] items    = { "Pan to Position", "Pan to Object" };
            int      moveType = GetDropDownField.BuildField("Move the camera here:", actionParams, heroAction.actionFields[1], new GenericListField(items));

            // move to position
            if (moveType == 1)
            {
                bool changeX = GetBoolValue.BuildField("Move to X?", actionParams, heroAction.actionFields[2], true);
                if (changeX)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[3]);
                }

                bool changeY = GetBoolValue.BuildField("Move to Y?", actionParams, heroAction.actionFields[4], true);
                if (changeY)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[5]);
                }

                bool changeZ = GetBoolValue.BuildField("Move to Z?", actionParams, heroAction.actionFields[6], true);
                if (changeZ)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[7]);
                }
            }

            // move to object
            else if (moveType == 2)
            {
                GetSceneObjectValue.BuildField("Scene Object", actionParams, heroAction.actionFields[8], heroAction.actionFields[9]);
                GetBoolValue.BuildField("Move to X?", actionParams, heroAction.actionFields[2], true);
                GetBoolValue.BuildField("Move to Y?", actionParams, heroAction.actionFields[4], true);
                GetBoolValue.BuildField("Move to Z?", actionParams, heroAction.actionFields[6], true);
            }

            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetIntegerField.BuildFieldA("Movement time: (ex: 1=fast, 100=slow)", actionParams, heroAction.actionFields[10]);
            SimpleLayout.EndVertical();
        }
示例#4
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 12);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetCameraField.BuildField("", actionParams, heroAction.actionFields[0], heroAction.actionFields[11]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldA("The Hero Object to follow:", actionParams, heroAction.actionFields[1]);
            SimpleLayout.EndVertical();


            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool customSettings = GetBoolValue.BuildField("Change default values?", actionParams, heroAction.actionFields[2], true);

            if (customSettings)
            {
                // change smoothness of follow
                bool changeSmoothing = GetBoolValue.BuildField("Change smoothness of follow?", actionParams, heroAction.actionFields[3], true);
                if (changeSmoothing)
                {
                    GetIntegerField.BuildFieldA("", actionParams, heroAction.actionFields[4]);
                }

                // change z position
                bool changeZPos = GetBoolValue.BuildField("Change Z position (ex: -1=behind object, 1=in front of object)", actionParams, heroAction.actionFields[5], true);
                if (changeZPos)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[6]);
                }

                // change y position
                bool changeYPos = GetBoolValue.BuildField("Change Y position (ex: -1=under object, 1=above object)", actionParams, heroAction.actionFields[7], true);
                if (changeYPos)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[8]);
                }

                // change angle
                bool changeAngle = GetBoolValue.BuildField("Change angle (ex: 45=slanted down, -45=slanted up)", actionParams, heroAction.actionFields[9], true);
                if (changeAngle)
                {
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[10]);
                }
            }

            SimpleLayout.EndVertical();
        }
示例#5
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 11);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetIntegerField.BuildFieldA("Image ID:", actionParams, heroAction.actionFields[0]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeImage = GetBoolValue.BuildField("Change image?", actionParams, heroAction.actionFields[1], true);

            if (changeImage)
            {
                GetUnityObjectField.BuildFieldA <Sprite>("", actionParams, heroAction.actionFields[2]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetBoolValue.BuildField("Flip image?", actionParams, heroAction.actionFields[3], true);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeScale = GetBoolValue.BuildField("Scale image? (By Percent)", actionParams, heroAction.actionFields[4], true);

            if (changeScale)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[5]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changePosX = GetBoolValue.BuildField("Change X Position?", actionParams, heroAction.actionFields[6], true);

            if (changePosX)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[7]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changePosY = GetBoolValue.BuildField("Change Y Position?", actionParams, heroAction.actionFields[8], true);

            if (changePosY)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[9]);
            }
            SimpleLayout.EndVertical();
        }
示例#6
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 11);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            SimpleLayout.Label("Get the hero objects here:");
            GetHeroObjectField.BuildFieldB("", actionParams, heroAction.actionFields[10]);

            SimpleLayout.Label("Get hero objects in the scene at a specific position:");
            SimpleLayout.BeginHorizontal();
            GetBoolValue.BuildField("X", actionParams, heroAction.actionFields[3]);
            GetBoolValue.BuildField("Y", actionParams, heroAction.actionFields[4]);
            GetBoolValue.BuildField("Z", actionParams, heroAction.actionFields[5]);
            SimpleLayout.EndHorizontal();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            if (showContent(heroAction, 3))
            {
                GetFloatField.BuildFieldA("X:", actionParams, heroAction.actionFields[6], true);
            }
            if (showContent(heroAction, 4))
            {
                GetFloatField.BuildFieldA("Y:", actionParams, heroAction.actionFields[7], true);
            }
            if (showContent(heroAction, 5))
            {
                GetFloatField.BuildFieldA("Z:", actionParams, heroAction.actionFields[8], true);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.Label("Radius to include around each coordinate:");
            GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[9]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            SimpleLayout.Label("Operation:");
            GetDropDownField.BuildField("", actionParams, heroAction.actionFields[0], new HeroObjectOperatorField());
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            SimpleLayout.Label("Save the hero objects here:");
            GetHeroObjectField.BuildFieldB("", actionParams, heroAction.actionFields[1]);

            SimpleLayout.Label("Maximum number of hero objects to save:");
            GetIntegerField.BuildFieldA("", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 10);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldA("Hero object to reference:", actionParams, heroAction.actionFields[3]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            SimpleLayout.Label("Longest distance objects can be from this hero object:");
            SimpleLayout.BeginHorizontal();
            bool a = GetBoolValue.BuildField("X", actionParams, heroAction.actionFields[4]);
            bool b = GetBoolValue.BuildField("Y", actionParams, heroAction.actionFields[5]);
            bool c = GetBoolValue.BuildField("Z", actionParams, heroAction.actionFields[6]);

            SimpleLayout.EndHorizontal();

            if (a || b || c)
            {
                SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                if (showContent(heroAction, 4))
                {
                    GetFloatField.BuildFieldA("X:", actionParams, heroAction.actionFields[7], true);
                }
                if (showContent(heroAction, 5))
                {
                    GetFloatField.BuildFieldA("Y:", actionParams, heroAction.actionFields[8], true);
                }
                if (showContent(heroAction, 6))
                {
                    GetFloatField.BuildFieldA("Z:", actionParams, heroAction.actionFields[9], true);
                }
                SimpleLayout.EndVertical();
            }

            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetDropDownField.BuildField("Operation:", actionParams, heroAction.actionFields[0], new HeroObjectOperatorField());
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldB("Save the hero objects here:", actionParams, heroAction.actionFields[1]);
            GetIntegerField.BuildFieldA("Maximum number of hero objects to save:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
示例#8
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 3);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetStringField.BuildFieldA("Name of the setting:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            int valueType = GetDropDownField.BuildField("Type of value to load:", actionParams, heroAction.actionFields[0], new PlayerPrefTypeField());

            if (valueType != 0)
            {
                SimpleLayout.Label("Save the value here:");
            }

            if (valueType == 1)
            {
                GetIntegerField.BuildFieldB("", actionParams, heroAction.actionFields[1]);
            }
            else if (valueType == 2)
            {
                GetFloatField.BuildFieldB("", actionParams, heroAction.actionFields[1]);
            }
            else if (valueType == 3)
            {
                GetBoolField.BuildFieldB("", actionParams, heroAction.actionFields[1]);
            }
            else if (valueType == 4)
            {
                GetStringField.BuildFieldB("", actionParams, heroAction.actionFields[1]);
            }
            SimpleLayout.EndVertical();
        }
示例#9
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 3);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetFloatField.BuildFieldB("Float A:", actionParams, heroAction.actionFields[0]);
            GetDropDownField.BuildField("Operator:", actionParams, heroAction.actionFields[1], new MathOperatorField());
            GetFloatField.BuildFieldA("Float B:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
示例#10
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 10);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldE("Change position of a different object?", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetChildObjectField.BuildField("Change position of a child object?", actionParams, heroAction.actionFields[2], heroAction.actionFields[3]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeX = GetBoolValue.BuildField("Change X Pos?", actionParams, heroAction.actionFields[4], true);

            if (changeX)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[5]);
            }
            bool changeY = GetBoolValue.BuildField("Change Y Pos?", actionParams, heroAction.actionFields[6], true);

            if (changeY)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[7]);
            }
            bool changeZ = GetBoolValue.BuildField("Change Z Pos?", actionParams, heroAction.actionFields[8], true);

            if (changeZ)
            {
                GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[9]);
            }
            SimpleLayout.EndVertical();
        }
示例#11
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 3);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldE("Fade in BGS on a different object?", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetFloatField.BuildFieldA("Duration:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
示例#12
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 3);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetSceneObjectValue.BuildField("slider", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetFloatField.BuildFieldB("Save the value in the slider here:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();
        }
示例#13
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 8);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetSceneObjectValue.BuildField("rotation", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeX = GetBoolValue.BuildField("Save X Angle?", actionParams, heroAction.actionFields[2], true);

            if (changeX)
            {
                GetFloatField.BuildFieldB("", actionParams, heroAction.actionFields[3]);
            }
            bool changeY = GetBoolValue.BuildField("Save Y Angle?", actionParams, heroAction.actionFields[4], true);

            if (changeY)
            {
                GetFloatField.BuildFieldB("", actionParams, heroAction.actionFields[5]);
            }
            bool changeZ = GetBoolValue.BuildField("Save Z Angle?", actionParams, heroAction.actionFields[6], true);

            if (changeZ)
            {
                GetFloatField.BuildFieldB("", actionParams, heroAction.actionFields[7]);
            }
            SimpleLayout.EndVertical();
        }
示例#14
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 5);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetHeroObjectField.BuildFieldE("Move a different object?", actionParams, heroAction.actionFields[0], heroAction.actionFields[1]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetFloatField.BuildFieldA("Jump height:", actionParams, heroAction.actionFields[2]);
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetBoolValue.BuildField("Play next action before this action completes?", actionParams, heroAction.actionFields[4], true);
            SimpleLayout.EndVertical();
        }
示例#15
0
        public static void BuildField(HeroActionParams actionParams)
        {
            HeroAction heroAction = actionParams.heroAction;

            //-----------------------------------------
            // create the action fields if they don't exist
            //-----------------------------------------
            ActionCommon.CreateActionFieldsOnHeroObject(heroAction, 35);

            //-----------------------------------------
            // create the fields for this action
            //-----------------------------------------

            // title
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changeTitle = GetBoolValue.BuildField("Change Title?", actionParams, heroAction.actionFields[0], true);

            if (changeTitle)
            {
                GetStringField.BuildFieldA("", actionParams, heroAction.actionFields[1]);
                bool changeAlignment = GetBoolValue.BuildField("Change Alignment?", actionParams, heroAction.actionFields[26], true);
                if (changeAlignment)
                {
                    string[] items = { "Left", "Center", "Right" };
                    GetDropDownField.BuildField("", actionParams, heroAction.actionFields[27], new GenericListField(items));
                }
            }
            SimpleLayout.EndVertical();

            // message
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetStringField.BuildFieldA("Message:", actionParams, heroAction.actionFields[2], false, true);
            GetUnityObjectField.BuildFieldA <AudioClip>("Audio (Optional):", actionParams, heroAction.actionFields[28]);
            SimpleLayout.EndVertical();

            // portrait left
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changePortraitLeft = GetBoolValue.BuildField("Change Portrait on Left?", actionParams, heroAction.actionFields[3], true);

            if (changePortraitLeft)
            {
                GetUnityObjectField.BuildFieldA <Sprite>("", actionParams, heroAction.actionFields[4]);
                GetBoolValue.BuildField("Flip image?", actionParams, heroAction.actionFields[5], true);
                bool changeScale = GetBoolValue.BuildField("Scale image? (By Percent)", actionParams, heroAction.actionFields[6], true);
                if (changeScale)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[7]);
                    SimpleLayout.EndVertical();
                }
                bool changePosX = GetBoolValue.BuildField("Change X Position?", actionParams, heroAction.actionFields[8], true);
                if (changePosX)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[9]);
                    SimpleLayout.EndVertical();
                }
                bool changePosY = GetBoolValue.BuildField("Change Y Position?", actionParams, heroAction.actionFields[10], true);
                if (changePosY)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[11]);
                    SimpleLayout.EndVertical();
                }
                bool changePosZ = GetBoolValue.BuildField("Put behind or in front of message window?", actionParams, heroAction.actionFields[31], true);
                if (changePosZ)
                {
                    string[] list = { "Put behind messsage window", "Put in front of message window" };
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetDropDownField.BuildField("", actionParams, heroAction.actionFields[32], new GenericListField(list));
                    SimpleLayout.EndVertical();
                }
            }
            SimpleLayout.EndVertical();

            // portrait right
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool changePortraitRight = GetBoolValue.BuildField("Change Portrait on Right?", actionParams, heroAction.actionFields[12], true);

            if (changePortraitRight)
            {
                GetUnityObjectField.BuildFieldA <Sprite>("", actionParams, heroAction.actionFields[13]);
                GetBoolValue.BuildField("Flip image?", actionParams, heroAction.actionFields[14], true);
                bool changeScale = GetBoolValue.BuildField("Scale image? (By Percent)", actionParams, heroAction.actionFields[15], true);
                if (changeScale)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[16]);
                    SimpleLayout.EndVertical();
                }
                bool changePosX = GetBoolValue.BuildField("Change X Position?", actionParams, heroAction.actionFields[17], true);
                if (changePosX)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[18]);
                    SimpleLayout.EndVertical();
                }
                bool changePosY = GetBoolValue.BuildField("Change Y Position?", actionParams, heroAction.actionFields[19], true);
                if (changePosY)
                {
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetFloatField.BuildFieldA("", actionParams, heroAction.actionFields[20]);
                    SimpleLayout.EndVertical();
                }
                bool changePosZ = GetBoolValue.BuildField("Put behind or in front of message window?", actionParams, heroAction.actionFields[33], true);
                if (changePosZ)
                {
                    string[] list = { "Put behind messsage window", "Put in front of message window" };
                    SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
                    GetDropDownField.BuildField("", actionParams, heroAction.actionFields[34], new GenericListField(list));
                    SimpleLayout.EndVertical();
                }
            }
            SimpleLayout.EndVertical();

            // choices
            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            bool addChoices = GetBoolValue.BuildField("Add Choices?", actionParams, heroAction.actionFields[21], true);

            if (addChoices)
            {
                string[] items  = { "One", "Two", "Three" };
                int      result = GetDropDownField.BuildField("", actionParams, heroAction.actionFields[22], new GenericListField(items));

                if (result > 0)
                {
                    GetStringField.BuildFieldA("", actionParams, heroAction.actionFields[23], true);
                }
                if (result > 1)
                {
                    GetStringField.BuildFieldA("", actionParams, heroAction.actionFields[24], true);
                }
                if (result > 2)
                {
                    GetStringField.BuildFieldA("", actionParams, heroAction.actionFields[25], true);
                }

                GetIntegerField.BuildFieldB("Save player's choice here:", actionParams, heroAction.actionFields[29]);
            }
            SimpleLayout.EndVertical();

            SimpleLayout.BeginVertical(SimpleGUI.Fields.Box.StyleB);
            GetBoolValue.BuildField("Keep message window open after message is closed?", actionParams, heroAction.actionFields[30], true);
            SimpleLayout.EndVertical();
        }