public override void ShowGUI(List<ActionParameter> parameters)
        {
            isPlayer = EditorGUILayout.Toggle ("Is Player?", isPlayer);
            if (isPlayer)
            {
                if (Application.isPlaying)
                {
                    _char = KickStarter.player;
                }
                else
                {
                    _char = AdvGame.GetReferences ().settingsManager.GetDefaultPlayer ();
                }
            }
            else
            {
                parameterID = Action.ChooseParameterGUI ("Character:", parameters, parameterID, ParameterType.GameObject);
                if (parameterID >= 0)
                {
                    constantID = 0;
                    _char = null;
                }
                else
                {
                    _char = (Char) EditorGUILayout.ObjectField ("Character:", _char, typeof (Char), true);

                    constantID = FieldToID <Char> (_char, constantID);
                    _char = IDToField <Char> (_char, constantID, false);
                }
            }

            if (_char)
            {
                EditorGUILayout.Space ();
                renderLock_sorting = (RenderLock) EditorGUILayout.EnumPopup ("Sorting:", renderLock_sorting);
                if (renderLock_sorting == RenderLock.Set)
                {
                    mapType = (SortingMapType) EditorGUILayout.EnumPopup ("Sorting type:", mapType);
                    if (mapType == SortingMapType.OrderInLayer)
                    {
                        sortingOrder = EditorGUILayout.IntField ("New order:", sortingOrder);
                    }
                    else if (mapType == SortingMapType.SortingLayer)
                    {
                        sortingLayer = EditorGUILayout.TextField ("New layer:", sortingLayer);
                    }
                }

                if (_char.GetAnimEngine ())
                {
                    _char.GetAnimEngine ().ActionCharRenderGUI (this);
                }
            }
            else
            {
                EditorGUILayout.HelpBox ("This Action requires a Character before more options will show.", MessageType.Info);
            }

            EditorGUILayout.Space ();
            AfterRunningOption ();
        }
Exemple #2
0
        public override void ShowGUI(List <ActionParameter> parameters)
        {
            isPlayer = EditorGUILayout.Toggle("Is Player?", isPlayer);
            if (isPlayer)
            {
                if (KickStarter.settingsManager != null && KickStarter.settingsManager.playerSwitching == PlayerSwitching.Allow)
                {
                    parameterID = ChooseParameterGUI("Player ID:", parameters, parameterID, ParameterType.Integer);
                    if (parameterID < 0)
                    {
                        playerID = ChoosePlayerGUI(playerID, true);
                    }
                }

                if (KickStarter.settingsManager != null && KickStarter.settingsManager.playerSwitching == PlayerSwitching.Allow)
                {
                    if (parameterID < 0 && playerID >= 0)
                    {
                        PlayerPrefab playerPrefab = KickStarter.settingsManager.GetPlayerPrefab(playerID);
                        _char = (playerPrefab != null) ? playerPrefab.playerOb : null;
                    }
                    else
                    {
                        _char = KickStarter.settingsManager.GetDefaultPlayer();
                    }
                }
                else if (Application.isPlaying)
                {
                    _char = KickStarter.player;
                }
                else
                {
                    _char = KickStarter.settingsManager.GetDefaultPlayer();
                }
            }
            else
            {
                parameterID = Action.ChooseParameterGUI("Character:", parameters, parameterID, ParameterType.GameObject);
                if (parameterID >= 0)
                {
                    constantID = 0;
                    _char      = null;
                }
                else
                {
                    _char = (Char)EditorGUILayout.ObjectField("Character:", _char, typeof(Char), true);

                    constantID = FieldToID <Char> (_char, constantID);
                    _char      = IDToField <Char> (_char, constantID, false);
                }
            }

            if (_char)
            {
                EditorGUILayout.Space();
                renderLock_sorting = (RenderLock)EditorGUILayout.EnumPopup("Sorting:", renderLock_sorting);
                if (renderLock_sorting == RenderLock.Set)
                {
                    mapType = (SortingMapType)EditorGUILayout.EnumPopup("Sorting type:", mapType);
                    if (mapType == SortingMapType.OrderInLayer)
                    {
                        sortingOrderParameterID = Action.ChooseParameterGUI("New order:", parameters, sortingOrderParameterID, ParameterType.Integer);
                        if (sortingOrderParameterID < 0)
                        {
                            sortingOrder = EditorGUILayout.IntField("New order:", sortingOrder);
                        }
                    }
                    else if (mapType == SortingMapType.SortingLayer)
                    {
                        sortingLayerParameterID = Action.ChooseParameterGUI("New layer:", parameters, sortingLayerParameterID, ParameterType.String);
                        if (sortingLayerParameterID < 0)
                        {
                            sortingLayer = EditorGUILayout.TextField("New layer:", sortingLayer);
                        }
                    }
                }

                if (_char.GetAnimEngine())
                {
                    _char.GetAnimEngine().ActionCharRenderGUI(this, parameters);
                }
            }
            else
            {
                EditorGUILayout.HelpBox("This Action requires a Character before more options will show.", MessageType.Info);
            }

            EditorGUILayout.Space();
            AfterRunningOption();
        }
Exemple #3
0
        override public void ShowGUI(List <ActionParameter> parameters)
        {
            isPlayer = EditorGUILayout.Toggle("Is Player?", isPlayer);
            if (isPlayer)
            {
                if (Application.isPlaying)
                {
                    _char = KickStarter.player;
                }
                else
                {
                    _char = AdvGame.GetReferences().settingsManager.GetDefaultPlayer();
                }
            }
            else
            {
                parameterID = Action.ChooseParameterGUI("Character:", parameters, parameterID, ParameterType.GameObject);
                if (parameterID >= 0)
                {
                    constantID = 0;
                    _char      = null;
                }
                else
                {
                    _char = (Char)EditorGUILayout.ObjectField("Character:", _char, typeof(Char), true);

                    constantID = FieldToID <Char> (_char, constantID);
                    _char      = IDToField <Char> (_char, constantID, false);
                }
            }

            if (_char)
            {
                EditorGUILayout.Space();
                renderLock_sorting = (RenderLock)EditorGUILayout.EnumPopup("Sorting:", renderLock_sorting);
                if (renderLock_sorting == RenderLock.Set)
                {
                    mapType = (SortingMapType)EditorGUILayout.EnumPopup("Sorting type:", mapType);
                    if (mapType == SortingMapType.OrderInLayer)
                    {
                        sortingOrder = EditorGUILayout.IntField("New order:", sortingOrder);
                    }
                    else if (mapType == SortingMapType.SortingLayer)
                    {
                        sortingLayer = EditorGUILayout.TextField("New layer:", sortingLayer);
                    }
                }

                if (_char.animEngine == null)
                {
                    _char.ResetAnimationEngine();
                }
                if (_char.animEngine)
                {
                    _char.animEngine.ActionCharRenderGUI(this);
                }
            }
            else
            {
                EditorGUILayout.HelpBox("This Action requires a Character before more options will show.", MessageType.Info);
            }

            EditorGUILayout.Space();
            AfterRunningOption();
        }