void CPetControl::moveToHiddenRoom(CTreeItem *item) { CRoomItem *room = getHiddenRoom(); if (room) { item->detach(); item->addUnder(room); } }
void CPetControl::onSummonBot(const CString &name, int val) { CGameObject *bot = findBot(name, getHiddenRoom()); if (!bot) { bot = findBot(name, getRoot()); } if (bot) { removeFromInventory(bot, false, false); COnSummonBotMsg summonMsg(val); summonMsg.execute(bot); } }
CGameObject *CPetControl::getHiddenObject(const CString &name) { CRoomItem *room = getHiddenRoom(); return room ? dynamic_cast<CGameObject *>(findUnder(room, name)) : nullptr; }