Skocz do zawartości

Rekomendowane odpowiedzi

Komenda na czyszczenie czatu :)

Pętla wysyła pustą wiadomość 15 razy, tak więc czat będzie czysty :D

if(strcmp(cmdtext,"/czysc",true)==0) // ;P
{
for(new i = 0 ; i <= 15 ; i++)
{
    SendClientMessage(playerid, 0x00CC00AA, " ");
    }
    return 1;
}
Piętnaście linijek nie wystarczy, bo można przewinąć do góry. Jak raz liczyłem ile trzeba wysłać wiadomości aby zapełnić cały czat to wyszło sto ponieważ jest 10 okien które przewija się PAGE UP/DOWN i każde ma po 10 linijek :)
if(strcmp(cmdtext,"/czysc",true)==0) // ;P
{
for(new i = 0 ; i <= 100 ; i++)
{
    SendClientMessage(playerid, 0x00CC00AA, " ");
    }
    return 1;
}

Tak powinno być chyba, że jeszcze zoptymalizować pętle :P

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/FLIP - na nowy sposób, teraz nie ustawia nas zawsze na północ (a = 0.0)

CMD:flip(playerid, params[])
{
	if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
		return SendClientMessage(playerid, COLOR_RED, "* Musisz być w pojeździe!"); // tylko kierowca

	new Float:a;
	GetVehicleZAngle(GetPlayerVehicleID(playerid), a); // pobieranie obrotu pojazdu
	SetVehicleZAngle(GetPlayerVehicleID(playerid), a); // korzystanie z buga iż nie jest on 3wymiarowy :)

	SetVehicleVelocity(GetPlayerVehicleID(playerid), 0.0, 0.0, 0.0); // Zatrzymywanie pojazdu
	return 1;
}
if(!strcmp(cmdtext, "/flip", true)
{
	if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
		return SendClientMessage(playerid, COLOR_RED, "* Musisz być w pojeździe!");

	new Float:a;
	GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
	SetVehicleZAngle(GetPlayerVehicleID(playerid), a);
	SetVehicleVelocity(GetPlayerVehicleID(playerid), 0.0, 0.0, 0.0);
	return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

DrunkeR, żadna nowość. Poza tym po co hamować? Po co pobierać ID pojazdu 2x?

	new Float:a;
	new const vid = GetPlayerVehicleID(playerid);
	GetVehicleZAngle(vid, a);
	SetVehicleZAngle(vid, a);

wystarczy.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

btw. zapomniałeś jednej ')'

if(!strcmp(cmdtext, "/flip", true)[color=red])[/color]
{
	if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
		return SendClientMessage(playerid, COLOR_RED, "* Musisz być w pojeździe!");

	new Float:a;
	GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
	SetVehicleZAngle(GetPlayerVehicleID(playerid), a);
	SetVehicleVelocity(GetPlayerVehicleID(playerid), 0.0, 0.0, 0.0);
	return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

@DrunkeR a po co w ogóle bawić się obrotem ?? bo mniej kodu jest ??

pobieranie pozycji i jej ustawienie, moim zdaniem lepiej się prezentuje

a SetVehicleVelocity lepiej ustawić starą prędkość niż 0.0

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

WAŻNE: Aby komendy poprawnie działały potrzebujesz zcmd by ZeeX i sscanf 2.0 by Y_Less

ZCMD + sscanf 2.0 http://pawno.pl/index.php?topic=1507.0

sscanf 2.0 http://pawno.pl/index.php?topic=2180.0

/givecash

CMD:dajkase(playerid, params[])
{
	new player, kasa, str[128];
	if(sscanf(params, "ri", player, kasa))
		return SendClientMessage(playerid, CZERWONY, "/dajkase [id gracza] [kasa]");
	if(IsPlayerConnected(player) == 0)
		return SendClientMessage(playerid, CZERWONY, "Gracz jest nie aktywny");
	if(GetPlayerMoney(playerid) < kasa)
	    return SendClientMessage(playerid, CZERWONY, "Nie masz tyle kasy!");

    format(str, 128, "Dałeś %d$ graczowi %s", kasa, PlayerName(player));
	SendClientMessage(playerid, ZOLTY, str);
	format(str, 128, "Dostałeś %d$ od gracza %s", kasa, PlayerName(playerid));
	SendClientMessage(player, ZOLTY, str);
	GivePlayerMoney(playerid, -kasa);
	GivePlayerMoney(playerid, kasa);
	return 1;
}

Jak na razie jedna komenda. Później z edytuje post i dodam więcej.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Pare from me :D

UWAGA !! POTRZEBUJESZ SYSTEM ZCMD !

1. Explode - Explodujemy Gracza

CMD:explode(playerid,params[])
{
	if(IsPlayerAdminByDjalo(playerid))
	{
		new tmp[256],idx;
		tmp = strtok(params,idx);
		if(!strlen(tmp))
		{
			SendClientMessage(playerid,COLOR_GREY,"Użyj: /explode [id]");
			return 1;
		}
		new pid = strval(tmp);
		if(!IsPlayerConnected(pid))
		{
			SendClientMessage(playerid,COLOR_GREY,"Zle ID.");
			return 1;
		}
		tmp = strrest(params,idx);
		new pname[MAX_PLAYER_NAME],pname2[MAX_PLAYER_NAME],string[256],Float:X,Float:Y,Float:Z;
		GetPlayerName(pid,pname,sizeof(pname));
		GetPlayerName(playerid,pname2,sizeof(pname2));
		GetPlayerName(playerid,pname2,24);
		GetPlayerName(pid,pname,24);
		if(!IsPlayerInAnyVehicle(pid))
		GetPlayerPos(pid,X,Y,Z);
		else
		GetVehiclePos(GetPlayerVehicleID(pid),X,Y,Z);
		for(new i = 1; i <= 5; i++)
		CreateExplosion(X,Y,Z,5,0);
		tmp = strrest(params,idx);
		if(!strlen(string))
		format(string,sizeof(string),"SERVER: Admin: %s explodowal gracza %s.",pname2,pname);
		else
		format(string,sizeof(string),"SERVER: Admin: %s explodowal gracza %s.",pname2,pname);
		SendClientMessageToAll(COLOR_WHITE,string);
		return 1;
	}
	else return SendClientMessage(playerid,COLOR_GREY,"SERVER: Nie jesteś Adminem!");
}
P.S Zastąpcie sobie IsPlayerAdminByDjalo na IsPlayerAdmin :P 2. TPDO & TPDOMNIE
CMD:tpdo(playerid,params[])
{
	if(IsPlayerAdminByDjalo(playerid))
	{
		new idx,tmpit[256];
		tmpit = strtok(params,idx);
		if(!strlen(tmpit))
		{
			SendClientMessage(playerid,COLOR_GREY,"Użyj: /tpdo [id]");
			return 1;
		}
		new pid = strval(tmpit);
		if(!IsPlayerConnected(pid))
		{
			SendClientMessage(playerid,COLOR_GREY,"Zle ID.");
			return 1;
		}
		new Float:playerpos[4],pint;
		GetPlayerPos(pid,playerpos[0],playerpos[1],playerpos[2]);
		GetPlayerFacingAngle(pid,playerpos[3]);
		pint = GetPlayerInterior(pid);
		if(playerpos[3] > 180.0)
		{
			playerpos[3]-=180.0;
		}
		else
		{
			playerpos[3]+=180.0;
		}
		GetXYBehindPlayer(pid,playerpos[0],playerpos[1],3.0);
		SetPlayerPos(playerid,playerpos[0],playerpos[1],playerpos[2]);
		SetPlayerFacingAngle(playerid,playerpos[3]);
		SetPlayerFacingAngle(playerid,playerpos[3]);
		SetPlayerInterior(playerid,pint);
		return 1;
	}
	else return SendClientMessage(playerid,COLOR_GREY,"SERVER: Nie jesteś Adminem!");
}

CMD:tpdomnie(playerid,params[])
{
	if(IsPlayerAdminByDjalo(playerid))
	{
		new idx,tmpit[256];
		tmpit = strtok(params,idx);

		if(!strlen(tmpit))
		{
			SendClientMessage(playerid,COLOR_GREY,"Użyj: /tpdomnie [id]");
			return 1;
		}
		new pid = strval(tmpit);

		if(!IsPlayerConnected(pid))
		{
			SendClientMessage(playerid,COLOR_GREY,"Zle ID.");
			return 1;
		}
		new Float:playerpos[4],pint;
		GetPlayerPos(playerid,playerpos[0],playerpos[1],playerpos[2]);
		GetPlayerFacingAngle(playerid,playerpos[3]);
		pint = GetPlayerInterior(playerid);
		if(playerpos[3] > 180.0)
		{
			playerpos[3]-=180.0;
		}
		else
		{
			playerpos[3]+=180.0;
		}
		GetXYInFrontOfPlayer(playerid,playerpos[0],playerpos[1],3.0);
		SetPlayerPos(pid,playerpos[0],playerpos[1],playerpos[2]);
		SetPlayerFacingAngle(pid,playerpos[3]);
		SetPlayerInterior(pid,pint);
		return 1;
	}
	else return SendClientMessage(playerid,COLOR_GREY,"SERVER: Nie jesteś Adminem!");
}

Potem podam więcej :P

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

C:\Users\Pucio.tomek-PC\Desktop\Test.pwn(847) : warning 219: local variable "PlayerName" shadows a variable at a preceding level
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.

Mam pewien problem wgrałem /admini w GUI i mam jeden warning wiecie o co chodzi proszę o szybką odpowiedz i dzięki z góry :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/pm [id] [tekst] oparte o DCMD + SSCANF

dcmd_pm(playerid, params[])

{

new recevid, text[76];

if(sscanf(params,"us[76]",recevid,text))

        return SendClientMessage(playerid,0xFFFFFAA,"* Use format /pm ID Text");

    if(IsPlayerConnected(recevid) == 0)

        return SendClientMessage(playerid,0xFFFFAAA,"* Player is not connected!");

if(recevid == playerid)

        return SendClientMessage(playerid,0xFFFFAAA,"* You can not send message to yourself!");

if(IsPlayerNPC(recevid) == 1)

        return SendClientMessage(playerid,0xFFFFAAA,"* You can not send message to NPC Bot!");

    new recevinfo[96], senderinfo[96], recevname[32], sendername[32];

    GetPlayerName(recevid,recevname,sizeof(recevname));

    GetPlayerName(playerid,sendername,sizeof(sendername));

    format(recevinfo,sizeof(recevinfo),"* Message from %s (ID:%i): %s",sendername,playerid,text);

    format(senderinfo,sizeof(senderinfo),"* Message to %s (ID:%i): %s",recevname,recevid,text);

    SendClientMessage(recevid,0xFFFFAAA,recevinfo);

    SendClientMessage(playerid,0xFFFFAAA,senderinfo);

    printf("[PM] %s (ID:%i) to %s (ID:%i): %s",sendername,playerid,recevname,recevid,text);

PlayerPlaySound(recevid,1057,0.0,0.0,0.0);

return 1;

}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Oto komenda /gethere id (teleport gracza do siebie) z wykorzystaniem sscanf i zcmd

Niektóre komendy były już wcześniej ale moje są optymalniejsze.

CMD:gethere(playerid, cmdtext[])
{
	if(IsPlayerConnected(playerid))
	{
		if(PlayerInfo[playerid][pAdmin] > 0)
		{
			new
				id,
				Float:x,
				Float:y,
				Float:z;
			if(sscanf(cmdtext, "u", id)) return SendClientMessage(playerid, CZERWONY, "(Użycie) /gethere [id]");
			GetPlayerPos(playerid, x, y, z);
			SetPlayerPos(id, x, y+2, z);
			SendClientMessage(id, COLOR_WHITE, "Zostałeś teleportowany.");
			SendClientMessage(playerid, COLOR_WHITE, "Teleportowałeś gracza do Siebie.");
		}
	}
	return 1;
}
Komenda /gethere id (teleport do gracza) z wykorzystaniem sscanf i zcmd
CMD:goto(playerid, cmdtext[])
{
	if(PlayerInfo[playerid][pAdmin] > 0)
	{
		new
			id,
			Float:x,
			Float:y,
			Float:z;
		if(sscanf(cmdtext, "u", id)) return SendClientMessage(playerid, CZERWONY, "(Użycie) /goto [id]");
		GetPlayerPos(id, x, y, z);
		SetPlayerPos(playerid, x, y+2, z);
		SendClientMessage(playerid, COLOR_WHITE, "Zostałeś teleportowany.");
	}
	return 1;
}
Komenda /explode id (eksplozja na graczu w celu np sprawdzenia czy spada mu HP) z wykorzystaniem sscanf i zcmd
CMD:explode(playerid, cmdtext[])
{
	if(PlayerInfo[playerid][pAdmin] > 0)
	{
	    new
	        id,
			Float:x,
			Float:y,
			Float:z;
	    if(sscanf(cmdtext, "u", id)) return SendClientMessage(playerid, CZERWONY, "(Użycie) /explode [id]");
		if(IsPlayerInAnyVehicle(id))
		{
		    GetVehiclePos(id, x, y, z);
		}
		else
		{
			GetPlayerPos(id, x, y, z);
			CreateExplosion(x, y, z, 5, 0);
		}
	}
	return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/SETSCORE - dla administratora do zmieniania score..

if (strcmp(cmd, "/setscore", true)==0 && IsPlayerAdmin(playerid)) {
new moneyplayer;
new moneyplus;
mpt = strtok(cmdtext, idx);
if(!strlen(mpt)) {
SendClientMessage(playerid, COLOR_GREY, "/setscore [ID gracza] [score]");
} else {
moneyplayer = strval(mpt);
mpt = strtok(cmdtext, idx);
if(!strlen(mpt)) {
SendClientMessage(playerid, COLOR_ADMIN, "Zła waluta");
} else {
moneyplus = strval(mpt);
new moneyplayername[MAX_PLAYER_NAME];
GetPlayerName(moneyplayer,moneyplayername,sizeof(moneyplayername));
format(string, sizeof(string), "Dałeś %d score graczowi %s",moneyplus, moneyplayername);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), "Admin %s dał ci %d score",PlayerName(playerid),moneyplus);
SendClientMessage(moneyplayer, COLOR_GREEN, string);
SetPlayerScore(moneyplayer, moneyplus);
}
}
return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/report id powód

if(strcmp(cmd, "/raport", true) == 0) {


        tmp = strtok(cmdtext, idx);

        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "* Użyj: /raport [id_gracza] [powód]");
            return 1;
        }
        giveplayerid = strval(tmp);

        strmid(tmp, cmdtext, 6+strlen(tmp), strlen(cmdtext));
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "* Uzyj: /raport [id_gracza] [powód]");
            return 1;
        }

        if (IsPlayerConnected(giveplayerid)) {
            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
            GetPlayerName(playerid, sendername, sizeof(sendername));
                        RaportCheater(playerid, giveplayer, tmp);
                        SendClientMessage(playerid, COLOR_RED, "Wyslane.");
        }
        else {
            format(string, sizeof(string), "* ID %d nie jest aktywnym graczem.", giveplayerid);
            SendClientMessage(playerid, COLOR_YELLOW, string);
        }

        return 1;
    }

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/report id powód

if(strcmp(cmd, "/raport", true) == 0) {


        tmp = strtok(cmdtext, idx);

        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "* Użyj: /raport [id_gracza] [powód]");
            return 1;
        }
        giveplayerid = strval(tmp);

        strmid(tmp, cmdtext, 6+strlen(tmp), strlen(cmdtext));
        if(!strlen(tmp)) {
            SendClientMessage(playerid, COLOR_WHITE, "* Uzyj: /raport [id_gracza] [powód]");
            return 1;
        }

        if (IsPlayerConnected(giveplayerid)) {
            GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
            GetPlayerName(playerid, sendername, sizeof(sendername));
                        RaportCheater(playerid, giveplayer, tmp);
                        SendClientMessage(playerid, COLOR_RED, "Wyslane.");
        }
        else {
            format(string, sizeof(string), "* ID %d nie jest aktywnym graczem.", giveplayerid);
            SendClientMessage(playerid, COLOR_YELLOW, string);
        }

        return 1;
    }

Nie wycinamy komend z map!!!!!!

A poza tym, daj public/stock RaportCheater, bo bez tego nie zadziała!!!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/givecash

Uwaga! Komenda wymaga definicji strtok'a!

if(!strcmp(cmd, "/givecash", true))
{
	new ttor[256];
	ttor = strtok(cmdtext, idx);
	if(!strlen(ttor))
		return SendClientMessage(playerid, 0xFF0000FF, "Użyj: /givecash [Id] [Kwota]");
	new Id[12] = ttor;
	ttor = strtok(cmdtext, idx);
	if(!strlen(ttor))
		return SendClientMessage(playerid, 0xFF0000FF, "Użyj: /givecash [Id] [Kwota]");
	new Amount[12] = ttor;
	// -=-=-=-=-=-
	if(!IsPlayerConnected(strval(Id)))
		return SendClientMessage(playerid, 0xFF0000FF, "Nie prawidłowe ID gracza, lub gracz jest nie podłączony!");
	if(GetPlayerMoney(playerid) < strval(Amount))
		return SendClientMessage(playerid, 0xFF0000FF, "Nie masz tyle pieniędzy, aby je komuś przekazać!");
	if(strval(Amount) > 100000)
		return SendClientMessage(playerid, 0xFF0000FF, "Kwota którą chcesz przekazać, jest zbyt duża!");
	if(strval(Id) == playerid)
		return SendClientMessage(playerid, 0xFF0000FF, "Nie możesz przesłać pieniędzy samemu sobie!");
	if(strval(Amount) < 0)
		return SendClientMessage(playerid, 0xFF0000FF, "Nie możesz przekazać komuś kwoty ujemnej!");
	new Player = strval(Id), Kwota = strval(Amount);
	GivePlayerMoney(Player, Kwota);
	GivePlayerMoney(playerid, -Kwota);
	new sendstring[128], playern[24];
	GetPlayerName(Player, playern, sizeof playern);
	format(sendstring, sizeof sendstring, "Wysłałeś graczowi %s kwotę %d$ !", playern, Kwota);
	SendClientMessage(playerid, 0x008000FF, sendstring);
	GetPlayerName(playerid, playern, sizeof playern);
	format(sendstring, sizeof sendstring, "Otrzymałeś od gracza %s kwotę %d$ !", playern, Kwota);
	SendClientMessage(Player, 0x008000FF, sendstring);
	return 1;
}

Uwaga! Funkcja pisana na pastebinie - nie sprawdzana!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

nieśmiertelność dla admina

if(strcmp(cmdtext, /god, true) == 0) || strcmp(cmdtext, /niesmiertelnosc, true) == 0
{
if(IsPlayerAdmin(playerid));
{
SetPlayerHealth(playerid, 99999);
}else{
SendClientMessage(playerid, COLOR_RED, Nie jesteś adminem, więc nie możesz używać tej komendy!);
}
return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Co to ma być ?!

Prawidłowa komenda:

if (!strcmp(cmdtext, "/god", true) || !strcmp(cmdtext, "/niesmiertelnosc", true))
{
    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid, COLOR_RED, "Nie jesteś adminem, więc nie możesz używać tej komendy!");

    SetPlayerHealth(playerid, 99999);
    return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

To ja dam bardziej rozbudowaną :P

/god [id gracza]

zcmd + sscanf

CMD:god(playerid, params[])
{
    new id, str[64];
    sscanf(params, "i", id);

    if(!IsPlayerAdmin(playerid))
        return SendClientMessage(playerid, CZERWONY, "Nie jesteś adminem!");

    if(sscanf(params, "i", id))
        return SendClientMessage(playerid, CZERWONY, "Użyj: /god [id gracza]");

    if(!IsPlayerConnected(id))
        return SendClientMessage(playerid, CZERWONY, "Nie ma gracza o takim ID!");

    SetPlayerHealth(id, 9999999);
    format(str, 64, "Dałeś goda graczowi %s", PlayerName(id));
    SendClientMessage(playerid, ZIELONY, str);
    format(str, 64, "Dostałeś goda od admina %s", PlayerName(playerid));
    SendClientMessage(id, ZIELONY, str);
    return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
dcmd_toodamnhot(playerid, params[])
{
    #pragma unused params
    new HOT = random(2);
    switch(HOT)
    {
        case 0: SetWeather(17);
        case 1: SetWeather(18);
    }
    return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

/zycie

CMD:heal(playerid, params) return cmd_hp(playerid, params);
CMD:100hp(playerid, params) return cmd_hp(playerid, params);
CMD:zycie(playerid, params) return cmd_hp(playerid, params);
CMD:hp(playerid, params)
{
        SetPlayerHealth(playerid, 100.0);
        SendClientMessage(playerid, COLOR_GREEN, "Kupiłeś życie. Komenda zablokowana na 15sekund.");
        BlockedCommand(playerid, "/hp", 1);
        SetTimerEx("BlockedCommand", 15000, 0, "dsd", playerid, "hp", 0);
        return 1;
}
stock GetBlockedCommand(playerid, cmd[])
{
	if(GetPVarInt(playerid, "BC_all") == 1) return 1;

	new bc[64];
	format(bc, 64, "bc_%s", cmd);
	return GetPVarInt(playerid, bc);
}
forward BlockedCommand(playerid, cmd[], block); //by Maku ;D
public BlockedCommand(playerid, cmd[], block)
{
	if(!strcmp(cmd, "all", true))
	{
	    SetPVarInt(playerid, "BC_all", block);
	}else{
	    new bc[64];
	    format(bc, 64, "bc_%s", cmd);
	    SetPVarInt(playerid, bc, block);
	}
	return 1;
}
public OnPlayerCommandReceived(playerid, cmdtext[])
{
	if(GetBlockedCommand(playerid, cmdtext) == 1)
	{
		SendClientMessage(playerid, COLOR_RED, "Nie możesz teraz użyć tej komendy!");
		return 0;
	}
	return 1;
}

Działa tylko co 15 sekund.

Funkcja BlockedCommand nie zasyfia callbacka OnPlayerCommandReceived ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Może i była taka komenda :P

CMD:admini(playerid, params[])
{
    SendClientMessage(playerid, ZIELONY, "Admini On-Line");
    for (new i = 0; i <= GetMaxPlayers(); i++)
    {
        if (IsPlayerConnected(i))
        {
            if (IsPlayerAdmin(i))
            {
                new name[32];
                GetPlayerName(i, name, sizeof(name));
                SendClientMessage(playerid, NIEBIESKI, name);
            }
        }
    }
    return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
            if (IsPlayerAdmin(i))
            {
                new name[MAX_PLAYER_NAME];
                GetPlayerName(i, name, sizeof(name));
                SendClientMessage(playerid, -1, name);
        }
    }
    return 1;
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

100Hp - chyba każdy wie co.

#define KOLOR_ZOLTY 0xFFFF00AA
	if (strcmp("/100hp", cmdtext, true, 10) == 0)
	{
	SendClientMessage(playerid, KOLOR_ZOLTY,"Dostałeś 100hp");
	SetPlayerHealth(playerid,100;
		return 1;
	}
	}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×