Guten Abend liebe Brotfischler,
Eigentlich könnte ich das Teil auch gleich mit dem Vermerk "defekt" in den Showroom stellen aber naja :D. Mein Problem ist das der letzte Checkpoint nicht gesetzt wird und somit die Arbeit nicht beendet werden kann. Habe sogar noch einen command eingebaut um während der Fahrt zu checken ob auch alle checkpoints gezählt werden - werden ordnungsgemäss gezählt (zählt bis 9 ) aber eben der letzte Checkpoint (10) wird nicht gesetzt und somit kann die "Mission " nicht abgeschlossen werden. Wäre sehr dankbar wenn jemand den Fehler finden würde da ich jetzt schon seit 4 Stunden danach suche
#define FARMER_RACE_POINTS 10
new Float:farmercheckpoints[FARMER_RACE_POINTS][3] =
{
{-185.8091,-70.8083,3.1172}, // 1
{-164.8686,-17.4206,3.1172}, // 2
{-139.8285,46.8926,3.1172}, // 3
{-160.3774,55.7224,3.1172}, // 4
{-184.8810,65.9218,3.1172}, // 5
{-220.7008,80.8315,3.1172}, // 6
{-230.4765,58.4977,3.1172}, // 7
{-245.2507,23.6662,3.1172}, // 8
{-268.4869,-31.1149,3.1172}, // 9
{-119.0461,147.0831,3.3763} // 10 letzter Punkt
};
enum Info
{
farmt,
gefarmt,
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
if(GetVehicleModel(vehicleid) == 532)
{
if(pInfo[playerid][beruf] == JOB_FARMER)
{
SendClientMessage(playerid,COLOR_HELLGRUEN, "Fahre nun die Checkpoints ab um Hanf zu ernten");
pInfo[playerid][farmt] = 1;
SetPlayerRaceCheckpoint(playerid,0,farmercheckpoints[0][0],farmercheckpoints[0][1],farmercheckpoints[0][2],farmercheckpoints[1][0],farmercheckpoints[1][1],farmercheckpoints[1][2],3.0);
}
else
{
TogglePlayerControllable(playerid,1);
SendClientMessage(playerid,COLOR_ROT, "Du bist kein Farmer !");
}
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
if (IsPlayerInAnyVehicle(playerid))
{
if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 532)
{
if(pInfo[playerid][farmt] == 1)
{
new lastfarmpoint = FARMER_RACE_POINTS;
pInfo[playerid][gefarmt]++;
if(pInfo[playerid][gefarmt] < lastfarmpoint)
{
DisablePlayerRaceCheckpoint(playerid);
SetPlayerRaceCheckpoint(playerid,0,farmercheckpoints[pInfo[playerid][gefarmt]][0],farmercheckpoints[pInfo[playerid][gefarmt]][1],farmercheckpoints[pInfo[playerid][gefarmt]][2],farmercheckpoints[pInfo[playerid][gefarmt]+1][0],farmercheckpoints[pInfo[playerid][gefarmt]+1][1],farmercheckpoints[pInfo[playerid][gefarmt]+1][2],3.0);
}
if(pInfo[playerid][gefarmt] == lastfarmpoint)
{ //
pInfo[playerid][farmt] = 0;
pInfo[playerid][gefarmt] = 0;
DisablePlayerRaceCheckpoint(playerid);
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,COLOR_HELLGRUEN, "Du hast erstmal genug gefarmt, komme in 30 Minuten wieder.");
}}}}
return 1;
}
Mit freundlichen Grüßen
Traxter