public void FromJson(JSONNode jsnode) { name = jsnode["name"]; xCount = jsnode["xCount"].AsInt; yCount = jsnode["yCount"].AsInt; chunkSize = jsnode["chunkSize"].AsInt; tileSize = jsnode["tileSize"].AsInt; uvOffset.x = jsnode["uvOffset.x"].AsFloat; uvOffset.y = jsnode["uvOffset.y"].AsFloat; tilesetX = jsnode["tilesetX"].AsInt; tilesetY = jsnode["tilesetY"].AsInt; tilesetMaterial = Resources.Load <Material>("Terrain/Materials/" + jsnode["tilesetMaterial"]); tsTrans.Clear(); foreach (var tranNode in jsnode["tsTrans"].Childs) { PATSTransition tran = new PATSTransition(); tran.FromJson(tranNode); tsTrans.Add(tran); } tsTypes.Clear(); foreach (var typeNode in jsnode["tsTypes"].Childs) { PATSType type = new PATSType(); type.FromJson(typeNode); tsTypes.Add(type); } crystals.Clear(); foreach (var crystalNode in jsnode["crystals"].Childs) { PACrystalBuilding crystalBuilding = new PACrystalBuilding(); crystalBuilding.FromJson(crystalNode); AddCrystal(crystalBuilding); } }
public void AddNewType() { bool founded = false; int freeId = 0; do { founded = false; foreach (PATSType t in settings.tsTypes) { if (freeId == t.id) { founded = true; break; } } if (!founded) break; freeId++; } while (true); PATSType nt = new PATSType(); nt.id = freeId; nt.name = freeId.ToString(); settings.tsTypes.Add(nt); }