Пример #1
0
        private EntityStatKind SetWeapon(Roguelike.Abilities.AbilityKind kind, Hero Hero, out float originalStatValue)
        {
            var    auxStat = EntityStatKind.Unset;
            Weapon wpn     = null;
            string wpnName = "";

            switch (kind)
            {
            case Roguelike.Abilities.AbilityKind.AxesMastering:
                wpnName = "axe";
                auxStat = EntityStatKind.ChanceToCauseTearApart;
                break;

            case Roguelike.Abilities.AbilityKind.BashingMastering:
                wpnName = "hammer";
                auxStat = EntityStatKind.ChanceToCauseStunning;
                break;

            case Roguelike.Abilities.AbilityKind.DaggersMastering:
                wpnName = "war_dagger";
                auxStat = EntityStatKind.ChanceToCauseBleeding;
                break;

            case Roguelike.Abilities.AbilityKind.SwordsMastering:
                wpnName = "rusty_sword";
                auxStat = EntityStatKind.ChanceToMeleeHit;
                break;

            case Roguelike.Abilities.AbilityKind.SceptersMastering:
                wpnName = "scepter";
                auxStat = EntityStatKind.ChanceToCauseElementalAilment;
                break;

            case Roguelike.Abilities.AbilityKind.StaffsMastering:
                wpnName = "staff";
                auxStat = EntityStatKind.ChanceToRepeatElementalProjectileAttack;
                break;

            case Roguelike.Abilities.AbilityKind.WandsMastering:
                wpnName = "wand";
                auxStat = EntityStatKind.ChanceToElementalProjectileBulkAttack;
                break;

            case Roguelike.Abilities.AbilityKind.CrossBowsMastering:
                wpnName = "crossbow";
                auxStat = EntityStatKind.ChanceToCauseBleeding;
                break;

            case Roguelike.Abilities.AbilityKind.BowsMastering:
                wpnName = "bow";
                auxStat = EntityStatKind.ChanceToPhysicalProjectileHit;
                break;

            default:
                break;
            }

            originalStatValue = Hero.Stats.GetCurrentValue(auxStat);
            wpn = game.GameManager.LootGenerator.GetLootByAsset(wpnName) as Weapon;
            Assert.NotNull(wpn);
            SetHeroEquipment(wpn, CurrentEquipmentKind.Weapon);
            return(auxStat);
        }
Пример #2
0
 public void BasicWeaponsMasteryTests(Roguelike.Abilities.AbilityKind ab)//test if melee damage is increased
 {
     var game = CreateGame();
     var val  = TestWeaponKindMastering(ab);
 }