Dei uma pesquisada achei um que funciona com storage feito pelo Doggynub.
procure por:
void Monster::doAttacking(uint32_t interval)
{
if(!attackedCreature || (isSummon() && attackedCreature == this))
return;
logo abaixo adicione:
Player* player = attackedCreature->getPlayer();
std::string value;
std::string check = "15";
if (getName() == "Rat" && player && ( !(player->getStorage(8000,value)) || check != value ) )
{
setFollowCreature(NULL);
setAttackedCreature(NULL);
searchTarget(TARGETSEARCH_NEAREST);
}
procure por:
bool Monster::selectTarget(Creature* creature)
{
#ifdef __DEBUG__
std::cout << "Selecting target... " << std::endl;
#endif
if(!isTarget(creature))
return false;
CreatureList::iterator it = std::find(targetList.begin(), targetList.end(), creature);
if(it == targetList.end())
{
//Target not found in our target list.
#ifdef __DEBUG__
std::cout << "Target not found in targetList." << std::endl;
#endif
return false;
}
logo abaixo adicione:
Player* player = creature->getPlayer();
std::string value;
std::string check = "15";
if (getName() == "Rat" && player && ( !(player->getStorage(8000,value)) || check != value ) )
return false;
onde tam "Rat" é o nome do Mob que você que.
em 8000 é o id da storage
em 15 é o valor da storage
Agora so basta fazer um onLogin para que quando o player logue é for de tal vocação ele ganhe a storage
local voc = 1 function onLogin(cid) if getPlayerVocation(cid) == voc then setPlayerStorageValue(cid, 8000, 15) end return true end













info
Grupo: Visconde
Registrado: 24/11/12
Posts: 474
Reputação: +98
Gênero: Masculino
Eu não manjo em c++ mais sem bem como compilar e aplicar as alterações, se alguém tiver disposto a me ajudar serei grato.
Obrigado a todos que estão tentando me ajudar.