Hallo Breadfish
Kann mir jemand einen befehlmachen und zwar:
man macht /eis
aber: man muss in der nähe eines einsverkäfers sein das ist
pjob 17
und wenn man
sich ein eis gekauft hat bekommt man 10% mehr leben kan mir jemand sowas machen?
Hallo Breadfish
Kann mir jemand einen befehlmachen und zwar:
man macht /eis
aber: man muss in der nähe eines einsverkäfers sein das ist
pjob 17
und wenn man
sich ein eis gekauft hat bekommt man 10% mehr leben kan mir jemand sowas machen?
if(strcmp(cmd,"/eis",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pJob] == 17)
{
new Float:eX, Float:eY, Float:eZ;
GetPlayerPos(i,eX,eY,eZ);
if(PlayerToPoint(3.0,playerid,eX,eY,eZ))
{
new Float:pleben = GetPlayerHealth(playerid);
SetPlayerHealth(playerid,pleben+10);
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Du bist an keinem Eisverkäufer!");
}
}
}
return 1;
}
Silverdark
if(strcmp(cmd,"/eis",true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerInfo[i][pJob] == 17)
{
new Float:eX, Float:eY, Float:eZ;
GetPlayerPos(i,eX,eY,eZ);
if(PlayerToPoint(3.0,playerid,eX,eY,eZ))
{
new Float:pleben = GetPlayerHealth(playerid);
SetPlayerHealth(playerid,pleben+10);
}
else
{
SendClientMessage(playerid,COLOR_GRAD1,"Du bist an keinem Eisverkäufer!");
}
}
}
return 1;
}
wieso die ganzen floats?
mann kann doch bei SetPlayerHealth so machen
SetPlayerHealth(playerid, +10);
und nen ganz normalen command mit PlayerToPoint?
ok funktionirt habe ich aber fast vergessen und wie mache ich das dan dass der eisverkäufer dan 3$bekommt?
//edit ols helft mir
@Polarized: Die ganzen Floats sind nötig, das "SetPlayerHealth(playerid,+10);" funktioniert nämlich nicht
@topic:
[...]
if(PlayerToPoint(3.0,playerid,eX,eY,eZ))
{
new Float:pleben = GetPlayerHealth(playerid);
SetPlayerHealth(playerid,pleben+10);
GivePlayerMoney(i,3);
}
[...]
@PS^^: Warum die for-schleife für 200 Leute machen, wenn (als Beispiel) nur 4 connected sind...
for(new i=0; i<MAX_PLAYERS; i++) {
if(IsPlayerConnected(i)) {//nicht die Gegenklammer zum Schluss vergessen!
...
ahso danke dir Keks^^
Keks, geht auch so:
if(!strcmp(cmdtext,"/eis"))
{
new i = 0, Float:hp, Float:xx, Float:yy, Float:zz;
for(; i < MAX_PLAYERS; i++)
{
if(GetPlayerHealth(i, hp) && GetPlayerPos(i, xx, yy, zz))
{
if(PlayerInfo[i][pJob] == 17)
{
if(PlayerToPoint(4.0, playerid, xx, yy, zz))
{
SetPlayerHealth(i, hp+10);
}
}
}
}
return 1;
}
//Keks: je nach dem, ob man das alles nochmal schreiben möchte, oder nur eine Zeile verändern... Hast aber Recht^^
//Bright: D: was wuselst du in meinem Beitrag rum
//Keks: Warn Versehen *hust* xD
und wie mache ich das jetzt das der jenige der pjob 17 hat geld bekommt
Indem du die AUgen aufmachst...
[...]
if(PlayerToPoint(4.0, playerid, xx, yy, zz))
{
SetPlayerHealth(playerid, hp+10);
GivePlayerMoney(i,3);
}
[...]