예제 #1
0
 public Plugin(IPALogger logger, Zenjector zenjector)
 {
     Instance = this;
     log      = logger;
     zenjector.OnMenu <NiceMissMenuInstaller>();
     zenjector.OnGame <NiceMissGameInstaller>(false);
 }
예제 #2
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, Zenjector zenjector)
 {
     instance   = this;
     Logger.log = logger;
     Logger.log.Debug("Logger initialized.");
     zenjector.OnMenu <PlaylistDownloaderInstaller>();
 }
예제 #3
0
 public Plugin(Conf conf, IPALogger logger, Zenjector zenjector)
 {
     Logger.Log = logger;
     zenjector.OnApp <LevelTweaksCoreInstaller>().WithParameters(conf.Generated <Config>());
     zenjector.OnMenu <LevelTweaksMenuInstaller>();
     harmony = new Harmony("dev.auros.leveltweaks");
 }
예제 #4
0
 public Plugin(IPALogger logger, Config config, Zenjector zenjector)
 {
     Logger.log = logger;
     zenjector.OnApp <CustomNotesCoreInstaller>().WithParameters(config.Generated <PluginConfig>());
     zenjector.OnMenu <CustomNotesMenuInstaller>();
     zenjector.OnGame <CustomNotesGameInstaller>(false).ShortCircuitForTutorial();
 }
예제 #5
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     Log.Info("SRMV2Extention initialized.");
     zenjector.OnMenu <SRMExtentionInstaller>();
 }
예제 #6
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public Plugin(IPALogger logger, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     harmony  = new Harmony(HarmonyId);
     zenjector.OnMenu <NoBoomInstaller>();
 }
예제 #7
0
 public void Init(Logger logger, Config config, Zenjector zenjector)
 {
     zenjector.OnApp <OnAppInstaller>().WithParameters(logger, config.Generated <Configuration.PluginConfig>());
     zenjector.OnMenu <OnMenuInstaller>();
     zenjector.OnGame <OnGameInstaller>(false);
     zenjector.OnGame <OnGameInstaller>(true).ShortCircuitForCampaign().ShortCircuitForMultiplayer().ShortCircuitForStandard(); // Counters+...
 }
예제 #8
0
파일: Plugin.cs 프로젝트: ocull8/TrickSaber
        public Plugin(IPALogger logger, Config conf, Zenjector zenjector)
        {
            var pluginConfig = conf.Generated <PluginConfig>();

            zenjector.OnApp <AppInstaller>().WithParameters(pluginConfig, logger);
            zenjector.OnMenu <Installers.MenuInstaller>();
            zenjector.OnGame <GameInstaller>(false);
        }
예제 #9
0
 public void Init(Logger logger, Config config, Zenjector zenject)
 {
     zenject.OnApp <InstaAppInstaller>().WithParameters(logger, config.Generated <Configuration.PluginConfig>());
     zenject.OnMenu <InstaMenuInstaller>();
     zenject.OnGame <InstaGameInstaller>()
     .Expose <StandardLevelFailedController>()
     .OnlyForStandard();
 }
예제 #10
0
        public void Init(Logger log, PluginMetadata pluginMetadata, Zenjector zenject)
        {
            LoggerInstance = log;
            _metadata      = pluginMetadata;

            zenject.OnApp <AppInstaller>();
            zenject.OnMenu <Installers.MenuInstaller>();
        }
예제 #11
0
        public void Init(IPALogger logger, Config conf, Zenjector zenjector)
        {
            Name = Assembly.GetExecutingAssembly().GetName().Name;

            zenjector.OnApp <CustomPillowsAppInstaller>().WithParameters(conf.Generated <PluginConfig>(), logger);
            zenjector.OnMenu <CustomPillowsMenuInstaller>();
            zenjector.OnGame <CustomPillowsGameInstaller>();
        }
예제 #12
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     Log.Info("CameraPlusUIPlus initialized.");
     _harmony = new Harmony(HARMONY_ID);
     zenjector.OnMenu <CameraUIPlusInstaller>();
 }
예제 #13
0
        public void Init(Logger logger, Config config, PluginMetadata pluginMetadata, Zenjector zenject)
        {
            _metadata = pluginMetadata;

            zenject.OnApp <HsvAppInstaller>().WithParameters(logger, config.Generated <HSVConfig>());
            zenject.OnMenu <HsvMenuInstaller>();
            zenject.OnGame <HsvGameInstaller>();
        }
예제 #14
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public Plugin(IPALogger logger, Zenjector zenjector)
 {
     Instance   = this;
     Plugin.Log = logger;
     Plugin.Log?.Debug("Logger initialized.");
     zenjector.OnMenu <PauseChampMenuInstaller>();
     zenjector.OnGame <PauseChampGameInstaller>().OnlyForStandard();
 }
예제 #15
0
        public void Init(Logger logger, Config config, PluginMetadata metaData, Zenjector zenject)
        {
            _metadata = metaData;

            zenject.OnApp <AppInstaller>().WithParameters(logger, config.Generated <Configuration>());
            zenject.OnMenu <MenuInstaller>();
            zenject.OnGame <GamePlayCoreInstaller>();
        }
예제 #16
0
 public void Init(IPALogger log, PluginMetadata meta, Zenjector zenjector)
 {
     Instance = this;
     _meta    = meta;
     Logger   = log;
     Logger.Debug("Logger initialized.");
     zenjector.OnApp <SRMAppInstaller>();
     zenjector.OnMenu <SRMInstaller>();
 }
예제 #17
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, IPA.Config.Config conf, Zenjector zenjector)
 {
     Instance   = this;
     Logger.Log = logger;
     Logger.Log.Debug("Logger initialized.");
     Configuration.PluginConfig.Instance = conf.Generated <Configuration.PluginConfig>();
     Logger.Log.Debug("Config loaded");
     zenjector.OnMenu <SyncSaberInstaller>();
 }
예제 #18
0
        public Plugin(Conf conf, IPALogger logger, Zenjector zenjector)
        {
            Log = logger;

            _harmony = new Harmony(kHarmonyId);

            zenjector.OnApp <SiraLocalizerCoreInstaller>().WithParameters(conf.Generated <Config>());
            zenjector.OnMenu <SiraLocalizerUIInstaller>();
        }
예제 #19
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public Plugin(IPALogger logger, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     Log.Info("PlaylistManager initialized.");
     harmony = new Harmony(HarmonyId);
     zenjector.OnMenu <PlaylistViewInstaller>();
     DownloaderUtils.Init();
 }
예제 #20
0
 public void InitWithConfig(IPA.Config.Config conf, IPALogger logger, Zenjector zenjector)
 {
     instance   = this;
     Logger.Log = logger;
     Logger.Log.Debug("Logger initialized.");
     Configuration.PluginConfig.Instance = conf.Generated <Configuration.PluginConfig>();
     Logger.Log.Debug("Config loaded");
     zenjector.OnMenu <PlaylistEditerInstaller>();
 }
예제 #21
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, Config conf, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     Log.Info("UltimateFireworks initialized.");
     Configuration.PluginConfig.Instance = conf.Generated <Configuration.PluginConfig>();
     Log.Debug("Config loaded");
     _harmony = new Harmony(HARMONY_ID);
     zenjector.OnMenu <Installer.Installer>();
 }
예제 #22
0
        public void InitWithConfig(IPALogger logger, Zenjector zenjector, Config conf)
        {
            Instance = this;
            Log      = logger;
            Log.Info("NJOCheck initialized.");

            Configuration.PluginConfig.Instance = conf.Generated <Configuration.PluginConfig>();
            Log.Debug("Config loaded");
            zenjector.OnMenu <NJOMenuInstaller>();
        }
예제 #23
0
 /// <summary>
 /// Called when the plugin is first loaded by IPA (either when the game starts or when the plugin is enabled if it starts disabled).
 /// [Init] methods that use a Constructor or called before regular methods like InitWithConfig.
 /// Only use [Init] with one Constructor.
 /// </summary>
 public void Init(IPALogger logger, Config conf, Zenjector zenjector)
 {
     Instance = this;
     Log      = logger;
     Log.Info("BeatmapInformation initialized.");
     Configuration.PluginConfig.Instance = conf.Generated <Configuration.PluginConfig>();
     Log.Debug("Config loaded");
     zenjector.OnGame <BMInfoGameInstaller>().OnlyForStandard();
     zenjector.OnMenu <BMInfoMenuInstaller>();
 }
예제 #24
0
        public Plugin(IPALogger logger, Config conf, Zenjector zenjector, PluginMetadata pluginMetadata)
        {
            Instance       = this;
            PluginMetadata = pluginMetadata;
            Log            = logger;
            Config         = conf.Generated <PluginConfig>();
            zenjector.OnApp <MPCoreInstaller>();
            zenjector.OnMenu <MPMenuInstaller>();
            HttpOptions options = new HttpOptions("MultiplayerExtensions", new Version(pluginMetadata.Version.ToString()));

            BeatSaver = new BeatSaver(options);
        }
예제 #25
0
        public Plugin(Conf conf, IPALogger log, Zenjector zenjector, PluginMetadata metadata)
        {
            var config = conf.Generated <Config>();

            _harmony       = new Harmony(_harmonyID);
            config.Version = metadata.Version;

            zenjector
            .On <PCAppInit>()
            .Pseudo(Container =>
            {
                log?.Debug("Initializing Core Bindings");
                Container.BindLoggerAsSiraLogger(log);
                Container.BindInstance(config).AsSingle();
            });

            zenjector.OnMenu <DisoMenuInstaller>();
            zenjector
            .On <MenuInstaller>()
            .Register <CommonSoundInstaller>()
            .Pseudo((ctx, Container) =>
            {
                if (config.MusicPlayerEnabled)
                {
                    log?.Debug("Upgrading to our DiPlayer");
                    var binding   = ctx.GetComponent <ZenjectBinding>();
                    var original  = (binding.Components.FirstOrDefault(x => x is SongPreviewPlayer) as SongPreviewPlayer) !;
                    var fader     = original.GetComponent <FadeOutSongPreviewPlayerOnSceneTransitionStart>();
                    var focus     = original.GetComponent <SongPreviewPlayerPauseOnInputFocusLost>();
                    var newPlayer = original.Upgrade <SongPreviewPlayer, DisoPreviewPlayer>();

                    Container.QueueForInject(newPlayer);
                    Container.Unbind <SongPreviewPlayer>();
                    Container.Bind(typeof(SongPreviewPlayer), typeof(DisoPreviewPlayer)).To <DisoPreviewPlayer>().FromInstance(newPlayer).AsSingle();
                    fader.SetField <FadeOutSongPreviewPlayerOnSceneTransitionStart, SongPreviewPlayer>("_songPreviewPlayer", newPlayer);
                    focus.SetField <SongPreviewPlayerPauseOnInputFocusLost, SongPreviewPlayer>("_songPreviewPlayer", newPlayer);
                }

                log?.Debug("Exposing UI Audio Manager");
                var audioManager = ctx.GetRootGameObjects().ElementAt(0).GetComponentInChildren <BasicUIAudioManager>();
                Container.Bind <BasicUIAudioManager>().FromInstance(audioManager).AsSingle();

                var gameObject = new GameObject("Audio Sourcer");
                var mixer      = audioManager.GetField <AudioSource, BasicUIAudioManager>("_audioSource").outputAudioMixerGroup;
                var clone      = gameObject.AddComponent <AudioSource>();
                clone.outputAudioMixerGroup = mixer;
                Container.BindInstance(clone).WithId("audio.sourcer").AsSingle();
            })
            .Initialized((ctx, Container) =>
            {
                var manager = Container.ResolveId <SiraUtil.Interfaces.IRegistrar <AudioClip> >(nameof(Managers.DiClickManager));
            });
        }
예제 #26
0
        public Plugin(Conf conf, IPALogger logger, Zenjector zenjector, PluginMetadata metadata)
        {
            Log = logger;
            Config config = conf.Generated <Config>();

            _harmony       = new Harmony("dev.auros.dicolors");
            config.Version = metadata.HVersion;

            zenjector.OnApp <DiCInstaller>().WithParameters(config, metadata.HVersion);
            //zenjector.OnGame<DiCGameInstaller>(false);
            zenjector.OnMenu <DiCMenuInstaller>();
        }
예제 #27
0
        public void Init(IPALogger logger, Config conf, Zenjector zenjector)
        {
            _logger = logger;

            var pluginConfig    = conf.Generated <PluginConfig>();
            var saberFactoryDir = new DirectoryInfo(UnityGame.UserDataPath).CreateSubdirectory("Saber Factory");

            LoadCSDescriptors();

            zenjector.OnApp <AppInstaller>().WithParameters(logger, pluginConfig, saberFactoryDir);
            zenjector.OnMenu <Installers.MenuInstaller>();
            zenjector.OnGame <GameInstaller>(false);
        }
예제 #28
0
        public Plugin(Conf conf, IPALogger logger, Zenjector zenjector)
        {
            Log = logger;

            _harmony = new Harmony(kHarmonyId);

            if (Environment.GetCommandLineArgs().Contains("--dump-localization"))
            {
                new LocalizationExporter().DumpBaseGameLocalization();
            }

            zenjector.OnApp <SiraLocalizerCoreInstaller>().WithParameters(conf.Generated <Config>());
            zenjector.OnMenu <SiraLocalizerUIInstaller>();
        }
예제 #29
0
        public Plugin(IPALogger logger, Config conf, Zenjector zenjector, PluginMetadata pluginMetadata)
        {
            Instance       = this;
            PluginMetadata = pluginMetadata;
            Log            = logger;
            Config         = conf.Generated <PluginConfig>();
            zenjector.OnApp <MultiplayerInstaller>();
            zenjector.OnMenu <InterfaceInstaller>();
            HttpOptions options = new HttpOptions
            {
                ApplicationName = "MultiplayerExtensions",
                Version         = new Version(pluginMetadata.Version.ToString())
            };

            BeatSaver = new BeatSaver(options);
        }
예제 #30
0
        public void Init(IPALogger logger, Config config, Zenjector zenjector, PluginMetadata meta)
        {
            Logger.log = logger;

            if (PluginManager.GetPluginFromId("ShaderExtensions") == null)
            {
                if (!LoadShaderDescriptors())
                {
                    return;
                }
            }

            zenjector.OnApp <DSCoreInstaller>().WithParameters(config.Generated <PluginConfig>());
            zenjector.OnGame <DSGameInstaller>(false).ShortCircuitForTutorial();
            zenjector.OnMenu <DSMenuInstaller>();
        }