void InitSlots(bool _isServer) { var syncData = new StorageSlotsUUIDSync(); storageSlots = new StorageSlots(); for (int i = 0; i < maxSlots; i++) { InventorySlot invSlot = null; if (_isServer) { invSlot = new InventorySlot(System.Guid.NewGuid(), "inventory" + i); storageSlots.inventorySlots.Add(invSlot); syncData.UUIDs.Add(invSlot.UUID); } else { invSlot = new InventorySlot(System.Guid.Empty, "inventory" + i); storageSlots.inventorySlots.Add(invSlot); } InventoryManager.AddSlot(invSlot, _isServer); } if (syncData.UUIDs.Count != 0) { StorageObjectUUIDSyncMessage.SendAll(gameObject, JsonUtility.ToJson(syncData)); } }
IEnumerator InitSlots(bool _isServer) { //Wait for onscene change event to take place on InventoryManager yield return(YieldHelper.EndOfFrame); var syncData = new StorageSlotsUUIDSync(); storageSlots = new StorageSlots(); for (int i = 0; i < maxSlots; i++) { InventorySlot invSlot = null; if (_isServer) { invSlot = new InventorySlot(System.Guid.NewGuid(), "inventory" + i); storageSlots.inventorySlots.Add(invSlot); syncData.UUIDs.Add(invSlot.UUID); } else { invSlot = new InventorySlot(System.Guid.Empty, "inventory" + i); storageSlots.inventorySlots.Add(invSlot); } InventoryManager.AddSlot(invSlot, _isServer); } yield return(YieldHelper.DeciSecond); if (syncData.UUIDs.Count != 0) { StorageObjectUUIDSyncMessage.SendAll(gameObject, JsonUtility.ToJson(syncData)); } }
private string GetUUIDJsonString() { var syncData = new StorageSlotsUUIDSync(); for (int i = 0; i < storageSlots.inventorySlots.Count; i++) { syncData.UUIDs.Add(storageSlots.inventorySlots[i].UUID); } return(JsonUtility.ToJson(syncData)); }