From dbf0d5e8f86c6f4d15d785a7a10bb252ee1d4953 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 11 Apr 2019 10:07:53 +0800 Subject: [PATCH] 1 --- server/gameserver/room.cc | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index aa58830..bb7e2c4 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -270,26 +270,9 @@ void Room::ScatterDrop(Vector2D center, int drop_id) std::vector> drop_items; drop_meta->RandItems(drop_items); for (auto& item : drop_items) { - MetaData::Equip* equip_meta = MetaMgr::Instance()->GetEquip(std::get<0>(item)); - if (equip_meta) { - Loot* entity = new Loot(); - entity->room = this; - entity->meta = equip_meta; - entity->entity_uniid = AllocUniid(); - { - Vector2D dir = Vector2D::UP; - dir.Rotate(a8::RandAngle()); - entity->pos = center + dir * (5 + rand() % 50); - } - entity->item_id = std::get<0>(item); - entity->count = std::get<1>(item); - entity->Initialize(); - uniid_hash_[entity->entity_uniid] = entity; - for (auto& pair : human_hash_) { - pair.second->new_objects.insert(entity); - pair.second->part_objects.insert(entity); - } - } + Vector2D dir = Vector2D::UP; + dir.Rotate(a8::RandAngle()); + DropItem(center + dir * (5 + rand() % 50), std::get<0>(item)); } } }