/heilen ID ... funktioniert nur wenn der Spieler "tot" ist und man in der Nähe vom jeweiligen Spieler ist. (funktioniert nur im Zusammenhang mit dem Script, welches ich davor gepostet habe)
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/kill", cmdtext, true, 10) == 0) //Zum Testen
{
SetPlayerHealth(playerid,0);
return 1;
}
new cmd[30];
new idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd, "/heilen", true) == 0)
{
new tmp[30];
tmp = strtok(cmdtext, idx);
new otherplayer = strval(tmp);
new Float:X,Float:Y,Float:Z;
GetPlayerPos(otherplayer,X,Y,Z);
if(IsPlayerConnected(otherplayer) == 1 && Dead[otherplayer] == 1 && IsPlayerInRangeOfPoint(playerid, 2.0, X, Y, Z) && playerid != otherplayer)
{
Dead[otherplayer] = 0;
TogglePlayerControllable(otherplayer,1);
KillTimer(DTimer[otherplayer]);
SetPlayerHealth(otherplayer,50);
SetCameraBehindPlayer(otherplayer);
ApplyAnimation(playerid,"ped","getup",2.5,0,1,1,0,1);
new Heilername[MAX_PLAYER_NAME];
new Opfername[MAX_PLAYER_NAME];
new string[128];
GetPlayerName(otherplayer, Opfername, sizeof(Opfername));
format(string, sizeof(string), "Du hast %s (ID:%d) wiederbelebt.",Opfername,otherplayer);
SendClientMessage(playerid,0xFFFF00AA, string);
new stringz[128];
GetPlayerName(playerid, Heilername, sizeof(Heilername));
format(stringz, sizeof(stringz), "Du wurdest von %s (ID:%d) wiederbelebt.",Heilername,playerid);
SendClientMessage(otherplayer,0xFFFF00AA, stringz);
}
return 1;
}
return 0;
}
Eventuell noch: Wenn man tot ist, kann man nicht den Chat benutzen^^
public OnPlayerText(playerid, text[])
{
if(Dead[playerid] == 1)
{
SendClientMessage(playerid,0xFFFF00AA,"Tote können nicht reden.");
return 0;
}
return 1;
}