/// <summary> /// On inventory update event callback /// </summary> /// <param name="op">Operation (ADD, SET, REMOVE...)</param> /// <param name="key">inventory item position</param> /// <param name="item">item data</param> private void OnInventoryUpdate(SyncIDictionary <Vector2Byte, ItemData> .Operation op, Vector2Byte key, ItemData item) { switch (op) { case SyncIDictionary <Vector2Byte, ItemData> .Operation.OP_ADD: case SyncIDictionary <Vector2Byte, ItemData> .Operation.OP_SET: InventorySystem.Instance.OnInventoryUpdate(key, item); break; case SyncIDictionary <Vector2Byte, ItemData> .Operation.OP_REMOVE: InventorySystem.DropItem(key); break; } }
} // set player reference /// <summary> /// Called on equipment update /// </summary> /// <param name="op">Operation (SET/UPDATE/REMOVE...)</param> /// <param name="key">Equipment slot</param> /// <param name="item">Item data</param> public static void OnEquipmentUpdate(SyncIDictionary <EquipmentSlot, ItemData> .Operation op, EquipmentSlot key, ItemData item) { switch (op) { case SyncIDictionary <EquipmentSlot, ItemData> .Operation.OP_SET: case SyncIDictionary <EquipmentSlot, ItemData> .Operation.OP_ADD: Equipment equipment = (Equipment)ObjectDatabase.GetItem(item.ID); if (equipment) { Instance.SetIcon(key, equipment.icon); } break; case SyncIDictionary <EquipmentSlot, ItemData> .Operation.OP_REMOVE: Instance.SetIcon(key, null); break; } }
private void OnFertilizingCooldownUpdate(SyncIDictionary <NetworkIdentity, double> .Operation op, NetworkIdentity key, double item) { // TODO: Update visuals? }
void OnPlayerListUpdate(SyncIDictionary <int, Player> .Operation op, int key, Player item) { Debug.LogWarning("Players list changed"); Debug.LogWarning(op.ToString()); }