public TroopStats(string _name, TroopType _type, int _hp, int _dmg, float _range, int _blockChance) { troopName = _name; type = _type; health = _hp; damage = _dmg; attackRange = _range; if (_blockChance > 100) { blockChance = 100; } else if (_blockChance < 0) { blockChance = 0; } else { blockChance = _blockChance; } sprite = Resources.Load <Sprite>(_type.ToString()); relations = new SerializableDictionary <TroopStats, Relationship>(); }
public TroopStats(TroopType _type) { TroopStats _newStats = GetStatsForType(_type); troopName = _newStats.troopName; type = _newStats.type; health = _newStats.health; damage = _newStats.damage; attackRange = _newStats.attackRange; blockChance = _newStats.blockChance; sprite = Resources.Load <Sprite>(_type.ToString()); relations = new SerializableDictionary <TroopStats, Relationship>(); }
public static void HandleMoveTroops(int fromClient, Packet packet) { int clientIDCheck = packet.ReadInt(); if (fromClient != clientIDCheck) { Console.WriteLine($"Player with ID: \"{fromClient}\" has assumed the wrong client ID: \"{clientIDCheck}\"!"); } HexCoordinates coordinates = packet.ReadHexCoordinates(); TroopType troopType = (TroopType)packet.ReadByte(); int amount = packet.ReadInt(); Player player = Server.clients[fromClient].Player; TroopInventory buildingInventory = ((ProtectedBuilding)GameLogic.grid.GetCell(coordinates).Structure).TroopInventory; if (GameLogic.MoveTroops(player, coordinates, troopType, amount)) { ServerSend.BroadcastMoveTroops(player, coordinates, troopType, amount); Console.WriteLine("Player: " + player.Name + "of tribe " + player.Tribe.Id.ToString() + " successfully exchanged " + amount.ToString() + troopType.ToString() + " with a building at" + coordinates.ToString() + "."); } else { Console.WriteLine("Player: " + player.Name + "of tribe " + player.Tribe.Id.ToString() + " failed to exchange " + amount.ToString() + troopType.ToString() + " with building at " + coordinates.ToString() + "."); } }
public static string ToFriendlyString(this TroopType troopType) { return(troopType.ToString().ToLower().FirstCharToUpper()); }
public static String TroopTypeToString(TroopType?troopType) { return(troopType?.ToString()?.ToLower()); }
public static String ToTroopString(this TroopType troopType) => troopType.ToString().ToLower();