public static void AddSpell(CardDataBuilder r, string IDName) { r.CardID = IDName; r.NameKey = IDName + "_Name"; r.OverrideDescriptionKey = IDName + "_Desc"; r.LinkedClass = DiscipleClan.getClan(); r.ClanID = Clan.IDName; r.CardPoolIDs = new List <string> { "Chrono", MegaPool }; r.AssetPath = rootPath + scardPath; if (!r.NameKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.NameKey + ",Text,,,,," + r.CardID + ",,,,,"); } if (!r.OverrideDescriptionKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.OverrideDescriptionKey + ",Text,,,,,<desc>,,,,,"); } //Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, string.Join("\t", new string[] { "Spell", r.NameKey.Localize(), r.Rarity.ToString(), r.Cost.ToString(), r.OverrideDescriptionKey.Localize() })); }
public static void AddUnit(CardDataBuilder r, string IDName, CharacterData character) { r.CardID = IDName; r.NameKey = IDName + "_Name"; r.OverrideDescriptionKey = IDName + "_Desc"; r.LinkedClass = DiscipleClan.getClan(); r.ClanID = Clan.IDName; r.CardPoolIDs = new List <string> { "Chrono", UnitsAllBanner }; r.CardType = CardType.Monster; r.TargetsRoom = true; r.AssetPath = rootPath + ucardPath; r.EffectBuilders.Add( new CardEffectDataBuilder { EffectStateName = "CardEffectSpawnMonster", TargetMode = TargetMode.DropTargetCharacter, ParamCharacterData = character, }); if (!r.NameKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.NameKey + ",Text,,,,," + r.CardID + ",,,,,"); } if (!r.OverrideDescriptionKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.OverrideDescriptionKey + ",Text,,,,,<desc>,,,,,"); } //Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, string.Join("\t", new string[] { "Unit", r.NameKey.Localize(), r.Rarity.ToString(), r.Cost.ToString(), character.GetSize().ToString(), character.GetHealth().ToString(), character.GetAttackDamage().ToString(), character.GetLocalizedSubtype(), r.OverrideDescriptionKey.Localize() })); }
public static void Make() { var random = new Random(); // Basic Card Stats ChampionCardDataBuilder railyard = new ChampionCardDataBuilder { Cost = 0, Champion = BuildUnit(), ChampionIconPath = "Clan Assets/Icon_ClassSelect_Hero2.png", ChampionSelectedCue = "", StarterCardData = CustomCardManager.GetCardDataByID(Analog.IDName), UpgradeTree = new CardUpgradeTreeDataBuilder { UpgradeTrees = new List <List <CardUpgradeDataBuilder> > { new List <CardUpgradeDataBuilder> { DiscipleEphemeralBasic.Builder(), DiscipleEphemeralPremium.Builder(), DiscipleEphemeralPro.Builder(), }, new List <CardUpgradeDataBuilder> { DiscipleFlamelinkedBasic.Builder(), DiscipleFlamelinkedPremium.Builder(), DiscipleFlamelinkedPro.Builder(), }, new List <CardUpgradeDataBuilder> { DiscipleEchoBasic.Builder(), DiscipleEchoPremium.Builder(), DiscipleEchoPro.Builder(), }, }, }, CardID = IDName, NameKey = IDName + "_Name", //OverrideDescriptionKey = IDName + "_Desc", LinkedClass = DiscipleClan.getClan(), ClanID = Clan.IDName, CardPoolIDs = new List <string> { "Chrono", UnitsAllBanner }, CardType = CardType.Monster, TargetsRoom = true, AssetPath = Utils.rootPath + Utils.ucardPath, }; Utils.AddCardPortrait(railyard, "Hero2"); // Do this to complete railyard.BuildAndRegister(1); }
public static void AddWard(CardDataBuilder r, string IDName, CharacterDataBuilder character) { r.CardID = IDName; r.NameKey = IDName + "_Name"; r.OverrideDescriptionKey = IDName + "_Desc"; r.LinkedClass = DiscipleClan.getClan(); r.ClanID = Clan.IDName; r.CardPoolIDs = new List <string> { "Chrono", MegaPool }; r.CardType = CardType.Monster; r.TargetsRoom = true; character.AddStartingStatusEffect("fragile", 1); // character.AddStartingStatusEffect("immobile", 1); r.AssetPath = rootPath + scardPath; r.EffectBuilders.Add( new CardEffectDataBuilder { EffectStateName = "CardEffectSpawnMonster", TargetMode = TargetMode.BackInRoom, ParamCharacterData = character.BuildAndRegister(), }); character.TriggerBuilders.Add(new CharacterTriggerDataBuilder { Trigger = OnSpawnChange.OnSpawnChangeCharTrigger.GetEnum(), HideTriggerTooltip = true, EffectBuilders = new List <CardEffectDataBuilder> { new CardEffectDataBuilder { EffectStateName = "CardEffectFloorRearrange", ParamInt = 1, TargetMode = TargetMode.Self }, } }); if (!r.NameKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.NameKey + ",Text,,,,," + r.CardID + ",,,,,"); } if (!r.OverrideDescriptionKey.HasTranslation()) { Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, r.OverrideDescriptionKey + ",Text,,,,,<desc>,,,,,"); } //Trainworks.Trainworks.Log(BepInEx.Logging.LogLevel.All, string.Join("\t", new string[] { "Spell", r.NameKey.Localize(), r.Rarity.ToString(), r.Cost.ToString(), r.OverrideDescriptionKey.Localize() })); }
public static void Make() { // Basic Card Stats CardDataBuilder r = new CardDataBuilder { Cost = 2, Rarity = CollectableRarity.Rare, }; r.CardID = IDName; r.NameKey = IDName + "_Name"; r.OverrideDescriptionKey = IDName + "_Desc"; r.LinkedClass = DiscipleClan.getClan(); r.ClanID = Clan.IDName; r.CardPoolIDs = new List <string> { "Chrono", UnitsAllBanner }; r.CardType = CardType.Monster; r.TargetsRoom = true; r.AssetPath = "" + "Card Assets/ProtoUnitCardArt/"; r.EffectBuilders.Add( new CardEffectDataBuilder { EffectStateName = "CardEffectSpawnMonster", TargetMode = TargetMode.DropTargetCharacter, ParamCharacterData = BuildUnit(), ParamInt = 3, }); Utils.AddCardPortrait(r, "Newton"); // Do this to complete r.BuildAndRegister(); }