int CityManagementMenuComponent::handleObjectMenuSelect(SceneObject* sceneObject, CreatureObject* player, byte selectID) { ManagedReference<CityRegion*> city = sceneObject->getCityRegion(); if (city == NULL) return 1; Locker lock(city, player); CityManager* cityManager = player->getZoneServer()->getCityManager(); switch (selectID) { case 212: //Status Report cityManager->sendStatusReport(city, player, sceneObject); break; case 213: //Citizenship Report cityManager->sendCitizenshipReport(city, player, sceneObject); break; case 214: // Structure Report cityManager->sendStructureReport(city, player, sceneObject); break; case 215: //Treasury Report cityManager->sendTreasuryReport(city, player, sceneObject); break; case 217: // Change Name cityManager->sendChangeCityName(city, player); break; case 218: //Manage Militia if (city->isMayor(player->getObjectID())) cityManager->sendManageMilitia(city, player, sceneObject); break; case 219: //Adjust Taxes cityManager->promptAdjustTaxes(city, player, sceneObject); break; case 220: //Treasury Deposit cityManager->promptDepositCityTreasury(city, player, sceneObject); break; case 221: //Withdraw Treasury cityManager->promptWithdrawCityTreasury(city, player, sceneObject); break; case 222: //Register/Unregister if (city->isRegistered()) cityManager->promptUnregisterCity(city, player, sceneObject); else cityManager->promptRegisterCity(city, player, sceneObject); break; case 223: //City Advancement cityManager->sendCityAdvancement(city, player, sceneObject); break; case 224: //Maintenance Report cityManager->sendMaintenanceReport(city, player, sceneObject); break; case 225: //Set City Specialization cityManager->promptCitySpecialization(city, player, sceneObject); break; case 226: //Toggle Zoning Enabled cityManager->toggleZoningEnabled(city, player); break; case 232: // Restore Mayor Citizenship cityManager->fixMayor(city, player); break; #ifdef CITY_DEBUG case 228: cityManager->expandCity(city); break; case 229: cityManager->contractCity(city); break; case 230: cityManager->processCityUpdate(city); break; case 231: cityManager->updateCityVoting(city,true); break; #endif } return 0; }