Ja ich hab nochnie mit sscanf 2 gearbeitet
Wie muss ich es denn verändern das es geht?
ocmd:medis(playerid, params[])
{
if(IstInFraktion(playerid) != FRAK_Medic) { return SendInfoMsg(playerid, "Du bist kein Medic!"); }
if(Duty[playerid] != 2) return SendInfoMsg(playerid, "Du bist nicht im Dienst! (/duty)");
new Auswahl[20],Anzahl,tmpstr[128];
if(sscanf(params,"s",Auswahl)) {
SendNutzMsg(playerid, "/medis [Medikamente/Spritzen]");
return 1;
}
printf("Auswahl: %s", Auswahl);
if(!strcmp(Auswahl, "medikamente", true)) {
if(!IsPlayerInRangeOfPoint(playerid, 3.0,1418.4304,3.8823,1001.4976)) return SendInfoMsg(playerid, "Du bist nicht am Medikamenten Center!");
sscanf(params , "s[11]D(0)",Auswahl,Anzahl);
if(Anzahl <= 0) return SendNutzMsg(playerid, "/medis Medikamente [Anzahl]");
printf("Auswahl: %s | Anzahl", Auswahl, Anzahl);
new MediAnzahl = SpielerVariablen[playerid][Medikamente]+Anzahl;
if(MediAnzahl > 1200) {
format(tmpstr, sizeof tmpstr, "Du kannst nurnoch maximal %d Medikamente mitnehmen! (Höchstens 1200)",1200-SpielerVariablen[playerid][Medikamente]);
}
new MediPreis = Anzahl*3;
if(Spieler[playerid][Geld] < MediPreis) {
format(tmpstr, sizeof tmpstr, "Du hast nicht genug Geld! Du benötigst %d $ (Pro Medikament 3$)", MediPreis);
SendInfoMsg(playerid, tmpstr);
return 1;
}
SpielerVariablen[playerid][Medikamente] += Anzahl;
format(tmpstr, sizeof tmpstr, "Du hast dir %d Medikamente für %d$ gekauft. Du hast nun %d Medikamente", Anzahl,MediPreis,SpielerVariablen[playerid][Medikamente]);
SendBlueMsg(playerid, tmpstr);
return 1;
}
else if(!strcmp(Auswahl, "spritzen", true)) {
if(!IsPlayerInRangeOfPoint(playerid, 3.0,1418.4304,3.8823,1001.4976)) return SendInfoMsg(playerid, "Du bist nicht am Medikamenten Center!");
sscanf(params , "s[8]D(0)",Auswahl,Anzahl);
if(Anzahl <= 0) return SendNutzMsg(playerid, "/medis Spritzen [Anzahl]");
new SpritzenAnzahl = SpielerVariablen[playerid][Spritzen]+Anzahl;
if(SpritzenAnzahl >= 1000) {
format(tmpstr, sizeof tmpstr, "Du kannst nurnoch maximal %d Spritzen mitnehmen! (Höchstens 1000)",1000-SpielerVariablen[playerid][Medikamente]);
}
new SpritzenPreis = Anzahl*4;
if(Spieler[playerid][Geld] < SpritzenPreis) {
format(tmpstr, sizeof tmpstr, "Du hast nicht genug Geld! Du benötigst %d $ (Pro Spritzen 4$)", SpritzenPreis);
SendInfoMsg(playerid, tmpstr);
return 1;
}
SpielerVariablen[playerid][Spritzen] += Anzahl;
format(tmpstr, sizeof tmpstr, "Du hast dir %d Spritzen für %d$ gekauft. Du hast nun %d Medikamente", Anzahl,SpritzenPreis,SpielerVariablen[playerid][Spritzen]);
SendBlueMsg(playerid, tmpstr);
return 1;
}
else if(!strcmp(Auswahl, "show", true)) {
format(tmpstr, sizeof tmpstr, "Medikamente: %d/1200 \nSpritzen: %d/1000", SpielerVariablen[playerid][Medikamente],SpielerVariablen[playerid][Spritzen]);
ShowPlayerDialog(playerid, DIALOG_UNUSED, DIALOG_STYLE_MSGBOX, "Medikamente u. Spritzen:", tmpstr, "Ok", "");
return 1;
}
else {
SendNutzMsg(playerid, "/medis [Medikamente/Spritzen/Show]");
return 1;
}
}