Пример #1
0
    public static void AssignSkill(string sk, UnitClassSkill u, Unit un)
    {
        UnitSkillDetail burningMelody = new UnitSkillDetail();

        burningMelody.name = "Burning Melody";
        burningMelody.effects.fireDamage = true;
        burningMelody.effects.berserk    = true;
        burningMelody.magicDamage        = true;
        burningMelody.range         = 4;
        burningMelody.attackPattern = "cross";


        UnitSkillDetail hymnOfFrozenLoss = new UnitSkillDetail();

        hymnOfFrozenLoss.name = "Frozen Dirge";
        hymnOfFrozenLoss.effects.waterDamage = true;
        hymnOfFrozenLoss.magicDamage         = true;
        hymnOfFrozenLoss.effects.stun        = true;
        hymnOfFrozenLoss.range         = 4;
        hymnOfFrozenLoss.attackPattern = "4tileLine";

        UnitSkillDetail thunderAnthem = new UnitSkillDetail();

        thunderAnthem.name = "Thunder Anthem";
        thunderAnthem.effects.natureDamage = true;
        thunderAnthem.effects.confuse      = true;
        thunderAnthem.magicDamage          = true;
        thunderAnthem.range         = 4;
        thunderAnthem.attackPattern = "3x3cone";

        UnitSkillDetail songOfLife = new UnitSkillDetail();

        songOfLife.restore            = 1;//restore half magic stat life
        songOfLife.range              = 3;
        songOfLife.effects.statusHeal = true;
        songOfLife.attackPattern      = "cross";
        songOfLife.name = "Song of Life";


        UnitSkillDetail riddleOfSteel = new UnitSkillDetail();

        riddleOfSteel.name = "Riddle of Steel";
        riddleOfSteel.effects.attackBoost  = true; //
        riddleOfSteel.effects.defenseBoost = true; //
        riddleOfSteel.range = 4;

        UnitSkillDetail dirgeOfSpelldeath = new UnitSkillDetail();

        dirgeOfSpelldeath.name  = "Dirge of Spelldeath";
        dirgeOfSpelldeath.range = 4;
        dirgeOfSpelldeath.effects.reduceAttack  = true;
        dirgeOfSpelldeath.effects.reduceDefense = true;
        dirgeOfSpelldeath.magicDamage           = true;
        dirgeOfSpelldeath.effects.darkDamage    = true;

        UnitSkillDetail raptureOfTheSong = new UnitSkillDetail();

        raptureOfTheSong.name    = "Rapture of the Song";
        raptureOfTheSong.support = true;
        raptureOfTheSong.effects.magicDefenseBoost = true;
        raptureOfTheSong.effects.defenseBoost      = true;//increase debuff duration

        UnitSkillDetail talkToMe = new UnitSkillDetail();

        talkToMe.name            = "Talk to Me!";
        talkToMe.range           = 4;
        talkToMe.effects.analyze = true;//learn monster strengths and weaknesses TalktoMe(talkToMe);

        if (sk == burningMelody.name)
        {
            u.skill8 = burningMelody;
        }
        else if (sk == hymnOfFrozenLoss.name)
        {
            u.skill2 = hymnOfFrozenLoss;
        }
        else if (sk == thunderAnthem.name)
        {
            u.skill3 = thunderAnthem;
        }
        else if (sk == songOfLife.name)
        {
            u.skill4 = songOfLife;
        }
        else if (sk == riddleOfSteel.name)
        {
            u.skill5 = riddleOfSteel;
        }
        else if (sk == dirgeOfSpelldeath.name)
        {
            u.skill6 = dirgeOfSpelldeath;
        }
        else if (sk == raptureOfTheSong.name)
        {
            u.skill7 = raptureOfTheSong;
        }
        else if (sk == talkToMe.name)
        {
            u.skill1 = talkToMe;
        }

        else if (sk == "AthamesMaster1")
        {
            un.unitInfo.weaponRanks.Athames.canUse = true;
            un.unitInfo.weaponRanks.Athames.rank   = 3;
        }
        else if (sk == "LightBladesMaster1")
        {
            un.unitInfo.weaponRanks.LightBlades.canUse = true;
            un.unitInfo.weaponRanks.LightBlades.rank   = 3;
        }
    }
    public static void AssignSkill(string sk, UnitClassSkill u, Unit un)
    {
        UnitSkillDetail vampirism = new UnitSkillDetail();

        vampirism.name               = "Vampirism";
        vampirism.range              = 1;
        vampirism.magicDamage        = true;
        vampirism.effects.darkDamage = true;
        vampirism.restore            = 1 / 4;//heal 1/4 damage dealt


        UnitSkillDetail shadowStrike = new UnitSkillDetail();

        shadowStrike.name               = "Shadow Strike";
        shadowStrike.magicDamage        = true;
        shadowStrike.effects.darkDamage = true;
        shadowStrike.effects.extraHit   = true;
        shadowStrike.range              = 1;


        UnitSkillDetail bleedingEdge = new UnitSkillDetail();

        bleedingEdge.name                = "Bleeding Edge";
        bleedingEdge.effects.poison      = true;
        bleedingEdge.range               = 1;
        bleedingEdge.magicDamage         = true;
        bleedingEdge.effects.metalDamage = true;


        UnitSkillDetail tension = new UnitSkillDetail();

        tension.range = 0;
        tension.effects.speedBoost  = true;
        tension.effects.selfDamage  = true;
        tension.effects.attackBoost = true;
        tension.name = "Tension";


        UnitSkillDetail shred = new UnitSkillDetail();

        shred.name                  = "Shred";
        shred.range                 = 1;
        shred.physicalDamage        = true;
        shred.effects.reduceDefense = true;


        UnitSkillDetail bloodFrenzy = new UnitSkillDetail();

        bloodFrenzy.name                 = "Blood Frenzy";
        bloodFrenzy.range                = 0;
        bloodFrenzy.effects.counter      = true;
        bloodFrenzy.effects.attackBoost  = true;
        bloodFrenzy.effects.hitReduction = true;


        UnitSkillDetail feedOnDeath = new UnitSkillDetail();

        feedOnDeath.name    = "Feed on Death";
        feedOnDeath.range   = 0;
        feedOnDeath.support = true;
        feedOnDeath.restore = 1 / 4;//heal 1/4 damage you deal


        if (sk == vampirism.name)
        {
            u.skill1 = vampirism;
        }
        else if (sk == shadowStrike.name)
        {
            u.skill2 = shadowStrike;
        }
        else if (sk == bleedingEdge.name)
        {
            u.skill3 = bleedingEdge;
        }
        else if (sk == tension.name)
        {
            u.skill4 = tension;
        }
        else if (sk == shred.name)
        {
            u.skill5 = shred;
        }
        else if (sk == bloodFrenzy.name)
        {
            u.skill6 = bloodFrenzy;
        }
        else if (sk == feedOnDeath.name)
        {
            u.skill7 = feedOnDeath;
        }

        else if (sk == "CloseMaster1")
        {
            un.unitInfo.weaponRanks.Close.canUse = true;
            un.unitInfo.weaponRanks.Close.rank   = 3;
        }
        else if (sk == "AthameMaster1")
        {
            un.unitInfo.weaponRanks.Athames.canUse = true;
            un.unitInfo.weaponRanks.Athames.rank   = 3;
        }
    }
    public static void AssignSkill(string sk, UnitClassSkill u, Unit un)
    {
        UnitSkillDetail possess = new UnitSkillDetail();

        possess.name  = "Possess";
        possess.range = 4;
        possess.effects.absorbDamage = true;//for 1 turn, target takes half the damage you do


        UnitSkillDetail invidious = new UnitSkillDetail();

        invidious.name               = "Invidious";
        invidious.magicDamage        = true;
        invidious.effects.darkDamage = true;
        invidious.effects.shaken     = true;
        invidious.range              = 1;


        UnitSkillDetail hellBlade = new UnitSkillDetail();

        hellBlade.name = "Hell Blade";
        hellBlade.effects.fireDamage = true;//deals half fire, half dark
        hellBlade.effects.darkDamage = true;
        hellBlade.effects.stun       = true;
        hellBlade.range       = 1;
        hellBlade.magicDamage = true;


        UnitSkillDetail callTheDarkSpirits = new UnitSkillDetail();

        callTheDarkSpirits.range           = 4;
        callTheDarkSpirits.physicalDamage  = true;
        callTheDarkSpirits.effects.shaken  = true;
        callTheDarkSpirits.effects.confuse = true;
        callTheDarkSpirits.name            = "Call to Dark Spirits";
        callTheDarkSpirits.attackPattern   = "cross";


        UnitSkillDetail blackSword = new UnitSkillDetail();

        blackSword.name                = "Black Sword";
        blackSword.range               = 1;
        blackSword.magicDamage         = true;
        blackSword.effects.metalDamage = true;


        UnitSkillDetail darkProtection = new UnitSkillDetail();

        darkProtection.name  = "Dark Protection";
        darkProtection.range = 0;
        darkProtection.effects.selfDamage        = true;
        darkProtection.effects.defenseBoost      = true;
        darkProtection.effects.magicDefenseBoost = true;


        UnitSkillDetail evilThoughts = new UnitSkillDetail();

        evilThoughts.name                    = "Evil Thoughts";
        evilThoughts.range                   = 0;
        evilThoughts.support                 = true;
        evilThoughts.effects.magicBoost      = true;//reduce damage using second weapons might
        evilThoughts.effects.increaseDebuffs = true;

        if (sk == possess.name)
        {
            u.skill1 = possess;
        }
        else if (sk == invidious.name)
        {
            u.skill2 = invidious;
        }
        else if (sk == hellBlade.name)
        {
            u.skill3 = hellBlade;
        }
        else if (sk == callTheDarkSpirits.name)
        {
            u.skill4 = callTheDarkSpirits;
        }
        else if (sk == blackSword.name)
        {
            u.skill5 = blackSword;
        }
        else if (sk == darkProtection.name)
        {
            u.skill6 = darkProtection;
        }
        else if (sk == evilThoughts.name)
        {
            u.skill7 = evilThoughts;
        }

        else if (sk == "HeavyBladesMaster1")
        {
            un.unitInfo.weaponRanks.HeavyBlade.canUse = true;
            un.unitInfo.weaponRanks.HeavyBlade.rank   = 3;
        }
        else if (sk == "SpearMaster1")
        {
            un.unitInfo.weaponRanks.Spear.canUse = true;
            un.unitInfo.weaponRanks.Spear.rank   = 3;
        }
    }