private IEnumerator UpdateItemStatus(InventoryItem item, ItemAction action, ItemHandle handle) { WWWForm form = new WWWForm(); form.AddField("id", item.ID); form.AddField("action", action.ToString()); UnityWebRequest www = UnityWebRequest.Post("https://dev3r02.elysium.today/inventory/status", form); www.SetRequestHeader("Authorization", "BMeHG5xqJeB4qCjpuJCTQLsqNGaqkfB6"); www.timeout = 2; //introduced after server crash on 21 Sep yield return(www.SendWebRequest()); if (www.isNetworkError || www.isHttpError) { Debug.Log(www.error); } else { switch (action) { case ItemAction.put: item.ConnectToHandle(handle.Item); Items.Add(item); handle.CurrentItem = item; ItemPutEvent?.Invoke(item.ID); break; case ItemAction.pull: item.ReleaseHandle(); Items.Remove(item); handle.CurrentItem = null; ItemPullEvent?.Invoke(item.ID); break; default: break; } Debug.Log(www.downloadHandler.text); } }
private ItemMeta CreateItemMeta <T>(ItemHandle itemHandle, string displayName, int defaultWeight = 1, ItemFlags flags = ItemFlags.None) where T : IItem { return(this.CreateItemMeta <T>(itemHandle.ToString(), displayName, defaultWeight, flags)); }
private void AddHandleInDictionary(CompressedKey key, ItemHandle handle) { lock (_itemsLock) { ItemHandle addingHandle = handle.Clone(); ItemHandle existingHandle; if (_items.TryGetValue(key, out existingHandle)) { existingHandle.Dispose(); } _items[key] = addingHandle; } }
public ICompressedItemHandle Commit(ICompressedItemBuilder builder) { var itemBuilder = (ItemBuilder)builder; CompressedKey key = itemBuilder.Key; var item = new Item { PhysicalPath = itemBuilder.PhysicalPath, CompressedLength = itemBuilder.Stream.Length }; itemBuilder.Stream.Close(); var handle = new ItemHandle(item); AddHandleInDictionary(key, handle); return handle; }
public static IItem CreateItem(this IItemFactory itemFactory, ItemHandle itemHandle, int amount) { return(itemFactory.CreateItem(itemHandle.ToString(), amount)); }
public static ICollection <IItem> GetItems(this IInventory inventory, ItemHandle handle) { return(inventory.GetItems(handle.ToString())); }