Ir para conteúdo

[7.6] Setoutfit V3.0


Posts Recomendados

HiHo!

Oia eu dnovo... Essa versão 3.0 é a melhor pq ela pode ler TODOS os monstros do server sem precisar "cadastrar" como estava nas outras versões... Too simple...

Let's go!

Commands.cpp

Se você já tiver as versões 1.0 ow 2.0 procure por:

bool Commands::outFit(Creature* c, const std::string &cmd, const std::string &param)

Delete isso.

Agora mesmo que vc não tenha as versões 1.0 e/ou 2.0 adicione no final do arquivo:

 

bool Commands::outFit(Creature* c, const std::string &cmd, const std::string &param){     std::string tmp = param;     std::string::size_type pos;     std::string outfit;     pos = tmp.find(",");     if(pos){        outfit = tmp.substr(0, pos).c_str();        tmp.erase(0, pos+1);        }     else{          outfit = param;        }             if(outfit != "gm")     {	std::string file = g_config.DATA_DIR + "/monster/" + outfit + ".xml";	xmlDocPtr doc;	doc = xmlParseFile(file.c_str());	if (!doc)  return false;    int number;	xmlNodePtr root, tileNode, arenaNode;	root = xmlDocGetRootElement(doc);	if (xmlStrcmp(root->name, (const xmlChar*)"monster")) 	{  xmlFreeDoc(doc);  return false;	}	arenaNode = root->children;	while (arenaNode)	{  if (strcmp((char*) arenaNode->name, "look") == 0)  {  	number = atoi((const char*)xmlGetProp(arenaNode, (const xmlChar *) "type"));  }  arenaNode = arenaNode->next;	}	xmlFreeDoc(doc);  Creature* creature = game->getCreatureByName(tmp);  Player* target = creature? dynamic_cast<Player*>(creature) : NULL;     Player* player = c? dynamic_cast<Player*>© : NULL;          if(target){       target->looktype = number;       game->creatureChangeOutfit(target);       }     else     {         player->looktype = number;         game->creatureChangeOutfit©;     }     }     else     {         Creature* creature = game->getCreatureByName(tmp);      Player* target = creature? dynamic_cast<Player*>(creature) : NULL;         Player* player = c? dynamic_cast<Player*>© : NULL;                  if(target){           target->looktype = 75;           game->creatureChangeOutfit(target);           }         else         {             player->looktype = 75;             game->creatureChangeOutfit©;         }      }          return true;}

 

Agora se você não tiver as versões 1.0 e/ou 2.0 procure por:

{"/kick",&Commands::kickPlayer},

logo abaixo adicione:

 

{"/of",&Commands::outFit},

 

Commands.h

Se você não tiver as versões 1.0 e/ou 2.0 logo abaixo de:

bool kickPlayer(Creature* c, const std::string &cmd, const std::string &param);

adicione:

 

bool outFit(Creature* c, const std::string &cmd, const std::string &param);

 

Compile e não esqueça de adicionar o comando em Commands.xml

----- Modo de Usar -----

.: /of [NOME DO BIXU],[NOME DO PLAYER]

.: observe que depois da vírgula não há espaço

.: para alterar seu próprio outfit apenas digite:

.: /of [NOME DO BIXU]

----- FiM -----

PS .: Qq dúvida poste aqui que eu resolvo.

FlW

CyA!

Link para o comentário
Compartilhar em outros sites

=0

ty... neim axu assim... Honux sabe beim + ki eu... Hail honux i colex... ^^

PS .: teim um Favorety no forum msm, mas eu soh o frerety... :p

FlW

CyA!

Link para o comentário
Compartilhar em outros sites

  • 1 month later...

aew cara..

um pouquinho velho o tópico mas...

eu gostei da idéia pra trocar oufits...assim pelo menos não precisa ficar indo na pasta se alguem quiser trocar(se isso for permitido no OT)

porém eu não fasso muita questão não.. =P

mais tah valendo cara..vlwzao :bigsmile:

flws ae

fuiz!!

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...
  • 3 weeks later...
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...