quarta-feira, 23 de maio de 2012

[Source]Catalisador Makav - Exemplo de SendRemoveMob

Um exemplo pra quem quer utilizar a Função SendRemoveMob e não sabe como.

Tá aí a Source para o Catalisador Makav.

void Catalisador_Makav(int clientid, int SrcSlot, int DstSlot, int warp)
{
st_Mob *player = (st_Mob*)GetMobFromIndex(clientid);
int mount = player->Equip[14].Index;
char tmp[1024];
int cHora = PInt(0x00A5EA418);
int cMin = PInt(0x00A5EA414);
int cSeg = PInt(0x00A5EA410);
srand(time(NULL) * (cHora / cMin + cSeg + ((cMin + rand() % 100 - cSeg) / cHora)) * rand()%200+150);
if(mount >= 2330 && mount <= 2358)
{
if(DstSlot == 14)
{
if(mount == 2354 || mount == 2355 || mount == 2356)
{
/*EF2 = level
EFV2 = vitalidade
EF3 = ração
EFV1 = HP*/
int mountIn = mount + 30;
player->Equip[14].Index = mountIn;
player->Equip[14].EFV2 += rand() % 16;
player->Equip[14].EF2 = 0;
SendItens(clientid, 14);
player->Inventory[SrcSlot].Index = 0;
SendRemoveMob(clientid);
SendAll(clientid);
return;
} else {
SendClientMsg(clientid, "Tipo não confere");
SendAll(clientid);
return;
}
} else {
SendClientMsg(clientid, "Utilize em montarias");
SendAll(clientid);
return;
}
} else {
SendClientMsg(clientid, "Aplicado somente em montarias");
SendAll(clientid);
return;
}
return;
}


Créditos:
Shepher;

6 comentários:

  1. srand(time(NULL) * (cHora / cMin + cSeg + ((cMin + rand() % 100 - cSeg) / cHora)) * rand()%200+150);


    o_o q isso ? :o me explique please

    ResponderExcluir
  2. Isso, na verdade, é uma gambiarra pra poder "desbugar" o rand. O comando rand() sempre gera o mesmo número. E o srand() é a maneira de arrumar isso.
    E eu fiz assim pra ser base no tempo do servidor bem sux ._.

    ResponderExcluir
  3. Contém bugs, ele remove a cria e tal, mas quando você anda ela reaparece.

    ResponderExcluir
  4. Não tem como reaparecer. Até porque, o ID do slot é mudado para de uma montaria, ou seja, você não tem mais cria.
    Aqui não aconteceu isso não. Bom, irei rever.

    ResponderExcluir
  5. Não sei porque acontece aqui, da uma olhada por favor.

    Antes : http://desmond.imageshack.us/Himg585/scaled.php?server=585&filename=capture0125.jpg&res=landing

    Depois de jogar : http://desmond.imageshack.us/Himg819/scaled.php?server=819&filename=capture0126x.jpg&res=landing

    Depois de andar : http://desmond.imageshack.us/Himg213/scaled.php?server=213&filename=capture0127.jpg&res=landing

    ResponderExcluir