private void SpawnFirstLevelFighter(string userId) { var shortSword = _weaponFactory.Create("Short Sword"); var fighterStats = new Statistics() { AbilityScores = new AbilityScores(16, 14, 16, 9, 9, 8), AttackScores = new AttackScores(shortSword, 1), DefenseScores = new DefenseScores(14, 11) }; var jools = new Player(id: userId, "Jools", "Human", "Fighter", level: 1, fighterStats) { Inventory = new Inventory { Items = new List <Item> { shortSword, new Item { Name = "Studded Leather", Id = Guid.NewGuid().ToString() } } } }; SpawnInRandomOpenCell(jools); _creatureRegistry.Register(jools); }
private static void TestWeaponFactory(IWeaponFactory factory) { IWeapon meeleWeapon = factory.Create(WeaponType.Melee); IWeapon rangedWeapon = factory.Create(WeaponType.Ranged); IWeapon magicWeapon = factory.Create(WeaponType.Magic); Console.WriteLine($"Meele Weapon: {meeleWeapon}"); Console.WriteLine($"Ranged Weapon: {rangedWeapon}"); Console.WriteLine($"Magic Weapon: {magicWeapon}"); }
private void AddCreatedWeaponToRepo(IWeaponFactory weaponFactory, IRepository repo) { string rarity = this.Data[1].Split().First(); string weaponType = this.Data[1].Split().Last(); string name = this.Data[2]; IWeapon weaponToAdd = weaponFactory.Create(weaponType, rarity, name); repo.AddWeapon(weaponToAdd); }
private void InterpretCommand(string[] data) { switch (data[0]) { case "Create": string[] args = data[1].Split(); string rarity = args[0]; string weaponType = args[1]; string weaponName = data[2]; var weapon = weaponFactory.Create(weaponType, weaponName, rarity); if (weapon != null) { repo.AddWeapon(weapon, weaponName); } break; case "Add": string[] gemArgs = data[3].Split(); string gemType = gemArgs[1]; string clarity = gemArgs[0]; var gem = gemFactory.Create(gemType, clarity); string nameOfWeapon = data[1]; int index = int.Parse(data[2]); if (gem != null) { repo.AddGem(nameOfWeapon, index, gem); } break; case "Remove": string weapon_Name = data[1]; int gemIndex = int.Parse(data[2]); repo.RemoveGem(weapon_Name, gemIndex); break; case "Print": string name = data[1]; Console.WriteLine(repo.Print(name)); break; case "END": Environment.Exit(0); break; } }
public void Construct(IWeaponFactory weaponFactory, GameUIViewFactory gameUiViewFactory, BlockContainer blockContainer, ILevelLoaderService levelLoaderService) { this.levelLoaderService = levelLoaderService; this.blockContainer = blockContainer; ui = gameUiViewFactory.Create(); weaponFactory.Load(); weapon = weaponFactory.Create(); Subscribe(); ConfigureAttacksCount(); SetupUI(); }
public override void Execute() { var newWeapon = weaponFactory.Create(this.Data); repository.AddWeapon(newWeapon); }
public IWeapon GenerateWeapon() { return(_weaponFactory.Create()); }