Beispiel #1
0
 void SetStringToObjectName(ref ev_details det)
 {
     objectItem = (s_object)EditorGUILayout.ObjectField(objectItem, typeof(s_object), true);
     if (GUILayout.Button("Set string to object"))
     {
         if (objectItem != null)
         {
             det.string0 = objectItem.name;
         }
     }
 }
Beispiel #2
0
 public override void EnumChange(ref ev_details ev)
 {
     ev.eventType = (int)(MagnumFoudation.EVENT_TYPES)EditorGUILayout.EnumPopup((MagnumFoudation.EVENT_TYPES)ev.eventType);
 }
Beispiel #3
0
    public override void DisplayCutsceneEditor(int eventType, ref ev_details ev, int i)
    {
        switch ((EVENT_TYPES)eventType)
        {
        default:
            base.DisplayCutsceneEditor(eventType, ref ev, i);
            break;

            #region CHECK FLAG
        case EVENT_TYPES.CHECK_FLAG:
            ev.logic = (int)(LOGIC_TYPE)EditorGUILayout.EnumPopup("Logic Type", (LOGIC_TYPE)ev.logic);
            switch ((LOGIC_TYPE)ev.logic)
            {
            default:
                base.DisplayCutsceneEditor(eventType, ref ev, i);
                break;

            case LOGIC_TYPE.NUM_OF_GEMS:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF NUMBER OF GEMS  =< ");
                ev.int0 = EditorGUILayout.IntField(ev.int0);
                EditorGUILayout.Space();
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO ");
                ev.int1 = EditorGUILayout.IntField(ev.int1);
                EditorGUILayout.LabelField(" OR ");
                ev.string1 = EditorGUILayout.TextField(ev.string1);
                EditorGUILayout.EndHorizontal();
                break;

            case LOGIC_TYPE.ITEM_OWNED:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF "); EditorGUILayout.LabelField("ITEM ");
                ev.string0 = EditorGUILayout.TextField(ev.string0);
                EditorGUILayout.LabelField(" WITH TYPE ");
                ev.int0 = EditorGUILayout.IntField(ev.int0);
                EditorGUILayout.LabelField(" (" + (o_item.ITEM_TYPE)ev.int0 + ")");
                EditorGUILayout.LabelField(" POSSESED.");
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO ");
                ev.int1 = EditorGUILayout.IntField(ev.int1);
                EditorGUILayout.EndHorizontal();
                break;

            case LOGIC_TYPE.CHECK_CHARACTER:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF CHARACTER IS ");
                ev.string0 = EditorGUILayout.TextField(ev.string0);
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO ");
                ev.int1 = EditorGUILayout.IntField(ev.int1);
                EditorGUILayout.EndHorizontal();
                break;

            case LOGIC_TYPE.CHECK_CHARACTER_NOT:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF CHARACTER IS NOT");
                ev.string0 = EditorGUILayout.TextField(ev.string0);
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO ");
                ev.int1 = EditorGUILayout.IntField(ev.int1);
                EditorGUILayout.LabelField(" OR ");
                ev.string1 = EditorGUILayout.TextField(ev.string1);
                EditorGUILayout.EndHorizontal();
                break;

            case LOGIC_TYPE.CHECK_UTILITY_RETURN_NUM:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF UITILITY ");
                SetStringToObjectName(ref ev);
                EditorGUILayout.LabelField(ev.string0);
                EditorGUILayout.LabelField(" RETURN NUMBER IS ");
                ev.int0 = EditorGUILayout.IntField(ev.int0);
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO ");
                ev.int1 = EditorGUILayout.IntField(ev.int1);
                EditorGUILayout.LabelField(" OR ");
                ev.string1 = EditorGUILayout.TextField(ev.string1);
                EditorGUILayout.EndHorizontal();
                break;

            case LOGIC_TYPE.VAR_NOT_EQUAL:

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("IF ");
                ev.string0 = EditorGUILayout.TextField(ev.string0);
                EditorGUILayout.LabelField(" != ");
                ev.int0 = EditorGUILayout.IntField(ev.int0);
                EditorGUILayout.Space();
                EditorGUILayout.EndHorizontal();

                EditorGUILayout.BeginHorizontal();
                EditorGUILayout.LabelField("THEN JUMP TO LABEL");
                ev.string1 = EditorGUILayout.TextField(ev.string1);
                EditorGUILayout.EndHorizontal();
                break;
            }
            break;
            #endregion

            #region CREATE OBJECT
        case EVENT_TYPES.CREATE_OBJECT:

            EditorGUILayout.LabelField("Object type:");
            ev.string0 = EditorGUILayout.TextField(ev.string0);
            EditorGUILayout.LabelField("Object name: " + ev.string1);
            ev.string1 = EditorGUILayout.TextField(ev.string1);
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Object position:");
            EditorGUILayout.BeginHorizontal();
            ev.float0 = EditorGUILayout.FloatField(ev.float0);
            ev.float1 = EditorGUILayout.FloatField(ev.float1);
            EditorGUILayout.EndHorizontal();
            break;
            #endregion

            #region DELETE OBJECT
        case EVENT_TYPES.DELETE_OBJECT:

            EditorGUILayout.LabelField("Object type: " + ev.string0);
            EditorGUILayout.LabelField("Object name: " + ev.string1);
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Object position:");
            EditorGUILayout.BeginHorizontal();
            ev.float0 = EditorGUILayout.FloatField(ev.float0);
            ev.float1 = EditorGUILayout.FloatField(ev.float1);
            EditorGUILayout.EndHorizontal();
            break;
            #endregion

            #region SET OBJECT COLLISION SIZE
        case EVENT_TYPES.SET_OBJ_COLLISION:

            EditorGUILayout.LabelField("Name:");
            ev.string0 = EditorGUILayout.TextField(ev.string0);
            EditorGUILayout.BeginHorizontal();
            ev.float0 = EditorGUILayout.FloatField(ev.float0);
            ev.float1 = EditorGUILayout.FloatField(ev.float1);
            EditorGUILayout.EndHorizontal();
            break;
            #endregion

            #region DISPLAY CHARACTER HEALTH
        case EVENT_TYPES.DISPLAY_CHARACTER_HEALTH:
            leng = EditorGUILayout.IntField(leng);
            if (GUILayout.Button("New list"))
            {
                ev.stringList = new string[leng];
                objlist       = new s_object[leng];
            }

            if (ev.stringList != null || ev.stringList.Length > 0)
            {
                if (objlist == null)
                {
                    objlist = new s_object[leng];
                }
                for (int o = 0; o < ev.stringList.Length; o++)
                {
                    objlist[o] = (o_character)EditorGUILayout.ObjectField(objlist[o], typeof(o_character), true);

                    if (objlist[o] != null)
                    {
                        ev.stringList[o] = objlist[o].name;
                    }
                }
                for (int o = 0; o < ev.stringList.Length; o++)
                {
                    EditorGUILayout.LabelField(ev.stringList[o]);
                }
            }
            //There will be one GUI for the top (near main character health) and one in the bottom (boss health)
            ev.boolean1 = EditorGUILayout.Toggle("Top?", ev.boolean1);
            //
            ev.boolean = EditorGUILayout.Toggle("Show?", ev.boolean);

            break;
            #endregion

            #region WAIT
        case EVENT_TYPES.WAIT:

            ev.float0 = EditorGUILayout.FloatField("Length: ", ev.float0);

            break;

            #endregion

            #region SET_HEALTH
        case EVENT_TYPES.SET_HEALTH:

            selectedCharacter = (o_character)EditorGUILayout.ObjectField(selectedCharacter, typeof(o_character), true);
            if (selectedCharacter != null)
            {
                ev.string0 = selectedCharacter.name;
            }
            ev.float0 = EditorGUILayout.FloatField("Set health to: ", ev.float0);
            break;
            #endregion

            #region CHOICE
        case EVENT_TYPES.CHOICE:
            ev.string0 = EditorGUILayout.TextField("Question label:", ev.string0);

            /*
             * leng = EditorGUILayout.IntField(leng);
             * if (GUILayout.Button("New list"))
             * {
             *  ev.stringList = new string[leng];
             *  ev.intList = new int[leng];
             * }
             * if (ev.stringList != null)
             * {
             *  //EditorGUILayout.BeginScrollView(scrollview2);
             *  for (int o = 0; o < ev.stringList.Length; o++)
             *  {
             *      ev.stringList[o] = EditorGUILayout.TextField("Name of choice" + o + " :", ev.stringList[o]);
             *      ev.intList[o] = EditorGUILayout.IntField("Event position to jump to: ", ev.intList[o]);
             *      EditorGUILayout.Space();
             *  }
             *  //EditorGUILayout.EndScrollView();
             *
             *  for (int o = 0; o < ev.stringList.Length; o++)
             *  {
             *      EditorGUILayout.LabelField(ev.stringList[o]);
             *      EditorGUILayout.LabelField("" + ev.intList[o]);
             *  }
             * }
             */
            break;
            #endregion

            #region ADD CHOICE
        case EVENT_TYPES.ADD_CHOICE_OPTION:
            ev.string0 = EditorGUILayout.TextField("Name of choice: ", ev.string0);
            ev.int0    = EditorGUILayout.IntField("Event position to jump to: ", ev.int0);
            ev.string1 = EditorGUILayout.TextField("or label name: ", ev.string1);
            break;
            #endregion

            #region SHOW_TEXT
        case EVENT_TYPES.SHOW_TEXT:

            ev.float0  = EditorGUILayout.FloatField(ev.float0);
            ev.string0 = EditorGUILayout.TextArea(ev.string0);
            break;
            #endregion
        }
    }
Beispiel #4
0
    public override string DisplayCode(int eventType, ev_details d)
    {
        string str = "";

        switch ((EVENT_TYPES)d.eventType)
        {
        default:
            return(base.DisplayCode(eventType, d));

        case EVENT_TYPES.CHECK_FLAG:

            switch ((LOGIC_TYPE)d.logic)
            {
            default:
                return(base.DisplayCode(eventType, d));

            case LOGIC_TYPE.NUM_OF_GEMS:
                str = "    JIGG " + d.int1;
                break;

            case LOGIC_TYPE.CHECK_UTILITY_RETURN_NUM:
                str = "    If utility '" + d.string0 + "' number is equal, jump to point " + d.int1;
                break;

            case LOGIC_TYPE.CHECK_CHARACTER:
                str = "    If chracter is " + d.string0 + "jump to label " + d.int1;
                break;

            case LOGIC_TYPE.CHECK_CHARACTER_NOT:
                str = "    If chracter is not " + d.string0 + "jump to label " + d.int1;
                break;
            }
            break;

        case EVENT_TYPES.DEPOSSES:
            str = "    Deposess character.";
            break;

        case EVENT_TYPES.CHANGE_SCENE:
            if (d.boolean)
            {
                str = "    Allow deposses";
            }
            else
            {
                str = "    Disallow deposses";
            }
            break;

        case EVENT_TYPES.UTILITY_INITIALIZE:
            str = "    Initialize utility '" + d.string0 + "'";
            break;

        case EVENT_TYPES.SET_UTILITY_FLAG:
            str = "    Set utility '" + d.string0 + "' flag to " + d.int0;
            break;

        case EVENT_TYPES.UTILITY_CHECK:
            str = "    Check if utility '" + d.string0 + "' event state is " + d.int0;
            break;

        case EVENT_TYPES.ADD_CHOICE_OPTION:
            str = "    Add choice '" + d.string0 + "' that jumps to line " + d.int0;
            break;

        case EVENT_TYPES.CHOICE:
            str = "    Present Choices";
            break;
        }
        return(str);
    }