public static string ItemDataToString(SyncDictionaryInventoryData itemData) { string result = string.Empty; foreach (var key in itemData.Keys) { ItemData data = itemData[key]; string item = key.x + ";" + key.y + ";" + data.ID + ";" + data.Count + "|"; result += item; } return(result); }
/// <summary> /// Find first avalible slot in inventory /// </summary> /// <param name="inventory">copy of inventory data</param> /// <returns>Vector2Int there is avalible slot, else null</returns> public Vector2Int?FindFirstPosition(SyncDictionaryInventoryData inventory) { Vector2Int?result = null; for (int y = inventorySize.y - 1; y >= 0; y--) { for (int x = inventorySize.x - 1; x >= 0; x--) { if (!inventory.ContainsKey(new Vector2Byte(x, y))) { return(new Vector2Int(x, y)); } } } return(result); }