president vankk
Web Developer & AuraOT Owner
- Joined
- Jul 10, 2009
- Messages
- 5,719
- Solutions
- 9
- Reaction score
- 339
I'm trying edit the code houses.cpp to when the player leave the house (!leavehouse) then can't go more than 5000 items to his depot, and the others items will get deleted. How I do that? I already try everything but not succeeded. Some1 can help me with that? The code.
Thanks, cya.
Code:
bool House::transferToDepot() const
{
if (townid == 0 || owner == 0) {
return false;
}
Player* player = g_game.getPlayerByGUID(owner);
if (!player) {
player = new Player(nullptr);
if (!IOLoginData::loadPlayerById(player, owner)) {
delete player;
return false;
}
}
transferToDepot(player);
if (player->isOffline()) {
IOLoginData::savePlayer(player);
delete player;
}
return true;
}
bool House::transferToDepot(Player* player) const
{
if (townid == 0 || owner == 0) {
return false;
}
ItemList moveItemList;
for (HouseTile* tile : houseTiles) {
if (const TileItemVector* items = tile->getItemList()) {
for (Item* item : *items) {
if (item->isPickupable()) {
moveItemList.push_back(item);
} else {
Container* container = item->getContainer();
if (container) {
for (Item* containerItem : container->getItemList()) {
moveItemList.push_back(containerItem);
}
}
}
}
}
}
for (Item* item : moveItemList) {
g_game.internalMoveItem(item->getParent(), player->getInbox(), INDEX_WHEREEVER, item, item->getItemCount(), nullptr, FLAG_NOLIMIT);
}
return true;
}
Thanks, cya.