public void Despawner(ResourceType t, DropItemInfo dropItem) { if (null == dropItem) { return; } //int itemId = dropItem.ItemId; ItemDespawnerInfo despawnItem = new ItemDespawnerInfo(dropItem.ItemId, dropItem.InfoId); MapArea area = dropItem.Area; if (EntityMgr.Instance.BackItemMapDic.ContainsKey(area)) { EntityMgr.Instance.BackItemMapDic[area].Add(despawnItem); } else { List <ItemDespawnerInfo> itemIds = new List <ItemDespawnerInfo>(); itemIds.Add(despawnItem); EntityMgr.Instance.BackItemMapDic[area] = itemIds; } if (EntityMgr.Instance.DropItemDic.ContainsKey(dropItem.ItemId)) { EntityMgr.Instance.DropItemDic.Remove(dropItem.ItemId); } Despawner(t, dropItem.Cache); }
public void Despawner(ResourceType t, DropItemInfo dropItem) { if (null == dropItem) { return; } if (dropItem.InfoId == (int)ItemType.ITEM_RAREENERGY) { if (TSCData.Instance.RareEnergyDic.ContainsKey(dropItem.ItemId)) { TSCData.Instance.RareEnergyDic.Remove(dropItem.ItemId); } } else { ItemDespawnerInfo despawnItem = new ItemDespawnerInfo(dropItem.ItemId, dropItem.InfoId); MapArea area = dropItem.Area; if (TSCData.Instance.BackItemMapDic.ContainsKey(area)) { TSCData.Instance.BackItemMapDic[area].Add(despawnItem); } else { List <ItemDespawnerInfo> itemIds = new List <ItemDespawnerInfo>(); itemIds.Add(despawnItem); TSCData.Instance.BackItemMapDic[area] = itemIds; } if (TSCData.Instance.DropItemDic.ContainsKey(dropItem.ItemId)) { TSCData.Instance.DropItemDic.Remove(dropItem.ItemId); } } Despawner(t, dropItem.Cache); }