コード例 #1
0
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            DebuggerComponent t = (DebuggerComponent)target;

            EditorGUILayout.PropertyField(m_Skin);

            if (EditorApplication.isPlaying && PrefabUtility.GetPrefabType(t.gameObject) != PrefabType.Prefab)
            {
                bool activeWindow = EditorGUILayout.Toggle("Active Window", t.ActiveWindow);
                if (activeWindow != t.ActiveWindow)
                {
                    t.ActiveWindow = activeWindow;
                }
            }
            else
            {
                EditorGUILayout.PropertyField(m_ActiveWindow);
            }

            EditorGUILayout.PropertyField(m_ShowFullWindow);
            EditorGUILayout.PropertyField(m_ConsoleWindow, true);

            serializedObject.ApplyModifiedProperties();
        }
コード例 #2
0
        public override void Load()
        {
            RegisterInIl2CppAttribute.Register();

            var gameObject = new GameObject(nameof(DebuggerPlugin)).DontDestroy();

            Component = gameObject.AddComponent <DebuggerComponent>();

            GameOptionsData.MaxImpostors = GameOptionsData.RecommendedImpostors = Enumerable.Repeat((int)byte.MaxValue, byte.MaxValue).ToArray();
            GameOptionsData.MinPlayers   = Enumerable.Repeat(1, 4).ToArray();

            Harmony.PatchAll();
        }
コード例 #3
0
        public override void Load()
        {
            RegisterInIl2CppAttribute.Register();

            var gameObject = new GameObject(nameof(DebuggerPlugin)).DontDestroy();

            Component = gameObject.AddComponent <DebuggerComponent>();

            Harmony.PatchAll();

            Extensions.Extensions.once_sceneLoaded((_, _) =>
            {
                Dumping.Dump();
            });
        }
コード例 #4
0
        public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();

            serializedObject.Update();

            DebuggerComponent t = (DebuggerComponent)target;

            EditorGUILayout.PropertyField(m_Skin);

            if (EditorApplication.isPlaying && IsPrefabInHierarchy(t.gameObject))
            {
                bool activeWindow = EditorGUILayout.Toggle("Active Window", t.ActiveWindow);
                if (activeWindow != t.ActiveWindow)
                {
                    t.ActiveWindow = activeWindow;
                }
            }
            else
            {
                EditorGUILayout.PropertyField(m_ActiveWindow);
            }

            EditorGUILayout.PropertyField(m_ShowFullWindow);

            if (EditorApplication.isPlaying)
            {
                if (GUILayout.Button("Reset Layout"))
                {
                    t.ResetLayout();
                }
            }

            EditorGUILayout.PropertyField(m_ConsoleWindow, true);

            serializedObject.ApplyModifiedProperties();
        }
コード例 #5
0
ファイル: DebuggerPlugin.cs プロジェクト: Taahh/Reactor
        public override void Load()
        {
            RegisterInIl2CppAttribute.Register();

            var gameObject = new GameObject(nameof(DebuggerPlugin)).DontDestroy();

            Component = gameObject.AddComponent <DebuggerComponent>();

            GameOptionsData.MaxImpostors = GameOptionsData.RecommendedImpostors = Enumerable.Repeat((int)byte.MaxValue, byte.MaxValue).ToArray();
            GameOptionsData.MinPlayers   = Enumerable.Repeat(1, 4).ToArray();

            System.Console.WriteLine("Patching started.");
            List <string> blacklist = new List <string>();

            blacklist.Add("FixedUpdate");
            blacklist.Add("Awake");
            foreach (var method in typeof(ShipStatus).GetMethods())
            {
                if (method.ReturnType == typeof(void) && method.GetParameters().Length == 0 && !blacklist.Contains(method.Name))
                {
                    System.Console.WriteLine("Patching method " + method.Name + " ( PATCHED )");
                }
            }
            System.Console.WriteLine("AAAAAAAAAAAAAAAAAAAAAAa");
            foreach (var method in typeof(ShipStatus).GetMethods())
            {
                if (method.ReturnType == typeof(void) && method.GetParameters().Length == 2 && !blacklist.Contains(method.Name))
                {
                    System.Console.WriteLine("Patching method " + method.Name + " ( PATCHED " + method.GetParameters()[0].ParameterType.Name + " - " + method.GetParameters()[1].ParameterType.Name + " )");
                }
            }

            System.Console.WriteLine("Patching ended.");

            Harmony.PatchAll();
        }