Пример #1
0
        internal void Awake()
        {
            Instance = this;

            var obj = new GameObject("CombatDummyGUI");

            DontDestroyOnLoad(obj);
            obj.AddComponent <ModGUI>();

            var harmony = new Harmony("com.sinai.combatdummy");

            harmony.PatchAll();

            CustomKeybindings.AddAction(MenuKey, CustomKeybindings.KeybindingsCategory.Menus, CustomKeybindings.ControlType.Both, 5, CustomKeybindings.InputActionType.Button);
        }
Пример #2
0
        private void InspectPage(bool inmenu)
        {
            if (m_dummyCharacter == null)
            {
                m_windowPage = 0;
            }
            else
            {
                AIButtons();

                if (!m_dummyCharacter.CharacterExists)
                {
                    if (inmenu)
                    {
                        m_windowPage = 0;
                    }

                    GUILayout.Label("Character has despawned...");
                }
                else
                {
                    EditInspectingDummy();
                }

                GUI.color = Color.green;
                if (GUILayout.Button("Spawn / Apply"))
                {
                    m_dummyCharacter.SpawnOrReset();
                }

                GUILayout.Space(10);

                GUI.color = Color.red;
                if (GUILayout.Button("Destroy Dummy"))
                {
                    CombatDummyMod.DestroyDummy(m_dummyCharacter);
                    m_dummyCharacter = null;
                    m_windowPage     = 0;
                }
                GUI.color = Color.white;
            }
        }
Пример #3
0
        private void MainPage(bool inmenu)
        {
            if (!inmenu)
            {
                BoldTitle("Spawn new dummy");

                GUILayout.BeginHorizontal();

                GUILayout.Label("Dummy name:", GUILayout.Width(120));
                m_newDummyName = GUILayout.TextField(m_newDummyName, GUILayout.Width(120));
                if (GUILayout.Button("Add", GUILayout.Width(40)))
                {
                    if (string.IsNullOrEmpty(m_newDummyName))
                    {
                        m_newDummyName = "Dummy " + CombatDummyMod.ActiveDummies.Count + 1;
                    }
                    var dummy = CombatDummyMod.AddDummy(m_newDummyName);
                    m_dummyCharacter = dummy;
                    m_windowPage     = 1;

                    m_newDummyName = $"Dummy {CombatDummyMod.ActiveDummies.Count + 1}";
                }

                GUILayout.EndHorizontal();

                GUILayout.Space(5);

                BoldTitle("Active Dummies:");

                var list = CombatDummyMod.ActiveDummies;

                if (list.Count < 1)
                {
                    GUILayout.Label("Spawn a dummy to start...");
                }
                else
                {
                    for (int i = 0; i < list.Count; i++)
                    {
                        GUILayout.BeginHorizontal();
                        var dummy = list[i];
                        if (GUILayout.Button(dummy.Name))
                        {
                            m_dummyCharacter = dummy;
                            m_windowPage     = 1;
                        }
                        GUILayout.Label("AI:", GUILayout.Width(20));
                        GUI.color = Color.green;
                        if (GUILayout.Button("Enable", GUILayout.Width(60)))
                        {
                            dummy.SetAIEnabled(true);
                        }
                        GUI.color = Color.red;
                        if (GUILayout.Button("Disable", GUILayout.Width(60)))
                        {
                            dummy.SetAIEnabled(false);
                        }
                        GUI.color = Color.white;
                        GUILayout.EndHorizontal();
                    }
                }
            }
            else
            {
                GUILayout.Label("Load up a character to start...");
            }
        }