Exemple #1
0
        public JsonHero()
        {
            dungeonLevel = Game.maxDungeonLevel;

            name                 = Game.player.name;
            attack               = Game.player.attack;
            evasion              = Game.player.evasion;
            blocking             = Game.player.blocking;
            accuracy             = Game.player.accuracy;
            criticalChance       = Game.player.criticalChance;
            gold                 = Game.player.currentGold;
            level                = Game.player.specification.level;
            helth                = Game.player.helth;
            maxHelth             = Game.player.maxHelth;
            mana                 = Game.player.mana;
            maxMana              = Game.player.maxMana;
            currentExp           = Game.player.specification.currentExp;
            maxExp               = Game.player.specification.maxExp;
            gender               = Game.player.specification.gender;
            specialization       = Game.player.specification.specialization;
            race                 = Game.player.specification.race;
            strength             = Game.player.specification.strength;
            agility              = Game.player.specification.agility;
            intelligence         = Game.player.specification.intelligence;
            spellPower           = Game.player.specification.spellPower;
            levelPoint           = Game.player.specification.levelPoint;
            strengthMultiply     = Game.player.specification.strengthMultiply;
            agilityMultiply      = Game.player.specification.agilityMultiply;
            intelligenceMultiply = Game.player.specification.intelligenceMultiply;
            activeHelmet         = Game.player.inventory.activeHelmet.name;
            activeArmor          = Game.player.inventory.activeArmor.name;
            activeWeapon         = Game.player.inventory.activeWeapon.name;

            itemsCount = Game.player.inventory.items.Count;
            itemsName  = new List <string>();
            for (int i = 0; i < itemsCount; ++i)
            {
                itemsName.Add(Game.player.inventory.items[i].name);
            }

            perksCount = Game.player.perksSystem.perks.Count;
            perksValue = new List <EPerkValue>();
            for (int i = 0; i < perksCount; ++i)
            {
                perksValue.Add(Game.player.perksSystem.perks[i].value);
            }

            magicCount = Game.player.magicSystem.availibleMagics.Count;
            magicsName = new List <string>();
            for (int i = 0; i < magicCount; ++i)
            {
                magicsName.Add(Game.player.magicSystem.availibleMagics[i].name);
            }

            activeMagicsName = Game.player.magicSystem.activeMagic.name;
        }
        public void SetRace(ERaсe _race)
        {
            race = _race;
            switch (race)
            {
            case ERaсe.HUMAN:
                Game.player.maxHelth += 20;
                Game.player.helth    += 20;
                Game.player.maxMana  += 20;
                Game.player.mana     += 20;
                break;

            case ERaсe.ELF:
                IncreaseAgility(2);
                IncreaseIntelligence(2);
                Game.player.perksSystem.AddPerk(PerksList.daggerPerk);
                break;

            case ERaсe.DWARF:
                IncreaseStrength(3);
                Game.player.perksSystem.AddPerk(PerksList.macePerk);
                Game.player.perksSystem.AddPerk(PerksList.axePerk);
                break;

            case ERaсe.ORC:
                IncreaseStrength(5);
                Game.player.perksSystem.AddPerk(PerksList.macePerk);
                Game.player.blocking = 5;
                Game.player.evasion  = 0;
                break;

            case ERaсe.GOBLIN:
                IncreaseAgility(3);
                Game.player.maxHelth -= 30;
                Game.player.helth    -= 30;
                Game.player.evasion  += 3;
                Game.player.magicSystem.AddSpell(MagicList.healMagic);
                break;

            case ERaсe.TROLL:
                Game.player.perksSystem.AddPerk(PerksList.spearPerk);
                Game.player.perksSystem.AddPerk(PerksList.doubleAttackPerk);
                Game.player.criticalChance = 10;
                Game.player.maxHelth      -= 15;
                Game.player.helth         -= 15;
                Game.player.maxMana       -= 20;
                Game.player.mana          -= 20;
                break;

            case ERaсe.MINOTAUR:
                IncreaseStrength(10);
                Game.player.magicSystem.AddSpell(MagicList.stunMagic);
                Game.player.inventory.SetActiveArmor(ItemsList.withoutArmor);
                Game.player.inventory.SetActiveHelmet(ItemsList.withoutHelmet);
                break;

            case ERaсe.UNDEAD:
                Game.player.maxHelth -= 20;
                Game.player.helth    -= 20;
                Game.player.perksSystem.AddPerk(PerksList.cannibalPerk);
                break;
            }
        }