Hello again, imma make this really fast, since i've been asked 3 times in pm about this command, and some more command.
So just a NOTE: all other commands such as /freeze <player> or /respawn <player> as some guys wanted, it's the same as this one, so just do the same things, i'm not gonna do them all, too lazy XD !!!
Usage: /kill <player>
Gunz/ZChat_Cmds.cpp
Gunz/ZGameClient_OnCommand.cpp
CSCommon/MMatchServer_OnCommand.cpp
CSCommon/MSharedCommandTable.cpp
CSCommon/MSharedCommandTable.h
Forgive me if it could have been done shorter, but I did it real quick in my way, without looking twice on code, just for those who pm'd me, and ofc for who need this
:
PEACE MATES
So just a NOTE: all other commands such as /freeze <player> or /respawn <player> as some guys wanted, it's the same as this one, so just do the same things, i'm not gonna do them all, too lazy XD !!!
Usage: /kill <player>
Gunz/ZChat_Cmds.cpp
Code:
void ChatCmd_Kill(const char* line, const int argc, char **const argv);
Code:
_CC_AC("kill", &ChatCmd_Kill, CCF_ADMIN|CCF_GAME, ARGVNoMin, 1, true, "/kill <charname>", "");
Code:
void ChatCmd_Kill(const char* line, const int argc, char **const argv)
{
if(argc < 2)
{
ZChatOutput("Usage: /kill <charname>", ZChat::CMT_SYSTEM);
return;
}
ZPOSTCMD2(MC_KILL_THIS_PLAYER, MCmdParamStr(""), MCmdParamStr(argv[1]));
}
Code:
case MC_KILL_THIS_PLAYER:
{
char AdminName[256] = "";
char TargetName[256] = "";
char szMsg[256];
if(ZGetMyInfo()->IsAdminGrade())
break;
pCommand->GetParameter(AdminName, 0, MPT_STR, sizeof(AdminName));
pCommand->GetParameter(TargetName, 1, MPT_STR, sizeof(TargetName));
ZCharacterManager *pZCharacterManager = ZGetCharacterManager();
if (pZCharacterManager != NULL)
{
for (ZCharacterManager::iterator itor = pZCharacterManager->begin(); itor != pZCharacterManager->end(); ++itor)
{
ZCharacter* pCharacter = (*itor).second;
if (strcmp(pCharacter->GetProperty()->GetName(), TargetName) == 0)
pCharacter->SetHP(0);
}
}
sprintf(szMsg, "^2%s has slained %s", AdminName, TargetName);
ZChatOutput(szMsg);
}
break;
Code:
case MC_KILL_THIS_PLAYER:
{
char AdminName[256] = "";
char TargetName[256] = "";
char szMsg[256];
if(!pCommand->GetParameter(AdminName, 0, MPT_STR))
break;
MMatchObject* pChar = GetObjectA(pCommand->GetSenderUID());
pCommand->GetParameter(TargetName, 1, MPT_STR, sizeof(TargetName));
if(pChar == NULL)
break;
if(!IsAdminGrade(pChar))
break;
MCommand* pCmd = CreateCommand(MC_KILL_THIS_PLAYER, MUID(0,0));
pCmd->AddParameter(new MCmdParamStr(pChar->GetName()));
pCmd->AddParameter(new MCmdParamStr(TargetName));
RouteToStage(pChar->GetStageUID(), pCmd);
sprintf(szMsg, "^2You have slained %s", TargetName);
Announce(pChar->GetUID(), szMsg);
}
break;
Code:
C(MC_KILL_THIS_PLAYER, "Admin.KillPlayer", "", MCDT_MACHINE2MACHINE)
P(MPT_STR, "AdminName")
P(MPT_STR, "TargetName")
Code:
#define MC_KILL_THIS_PLAYER XXXXXX // Here put a new ID (not found in the file)
PEACE MATES
Last edited:

