diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index 354f9aa1..c204c366 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -520,12 +520,22 @@ void Room::ScatterDrop(const glm::vec3& center, int drop_id) const glm::vec3 pos = center; const mt::Equip* equip_meta = mt::Equip::GetById(std::get<0>(item)); if (equip_meta) { - DropItemEx(center + dir * (5.0f + rand() % 50), - pos, - std::get<0>(item), - std::get<1>(item), - std::get<2>(item), - true); + if (equip_meta->equip_type() == EQUIP_TYPE_CAR) { + int car_uniid = AllocUniid(); + Car* c = CreateCar(nullptr, + car_uniid, + equip_meta, + center, + 0, + nullptr); + } else { + DropItemEx(center + dir * (5.0f + rand() % 50), + pos, + std::get<0>(item), + std::get<1>(item), + std::get<2>(item), + true); + } } } }