Guten Tag,
ich suche nach einem /heal befehle
das die Ärtze andere Healen können...
Ich brauche diesen Befehl mit strcmp nicht mit ocmd.
Bitte um hilfe
Danke im vorraus.
Mfg
Arek
Guten Tag,
ich suche nach einem /heal befehle
das die Ärtze andere Healen können...
Ich brauche diesen Befehl mit strcmp nicht mit ocmd.
Bitte um hilfe
Danke im vorraus.
Mfg
Arek
else
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /heal [ID/NAME] [Preis]");
return 1;
}
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /heal [ID/NAME] [Preis]");
return 1;
}
moneys = strval(tmp);
if(moneys < 1 || moneys > 1000) { SendClientMessage(playerid, COLOR_GREY, " Behandlungspreis nicht weniger als: 1$ und höher als 3000$ !"); return 1; }
if (giveplayerid == playerid)
{
SendClientMessage(playerid, COLOR_GRAD1, " Du kannst dich leider nicht selber Heilen!");
return 1;
}
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new giveambu = GetPlayerVehicleID(giveplayerid);
new playambu = GetPlayerVehicleID(playerid);
if(gTeam[playerid] == TEAM_CYAN || PlayerInfo[playerid][pMember]== 4||PlayerInfo[playerid][pLeader] == 4 )//model
{
if (IsAnAmbulance(playambu) && playambu == giveambu)
{
new Float:tempheal;
GetPlayerHealth(giveplayerid,tempheal);
if(tempheal >= 160)
{
SendClientMessage(playerid, TEAM_GREEN_COLOR," Diese Person ist schon Geheilt.");
return 1;
}
format(string, sizeof(string), "~y~Du heilst: ~n~~w~%s~n~~g~$%d", giveplayer,moneys);
GameTextForPlayer(playerid, string, 5000, 1);
GivePlayerMoney(playerid,moneys);
GivePlayerMoney(giveplayerid,-moneys);
new hp = 0;
if(PlayerInfo[playerid][pPainPerk] > 0)
{
hp = 20 * PlayerInfo[playerid][pPainPerk];
hp += 100;
SetPlayerHealth(giveplayerid, hp);
}
else
{
hp = 100;
SetPlayerHealth(giveplayerid, 100);
}
PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
PlayerPlaySound(giveplayerid, 1150, 0.0, 0.0, 0.0);
format(string, sizeof(string), "Du wurdest für $%d geheilt.",moneys);
SendClientMessage(giveplayerid, TEAM_GREEN_COLOR,string);
if(STDPlayer[giveplayerid] > 0)
{
STDPlayer[giveplayerid] = 0;
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "* Du bist nun nicht mehr an STD erkrankt. Die Ärzte konnten dich retten! !");
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Nicht im Rettungswagen / Rettungshelikopter!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Du darfst diesen Befehl nicht benutzen !");
return 1;
}
}
}
else
{
format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
Der Befehl geht nicht, da compilt mein pawno nicht mehr
Kein Wunder das es nicht geht das ganze soll ja auch nicht einfach kopiert werden und mal eben in dein Script gebombt werden
überleg dir doch erstmal das Prinzip des ganzen
Wenn das alles so stimmt nach Bedingung kannst du dem Spieler den du im Paramter angegeben hast heilen mit dem angegebenen Preis der eventuell fest ist oder auch via weiteren Parameter bestimmt wird.
Würdest du jetzt noch die Grundlagen eines solchen Scripts verstehen und die Sprache einigermaßen können würde eine Umsetzung eines solchen Befehles keine Schwierigkeiten darstellen.
aber scheint für dich bestimmt nur blödes gequatsche zu sein.
Kopieren und Einfügen wird dir sicher nicht helfen.
Hab den Befehl schon im SoL aber wenn Medic
das macht steht da " Du darfst diesen Befehl nicht benutzen " Warum?
dann schau dir mal diese Abfrage an...
if(gTeam[playerid] == TEAM_CYAN || PlayerInfo[playerid][pMember]== 4||PlayerInfo[playerid][pLeader] == 4 )
Bedingung hierbei ist das die Variablen einen bestimmten Wert enthalten und hier muss nur eine der Variablen die genannte Zahl enthalten sprich eine "oder" Reihenfolge
Klartext, die Variable für deinen Spieler enthält nicht die ID 4 für das Team 4 daher kann der Vorgang auch nicht forgesetzt werden.
Ich empfehle dir noch immer die Grundkenntnisse zu lernen da ist es nämlich ganz wichtig zu wissen was "Bedingungen" in einem Code darstellen
Hast du überhaupt Fraktionen???!
Probier das mal!
ocmd:heal(playerid,params[])
{
new pID, string[128], money, namepID[MAX_PLAYER_NAME], nameplayerid[MAX_PLAYER_NAME];
if(!isPlayerInFrakt(playerid,3))return SendClientMessage(playerid,RED,"* Du bist kein Arzt!"); //Da ist die Abfrage in welcher Fraktion der Spieler ist du kannst es auch als Admin ausführen (if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,RED,"* Du bist kein Administrator/Supporter!");)
if(sscanf(params,"ui", pID, money))return SendClientMessage(playerid, farbe, "Benutze: /heal [SpielerID/TeilDesNamens] [Preis]");
if(GetPlayerMoney(pID) < money)return SendClientMessage(playerid, farbe, "Der Spieler hat nicht genügend Geld");
SetPlayerHealth(pID, 100);
GivePlayerMoney(playerid, money);
GivePlayerMoney(pID, -money);
GetPlayerName(pID, namepID, MAX_PLAYER_NAME);
GetPlayerName(playerid, nameplayerid, MAX_PLAYER_NAME);
format(string, sizeof(string), "Du hast %s für $%d geheilt.", namepID, money);
SendClientMessage(playerid, farbe, string);
format(string, sizeof(string), "Du wurdest von Arzt %s für $%d geheilt.", nameplayerid, money);
SendClientMessage(pID, farbe, string);
return 1;
}
Ungetestet!
Sagte doch kein OCMD