internal static void Init() { state = ZetArtifactsPlugin.EclifactEnable.Value; if (ZetArtifactsPlugin.PluginLoaded("com.TPDespair.DiluvianArtifact")) { state = 0; } if (state < 1) { return; } ZetArtifactsPlugin.RegisterLanguageToken("ARTIFACT_ZETECLIFACT_NAME", "Artifact of the Eclipse"); ZetArtifactsPlugin.RegisterLanguageToken("ARTIFACT_ZETECLIFACT_DESC", "Enables all Eclipse modifiers.\n\n<style=cStack>>Ally Starting Health: <style=cDeath>-50%</style>\n>Teleporter Radius: <style=cDeath>-50%</style>\n>Ally Fall Damage: <style=cDeath>+100% and lethal</style>\n>Enemy Speed: <style=cDeath>+40%</style>\n>Ally Healing: <style=cDeath>-50%</style>\n>Enemy Gold Drops: <style=cDeath>-20%</style>\n>Enemy Cooldowns: <style=cDeath>-50%</style>\n>Allies receive <style=cDeath>permanent damage</style></style>"); if (state == 1) { RunArtifactManager.onArtifactEnabledGlobal += OnArtifactEnabled; RunArtifactManager.onArtifactDisabledGlobal += OnArtifactDisabled; } else { EnableEffects(); } }
public static void Create() { if (ZetArtifactsPlugin.LoopifactEnable.Value != 0) { PoisonEarly = ScriptableObject.CreateInstance <EliteDef>(); eliteDefs.Add(PoisonEarly); HauntedEarly = ScriptableObject.CreateInstance <EliteDef>(); eliteDefs.Add(HauntedEarly); if (ZetArtifactsPlugin.PluginLoaded("com.arimah.PerfectedLoop")) { LunarEarly = ScriptableObject.CreateInstance <EliteDef>(); eliteDefs.Add(LunarEarly); } } }
/* * public static EliteDef GetEquipmentEliteDef(EquipmentDef equipDef) * { * if (equipDef == null) return null; * if (equipDef.passiveBuffDef == null) return null; * return equipDef.passiveBuffDef.eliteDef; * } */ internal static void ApplyEarlyEliteProperties() { EliteDef t2Elite = RoR2Content.Elites.Poison; CopyBasicAttributes(ZetArtifactsContent.Elites.PoisonEarly, RoR2Content.Elites.Poison); ApplyStatBoosts(ZetArtifactsContent.Elites.PoisonEarly, t2Elite); CopyBasicAttributes(ZetArtifactsContent.Elites.HauntedEarly, RoR2Content.Elites.Haunted); ApplyStatBoosts(ZetArtifactsContent.Elites.HauntedEarly, t2Elite); if (ZetArtifactsPlugin.PluginLoaded("com.arimah.PerfectedLoop")) { CopyBasicAttributes(ZetArtifactsContent.Elites.LunarEarly, RoR2Content.Elites.Lunar); ApplyStatBoosts(ZetArtifactsContent.Elites.LunarEarly, t2Elite); } Debug.LogWarning("ZetArtifact [ZetLoopifact] - ApplyEarlyEliteProperties"); }
/* * private static void FindImpaleDotIndex() * { * if (!ZetArtifactsPlugin.PluginLoaded("com.themysticsword.elitevariety")) return; * * if (impaleDotIndex == DotController.DotIndex.None && !attemptedFindImpaleDotIndex) * { * BaseUnityPlugin Plugin = BepInEx.Bootstrap.Chainloader.PluginInfos["com.themysticsword.elitevariety"].Instance; * Assembly PluginAssembly = Assembly.GetAssembly(Plugin.GetType()); * * if (PluginAssembly != null) * { * BindingFlags Flags = BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic; * * Type type = Type.GetType("EliteVariety.Buffs.ImpPlaneImpaled, " + PluginAssembly.FullName, false); * if (type != null) * { * FieldInfo indexField = type.GetField("dotIndex", Flags); * if (indexField != null) * { * impaleDotIndex = (DotController.DotIndex)indexField.GetValue(type); * * Debug.LogWarning("ZetArtifact [ZetLoopifact] - Impale DotIndex : " + impaleDotIndex); * } * else * { * Debug.LogWarning("ZetArtifact [ZetLoopifact] - Could Not Find Field : ImpPlaneImpaled.dotIndex"); * } * } * else * { * Debug.LogWarning("ZetArtifact [ZetLoopifact] - Could Not Find Type : EliteVariety.Buffs.ImpPlaneImpaled"); * } * } * else * { * Debug.LogWarning("ZetArtifact [ZetLoopifact] - Could Not Find EliteVariety Assembly"); * } * } * * attemptedFindImpaleDotIndex = true; * } */ private static void RebuildEliteTypeArray() { if (earlyEliteDef != null) { SceneDef sceneDefForCurrentScene = SceneCatalog.GetSceneDefForCurrentScene(); string sceneName = sceneDefForCurrentScene ? sceneDefForCurrentScene.baseSceneName : ""; List <EliteDef> eliteDefs = new List <EliteDef> { ZetArtifactsContent.Elites.HauntedEarly, ZetArtifactsContent.Elites.PoisonEarly }; if (sceneName != "moon2" && ZetArtifactsPlugin.PluginLoaded("com.arimah.PerfectedLoop")) { eliteDefs.Add(ZetArtifactsContent.Elites.LunarEarly); } /* * EquipmentIndex equipIndex; * EliteDef eliteDef; * * if (ZetArtifactsPlugin.PluginLoaded("com.themysticsword.elitevariety")) * { * if (impaleElite == null) * { * equipIndex = EquipmentCatalog.FindEquipmentIndex("EliteVariety_AffixImpPlane"); * if (equipIndex != EquipmentIndex.None) * { * eliteDef = GetEquipmentEliteDef(EquipmentCatalog.GetEquipmentDef(equipIndex)); * if (eliteDef != null) impaleElite = eliteDef; * } * } * * if (impaleElite != null) eliteDefs.Add(impaleElite); * } */ if (Enabled) { Debug.LogWarning("ZetArtifact [ZetLoopifact] - Rebuild EarlyEliteTypeArray : " + eliteDefs.Count); } earlyEliteDef.eliteTypes = eliteDefs.ToArray(); } }
public static void Create() { if (ZetArtifactsPlugin.RivivifactEnable.Value == 1) { ZetRevivifact = ScriptableObject.CreateInstance <ArtifactDef>(); ZetRevivifact.cachedName = "ARTIFACT_ZETREVIVIFACT"; ZetRevivifact.nameToken = "ARTIFACT_ZETREVIVIFACT_NAME"; ZetRevivifact.descriptionToken = "ARTIFACT_ZETREVIVIFACT_DESC"; ZetRevivifact.smallIconSelectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetrevive_selected, Color.magenta); ZetRevivifact.smallIconDeselectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetrevive_deselected, Color.gray); artifactDefs.Add(ZetRevivifact); } if (ZetArtifactsPlugin.MultifactEnable.Value == 1) { ZetMultifact = ScriptableObject.CreateInstance <ArtifactDef>(); ZetMultifact.cachedName = "ARTIFACT_ZETMULTIFACT"; ZetMultifact.nameToken = "ARTIFACT_ZETMULTIFACT_NAME"; ZetMultifact.descriptionToken = "ARTIFACT_ZETMULTIFACT_DESC"; ZetMultifact.smallIconSelectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetmultitude_selected, Color.magenta); ZetMultifact.smallIconDeselectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetmultitude_deselected, Color.gray); artifactDefs.Add(ZetMultifact); } if (ZetArtifactsPlugin.DropifactEnable.Value == 1) { ZetDropifact = ScriptableObject.CreateInstance <ArtifactDef>(); ZetDropifact.cachedName = "ARTIFACT_ZETDROPIFACT"; ZetDropifact.nameToken = "ARTIFACT_ZETDROPIFACT_NAME"; ZetDropifact.descriptionToken = "ARTIFACT_ZETDROPIFACT_DESC"; ZetDropifact.smallIconSelectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetdrop_selected, Color.magenta); ZetDropifact.smallIconDeselectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetdrop_deselected, Color.gray); artifactDefs.Add(ZetDropifact); } if (ZetArtifactsPlugin.LoopifactEnable.Value == 1) { ZetLoopifact = ScriptableObject.CreateInstance <ArtifactDef>(); ZetLoopifact.cachedName = "ARTIFACT_ZETLOOPIFACT"; ZetLoopifact.nameToken = "ARTIFACT_ZETLOOPIFACT_NAME"; ZetLoopifact.descriptionToken = "ARTIFACT_ZETLOOPIFACT_DESC"; ZetLoopifact.smallIconSelectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetloop_selected, Color.magenta); ZetLoopifact.smallIconDeselectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zetloop_deselected, Color.gray); artifactDefs.Add(ZetLoopifact); } if (ZetArtifactsPlugin.EclifactEnable.Value == 1 && !ZetArtifactsPlugin.PluginLoaded("com.TPDespair.DiluvianArtifact")) { ZetEclifact = ScriptableObject.CreateInstance <ArtifactDef>(); ZetEclifact.cachedName = "ARTIFACT_ZETECLIFACT"; ZetEclifact.nameToken = "ARTIFACT_ZETECLIFACT_NAME"; ZetEclifact.descriptionToken = "ARTIFACT_ZETECLIFACT_DESC"; ZetEclifact.smallIconSelectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zeteclipse_selected, Color.magenta); ZetEclifact.smallIconDeselectedSprite = ZetArtifactsPlugin.CreateSprite(Properties.Resources.zeteclipse_deselected, Color.gray); artifactDefs.Add(ZetEclifact); } }