private void ChatHook(On.RoR2.UI.ChatBox.orig_SubmitChat orig, ChatBox chatbox)
        {
            var field = chatbox.inputField;
            var text  = field.text;
            var args  = text.Split(' ');

            if (text.StartsWith("/"))
            {
                text = text.Substring(1);

                if (text.StartsWith("dump"))
                {
                    Dump();
                    field.text = "";
                }
                else if (text.StartsWith("swapi"))
                {
                    if (args.Length > 2)
                    {
                        Swap(args[1], args[2]);
                    }
                    else
                    {
                        Chat.AddMessage("usage: /swapi <slot> <skill_index>");
                    }
                    field.text = "";
                }
                else if (text.StartsWith("swap"))
                {
                    if (args.Length > 2)
                    {
                        SwapS(args[1], args[2]);
                    }
                    else
                    {
                        Chat.AddMessage("usage: /swap <slot> <skill_name>");
                    }
                    field.text = "";
                }
                else if (text.StartsWith("reapply"))
                {
                    Reapply();
                    field.text = "";
                }
                else if (text.StartsWith("reset"))
                {
                    if (args.Length > 1)
                    {
                        Reset(args[1]);
                    }
                    else
                    {
                        Chat.AddMessage("usage: /reset <slot>");
                    }
                    field.text = "";
                }
            }

            orig.Invoke(chatbox);
        }
        private void ChatHook(On.RoR2.UI.ChatBox.orig_SubmitChat orig, ChatBox chatbox)
        {
            var field = chatbox.inputField;
            var text  = field.text;
            var args  = text.Split(' ');

            if (text.StartsWith("/"))
            {
                text = text.Substring(1);

                if (text.StartsWith("swap"))
                {
                    if (args.Length > 3)
                    {
                        Replace(args[1], args[2], args[3]);
                    }
                    else
                    {
                        Chat.AddMessage("Usage: swap survivor-name 0|1|2|3 skill-name");
                    }

                    field.text = "";
                }
                else if (text.StartsWith("dump"))
                {
                    Dump();
                    field.text = "";
                }
                else if (text.StartsWith("reset"))
                {
                    Reset();
                    Chat.AddMessage("Reset survivors");
                    field.text = "";
                }
            }

            orig.Invoke(chatbox);
        }