diff --git a/zone/eqemu_api_zone_data_service.cpp b/zone/eqemu_api_zone_data_service.cpp index 932888518..72f33f256 100644 --- a/zone/eqemu_api_zone_data_service.cpp +++ b/zone/eqemu_api_zone_data_service.cpp @@ -21,6 +21,7 @@ #include "eqemu_api_zone_data_service.h" #include "doors.h" #include "npc.h" +#include "object.h" #include "zone.h" #include "entity.h" #include @@ -150,6 +151,34 @@ void callGetDoorListDetail(Json::Value &response) response.append(row); } } +void callGetObjectListDetail(Json::Value &response) +{ + auto &list = entity_list.GetObjectList(); + + for (auto &iter : list) { + auto object = iter.second; + + Json::Value row; + + row["display_name"] = object->GetDisplayName(); + row["dbid"] = object->GetDBID(); + row["heading_data"] = object->GetHeadingData(); + row["icon"] = object->GetIcon(); + row["is_ground_spawn"] = object->IsGroundSpawn(); + row["item_id"] = object->GetItemID(); + row["model_name"] = object->GetModelName(); + row["size"] = object->GetSize(); + row["solid_type"] = object->GetSolidType(); + row["tilt_x"] = object->GetTiltX(); + row["tilt_y"] = object->GetTiltY(); + row["type"] = object->GetType(); + row["x"] = object->GetX(); + row["y"] = object->GetY(); + row["z"] = object->GetZ(); + + response.append(row); + } +} void callGetMobListDetail(Json::Value &response) { @@ -405,6 +434,9 @@ void EQEmuApiZoneDataService::get(Json::Value &response, const std::vector