Hore medzi newy:
new driveby[MAX_PLAYERS]; // vyvvoríme premennú na ukladanie driveby killov
Do public OnPlayerCommandText(playerid, cmdtext[])
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/stats", true) == 0) // ak zadá príkaz stats pošle mu správu s počtom jeho drive-by killov
{
new dform[50];
format(dform,sizeof(dform),"Máš %d/3 drive-by killov",driveby[playerid]);
SendClientMessage(playerid,COLOR_****,dform);
return 1;
}
return 0;
}
Do public OnPlayerDeath(playerid,killerid)
public OnPlayerDeath(playerid, killerid, reason)
{
if(IsPlayerInAnyVehicle(killerid)) // zisťuje či je vrah vo vozidle
{
if(GetPlayerVehicleSeat(killerid) == 0) // ak áno a rovná sa jeho sedadlo 0 (vodič)
{
if(driveby[killerid] == 2) // musí to ísť od najvläčšieho po najmenší pretože by mu to pripočítalo hneď 3 body a kicklo by ho to
{
SendClientMessage(killerid,COLOR_****,"[ Anti Drive-by ] Za usmrtenie hráča z vozidla ti bol pripočítaný varovný bod(3/3)"); // pošle mu správu že mu bol prirátaný bod driveby
new dbform[100];
format(dbform,sizeof(dbform),"Hráč %s bol vyhodený za Drive-by",PlayerName(killerid)); // vyhodí hráča za driveby ak má už 2 body
SendClientMessageToAll(COLOR_****,dbform);
Kick(killerid); // vyhodenie
}
if(driveby[killerid] == 1) // ak je drive by 1, teda ak zabil niekoho už 1x drive by killom
{
SendClientMessage(killerid,COLOR_****,"[ Anti Drive-by ] Za usmrtenie hráča z vozidla ti bol pripočítaný varovný bod(2/3)");// pošle mu správu že má už 2 drive by
driveby[killerid] = 2; // nastaví mu drive by na 2
}
if(driveby[killerid] == 0) // ak ešte ikoho nezabil a niekoho zabije
{
SendClientMessage(killerid,COLOR_****,"[ Anti Drive-by ] Za usmrtenie hráča z vozidla ti bol pripočítaný varovný bod(1/3)"); pošle mu správu že mu bol prirátaný bod driveby
driveby[killerid] = 1; // nastaví driveby na 1
}
}
}
return 1;
}
Viem, že by to išlo aj kratšie ale toto je pre začiatočníkov aby to pochopili