public override void Load(BuildingUnitData data) { baseData = dataBuilding = L.b.buildings[data.type]; base.Load(data); FinishInit(); }
public void Init(string configType, int player, NVector pos, Dictionary <string, int> cost) { Debug.Log($"{player}: Create unit {configType} at {pos}"); baseData = dataUnit = L.b.units[configType]; var calc = CalculatedData.Calc(dataUnit, cost); data = new BuildingUnitData(); data.UnitInit(this, configType, -1, player, calc); data.pos = pos.Clone(); //has a town? Town t = S.Towns().NearestTown(S.Player(player), pos, false); if (t != null) { int buildtime = L.b.modifiers[C.BuildRes].CalcModi(calc.buildTime, S.Player(player), pos); data.townId = t.id; gameObject.AddComponent <Construction>().Init(data, cost, this, buildtime); S.Player(player).fog.Clear(pos); } else { Clear(pos); } FinishInit(); }
public void Init(BuildingUnitData data, Dictionary <string, int> construction, MapElementInfo info, int buildTime) { data.constructionOrg = new Dictionary <string, int>(construction); data.construction = construction; data.construction.Add(C.BuildRes, buildTime + 1); data.buildTime = buildTime; this._data = data; this._info = info; }
public BuildingInfo Load(BuildingUnitData data) { //exist? if (!L.b.buildings.ContainsKey(data.type)) { Debug.LogError($"Building {data.type} ({data.pos}) not exist"); S.Player(data.playerId).info.Add(new Info($"Building {data.type} ({data.pos}) not exist", "no")); return(null); } BuildingInfo bi = Instantiate(buildPrefab, GameMgmt.Get().newMap.levels[data.pos.level].buildings.transform); bi.Load(data); buildings.Add(bi); return(bi); }
public void Init(int town, string configType, NVector pos, Dictionary <string, int> cost) { Debug.Log($"Create building {configType} at {pos} for town {town}"); baseData = dataBuilding = L.b.buildings[configType]; var calc = CalculatedData.Calc(dataBuilding, cost); data = new BuildingUnitData(); data.BuildingInit(this, configType, town, calc); data.pos = pos.Clone(); int buildtime = L.b.modifiers[C.BuildRes].CalcModi(calc.buildTime, S.Towns().Get(town).Player(), pos); gameObject.AddComponent <Construction>().Init(data, cost, this, buildtime); S.Player(Town().playerId).fog.Clear(pos); FinishInit(); }
public void Load(BuildingUnitData data) { this._info = GetComponent <MapElementInfo>(); this._data = data; }