public void TerrainDefinitions() { int[] res = { 0, 0, 0, 0, 0 }; var def = new Core.Models.Definitions.TerrainDefinition(Core.Models.Definitions.EntityType.Grassland, res, true, true, 4, 5, 6); Assert.IsNotNull(def); Assert.IsInstanceOf<Core.Models.Definitions.TerrainDefinition>(def); Assert.AreEqual(Core.Models.Definitions.Category.Terrain, def.Category); Assert.AreEqual(Core.Models.Definitions.EntityType.Grassland, def.SubType); Assert.AreEqual(3, def.ID); Assert.AreEqual(5, def.Resources.Length); Assert.AreEqual(true, def.Buildable); Assert.AreEqual(true, def.Walkable); Assert.AreEqual(4, def.TravelCost); Assert.AreEqual(5, def.DefenseModifier); Assert.AreEqual(6, def.AttackModifier); // Test if a Wrong entity could be a TerrainDefinition def = new Core.Models.Definitions.TerrainDefinition(Core.Models.Definitions.EntityType.Archer, res, true, true, 4, 5, 6); Assert.IsNotNull(def); Assert.IsInstanceOf<Core.Models.Definitions.TerrainDefinition>(def); Assert.AreNotEqual(Core.Models.Definitions.Category.Terrain, def.Category); // Assert.AreEqual(Core.Models.Definitions.EntityType.Grassland, Def.SubType); // Assert.AreEqual(78, Def.ID); }
/// <summary> /// Converts JSON to an TerrainDefinition[ , ] /// </summary> /// <returns>A two-dimensional array of TerrainDefinitions</returns> /// <param name="json">JSON loaded from the server</param> public static Core.Models.Definitions.TerrainDefinition[,] JsonToTerrain(string json) { var definitionManager = Core.Models.World.Instance.DefinitionManager; int[,] terrainsTypes = JsonConvert.DeserializeObject<int[,]>(json); var terrains = new Core.Models.Definitions.TerrainDefinition[Constants.REGION_SIZE_X, Constants.REGION_SIZE_Y]; for (int cellX = 0; cellX < Constants.REGION_SIZE_X; ++cellX) { for (int cellY = 0; cellY < Constants.REGION_SIZE_Y; ++cellY) { var terrainId = terrainsTypes[cellX, cellY]; terrains[cellX, cellY] = (Core.Models.Definitions.TerrainDefinition)definitionManager.GetDefinition((Core.Models.Definitions.EntityType)terrainId); } } return terrains; }
public void MapRegion() { // Test with a RegionPosition as Input var regionPosition = new RegionPosition(new Position(new LatLon(50.97695325, 11.02396488))); var region = new Core.Models.Region(regionPosition); Assert.IsNotNull(region); Assert.IsInstanceOf<Core.Models.Region>(region); // Test with a Region as Input var region2 = new Region(region); Assert.IsNotNull(region2); Assert.IsInstanceOf<Core.Models.Region>(region2); Assert.AreEqual(region.RegionPosition, region2.RegionPosition); // Test with a RegionPosition and an TerrainDefinition as Input int[] res = { 0, 0, 0, 0, 0 }; var terDef = new Core.Models.Definitions.TerrainDefinition(Core.Models.Definitions.EntityType.Grassland, res, true, true, 4, 5, 6); // var region3 = new Region(regionPosition, TerDef); }