// Builds the unit
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size                 = 0,
                Health               = 1,
                AttackDamage         = 0,
                CanAttack            = false,
                PriorityDraw         = false,
                RoomModifierBuilders = new List <RoomModifierDataBuilder>
                {
                    new RoomModifierDataBuilder
                    {
                        roomStateModifierClassName = typeof(RoomStateModifierRelocateBuff).AssemblyQualifiedName,
                        ParamInt = 5
                    }
                }
            };

            Utils.AddUnitImg(characterDataBuilder, IDName + ".png");
            characterDataBuilder.SubtypeKeys = new List <string> {
                "ChronoSubtype_Ward"
            };
            return(characterDataBuilder);
        }
Beispiel #2
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 2,
                Health       = 15,
                AttackDamage = 5,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnAttacking,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectBump",
                                ParamInt        = -1,
                                TargetMode      = TargetMode.LastAttackedCharacter
                            }
                        }
                    }
                }
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Eternal"
                },

                Size         = 1,
                Health       = 30,
                AttackDamage = 0,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        trigger = OnSpawnChange.OnSpawnChangeCharTrigger.GetEnum(),
                    }
                }
            };

            characterDataBuilder.AddStartingStatusEffect("symbiote", 1);

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = ID,
                NameKey     = ID + "_Name",

                Size         = 2,
                Health       = 10,
                AttackDamage = 5,

                RoomModifierBuilders = new List <RoomModifierDataBuilder>
                {
                    new RoomModifierDataBuilder
                    {
                        roomStateModifierClassType = typeof(RoomStateMagicalPowerModifier),
                        ParamInt = 0
                    }
                }
            };

            AssetAdder.AddUnitImg(characterDataBuilder, ID);

            // TODO: Magic Power this floor only
            return(characterDataBuilder);
        }
        // Builds the unit
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size                 = 0,
                Health               = 1,
                AttackDamage         = 0,
                RoomModifierBuilders = new List <RoomModifierDataBuilder>
                {
                    new RoomModifierDataBuilder
                    {
                        roomStateModifierClassName = typeof(RoomStateModifierRelocateStatusEffect).AssemblyQualifiedName,
                        ParamStatusEffects         = new StatusEffectStackData[]
                        {
                            new StatusEffectStackData {
                                count = 1, statusId = "multistrike"
                            },
                        }
                    }
                }
            };

            Utils.AddUnitImg(characterDataBuilder, IDName + ".png");
            return(characterDataBuilder);
        }
Beispiel #6
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "AGSubtype_Mech"
                },

                Size         = 2,
                Health       = 15,
                AttackDamage = 10,

                StartingStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                          count = 1, statusId = "inert"
                                                                      }, new StatusEffectStackData {
                                                                          count = 1, statusId = "hunter"
                                                                      } },
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 1,
                Health       = 10,
                AttackDamage = 0,

                // Relocate
                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder {
                        Trigger        = OnRelocate.OnRelocateCharTrigger.GetEnum(),
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectHeal",
                                ParamInt        = 999,
                                TargetMode      = TargetMode.Room,
                                TargetTeamType  = Team.Type.Monsters,
                            }
                        }
                    },
                }
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 1,
                Health       = 10,
                AttackDamage = 5,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnSpawn,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = typeof(CardEffectScryUnitsDrawFree).AssemblyQualifiedName,
                                ParamInt           = 5,
                                AdditionalParamInt = 1,
                                TargetMode         = TargetMode.Deck,
                            }
                        }
                    }
                }
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #9
0
        public static CharacterData BuildFillerUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = "Slag",
                NameKey     = "Slag" + "_Name",

                Size                  = 1,
                Health                = 1,
                AttackDamage          = 0,
                CanAttack             = false,
                PriorityDraw          = false,
                CanBeHealed           = false,
                StartingStatusEffects = new StatusEffectStackData[] {
                    new StatusEffectStackData {
                        count = 1, statusId = "fragile"
                    },
                    new StatusEffectStackData {
                        count = 1, statusId = "cardless"
                    },
                },
                StatusEffectImmunities = new string[] { "pyreboost" },
            };

            Utils.AddUnitImg(characterDataBuilder, "rocka.png");
            characterDataBuilder.SubtypeKeys = new List <string> {
                "ChronoSubtype_Ward"
            };
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 1,
                Health       = 5,
                AttackDamage = 1,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnAttacking,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectAddStatusEffect",
                                TargetMode      = TargetMode.LastAttackedCharacter,
                            },
                        }
                    }
                }
            };

            characterDataBuilder.TriggerBuilders[0].EffectBuilders[0].AddStatusEffect("chronolock", 1);

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 2,
                Health       = 20,
                AttackDamage = 12,

                // Relocate
                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder {
                        Trigger        = OnRelocate.OnRelocateCharTrigger.GetEnum(),
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectAddStatusEffect",
                                TargetMode      = TargetMode.Room,
                                TargetTeamType  = Team.Type.Heroes,
                            }
                        }
                    },
                }
            };

            characterDataBuilder.TriggerBuilders[0].EffectBuilders[0].AddStatusEffect(Dazed, 1);

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size            = 4,
                Health          = 1,
                AttackDamage    = 0,
                CanAttack       = false,
                PriorityDraw    = false,
                TriggerBuilders = new List <CharacterTriggerDataBuilder> {
                    new CharacterTriggerDataBuilder {
                        Trigger        = CharacterTriggerData.Trigger.AfterSpawnEnchant,
                        Description    = "Pyreboost",
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectEnchant",
                                ParamStatusEffects = new StatusEffectStackData[]
                                {
                                    new StatusEffectStackData {
                                        count = 1, statusId = "pyreboost"
                                    },
                                },
                                TargetMode     = TargetMode.Room,
                                TargetTeamType = Team.Type.Monsters,
                            }
                        }
                    },
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnSpawn,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectSpawnMonster",
                                TargetMode         = TargetMode.FrontInRoom,
                                ParamInt           = 6,
                                ParamCharacterData = BuildFillerUnit(),
                            }
                        }
                    }
                },
                StartingStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                          count = 1, statusId = "immobile"
                                                                      } },
            };

            Utils.AddUnitImg(characterDataBuilder, "SwordWard.png");
            characterDataBuilder.SubtypeKeys = new List <string> {
                "ChronoSubtype_Ward"
            };
            return(characterDataBuilder);
        }
Beispiel #13
0
        public static CharacterDataBuilder GetCharacterDataBuilder()
        {
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = ID
            };

            return(characterDataBuilder);
        }
Beispiel #14
0
 public static void AddUnitAnim(CharacterDataBuilder r, string imgName)
 {
     r.BundleLoadingInfo = new BundleAssetLoadingInfo
     {
         FilePath   = "arcadian_units",
         SpriteName = "assets/" + imgName + ".png",
         ObjectName = "assets/" + imgName + ".prefab",
         AssetType  = AssetRefBuilder.AssetTypeEnum.Character
     };
 }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 2,
                Health       = 40,
                AttackDamage = 5,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    // Revenge
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnHit,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectFloorRearrange",
                                ParamInt        = 1,
                                TargetMode      = TargetMode.Self
                            },
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectDamage",
                                ParamInt        = 5,
                                TargetMode      = TargetMode.LastAttackerCharacter
                            },
                        }
                    },

                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.PostCombat,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectFloorRearrange",
                                ParamInt        = 0,
                                TargetMode      = TargetMode.Self
                            },
                        }
                    },
                }
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #16
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Seer"
                },

                Size         = 1,
                Health       = 3,
                AttackDamage = 5,

                PriorityDraw = false,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnDeath,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectAddStatusEffect",
                                TargetMode         = TargetMode.LastAttackerCharacter,
                                TargetTeamType     = Team.Type.Heroes,
                                ParamStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                                       count = 2, statusId = Dazed
                                                                                   } }
                            },
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectBump",
                                ParamInt           = 4,
                                TargetMode         = TargetMode.LastAttackerCharacter,
                                TargetTeamType     = Team.Type.Heroes,
                                TargetIgnoreBosses = true,
                            }
                        }
                    }
                }
            };

            characterDataBuilder.AddStartingStatusEffect("icarian", 1);

            Utils.AddUnitAnim(characterDataBuilder, "flashfeather");

            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #17
0
        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() }));
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Pythian"
                },

                Size         = 2,
                Health       = 10,
                AttackDamage = 5,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    // Relocate
                    new CharacterTriggerDataBuilder {
                        Trigger        = OnRelocate.OnRelocateCharTrigger.GetEnum(),
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectAddStatusEffect",
                                TargetMode      = TargetMode.Self
                            }
                        }
                    },

                    // Lose Sweep
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.EndTurnPreHandDiscard,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectRemoveStatusEffect",
                                TargetMode      = TargetMode.Self
                            }
                        }
                    }
                }
            };

            characterDataBuilder.TriggerBuilders[0].EffectBuilders[0].AddStatusEffect(Sweep, 1);
            characterDataBuilder.TriggerBuilders[1].EffectBuilders[0].AddStatusEffect(Sweep, 1);

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #19
0
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID  = ID,
                NameKey      = ID + "_Name",
                Size         = 2,
                Health       = 10,
                AttackDamage = 5,
            };

            AssetAdder.AddUnitImg(characterDataBuilder, ID);
            return(characterDataBuilder);
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Eternal"
                },

                Size         = 5,
                Health       = 50,
                AttackDamage = 0,

                BundleLoadingInfo = new BundleAssetLoadingInfo
                {
                    FilePath   = "arcadian_units",
                    SpriteName = "assets/plr_ancient.png",
                    ObjectName = "assets/plr_ancient.prefab",
                    AssetType  = AssetRefBuilder.AssetTypeEnum.Character
                },

                TriggerBuilders = new List <CharacterTriggerDataBuilder> {
                    new CharacterTriggerDataBuilder {
                        Trigger        = CharacterTriggerData.Trigger.AfterSpawnEnchant,
                        DescriptionKey = "Ancient Pyresnail_Trigger",
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectEnchant",
                                ParamStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                                       count = 1, statusId = "pyreboost"
                                                                                   } },
                                TargetMode     = TargetMode.Room,
                                TargetTeamType = Team.Type.Monsters,
                            }
                        }
                    },
                },
            };

            characterDataBuilder.AddStartingStatusEffect(Immobile, 1);

            Utils.AddUnitAnim(characterDataBuilder, "pyresnail");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 1,
                Health       = 5,
                AttackDamage = 5,
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                Name        = "Shengar the Vicious",

                Size         = 2,
                Health       = 10,
                AttackDamage = 5,
                AssetPath    = "Clan Assets/hero/werewolfchampion_active.png",
            };

            return(characterDataBuilder);
        }
        // Builds the unit
        public static CharacterDataBuilder BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 2,
                Health       = 10,
                AttackDamage = 5,
            };

            Utils.AddUnitAnim(characterDataBuilder, "hero2");
            return(characterDataBuilder);
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Seer"
                },
                PriorityDraw = false,

                Size         = 1,
                Health       = 1,
                AttackDamage = 3,

                RoomModifierBuilders = new List <RoomModifierDataBuilder>
                {
                    new RoomModifierDataBuilder
                    {
                        RoomStateModifierClassType = typeof(RoomStateEnergyModifier),
                        ParamInt = 1,
                    }
                },

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnDeath,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectGainEnergy",
                                ParamInt        = 3,
                            },
                        }
                    }
                }
            };

            characterDataBuilder.AddStartingStatusEffect("icarian", 1);

            Utils.AddUnitAnim(characterDataBuilder, "morsowl");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "AGSubtype_Mech"
                },

                Size         = 3,
                Health       = 15,
                AttackDamage = 20,

                StartingStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                          count = 10, statusId = "armor"
                                                                      }, new StatusEffectStackData {
                                                                          count = 1, statusId = "inert"
                                                                      } },

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnAnyUnitDeathOnFloor,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName = "CardEffectAddTempCardUpgradeToUnits",
                                TargetMode      = TargetMode.Self,

                                ParamCardUpgradeData = new CardUpgradeDataBuilder
                                {
                                    BonusDamage           = 5,
                                    HideUpgradeIconOnCard = true,
                                }.Build(),
                            },
                        }
                    }
                }
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",

                Size         = 3,
                Health       = 20,
                AttackDamage = 13
            };

            characterDataBuilder.AddStartingStatusEffect("slow", 1);

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #27
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "AGSubtype_Mech"
                },

                Size         = 2,
                Health       = 10,
                AttackDamage = 0,

                StartingStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                          count = 25, statusId = "armor"
                                                                      } },

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger = CharacterTriggerData.Trigger.OnSpawn,
                        DisplayEffectHintText = true,
                        EffectBuilders        = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = "CardEffectAddStatusEffect",
                                TargetMode         = TargetMode.FrontInRoom,
                                TargetTeamType     = Team.Type.Heroes,
                                ParamStatusEffects = new StatusEffectStackData[] { new StatusEffectStackData {
                                                                                       statusId = "armor", count = 20
                                                                                   } }
                            },
                        }
                    }
                },
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #28
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Pythian"
                },

                Size         = 2,
                Health       = 20,
                AttackDamage = 0,

                TriggerBuilders = new List <CharacterTriggerDataBuilder>
                {
                    new CharacterTriggerDataBuilder
                    {
                        Trigger        = CharacterTriggerData.Trigger.OnSpawn,
                        EffectBuilders = new List <CardEffectDataBuilder>
                        {
                            new CardEffectDataBuilder
                            {
                                EffectStateName    = typeof(CardEffectEmpowerStatusOnSpawn).AssemblyQualifiedName,
                                TargetMode         = TargetMode.Self,
                                ParamStatusEffects = new StatusEffectStackData[]
                                {
                                    new StatusEffectStackData {
                                        statusId = "buff", count = 3
                                    },
                                    new StatusEffectStackData {
                                        statusId = "regen", count = 2
                                    },
                                }
                            },
                        }
                    },
                }
            };

            Utils.AddUnitAnim(characterDataBuilder, "fireshaped");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #29
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Eternal"
                },

                Size         = 3,
                Health       = 50,
                AttackDamage = 35
            };

            Utils.AddUnitAnim(characterDataBuilder, "diviner");
            return(characterDataBuilder.BuildAndRegister());
        }
Beispiel #30
0
        // Builds the unit
        public static CharacterData BuildUnit()
        {
            // Monster card, so we build an attached unit
            CharacterDataBuilder characterDataBuilder = new CharacterDataBuilder
            {
                CharacterID = IDName,
                NameKey     = IDName + "_Name",
                SubtypeKeys = new List <string> {
                    "ChronoSubtype_Seer"
                },

                Size         = 1,
                Health       = 20,
                AttackDamage = 12
            };

            Utils.AddUnitImg(characterDataBuilder, imgName + ".png");
            return(characterDataBuilder.BuildAndRegister());
        }