ServersMU - Comunidad

Zona Programadores => Sources => Mensaje iniciado por: Applayo en Abril 25, 2021, 12:40:19 am

Título: Comando /addpk
Publicado por: Applayo en Abril 25, 2021, 12:40:19 am
Olá novamente!

Bom, agora venho disponibilizar um comando que me pediram, ele é para adicionar pk em usuários (sem a necessidade de ser ADM)

No es una dirección de gifv válida
[b]CommandManager.cpp[/b]

Em [color=blue][b]bool CCommandManager::ManagementCore(LPOBJ lpObj, char * message, int Npc)[/b][/color] procure pela [b]case COMMAND_PK_CLEAR[/b] e no final do break; colocar:

[code]case COMMAND_ADDPK:
Result = CommandAddPK(lpObj,argument,Npc);
break;[/code]

logo depois, encontre a função [color=blue][b]bool CCommandManager::CommandPKClear(LPOBJ lpObj, char * arg, int Npc)[/b][/color] e coloque esta função abaixo:


[code]bool CCommandManager::CommandAddPK(LPOBJ lpObj,char* arg, int Npc) // OK
{
if(lpObj->PKLevel >= 6)
{
gNotice.GCNoticeSend(lpObj->Index,1,0,0,0,0,0,gMessage.GetMessage(871));


if (Npc >= 0)
{
GCChatTargetNewSend(lpObj,Npc,gMessage.GetMessage( 871));
}
return 0;
}


lpObj->PKLevel = 6;


GCPKLevelSend(lpObj->Index,lpObj->PKLevel);


gNotice.GCNoticeSend(lpObj->Index,1,0,0,0,0,0,gMessage.GetMessage(872));


if (Npc >= 0)
{
GCChatTargetNewSend(lpObj,Npc,gMessage.GetMessage( 872));
}


gLog.Output(LOG_COMMAND,"[CommandAddPK][%s][%s] - (PKLevel: %d)",lpObj->Account,lpObj->Name,lpObj->PKLevel);


return 1;
}[/code]

[b]
CommandManager.h[/b]

aumente a definição [b]#define MAX_COMMAND 82[/b] para:


[b]#define MAX_COMMAND 83[/b]
OBS.: Se você adicionou comandos ao seu emulador, saberá como esta parte funciona no cabeçalho.

[b]Command.txt[/b]

[82 "/addpk" 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 //addpk

[b]Message.txt[/b]

[code]871 "You're already PK!"
872 "Increased PK level!"[/code]


Créditos: Denis Alves
Título: Re: Comando /addpk
Publicado por: robins1998 en Mayo 27, 2021, 02:27:53 am
Very helpful, thanks for sharing.