Commande de twink
Bonjour a tous , voici un patch ajoutant une commande .twink [golvl/off] a votre serveur .

[code=diff] src/server/game/Chat/Commands/Level0.cpp | 34 ++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/src/server/game/Chat/Commands/Level0.cpp b/src/server/game/Chat/Commands/Level0.cpp
index c76bceb..81ff521 100644
--- a/src/server/game/Chat/Commands/Level0.cpp
+++ b/src/server/game/Chat/Commands/Level0.cpp
@@ -29,6 +29,40 @@
#include "revision.h"
#include "Util.h"

+bool ChatHandler::HandleTwinkGoLvlCommand(const char* args)
+{
+ if(!args)
+ {
+ return false;
+ }
+
+ Player *chr = m_session->GetPlayer();
+
+ int i = atoi(args);
+
+ if(chr->getLevel() >= i)
+ {
+ chr->SetLevel(i);
+ chr->SetFlag(PLAYER_FLAGS , PLAYER_FLAGS_NO_XP_GAIN);
+ PSendSysMessage("Vous êtes maintenant twink au niveau %u " , i);
+
+ }
+ else
+ {
+ PSendSysMessage("Vous avez entré un niveau supérieur au votre");
+ return false;
+ }
+ return true;
+}
+bool ChatHandler::HandleTwinkOffCommand(const char* args)
+{
+ Player *chr = m_session->GetPlayer();
+
+ if(chr->GetLevel() != 80)
+ {
+ chr->RemoveFlag(PLAYER_FLAGS , PLAYER_FLAGS_NO_XP_GAIN);
+ PSendSysMessage("Vous n'êtes plus twink");
+ }
+ else
+ {
+ PSendSysMessage("Votre xp est déjà arrêté");
+ }
+ return true;
+}
+
bool ChatHandler::HandleHelpCommand(const char* args)
{
char* cmd = strtok((char*)args, " ");

src/server/game/Chat/Chat.h | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/server/game/Chat/Chat.h b/src/server/game/Chat/Chat.h
index cd9633c..ce65387 100644
--- a/src/server/game/Chat/Chat.h
+++ b/src/server/game/Chat/Chat.h
@@ -246,6 +246,9 @@ class ChatHandler
bool HandleUnBanCharacterCommand(const char* args);
bool HandleUnBanIPCommand(const char* args);

+ bool HandleTwinkGoLvlCommand(const char* args);
+ bool HandleTwinkOffCommand(const char* args);
+
bool HandleHelpCommand(const char* args);
bool HandleCommandsCommand(const char* args);
bool HandleStartCommand(const char* args);

src/server/game/Chat/Commands/Level0.cpp | 34 ++++++++++++++++++++++++++++++
1 files changed, 34 insertions(+), 0 deletions(-)
[/code]

Voilà Clin Testé et fonctionnel , un petit +1 fait toujours plaisir
Pièce(s) jointe(s)
.sql  command.sql (Taille : 1.05 Ko)
Sinon, il y a le truc pour arrêter l'XP
En changeant le flag ça l'arrête
Pas spécialement utile, étant donné que le PNJ qui stop l'xp est déjà implanté par Trinity Erf

Merci néanmoins.
Je trouve ça plus simpa avec une commande , après chacun fait comme il veut

Rajout d'un Sql

EDIT: Fix d'un exploit possible quant au niveau pour la commande .twink off
Pourquoi ajouter directement des méthodes dans ce pauvre ChatHandler (ce qui poser des problèmes après avec les futurs merges avec Trinity) alors qu'il y a système de script pour les commandes qui permet de ne modifier aucun fichier de base de Trinity ?
Je connaissais pas , perso j'ai appris a les faire comme ça Hihi
(02-04-2011 23:12)Asedic a écrit :  Je connaissais pas , perso j'ai appris a les faire comme ça Hihi

Oui, consulte le fichier "example_commandscript.cpp" dans "scripts/examples" tu comprendras ;p

Retourner en haut Accueil