public override void ExecuteCommand() { var weaponName = data[1]; IWeapon weapon = weaponRepository.GetWeapon(weaponName); int socket = int.Parse(data[2]); IGem gem = gemFactory.CreateGem(data); weapon.AddGem(gem, socket); }
private static Gem CreateGem(string gemInfo, IGemFactory gemFactory) { var gemTokens = gemInfo.Split(); var clarity = Enum.Parse <Clarity>(gemTokens[0]); var gemType = gemTokens[1]; var gem = (Gem)gemFactory.CreateGem(gemType, clarity); return(gem); }
public override void Execute() { string weaponName = Data[1]; int gemSlot = int.Parse(Data[2]); string[] gemInfo = Data[3].Split(); string gemQuality = gemInfo[0]; string gemType = gemInfo[1]; IGem gem = gemFactory.CreateGem(gemType, gemQuality); inventory.AddGemToSocket(weaponName, gemSlot, gem); }
public void Execute(string[] commandParameters, IDictionary <string, IWeapon> weapons, IWeaponFactory weaponFactory, IInputOutputManager inputOutputManager, IGemFactory gemFactory) { string targetAxeName = commandParameters[0]; int socketIndex = int.Parse(commandParameters[1]); string[] tokens = commandParameters[2].Split(' '); string clarity = tokens[0]; string type = tokens[1]; IGem gem = gemFactory.CreateGem(type, clarity); IWeapon targetAxe = weapons[targetAxeName]; targetAxe.AddGem(gem, socketIndex); }