void SendRemovePlayerBot(Player *player, Creature *creature, uint32 action) { int8 x = action - GOSSIP_ACTION_INFO_DEF - 1; if (x == 0) { SendRemovePlayerBotAll(player, creature); return; } WorldSession *session = player->GetSession(); for(PlayerBotMap::const_iterator itr = session->GetPlayerBotsBegin(); itr != session->GetPlayerBotsEnd(); ++itr) { if(x == 1 && itr->second && itr->second->GetGroup()) { Player *m_bot = itr->second; Group *m_group = m_bot->GetGroup(); //removing bot from group if(m_group->IsMember(m_bot->GetGUID())) { //deleting bot from group if(m_group->RemoveMember(m_bot->GetGUID(), GROUP_REMOVEMETHOD_DEFAULT) < 1) // 99 means I'm a bot { //no one left in group so deleting group delete m_group; //sObjectMgr.RemoveGroup(m_group); } } session->LogoutPlayerBot(m_bot->GetGUID(), true); break; } --x; } player->CLOSE_GOSSIP_MENU(); } //end SendRemovePlayerBot