|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using UnityEngine;
-
- namespace IllusionInjector
- {
- public class PluginComponent : MonoBehaviour
- {
- private CompositePlugin plugins;
- private bool freshlyLoaded = false;
-
- void Awake()
- {
- DontDestroyOnLoad(gameObject);
-
- if (Environment.CommandLine.Contains("--verbose") && !Screen.fullScreen)
- {
- Windows.GuiConsole.CreateConsole();
- }
-
- plugins = new CompositePlugin(PluginManager.Plugins);
- plugins.OnApplicationStart();
- }
-
- void Start()
- {
- OnLevelWasLoaded(Application.loadedLevel);
- }
-
- void Update()
- {
- if (freshlyLoaded)
- {
- freshlyLoaded = false;
- plugins.OnLevelWasInitialized(Application.loadedLevel);
- }
- plugins.OnUpdate();
- }
-
- void LateUpdate()
- {
- plugins.OnLateUpdate();
- }
-
- void FixedUpdate()
- {
- plugins.OnFixedUpdate();
- }
-
- void OnDestroy()
- {
- plugins.OnApplicationQuit();
- }
-
- void OnLevelWasLoaded(int level)
- {
- plugins.OnLevelWasLoaded(level);
- freshlyLoaded = true;
- }
-
- }
- }
|