Beispiel #1
0
    public TechFactory()
    {
        baseModel = Resources.Load <GameObject>("TechModel");

        attackPower = 0.9f;
        armor       = 0.4f;
        maxHP       = 10;
        maxMP       = 6;


        baseSkills.Add(SkillFactory.GetSnipe());
        baseSkills.Add(SkillFactory.GetRepair());
        baseSkills.Add(SkillFactory.GetMakeSentry());

        Talent t = new Talent();

        t.name        = "Med Station";
        t.description = "Able to create med stations. Static structures that restore health to nearby allies every turn.";
        t.IfChosen    = unit => {
            unit.AddSkill(SkillFactory.getMakeMedStation());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Add Repair";
        t.description = "Adds Repair to Class";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.GetRepair());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Battle Bot";
        t.description = "Creates a mobile robot buddy. Will move to and attack enemies for you.";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.getMakeBattlePet());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Sticky Grenade";
        t.description = "Attaches a sticky grenade to an enemy, which explodes after 2 turns.";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.getStickyGrenade());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Master Sniper";
        t.description = "Snipe is free.";
        t.IfChosen    = unit =>
        {
            unit.talentTags.Add("FreeSnipe");
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Toughness";
        t.description = "The Tech is just tough. Nothing complicated. Slight increase to armor and damage.";
        t.IfChosen    = Unit =>
        {
            Unit.AddEffect(EffectFactory.getToughEffect(), -1);
        };
        talentOptions.Add(t);

        name        = "Technician";
        description = "A repairman who can build robots";
        image       = Resources.Load <Sprite>("CharacterIcons/TechIcon");
    }
Beispiel #2
0
    public MedicFactory()
    {
        baseModel = Resources.Load <GameObject>("MedicModel");

        attackPower = 0.9f;
        armor       = 0.2f;
        maxHP       = 4 * 2;
        maxMP       = 6;


        baseSkills.Add(SkillFactory.GetHeal());
        baseSkills.Add(SkillFactory.GetAoEHeal());
        baseSkills.Add(SkillFactory.GetWeakenOffense());

        Talent t = new Talent();

        t.name        = "Anatomy";
        t.description = "Medic learns the Anatomy Skill. Provides a huge damage buff to a single target.";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.getAnatomy());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Med Station";
        t.description = "Can deploy a med station, which passively heals allies around it";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.getMakeMedStation());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Blood Donor";
        t.description = "Medic learns the Blood Donor Skill. The medic siphons the hitpoints of his target.";
        t.IfChosen    = unit => {
            unit.AddSkill(SkillFactory.GetBloodDonor());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Balance";
        t.description = "Heal now damages a nearby enemy in addition to healing the target. It also siphons the enemy's armor.";
        t.IfChosen    = unit =>
        {
            unit.talentTags.Add("Balance");
        };
        talentOptions.Add(t);



        t             = new Talent();
        t.name        = "Lethal Injection";
        t.description = "Medic gains Lethal Injection, a single target attack that slightly lowers the target's armor and damage";
        t.IfChosen    = unit =>
        {
            unit.AddSkill(SkillFactory.getLethalInjection());
        };
        talentOptions.Add(t);

        t             = new Talent();
        t.name        = "Oath Breaker";
        t.description = "AOE heal now deals damage instead";
        t.IfChosen    = unit =>
        {
            unit.talentTags.Add("OathBreaker");
        };
        talentOptions.Add(t);

        name        = "Medic";
        description = "A doctor who supports his team with his healing powers.";
        image       = Resources.Load <Sprite>("CharacterIcons/MedicIcon");
    }