static AETerrain() { Battle.onReset += () => { var map = Config.instance.map; var size = new Vector2Int(map.terrainArray.Length, map.terrainArray[0].Length); array = new AETerrain[size.x][]; for (int x = 0; x < size.x; ++x) { array[x] = new AETerrain[size.y]; } }; }
public static Data Save(AETerrain terrain) { if (terrain is NormalTerrain) { return(new NormalTerrain.Data(terrain as NormalTerrain)); } else if (terrain is House) { return(new House.Data(terrain as House)); } else if (terrain is Castle) { return(new Castle.Data(terrain as Castle)); } throw new Exception(); }
public static AETerrain DeSerialize(int ID, Vector3 wPos, bool use = true) { AETerrain terrain = null; if (ID == 3 || ID == 5 || ID == 8 || ID == 14 || ID == 21 || ID == 29) { terrain = House.DeSerialize(ID, wPos, use); } else if (15 <= ID && ID <= 19) { terrain = Castle.DeSerialize(ID, wPos, use); } else { terrain = NormalTerrain.DeSerialize(ID, wPos, use); } return(terrain); }
protected void Set(AETerrain terrain) { terrain.transform.position = pos.ArrayToWorld(); terrain.increaseDefend = increaseDefend; terrain.decreaseMove = decreaseMove; }
protected Data(AETerrain terrain) { pos = terrain.transform.position.WorldToArray(); increaseDefend = terrain.increaseDefend; decreaseMove = terrain.decreaseMove; }