kamikazex 0 Postado Abril 14, 2006 Share Postado Abril 14, 2006 (editado) Post editado por gusbronha. Abaixo temos um post de GM commands, eu não testei o code por isso não posso afirmar se funciona. Caso alguém teste poste aqui para edição do post. Obrigado Editado Abril 16, 2006 por gusbronha Link para o comentário Compartilhar em outros sites More sharing options...
frerety 7 Postado Abril 14, 2006 Share Postado Abril 14, 2006 (editado) -----edited----- Abaixo temos um post de GM commands, eu não testei o code por isso não posso afirmar se funciona. Caso alguém teste poste aqui para edição do post. LoL? Issu num era um tópico pedindo code? hAUhauAHuAh... -----fim do edited----- Broadcast color Em commands.cpp em baixo de: {"/kick",&Commands::kickPlayer}, Coloque {"/bc",&Commands::broadcastColor}, Agora vá ao final de commands.cpp e adicione bool Commands::broadcastColor(Creature* c, const std::string &cmd, const std::string ¶m){ int a; int colorInt; Player* player = dynamic_cast<Player*>©; std::string message = param.c_str(); std::stringstream fullMessage; std::string color; MessageClasses mclass; for(a=0; a<param.length(); ++a){ if(param[a] > 3 && param[a] == ' '){ color = param; color.erase(a,1-param.length()); message.erase(0,1+a); break; } else message = param.c_str(); } std::transform(color.begin(), color.end(), color.begin(), tolower); if(color == "blue") mclass = MSG_BLUE_TEXT; else if(color == "red"){ game->creatureBroadcastMessage(c,message); return false; } else if(color == "red2") mclass = MSG_RED_TEXT; else if(color == "orange") mclass = MSG_ORANGE; else if(color == "white") mclass = MSG_ADVANCE; //Invasion else if(color == "white2") mclass = MSG_EVENT; else if(color == "green") mclass = MSG_INFO; else if(color == "small") mclass = MSG_SMALLINFO; else if(color == "yellow") mclass = MSG_YELLOW; else if(color == "private") mclass = MSG_PRIVATE; else{ player->sendTextMessage(MSG_SMALLINFO, "Define a color, or use #b to speak in red."); return false; } fullMessage << c->getName()<< ": "<< message.c_str()<<std::endl; //Name: Message for(AutoList<Player>::listiterator it = Player::listPlayer.list.begin(); it != Player::listPlayer.list.end(); ++it){ if(dynamic_cast<Player*>(it->second)) (*it).second->sendTextMessage(mclass, fullMessage.str().c_str()); } return true;} Pronto. Agora é só declarar. Commands.h em baixo de: bool kickPlayer(Creature* c, const std::string &cmd, const std::string ¶m); Coloque: bool Commands::broadcastColor(Creature* c, const std::string &cmd, const std::string ¶m); Quase funcionando... Agora é soh declarar as "novas cores": Const76.h em baixo de: MSG_RED_INFO = 0x12, Coloque: MSG_YELLOW = 0x01, MSG_PRIVATE = 0x04, MSG_ORANGE = 0x11, Você vai encontrar isso: enum MessageClasses { MSG_YELLOW = 0x01, MSG_PRIVATE = 0x04, MSG_ORANGE = 0x11, MSG_RED_INFO = 0x12, MSG_ADVANCE = 0x13, MSG_EVENT = 0x14, /*MSG_EVENT = 0x15, */ MSG_INFO = 0x16, MSG_SMALLINFO = 0x17, MSG_BLUE_TEXT = 0x18, MSG_RED_TEXT = 0x19,}; Agora recompile e é soh aproveitar... ^^ NÃO SE ESQUEÇA DE ADICIONAR O COMANDO EM commands.xml!!! Como usar: /bc COR mensagemmensagem é a sua mensagem... =p COR: 1.Red: A cor que aparece qndo vc digita #b mensagem 2.Blue: Azul, igual a conversa de dois players(Code da cor by nitrous). ¹ 3.White: Mesma cor qndo vc avança em level/skills. 4.White2: Mensagens em branco, invasões. 5.Green: Mensagem em verde! 6.small: uma mensagem pequena na tela. 7.Yellow: mensagem normal. ¹ 8.Orange: mensagem laranja. ¹ 9.Private: Azul marinho, igual a conversa de dois players. ¹ 10.Red2: Igual uma mensagem normal, vermelha ¹. ¹- As CORES com esse ¹ vão aparecer na janela "Default" (não na "tela" propriamente dita). Creditos para "The Chaos" e "Nitrous" ambos do forum otfans... GM Speed Commands.cpp em baixo de: {"/a",&Commands::teleportNTiles}, Coloque: {"/speed",&Commands::speedChanger}, No fim adicione: bool Commands::speedChanger(Creature* c, const std::string &cmd, const std::string ¶m){ int a; Player* player = dynamic_cast<Player*>©; std::string gambiarra = param.c_str(); std::stringstream speedValue; std::string aimeudeus; for(a=0; a<param.length(); ++a){ if(!isdigit(param[a])){ aimeudeus = param; aimeudeus.erase(a,1-param.length()); gambiarra.erase(0,1+a); break; } else aimeudeus = param.c_str(); } int newspeed = atoi(aimeudeus.c_str()); if(newspeed > 9999 || newspeed <= 99){ player->sendTextMessage(MSG_RED_TEXT,"Sorry but the speed must be more than 99 and less than 9999."); return false; } if(Player* toChange = game->getPlayerByName(gambiarra)){ toChange->speed = newspeed; toChange->sendChangeSpeed(game->getCreatureByName(gambiarra.c_str())); speedValue << "GM "<<player->getName()<< " changed your speed to: "<<toChange->speed<<"."<<std::endl; toChange->sendTextMessage(MSG_RED_TEXT,speedValue.str().c_str()); player->sendTextMessage(MSG_RED_TEXT,"Done."); return true; } else{ player->speed = newspeed; player->sendChangeSpeed©; speedValue << "You changed your speed to: "<<player->speed<<"."<<std::endl; player->sendTextMessage(MSG_RED_TEXT,speedValue.str().c_str()); return true; } return false; } Commands.h em baixo de: bool teleportNTiles(Creature* c, const std::string &cmd, const std::string ¶m); Coloque: bool speedChanger(Creature* c, const std::string &cmd, const std::string ¶m); Agora recompile e é soh aproveitar... ^^ NÃO SE ESQUEÇA DE ADICIONAR O COMANDO EM commands.xml!!! Como usar: /speed VELOCIDADE nome-do-playerOnde: VELOCIDADE => velocidade do player (de 100 a 9999) nome-do-player => nome do player a quem você dará a velocidade (deixe em branco se você quiser alterar sua velocidade) Exemplos: Alterar velocidade de um player chamado Fre Re Ty /speed 1050 Fre Re Ty /speed 5567 Fre Re Ty Alterar sua velocidade /speed 168 /speed 9999 Creditos ao "The Chaos" Moderas, srry pela propaganda, mas era pra fla q naum fui eu ki fiz, soh toh ajudanu... ^^ Editado Abril 20, 2006 por frerety Link para o comentário Compartilhar em outros sites More sharing options...
ScarFace 0 Postado Maio 27, 2006 Share Postado Maio 27, 2006 r000x demais nao chegueia usar mas codes bons, pena que ja tinha no ot que eu uso, mas r00x mesmo r00000x mesmo, vlwss por ajudar Link para o comentário Compartilhar em outros sites More sharing options...
cleks2 0 Postado Julho 13, 2006 Share Postado Julho 13, 2006 bom, como acho q o tópico naum é tãão velho assim, eu posso postar... eu gostaria de saber se algum compiler disposto a ajudar está interessado em me ajudar a criar alguns comandos de GM que estou necesitando no momento... obrigado pela atenção, Cleks2 Link para o comentário Compartilhar em outros sites More sharing options...
DeToNaTiOnS 2 Postado Outubro 13, 2006 Share Postado Outubro 13, 2006 Eu também não acho que o Tópico é TÃÃÃO VELHO assim mas vou postar... ;D Gostei ,agora é so aprender a Compilar direito,to partindo pras versões MySQL agora ;D flw. Link para o comentário Compartilhar em outros sites More sharing options...
Perfect Mapper 1 Postado Dezembro 24, 2006 Share Postado Dezembro 24, 2006 boa muito roxxxxx vlws mesmo flws preciso aprender a compilar xD Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados