[7.6][C++] Anty lure chmurki z APO
Mowa o poison gasach~ o id 1505, gdy potwór w nie wejdzie, po prostu znika. Idealne do zabezpieczenia miast i ekspowisk.
const76.h
pod:
Kod:
ITEM_WAND_OF_DRAGONBREATH = 2191,
dodaj:
Kod:
#ifdef __KIRO_ANTY_LURE__
ITEM_CHMURKA = 1505,
#endif //__KIRO_ANTY_LURE__
game.cpp
pod:
Kod:
void Game::checkCreature(unsigned long id)
{
OTSYS_THREAD_LOCK_CLASS lockClass(gameLock, "Game::checkCreature()");
Creature *creature = getCreatureByID(id);
if (creature && creature->isRemoved == false)
{
int thinkTicks = 0;
int oldThinkTicks = creature->onThink(thinkTicks);
if(thinkTicks > 0) {
creature->eventCheck = addEvent(makeTask(thinkTicks, std::bind2nd(std::mem_fun(&Game::checkCreature), id)));
}
else
creature->eventCheck = 0;
dodaj:
Kod:
#ifdef __KIRO_ANTY_LURE__
if(Monster* monster = dynamic_cast<Monster*>(creature))
{
if(Tile *tile = map->getTile(monster->pos))
{
for(int i = 0;i<tile->downItems.size();++i)
{
if(tile->downItems[i]->getID() == ITEM_CHMURKA)
{
removeCreature(creature);
return;
}
}
}
else return;
}
#endif //__KIRO_ANTY_LURE__
I standardowo, projekt->parametry->kompilator c++
Kod:
-D__KIRO_ANTY_LURE__
I przebudować.