-
Sziasztok!
Találtam egy mentõs scriptet, csak ezzel az a gond, hogy akkor is tölti az életet, amikor nincs is a player közelében,
és akár meddig töltheti.
CMD:mento(playerid, params[])
{
if(GetPlayerScore(playerid) >= 150)
{
SetPVarInt(playerid, \"Mento\", 1);
SetPlayerPos(playerid, 1177.3818,-1323.0188,14.0679); // Ide írd a kordinátát!
SetPlayerSkin(playerid, 275);
}
else
{
SendClientMessage(playerid, 0xFF0000AA, \"Még tapasztalatlan vagy!(Minimum 150 pont)\");
}
return 1;
}
CMD:szoli(playerid, params[])
{
if(GetPVarInt(playerid, \"Szolgalat\") == 0)
{
new name[MAX_PLAYER_NAME], string[128];
SetPVarInt(playerid, \"Szolgalat\", 1);
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
format(string, sizeof(string), \"%s(%d) Mentõ szolgálatba állt!\", name, playerid);
SendClientMessageToAll(0x33AA33AA, string);
}
return 1;
}
CMD:gyogyit(playerid, params[])
{
if(GetPVarInt(playerid, \"Mento\") == 1)
{
new
PID,
ertek;
if(sscanf(params, \"ui\", PID, ertek)) return SendClientMessage(playerid, 0xFF0000AA, \"Használat: /heal <ID/Játékosnév> <Érték>\");
if(ertek < 0 || ertek > 100) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz érték! (0-100)\");
if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Név\");
if(playerid == PID) return SendClientMessage(playerid, 0xFF0000AA, \"Magadanak nem töltheted fel az életedet!\");
SetPlayerHealth(PID, ertek);
GivePlayerMoney(playerid, 4000);
SetPlayerScore(playerid, GetPlayerScore(playerid) +2);
}
else if(GetPVarInt(playerid, \"Mento\") == 0)
{
SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy mentõs!\");
}
return 1;
}
CMD:104(playerid, params[])
{
new Float:V, Float:V1, Float:V2;
new name[MAX_PLAYER_NAME], string[128];
GetPlayerPos(playerid, V, V1, V2);
SetPlayerCheckpoint(playerid, V, V1, V2, 2);
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
format(string, sizeof(string), \"%s(%d) Hívta a mentõket!\", name, playerid);
SendClientMessageToAll(0x33CCFFAA, string);
return 1;
}
Valaki át tudná nekem kicsit alakítani? :)
-
CMD:gyogyit(playerid, params[])
{
if(GetPVarInt(playerid, \"Mento\") == 1)
{
new
PID,
ertek;
if(sscanf(params, \"ui\", PID, ertek)) return SendClientMessage(playerid, 0xFF0000AA, \"Használat: /heal <ID/Játékosnév> <Érték>\");
if(ertek < 0 || ertek > 100) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz érték! (0-100)\");
if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Név\");
if(playerid == PID) return SendClientMessage(playerid, 0xFF0000AA, \"Magadanak nem töltheted fel az életedet!\");
if(!IsPlayerInRangeOfPlayer(playerid, PID, 3.0)) return SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy elég közel a megadott játékoshoz!\" );
SetPlayerHealth(PID, ertek);
GivePlayerMoney(playerid, 4000);
SetPlayerScore(playerid, GetPlayerScore(playerid) +2);
}
else if(GetPVarInt(playerid, \"Mento\") == 0)
{
SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy mentõs!\");
}
return 1;
}
stock IsPlayerInRangeOfPlayer(playerid, targetid, Float: range)
{
new Float: targetPos[3];
GetPlayerPos(targetid, targetPos[0], targetPos[1], targetPos[2]);
if(IsPlayerInRangeOfPoint(playerid, range, targetPos[0], targetPos[1], targetPos[2])) return true;
return false;
}
-
Köszi :) Még azt kéne, hogy ne tudja a végtelenségig gyógyitani, hanem csak 1x :D
-
Köszi :) Még azt kéne, hogy ne tudja a végtelenségig gyógyitani, hanem csak 1x :D
elvileg csak egyszer 100ig töltheti.. vagy mire gondolsz?
-
CMD:gyogyit(playerid, params[])
{
if(!GetPVarInt(playerid, \"Mento\")) SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy mentõs!\");
new PID, Float:hp;
if(sscanf(params, \"u\", PID)) return SendClientMessage(playerid, 0xFF0000AA, \"Használat: /heal <ID/Játékosnév>\");
if(PID == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, \"Rossz ID/Név\");
if(playerid == PID) return SendClientMessage(playerid, 0xFF0000AA, \"Magadanak nem töltheted fel az életedet!\");
if(!IsPlayerInRangeOfPlayer(playerid, PID, 3.0)) return SendClientMessage(playerid, 0xFF0000AA, \"Nem vagy elég közel a megadott játékoshoz!\");
GetPlayerHealth(PID, hp);
if(hp >= 100) return SendClientMessage(playerid, 0xFF0000AA, \"A játékos nincs megsérülve!\");
SetPlayerHealth(PID, 100);
GivePlayerMoney(playerid, 4000);
SetPlayerScore(playerid, GetPlayerScore(playerid) +2);
return 1;
}
Így elméletileg nincs 2. paraméter, azaz nem tudsz 1-1 életpontonként gyógyítani és ölni sem (eredeti parancsnál ha értéknek 0-t írtál megölted volna). Egybõl 100 HPra gyógyít és nem enged utána gyógyítani, mivel a játékosnak már tele az élete.
Edit: amúgy miért indentál ilyen hülyén ez a code tag?
-
Köszönöm =) Nem tudom mit jelent az, még kezdõ vagyok :D