hi,
habe nen fehler unzwar...
Der Trucker bzw Prod lieferant sollte ja biz auffüllen können.
Macht man den befehl z.B. /load außerhalb eines lieferwagens, zeigt er an, das man in ein lieferwagen muss um den befehl machen zu können -> ALLES RICHTIG
Doch wenn man in einem dann sitzt, sagt er - Server: Unknown Command
Sowas auch bei /buyprods... ist man weg von den LS Docks, sagt er: Bitte zu den LS Docks fahren.
Ist man da, und macht den befehl nochmal, sagt er - Server: Unknown Command, das selbe auch bei /sellprods
if(strcmp(cmd, "/buyprods", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new tmpcar = GetPlayerVehicleID(playerid);
new compcost = 50;
if(IsPlayerInRangeOfPoint(playerid,60.0, 2787.8,-2436.3,13.7))
{
if(IsATruck(tmpcar))
{
if(PlayerHaul[tmpcar][pLoad] < PlayerHaul[tmpcar][pCapasity])
{
new amount;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "FEHLER: /buyprods [Menge]");
return 1;
}
amount = strval(tmp);
if(amount < 1 || amount > 500) { SendClientMessage(playerid, COLOR_GREY, " Die Menge muss zwischen 1 und 100 sein !"); return 1; }
new check= PlayerHaul[tmpcar][pLoad] + amount;
if(check > PlayerHaul[tmpcar][pCapasity])
{
format(string, sizeof(string), " Du hast das Limit mit %d Prods erreicht, Produkte: %d.",PlayerHaul[tmpcar][pCapasity],PlayerHaul[tmpcar][pLoad]);
SendClientMessage(playerid, COLOR_GREY, string);
return 1;
}
new cost = amount*compcost;
if(GetPlayerMoney(playerid) >= cost)
{
PlayerHaul[tmpcar][pLoad] += amount;
format(string, sizeof(string), "Produkte: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
format(string, sizeof(string), "Du hast %d Produkte für $%d gekauft.", amount,cost);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
GivePlayerMoney(playerid,-cost);
GiveMoney(playerid,-cost);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
return 1;
}
else
{
format(string, sizeof(string), "Du kannst nicht %d Produkte für $%d anfordern!", amount,cost);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
}
else
{
format(string, sizeof(string), "Produkte: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
return 1;
}
}
else
{
SendClientMessage(playerid, TEAM_GROVE_COLOR, "Dieses Fahrzeug kann keine Produkte ausliefern.");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Du bist nicht an den LS Docks!");
return 1;
}
}
return 1;
}
if(strcmp(cmd, "/load", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new tmpcar = GetPlayerVehicleID(playerid);
new carid = GetVehicleModel(carid);
if(!IsATruck(tmpcar))
{
GameTextForPlayer(playerid, "~r~Du musst in einem Lieferwagen sein", 5000, 1);
return 1;
}
format(string, sizeof(string), "Produkte: %d/%d.", PlayerHaul[tmpcar][pLoad],PlayerHaul[tmpcar][pCapasity]);
SendClientMessage(playerid, TEAM_GROVE_COLOR, string);
}
return 1;
}
//EDIT:
Okay, diesen Fehler gelöst, doch die cars zeigen immer nur 0/0 Prods an, obwohl eingestellt ist, das sie mehr können...
PlayerHaul[PTruck[0]][pCapasity] = 110;
PlayerHaul[PTruck[1]][pCapasity] = 110;
PlayerHaul[PTruck[2]][pCapasity] = 70;
PlayerHaul[PTruck[3]][pCapasity] = 70;