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!");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 553)return SendClientMessage(playerid, COLOR_GREY, "Du kannst nur mit einer Nevada Waren transportieren!");
new aktion[10],string[128],string2[128],string3[128],menge,preis = menge*15,geld = Waren2Dabei[playerid] * 30+random(80),lohn = Waren3Verkauft[playerid] - 80;
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(!IsPlayerInRangeOfPoint(playerid, 90.0, -1233.6982,-88.1554,14.9228))return SendClientMessage(playerid, COLOR_GREY, "Du bist nicht am Hangar am San Fiero Airport!");
print("kaufen 2");
if(WarenDabei[playerid] >= 75)return SendClientMessage(playerid, COLOR_GREY, "Du hast schon 75 Waren dabei!");
print("kaufen 3");
if(sscanf(params,"d",menge))return SendClientMessage(playerid, COLOR_GREY, "Benutzung: /waren kaufen [Anzahl] | *Preis pro Ware: 15$, Maximale Waren: 75");
print("kaufen 4");
if(menge < 5 || menge > 75)return SendClientMessage(playerid, COLOR_GREY, "Du musst mindestens 5 Waren und maximal 75 Waren kaufen!");
print("kaufen 5");
if(preis > GetPlayerMoney(playerid))return SendClientMessage(playerid, COLOR_GREY, "Kannst du dir nicht leisten!");
print("kaufen 6");
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;
}
//Tauschen, Verkaufen, Abrechnen funktioniert alles, da kein weiterer Parameter benötigt wird.
return 1;
}
Er führt den Befehl nur bis "print("kaufen 3") aus.
---
Andy