Para quem tá tendo erro::
vai em creatureevent.h e acha:
bool playerLogin(Player* player);
Pula duas linhas e coloca:
bool dropLoot(Creature* creature, Item* item);
Por caotic, 29 de mar. de 2014 em Linguagens de Programação
Para quem tá tendo erro::
vai em creatureevent.h e acha:
bool playerLogin(Player* player);
Pula duas linhas e coloca:
bool dropLoot(Creature* creature, Item* item);
info
Grupo: Artesão
Registrado: 10/11/11
Posts: 118
Reputação: +2

por el momento estoy teniendo error em creatureevent.cpp xD
agora errror em monster.cpp xD
i use tfs 0.4 ![]()
update para 0.4 pls ![]()
info
Grupo: Cavaleiro
Registrado: 01/04/13
Posts: 156
Reputação: +26
Gênero: Masculino
Char no Tibia: Yugami

nessa parte "Vá em player.h na função:" seria em Player.cpp não é? e nessa aqui "...Vá em monster.cpp e procure:..." fais oq? '-' da erro se eu coloco oq ta no codigo ai
nessa parte "Vá em player.h na função:" seria em Player.cpp não é? e nessa aqui "...Vá em monster.cpp e procure:..." fais oq? '-' da erro se eu coloco oq ta no codigo ai
Em monster.cpp procure:
void MonsterType::dropLoot(Container* corpse)
{
if(corpse && lootDrop == LOOT_DROP_FULL)
mType->dropLoot(corpse);
}
Troque por:
void MonsterType::dropLoot(Container* corpse)
{
Item* tmpItem = NULL;
for(LootItems::const_iterator it = lootItems.begin(); it != lootItems.end() && !corpse->full(); ++it)
{
uint32_t owner = corpse->getCorpseOwner();
Creature* creature = g_game.getCreatureByID(owner);
if((tmpItem = createLoot(*it)))
{
if(Container* container = tmpItem->getContainer())
{
if(createChildLoot(container, (*it)))
corpse->__internalAddThing(tmpItem);
else
delete container;
}
else
corpse->__internalAddThing(tmpItem);
}
}
corpse->__startDecaying();
uint32_t ownerId = corpse->getCorpseOwner();
if(!ownerId)
return;
Player* owner = g_game.getPlayerByID(ownerId);
if(!owner)
return;
LootMessage_t message = lootMessage;
if(message == LOOTMSG_IGNORE)
message = (LootMessage_t)g_config.getNumber(ConfigManager::LOOT_MESSAGE);
if(message < LOOTMSG_PLAYER)
return;
std::stringstream ss;
ss << "Loot of " << nameDescription << ": " << corpse->getContentDescription() << ".";
if(owner->getParty() && message > LOOTMSG_PLAYER)
owner->getParty()->broadcastMessage((MessageClasses)g_config.getNumber(ConfigManager::LOOT_MESSAGE_TYPE), ss.str());
else if(message == LOOTMSG_PLAYER || message == LOOTMSG_BOTH)
owner->sendTextMessage((MessageClasses)g_config.getNumber(ConfigManager::LOOT_MESSAGE_TYPE), ss.str());
}
Editado Outubro 31 por Danny0
info
Grupo: Campones
Registrado: 08/09/16
Posts: 4
Reputação: 0
Olha, no meu deu esse erro aqui.
112 C:\Users\Luquinhas Brito\Desktop\Sources 7.0\creatureevent.cpp no 'bool CreatureEvents::dropLoot(Creature*, Item*)' member function declared in class 'CreatureEvents'
info
Grupo: Artesão
Registrado: 10/11/11
Posts: 118
Reputação: +2
alreves:
function onDropLoot(cid, item)
local block = {2221, 1221, 2922}
for i=1, #block do
if item.itemid == block[i] then
return true
else
return false
end
end
return true
end