-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
22 changed files
with
459 additions
and
74 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
using BTD_Mod_Helper.Extensions; | ||
using Il2CppAssets.Scripts.Models.Bloons; | ||
using Il2CppAssets.Scripts.Models.Bloons.Behaviors; | ||
using Il2CppAssets.Scripts.Models.Bloons.Behaviors.Actions; | ||
using System.Collections.Generic; | ||
|
||
namespace BTD6Rogue; | ||
|
||
public static class PhayzeConfig { | ||
|
||
// General Stats | ||
public static readonly float baseMaxHealth = 1000; | ||
public static readonly float levelMaxHealthMultiplier = 3f; | ||
|
||
public static readonly float baseSpeed = 1f; | ||
public static readonly float levelSpeedAddition = 0.1f; | ||
|
||
// Difficulty Multiplier | ||
public static readonly Dictionary<string, float> difficultyMultipliers = new Dictionary<string, float>() { | ||
["Poppable"] = 0.7f, | ||
["Easy"] = 0.85f, | ||
["Medium"] = 1f, | ||
["Hard"] = 1.15f, | ||
["Impoppable"] = 1.3f | ||
}; | ||
|
||
// | ||
public static readonly float baseDashSpeed = 20f; | ||
public static readonly float levelDashSpeed = 0; | ||
public static readonly float baseDashDistance = 0.04f; | ||
public static readonly float levelDashDistance = 0; | ||
|
||
// | ||
public static readonly float baseShield = 1000; | ||
public static readonly float levelShieldMultiplier = 3f; | ||
|
||
public static void ApplyPhayzeSettings(BloonModel bloonModel, string difficulty, int level) { | ||
float multiplier = difficultyMultipliers[difficulty]; | ||
|
||
bloonModel.maxHealth = baseMaxHealth * (levelMaxHealthMultiplier * level) * multiplier; | ||
if (level == 0) { bloonModel.maxHealth = baseMaxHealth * multiplier; } | ||
|
||
bloonModel.leakDamage = 99999f; | ||
bloonModel.speed = (baseSpeed + levelSpeedAddition * level) * multiplier; | ||
bloonModel.Speed = (baseSpeed + levelSpeedAddition * level) * multiplier; | ||
|
||
foreach (DashForwardsActionModel model in bloonModel.GetBehaviors<DashForwardsActionModel>()) { | ||
model.speedMultiplier = (baseDashSpeed + levelDashSpeed * level) * multiplier; | ||
model.dashDistance = (baseDashDistance + levelDashDistance * level) * multiplier; | ||
} | ||
|
||
foreach (GenerateShieldActionModel model in bloonModel.GetBehaviors<GenerateShieldActionModel>()) { | ||
model.amount = baseShield * (levelShieldMultiplier * level) * multiplier; | ||
if (level == 0) { model.amount = baseShield * multiplier; } | ||
} | ||
|
||
foreach (WaitForSecondsActionModel model in bloonModel.GetBehaviors<WaitForSecondsActionModel>()) { | ||
if (model.actionId == "RestoreTimerEffects") { | ||
model.delayTime = 12f; | ||
} else if (model.actionId == "SkullDelay") { | ||
model.delayTime = 2f; | ||
} | ||
} | ||
|
||
foreach (PhayzeBehaviorModel model in bloonModel.GetBehaviors<PhayzeBehaviorModel>()) { | ||
//model.powerLevels; | ||
model.shieldSpeedBoost = 1.3f; | ||
} | ||
|
||
foreach (TimeTriggerModel model in bloonModel.GetBehaviors<TimeTriggerModel>()) { | ||
model.interval = 24f; | ||
} | ||
|
||
foreach (ThrowBloonsActionModel model in bloonModel.GetBehaviors<ThrowBloonsActionModel>()) { | ||
model.offsetMin = 2.5f; | ||
model.offsetMax = 20f; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
using BTD_Mod_Helper.Api.Bloons; | ||
using BTD6Rogue; | ||
using Il2CppAssets.Scripts.Models.Bloons; | ||
|
||
namespace Phayze; | ||
|
||
public class PoppableRoguePhayze1 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 0); } } | ||
public class PoppableRoguePhayze2 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 1); } } | ||
public class PoppableRoguePhayze3 : ModBloon { public override string BaseBloon => "Phayze2"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 2); } } | ||
public class PoppableRoguePhayze4 : ModBloon { public override string BaseBloon => "Phayze3"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 3); } } | ||
public class PoppableRoguePhayze5 : ModBloon { public override string BaseBloon => "Phayze4"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 4); } } | ||
public class PoppableRoguePhayze6 : ModBloon { public override string BaseBloon => "Phayze5"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Poppable", 5); } } | ||
public class EasyRoguePhayze1 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 0); } } | ||
public class EasyRoguePhayze2 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 1); } } | ||
public class EasyRoguePhayze3 : ModBloon { public override string BaseBloon => "Phayze2"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 2); } } | ||
public class EasyRoguePhayze4 : ModBloon { public override string BaseBloon => "Phayze3"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 3); } } | ||
public class EasyRoguePhayze5 : ModBloon { public override string BaseBloon => "Phayze4"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 4); } } | ||
public class EasyRoguePhayze6 : ModBloon { public override string BaseBloon => "Phayze5"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Easy", 5); } } | ||
public class MediumRoguePhayze1 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 0); } } | ||
public class MediumRoguePhayze2 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 1); } } | ||
public class MediumRoguePhayze3 : ModBloon { public override string BaseBloon => "Phayze2"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 2); } } | ||
public class MediumRoguePhayze4 : ModBloon { public override string BaseBloon => "Phayze3"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 3); } } | ||
public class MediumRoguePhayze5 : ModBloon { public override string BaseBloon => "Phayze4"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 4); } } | ||
public class MediumRoguePhayze6 : ModBloon { public override string BaseBloon => "Phayze5"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Medium", 5); } } | ||
public class HardRoguePhayze1 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 0); } } | ||
public class HardRoguePhayze2 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 1); } } | ||
public class HardRoguePhayze3 : ModBloon { public override string BaseBloon => "Phayze2"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 2); } } | ||
public class HardRoguePhayze4 : ModBloon { public override string BaseBloon => "Phayze3"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 3); } } | ||
public class HardRoguePhayze5 : ModBloon { public override string BaseBloon => "Phayze4"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 4); } } | ||
public class HardRoguePhayze6 : ModBloon { public override string BaseBloon => "Phayze5"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Hard", 5); } } | ||
public class ImpoppableRoguePhayze1 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 0); } } | ||
public class ImpoppableRoguePhayze2 : ModBloon { public override string BaseBloon => "Phayze1"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 1); } } | ||
public class ImpoppableRoguePhayze3 : ModBloon { public override string BaseBloon => "Phayze2"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 2); } } | ||
public class ImpoppableRoguePhayze4 : ModBloon { public override string BaseBloon => "Phayze3"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 3); } } | ||
public class ImpoppableRoguePhayze5 : ModBloon { public override string BaseBloon => "Phayze4"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 4); } } | ||
public class ImpoppableRoguePhayze6 : ModBloon { public override string BaseBloon => "Phayze5"; public override void ModifyBaseBloonModel(BloonModel bloonModel) { PhayzeConfig.ApplyPhayzeSettings(bloonModel, "Impoppable", 5); } } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
using BTD_Mod_Helper.Api.Bloons; | ||
|
||
namespace BTD6Rogue; | ||
|
||
public abstract class RogueBoss : ModBloon { | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.