// ------------------------------------------------------------------------------- protected override void ThrottledUpdate() { if (manager == null) { manager = localPlayer.GetComponent <BuildingManager>(); } for (int i = 0; i < contentGroup.childCount; i++) { GameObject.Destroy(contentGroup.GetChild(i).gameObject); } foreach (BuildingSyncStruct _entry in manager.GetEntries(false, SortOrder.None, category)) { BuildingSyncStruct entry = _entry; GameObject prefab = null; if (displayType == DisplayType.Horizontal) { prefab = horizontalSlotPrefab.gameObject; } else if (displayType == DisplayType.Vertical) { prefab = verticalSlotPrefab.gameObject; } else if (displayType == DisplayType.Grid) { prefab = gridSlotPrefab.gameObject; } GameObject go = GameObject.Instantiate(prefab); go.transform.SetParent(contentGroup, false); go.GetComponent <UIPlayerListBuildingSlot>().Init(localPlayer, ref entry); } }
protected override void SellEntry(int _index, long _amount) { BuildingSyncStruct entry = syncBuildings[_index]; entry.Remove(_amount); syncBuildings[_index] = entry; GetComponentInParent <CurrencyManager>().AddCurrency(entry.template.sellCost, entry.level); }
public void SaveData_Building(GameObject player) { connection.Execute("DELETE FROM c2w_building WHERE owner=?", player.name); BuildingManager manager = player.GetComponent <BuildingManager>(); List <BuildingSyncStruct> list = manager.GetEntries(false); for (int i = 0; i < list.Count; i++) { BuildingSyncStruct entry = list[i]; connection.InsertOrReplace(new c2w_building { owner = player.name, slot = entry.slot, name = entry.name, level = entry.level, state = entry.state, timer = entry.timer }); } }
public void AddEntry(int _slot, BuildingTemplate _template, byte _state, double _timer, int _level) { BuildingSyncStruct syncStruct = new BuildingSyncStruct(_slot, _template, _state, _timer, _level); syncBuildings.Add(syncStruct); }