Jump to content

Recommended Posts

Posted (edited)

Salut Bugged am nevoie de un mic ajutor ce trebuie sa definesc ca sa arate cati playeri au luat heal in raza in care am dat eu heal am incercat tot felul dar fiind la inceput nu imi prea reuseste. NU vreau comanda sa mi-o faceti vreau doar sa stiu ce trebuie sa definesc la comanda ca s-a arate cati playeri au luat heal

 

SCREEN  eOroLkU.png

 

pls help nu cer ajutor de multe ori si nu cer toata comanda doar vreau sa stiu ce new trb sa fac si sa adaug la text dupa ", szPlayername, ... 

 

Multumesc Mult!

Edited by EklipseN
Posted

Incearca asa

"

                        count++;
                        new name[MAX_PLAYER_NAME],string2[256];
                        GetPlayerName(playerid, name, MAX_PLAYER_NAME);
                        format(string2, 256,"AdmCmd: %s used /areaheal and healed %d players.",szPlayername, count);
                        submitToAdmins(string2, COLOR_GREY);

 

"

  • Upvote 1
Posted (edited)
 

new count;
count++;

Lasa comanda aici sau intr-un pastebin daca nu reusesti.

 

Incearca asa

"

                        count++;
                        new name[MAX_PLAYER_NAME],string2[256];
                        GetPlayerName(playerid, name, MAX_PLAYER_NAME);
                        format(string2, 256,"AdmCmd: %s used /areaheal and healed %d players.",szPlayername, count);
                        submitToAdmins(string2, COLOR_GREY);

 

"

V-a multumesc Baieti mult mi-a reusit sa fac !! multumesc mult de ajutor :) :* +1, sa traiti!!!

Edited by EklipseN
Posted (edited)

new count;

count++;

 

Lasa comanda aici sau intr-un pastebin daca nu reusesti.

Edited by Bruno K
  • Upvote 1
Posted (edited)

In loop-ul unde verifici daca playerul e in acel range faci o variabila egala cu 0 iar daca playerul e in acel range adaugi +1 la acea variabila.

Mi-a zis @L0k3d o chestie interesanta care nu mai verifica conditiile pentru fiecare player on dar am uitat cum se numea, o sa-ti zic daca-mi amintesc

Edited by Stuber
Posted (edited)

new count;

count++;

 

Lasa comanda aici sau intr-un pastebin daca nu reusesti.

 

Incearca asa

"

                        count++;

                        new name[MAX_PLAYER_NAME],string2[256];

                        GetPlayerName(playerid, name, MAX_PLAYER_NAME);

                        format(string2, 256,"AdmCmd: %s used /areaheal and healed %d players.",szPlayername, count);

                        submitToAdmins(string2, COLOR_GREY);

 

"

 

In loop-ul unde verifici daca playerul e in acel range faci o variabila egala cu 0 iar daca playerul e in acel range adaugi +1 la acea variabila.

Mi-a zis @L0k3d o chestie interesanta care nu mai verifica conditiile pentru fiecare player on dar am uitat cum se numea, o sa-ti zic daca-mi amintesc

 

V-a multumesc Baieti mult mi-a reusit sa fac !! multumesc mult de ajutor :) :* +1, sa traiti!!!

 

PS: am facut x2 post din greseala scuze :(

Edited by EklipseN
Posted (edited)

In loop-ul unde verifici daca playerul e in acel range faci o variabila egala cu 0 iar daca playerul e in acel range adaugi +1 la acea variabila.

Mi-a zis @L0k3d o chestie interesanta care nu mai verifica conditiile pentru fiecare player on dar am uitat cum se numea, o sa-ti zic daca-mi amintesc

iteratori, dar aici nu isi au rostul

Edited by L0K3D.
Posted (edited)

Un mic update, nu mai merge sa arate cati playeri au luat heal :( dc oare, cand sund doar eu si dau /areaheal zice un player a luat heal cand mai intra unu si dau iar tot zice ca un player a luat heal ... help pls :(

Edited by Kisuke
Posted (edited)

Poate pui si codul

Zic..

Desigur, poftim o parte din comanda ceea ce cred eu ca e mai principal... :-?

CMD:areaheal(playerid, params[])
{
 new range;
 new count = 1;
	if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, "Syntax: /areaheal [range]");
	if(playerVariables[playerid][pAdminLevel] >= 1)
	{
	    count++;
      	new name[MAX_PLAYER_NAME];
      	GetPlayerName(playerid, name, MAX_PLAYER_NAME);
		format(szMessage, sizeof(szMessage), "Admin %s used /areaheal and healed %d players.", playerVariables[playerid][pNormalName], count);
		submitToHelpersAndAdmins(szMessage, COLOR_ADMCMD);
        format(szMessage, sizeof(szMessage), "An admin healed you.", playerVariables[playerid][pNormalName]);
		foreach(Player, i)
		
  {
   
Edited by Kisuke
Posted (edited)

 

Desigur, poftim o parte din comanda ceea ce cred eu ca e mai principal... :-?

CMD:areaheal(playerid, params[])
{
 new range;
 new count = 1;
	if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, "Syntax: /areaheal [range]");
	if(playerVariables[playerid][pAdminLevel] >= 1)
	{
	    count++;
      	new name[MAX_PLAYER_NAME];
      	GetPlayerName(playerid, name, MAX_PLAYER_NAME);
		format(szMessage, sizeof(szMessage), "Admin %s used /areaheal and healed %d players.", playerVariables[playerid][pNormalName], count);
		submitToHelpersAndAdmins(szMessage, COLOR_ADMCMD);
        format(szMessage, sizeof(szMessage), "An admin healed you.", playerVariables[playerid][pNormalName]);
		foreach(Player, i)
		
  {
   

de ce ai ai pus count = 1? cand o creezi se seteaza automat pe 0, asa cum trebui sa fie.

if(playerVariables[playerid][pAdminLevel] >= 1)
    {
     count++;

din cate inteleg verifica daca playerul are admin mai mare sau egal cu 1 si sa mareasca valoarea lui count cu 1

iar mesajul va fi cv gen:

Admin %s used /areaheal and healed 1 players.

indiferent de cati playeri au primit heal, in concluzie comanda nu functioneaza corect

Edited by L0K3D.
Posted

Am incercat in toate modurile care mi le-ati spus voi (scz gramatica) si tot nu a mers uitati comanda :|

CMD:areaheal(playerid, params[])
{
 new range;
 new count = 0;
	if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, "Syntax: /areaheal [range]");
	if(playerVariables[playerid][pAdminLevel] >= 1)
	{
      	new name[MAX_PLAYER_NAME];
      	GetPlayerName(playerid, name, MAX_PLAYER_NAME);
		format(szMessage, sizeof(szMessage), "Admin %s used /areaheal and healed %d players.", playerVariables[playerid][pNormalName], count);
		submitToHelpersAndAdmins(szMessage, COLOR_ADMCMD);
        format(szMessage, sizeof(szMessage), "An admin healed you.", playerVariables[playerid][pNormalName]);
        count++;
		foreach(Player, i)

  {
			if(ProxDetectorS(range, playerid, i))
			{
				playerVariables[i][pArmour] = 100.0;
				SetPlayerArmour(i, 100.0);
				SendClientMessage(i, -1, szMessage);
			}
		}
	}
	return 1;
}

poate am facut ceva gresit si nu stiu...

Posted
CMD:areaheal(playerid, params[])
{
 new range;
 new count = 0;
	if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, "Syntax: /areaheal [range]");
	if(playerVariables[playerid][pAdminLevel] >= 1)
	{
      	new name[MAX_PLAYER_NAME];
      	GetPlayerName(playerid, name, MAX_PLAYER_NAME);
		foreach(Player, i)

  {
            count++;
			format(szMessage, sizeof(szMessage), "Admin %s used /areaheal and healed %d players.", playerVariables[playerid][pNormalName], count);
			submitToHelpersAndAdmins(szMessage, COLOR_ADMCMD);
 	 		format(szMessage, sizeof(szMessage), "An admin healed you.", playerVariables[playerid][pNormalName]);
			if(ProxDetectorS(range, playerid, i))
			{
				
				playerVariables[i][pHealth] = 100.0;
				SetPlayerHealth(i, 100.0);
				SendClientMessage(i, -1, szMessage);
			}
		}
	}
	return 1;
}

Am facut cum ai spus tu doar ca acum imi da mesajul de mai multe ori cati playeri au luat heal..

Posted

Nu inteleg cum am incercat si tot nu merge copie comanda si pune-o tu aici cum trebuie sa fie sau dami-o in pm te rog mult.

Pui cum ai tu

CMD:areaheal(playerid, params[])

{

if(playerVariables[playerid][pAdminLevel] >= 1)

{

new sendername[25],string[256],range, count;

new Float:x, Float:y, Float:z;

GetPlayerPos(playerid, x,y,z);

if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, SYNTAX_MESSAGE"/areaheal [range]");

{

foreach(Player, i)

{

if(ProxDetectorS(range, playerid, i))

{

count++;

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

format(string, sizeof(string), "Admin %s healed you.", sendername);

SendClientMessage(i, COLOR_IN2, string);

SetPlayerHealth(i, 99);

}

}

format(string, sizeof(string), "%s used command /areaheal and healed %d players on range %d.", playerVariables[playerid][pNormalName], count, range);

submitToAdmins(string, COLOR_AMSG2);

}

}

else return SendClientMessage(playerid, COLOR_WHITE, AdminOnly);

return 1;

}

  • Upvote 1
Posted

Pui cum ai tu

CMD:areaheal(playerid, params[])

{

if(playerVariables[playerid][pAdminLevel] >= 1)

{

new sendername[25],string[256],range, count;

new Float:x, Float:y, Float:z;

GetPlayerPos(playerid, x,y,z);

if(sscanf(params, "i", range)) return SendClientMessage(playerid, -1, SYNTAX_MESSAGE"/areaheal [range]");

{

foreach(Player, i)

{

if(ProxDetectorS(range, playerid, i))

{

count++;

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

format(string, sizeof(string), "Admin %s healed you.", sendername);

SendClientMessage(i, COLOR_IN2, string);

SetPlayerHealth(i, 99);

}

}

format(string, sizeof(string), "%s used command /areaheal and healed %d players on range %d.", playerVariables[playerid][pNormalName], count, range);

submitToAdmins(string, COLOR_AMSG2);

}

}

else return SendClientMessage(playerid, COLOR_WHITE, AdminOnly);

return 1;

}

Multumesc alex a functionat imi merge tot imi arata cati playeri au luat heal si arata doar odata mesajul mersi din nou pentru ajutor +1.

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

moduri samp