Hi, wenn ich auf meinem Script (Ultimate Reallife) den Checkpoint-Job Müllmann erfolgreich abschließe bzw. in den letzten Checkpoint fahre, wird das Fahrzeug wie gewünscht weggespawnt. Wenn ich dann in ein anderes Fahrzeug einsteige, z.B. eine NRG-500, und dann wieder absteige, wird mir angezeigt, dass der Job abgebrochen wurde, da ich das Fahrzeug verlassen habe. Das ist eine Meldung die eigentlich nur ausgegeben wird, wenn man wirklich grade im Job ist! Wie behebe ich das?
enum trashEnum
{
Float:t_x,
Float:t_y,
Float:t_z
}
new tCPs[][trashEnum] = {
{1154.4130,-1847.8960,14.0283},
{976.7390,-1779.3905,14.7186},
{793.5756,-1765.2461,13.9168},
{669.7101,-1735.3688,14.1098},
{290.3246,-1419.7131,14.4557},
{380.0334,-1374.0748,15.1466},
{610.4581,-1226.1935,18.6192},
{729.5475,-1095.7134,20.9438},
{856.0025,-1026.1771,28.2740},
{1055.7339,-968.8643,43.3493},
{1206.4855,-949.2313,43.2632},
{1297.1932,-936.1451,40.6859},
{1318.6024,-871.4995,40.1307},
{1274.2257,-919.6694,42.5933},
{1216.7284,-929.7339,43.3184},
{1095.1593,-943.8156,43.1841},
{982.5731,-906.6166,42.8295},
{839.0068,-1019.8580,27.4723},
{763.5628,-1017.5000,24.6109},
{534.7060,-1241.5038,17.1596},
{441.5403,-1313.6686,15.6062},
{339.4655,-1375.2480,14.8076},
{122.9300,-1714.2524,9.1551},
{203.4135,-1736.6482,4.9394},
{272.4514,-1740.7289,4.7357},
{418.4245,-1776.1877,5.8908},
{462.3385,-1734.2043,10.4989},
{553.7153,-1737.9308,13.2174},
{658.6598,-1757.9366,14.0593},
{722.6495,-1779.4551,14.2434},
{783.2592,-1789.6434,13.7294},
{949.0226,-1801.0267,14.7518},
{1026.0356,-1822.9664,14.4591},
{1212.4525,-1843.4250,13.9423}
};
ocmd:startjob(playerid,params[])
{
if(!IsPlayerInRangeOfPoint(playerid,5,1278.1476,-1832.7781,13.3862))return
SendClientMessage(playerid,COLOR_RED,"Du befindest dich nicht am Startpunkt.");
new Float:xc, Float:yc, Float:zc, Float:ac;
GetPlayerPos(playerid,xc,yc,zc);
GetPlayerFacingAngle(playerid,ac);
new vID = CreateVehicle(408, xc, yc, zc, ac, 1, 1, -1, 1);
SetPVarInt(playerid,"trash_car",vID);
PutPlayerInVehicle(playerid,vID,0);
SetPlayerCheckpoint(playerid,tCPs[0][t_x],tCPs[0][t_y],tCPs[0][t_z],5);
SetPVarInt(playerid,"trash_cp",0);
SetPVarInt(playerid,"trash_job",1);
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
if(GetPVarInt(playerid,"trash_job"))
{
SetPVarInt(playerid,"trash_job",0);
DestroyVehicle(GetPVarInt(playerid,"trash_car"));
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid,COLOR_RED,"Da du während der Fahrt das Fahrzeug verlassen hast wurde die Tour beendet.");
}
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
if(GetPVarInt(playerid,"trash_job"))
{
new cID = GetPVarInt(playerid,"trash_cp");
if(IsPlayerInRangeOfPoint(playerid,5,tCPs[cID][t_x],tCPs[cID][t_y],tCPs[cID][t_z]))
{
cID++;
if(cID >= sizeof(tCPs))
{
GivePlayerMoney(playerid,100000);
SendClientMessage(playerid,COLOR_YELLOW,"Du hast die Tour erfolgreich abgeschlossen und den Lohn erhalten.");
DestroyVehicle(GetPVarInt(playerid,"trash_car"));
}
else
{
SetPVarInt(playerid,"trash_cp",cID);
SetPlayerCheckpoint(playerid,tCPs[cID][t_x],tCPs[cID][t_y],tCPs[cID][t_z],5);
return 1;
}
}
}
DisablePlayerCheckpoint(playerid);
return 1;
}
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
SetPVarInt(playerid,"trash_job",0);
Füge das beim Beenden des Jobs hinzu. -
will dir ja nicht mit doofen Fragen kommen aber wo ist denn das ende?
-
SendClientMessage(playerid,COLOR_YELLOW,"Du hast die Tour erfolgreich abgeschlossen und den Lohn erhalten.");
Nach dieser Nachricht. Schreibe es einfach direkt nach der Nachricht hin.EDIT: (Post unten)
@sunrizez: Da dein Problem behoben ist, wäre es gut, wenn du den Thread auf erledigt setzt. Danke! -
hast dir den nobellpreis echt verdient mann^^
-
breadfish.de
Hat das Thema geschlossen.