• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

C++ Need help, exhausted.

Dawcio92

New Member
Joined
Sep 9, 2019
Messages
31
Reaction score
0
Hello,
I need help with exhausted for this command.

C++:
else if(text == "!buyhouse" && g_config.getGlobalString("buyhouse") == "yes")
        {
  unsigned long money = player->getMoney();
  bool last = false;
  for (int x = player->pos.x-1; x <= player->pos.x+1 && !last; x++)
  {
   for(int y = player->pos.y-1; y <= player->pos.y+1 && !last; y++)
   {
    Position doorPos(x, y, player->pos.z);
    Tile* tile = getTile(doorPos);
    House* house = tile? tile->getHouse() : NULL;
    
    if (house && house->getPlayerRights(player->getName()) == HOUSE_OWNER){
              player->sendTextMessage(MSG_ADVANCE, "You own this house.");
              return;
    }
    if (house && player->level < g_config.LEVEL_HOUSE){
              player->sendTextMessage(MSG_ADVANCE, "You need higher level to buy house.");
              return;
    }
    if (house && house->isBought()){
              player->sendTextMessage(MSG_ADVANCE, "This house already has an owner.");
              return;
    }
    if(house && house->checkHouseCount(player) >= g_config.getGlobalNumber("maxhouses", 0)){
              std::stringstream textmsg;
              textmsg << " You cant have more than " << g_config.getGlobalNumber("maxhouses", 1) << " houses ";
              player->sendTextMessage(MSG_ADVANCE, textmsg.str().c_str());
              return;   
    }
    if (house && house->getPlayerRights(doorPos, player->getName()) == HOUSE_NONE && !house->isBought() && house->checkHouseCount(player) < g_config.getGlobalNumber("maxhouses", 1))
    {
     Item *item = dynamic_cast<Item*>(tile->getThingByStackPos(tile->getThingCount()-1));
     long price = g_config.getGlobalNumber("priceforsqm", 0) * house->getHouseSQM(house->getName());
     if (item && Item::items[item->getID()].isDoor && price <= money)
     {
      player->substractMoney(price);
      house->setOwner(player->getName());
      house->save();
      player->sendTextMessage(MSG_ADVANCE, "You bought a house.");
      last = true;
     }
     else
     {
     player->sendMagicEffect(player->pos, NM_ME_PUFF);
     player->sendTextMessage(MSG_ADVANCE, "You dont have enough money to buy this house.");
     }
   }
  }
 }
}
 
Back
Top