Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
Jonyboylovespie authored Nov 22, 2022
1 parent 8b368c1 commit 3b7a7f6
Show file tree
Hide file tree
Showing 2 changed files with 159 additions and 29 deletions.
2 changes: 1 addition & 1 deletion ModHelperData.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
{
public static class ModHelperData
{
public const string Version = "1.0.0";
public const string Version = "1.0.1";
public const string Name = "Primary Paragons";
public const string Description =
"This mod adds paragons for all of the primary towers, and adds OP versions to each, toggleable in mod settings. You can also change the price of each paragon in mod settings.<br><br>This is originally Greenphx's mod, I have just fixed it to work in the newer BTD6 versions and added new features.";
Expand Down
186 changes: 158 additions & 28 deletions PrimaryParagons.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ namespace PrimaryParagons
{
public class Main : BloonsTD6Mod
{
public string Hi = "MelonLogger.Msg(System.ConsoleColor.Cyan, \"Hi\");";
public override void OnNewGameModel(GameModel gameModel, Il2CppSystem.Collections.Generic.List<ModModel> mods)
{
gameModel.GetParagonUpgradeForTowerId("BombShooter").cost = CostHelper.CostForDifficulty(Settings.BombParagonCost, mods);
Expand Down Expand Up @@ -175,45 +176,81 @@ public override void OnNewGameModel(GameModel gameModel, Il2CppSystem.Collection
}
}
}
public override void OnMainMenu()
public override void OnTitleScreen()
{
if (Settings.BombParagonOP == true || Settings.GlueParagonOP == true || Settings.IceParagonOP == true || Settings.TackParagonOP == true)
{
if(Settings.TogglePopup == true)
{
PopupScreen.instance.ShowOkPopup("OP paragon's have been loaded, check the console to see which ones are on.");
}
if(Settings.BombParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The bomb shooter paragon is on the OP version!");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The bomb shooter paragon is on the balanced version!");
}
if (Settings.GlueParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The glue gunner paragon is on the OP version!");
}
else
if (Settings.TogglePopup == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The glue gunner paragon is on the balanced version!");
PopupScreen.instance.ShowOkPopup("OP primary paragon's have been loaded, check the console to see which ones are on.");
}
if (Settings.IceParagonOP == true)
if (Settings.BombParagonOP == false || Settings.TackParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The ice monkey paragon is on the OP version!");
MelonLogger.Msg(System.ConsoleColor.Cyan, "////////////////////////////////////////////////////////////");
if (Settings.BombParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the balanced version! ///");
}
if (Settings.GlueParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the balanced version! ///");
}
if (Settings.IceParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
}
if (Settings.TackParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the balanced version! ///");
}
MelonLogger.Msg(System.ConsoleColor.Cyan, "////////////////////////////////////////////////////////////");
}
else
else if (Settings.GlueParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The ice monkey paragon is on the balanced version!");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the balanced version! ///");
if (Settings.IceParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
}
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////////////");
}
if (Settings.TackParagonOP == true)
else if (Settings.IceParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The tack shooter paragon is on the OP version!");
MelonLogger.Msg(System.ConsoleColor.Cyan, "//////////////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "//////////////////////////////////////////////////////////");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "The tack shooter paragon is on the balanced version!");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// All primary paragons are on OP the version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////");
}
}
else
Expand All @@ -223,6 +260,7 @@ public override void OnMainMenu()
PopupScreen.instance.ShowOkPopup("All paragons have been set to balanced, if you would like to change this, check the mod settings.");
}
}
MelonLogger.Msg(System.ConsoleColor.Red, "This chart is made on startup, this is not accurate if you change the settings, click reload start screen message in settings to reload this.");
}
public override void OnApplicationStart()
{
Expand Down Expand Up @@ -263,7 +301,7 @@ public override void ApplyUpgrade(TowerModel towerModel)
clusterModel.pierce = 100.0f;
clusterModel.maxPierce = 100.0f;
clusterModel.GetBehavior<CreateProjectileOnExhaustFractionModel>().projectile.pierce = 100.0f;
clusterModel.GetBehavior<CreateProjectileOnExhaustFractionModel>().projectile.maxPierce = 100.0f;;
clusterModel.GetBehavior<CreateProjectileOnExhaustFractionModel>().projectile.maxPierce = 100.0f; ;
towerModel.AddBehavior(new OverrideCamoDetectionModel("OverrideCamoDetectionModel_", true));
towerModel.GetDescendants<FilterInvisibleModel>().ForEach(model2 => model2.isActive = false);
attackModel.attackThroughWalls = true;
Expand Down Expand Up @@ -477,7 +515,93 @@ public override void ModifyDisplayNode(UnityDisplayNode node)
}
public class Settings : ModSettings
{
private static readonly ModSettingCategory OPParagons = new ("Toggle OP Mode of Paragons")
public static void OPConsoleList()
{
if (Settings.BombParagonOP == true || Settings.GlueParagonOP == true || Settings.IceParagonOP == true || Settings.TackParagonOP == true)
{
if (Settings.TogglePopup == true)
{
PopupScreen.instance.ShowOkPopup("OP primary paragon's have been loaded, check the console to see which ones are on.");
}
if (Settings.BombParagonOP == false || Settings.TackParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "////////////////////////////////////////////////////////////");
if (Settings.BombParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the balanced version! ///");
}
if (Settings.GlueParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the balanced version! ///");
}
if (Settings.IceParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
}
if (Settings.TackParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the balanced version! ///");
}
MelonLogger.Msg(System.ConsoleColor.Cyan, "////////////////////////////////////////////////////////////");
}
else if (Settings.GlueParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the balanced version! ///");
if (Settings.IceParagonOP == true)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the OP version! ///");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
}
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////////////");
}
else if (Settings.IceParagonOP == false)
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "//////////////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The bomb shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The glue gunner paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The ice monkey paragon is on the balanced version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// The tack shooter paragon is on the OP version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "//////////////////////////////////////////////////////////");
}
else
{
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////");
MelonLogger.Msg(System.ConsoleColor.Cyan, "/// All primary paragons are on OP the version! ///");
MelonLogger.Msg(System.ConsoleColor.Cyan, "///////////////////////////////////////////////////");
}
}
else
{
if (Settings.TogglePopup == true)
{
PopupScreen.instance.ShowOkPopup("All paragons have been set to balanced, if you would like to change this, check the mod settings.");
}
}
MelonLogger.Msg(System.ConsoleColor.Red, "This chart is made on clicking the button, this is not accurate if you change the settings, click reload start screen message in settings to reload this.");
}
private static readonly ModSettingCategory OPParagons = new("Toggle OP Mode of Paragons")
{
modifyCategory = category =>
{
Expand Down Expand Up @@ -547,6 +671,12 @@ public class Settings : ModSettings
icon = GetTextureGUID<Main>("FieryDoom_Portrait")
};

public static readonly ModSettingButton PushMe = new(() => OPConsoleList())
{
displayName = "Reload Start Screen Message",
buttonText = "Reload",
buttonSprite = VanillaSprites.YellowBtnLong
};
public static readonly ModSettingBool TogglePopup = new(true)
{
displayName = "Toggle Popup",
Expand Down

0 comments on commit 3b7a7f6

Please sign in to comment.