Hey, ich habe mal wieder ein Problem, und zwar schreibe ich zur Zeit das DRP Script um.
Nun bin ich bei dem Job Pilot und dort gib es ein Befehl "/waren" mit diesen kann man eine bestimmte Anzahl (selbst wählbar) an Waren kaufen, und Tauchen (Die komplette Ladung).
Jetzt ist meine Frage wie ich das umsetze das bei "/waren kaufen" noch der Parameter für die Anzahl abgefragt wird.
Mein bisheriger Versuch:
CMD:waren(playerid,params[]){
if(!IsPlayerConnected(playerid)||gPlayerLogged[playerid] == 0)return SendClientMessage(playerid,COLOR_GREY,"Du bist nicht eingeloggt.");
if(PlayerInfo[playerid][pJob] != 14)return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Pilot!");
new aktion[10],menge,string[128];
if(sscanf(params,"s",aktion)){
SendClientMessage(playerid, COLOR_GOLD, "____________________________|Warenhilfe|____________________________");
SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /waren [Aktion]");
SendClientMessage(playerid, COLOR_WHITE, "Verfügbare Funktionen: kaufen, tauschen, verkaufen, abrechnen");
SendClientMessage(playerid, COLOR_WHITE, "*Kaufen [SF], Tauschen [LS], Verkaufen [LV], Abrechnen [SF]");
SendClientMessage(playerid, COLOR_GOLD,"__________________________________________________________________");
return 1;
}
if(!strcmp(aktion,"kaufen",true))
{
print("Kaufen 1");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 553)return SendClientMessage(playerid, COLOR_GREY, "Du kannst nur mit einer Nevada Waren kaufen!");
if(!IsPlayerInRangeOfPoint(playerid, 90.0, -1233.6982,-88.1554,14.9228))return SendClientMessage(playerid, COLOR_GREY, "Du bist nicht am Hangar am San Fiero Airport!");
if(sscanf(params,"d",menge)){
SendClientMessage(playerid, COLOR_GREY, "Benutzung: /waren kaufen [Anzahl]");
SendClientMessage(playerid, COLOR_GREY, "*Preis pro Ware: 15$, Maximale Waren: 75");
print("kaufen 2");
return 1;
}
print("kaufen 3");
new preis = menge*15;
if(menge < 5 || menge > 75)return SendClientMessage(playerid, COLOR_GREY, "Du musst mindestens 5 Waren und maximal 75 Waren kaufen!");
if(WarenDabei[playerid] >= 75)return SendClientMessage(playerid, COLOR_GREY, "Du hast schon 75 Waren dabei!");
if(preis > GetPlayerMoney(playerid))return SendClientMessage(playerid, COLOR_GREY, "Kannst du dir nicht leisten!");
WarenDabei[playerid] += menge;
GivePlayerMoney(playerid, -preis);
format(string, sizeof(string), "*Du hast dir %d Waren im Wert von %d$ gekauft", menge, preis);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Fliege jetzt zum LS Airport (Roter Marker)");
SetPlayerCheckpoint(playerid, 1888.6704,-2638.9941,13.5469, 8.0);
return 1;
}
return 1;
}
In der Konsole printet er mir bis einschließlich "Kaufen 2" und wenn ich die Anzahl dahinter schreibe macht er nicht weiter...
Bitte um Hilfe.
AndyWalker