Guten Abend,
habe hier aus diesem Muell Script von Goldkiller
eine Automatische Fahrschule gemacht, doch wenn man im Auto der Fahrschule ist und man /fahrpruefung eingibt, kommt der erste Chekpoint und dann wenn man in den ersten Checkpoint reinfährt und er weg geht, kommt nicht der nächste ![]()
ich habe es immer wieder angeguckt, doch ich weiß nicht weiter.
könnt ihr mir bitte bitte bitte weiterhelfen?
Hier der Code:
Pastebin
oder:
#include <a_samp>
#define COLOR_LIGHTGREEN 0x86FF59FF
#define COLOR_RED 0xFF0000FF
#define COLOR_GREEN 0x00CA00FF
#define COLOR_RED 0xFF0000FF
#define COLOR_GREEN 0x00CA00FF
enum e_PlayerMuellInfo {
bool:pmi_bAktiv,
pmi_Checkpoint
}
new Fahrschule[MAX_PLAYERS][e_PlayerMuellInfo];
bool:pmi_bAktiv,
pmi_Checkpoint
}
new Fahrschule[MAX_PLAYERS][e_PlayerMuellInfo];
enum e_Pruefung {
Float:M_fX,
Float:M_fY,
Float:M_fZ,
Float:M_fRad
}
Float:M_fX,
Float:M_fY,
Float:M_fZ,
Float:M_fRad
}
new
Fahrschule_Stationen[][e_Pruefung] = {
{-2047.0698, -78.9770, 34.8860, 6.0},
{-2106.0088, -68.4744, 34.8882, 6.0},
{-2251.8965, -45.1003, 34.8883, 6.0},
{-2276.3950, 52.1817, 34.8805, 6.0},
{-2400.5483, -67.7900, 34.8805, 6.0},
{-2599.5723, -68.1146, 3.9970, 6.0},
{-2807.4138, -48.1616, 6.7481, 6.0},
{-2806.6597, 143.6969, 6.7477, 6.0},
{-2779.0969, 156.3102, 6.7472, 6.0},
{-2544.2495, 155.2064, 3.8983, 6.0},
{-2239.2341, 318.2473, 34.8884, 6.0},
{-2035.4738, 317.9279, 34.7321, 6.0},
{-1979.4679, 340.8038, 34.3082, 6.0},
{-1849.6448, 405.2497, 16.7322, 6.0},
{-1765.3301, 296.4426, 7.3805, 6.0},
{-1806.9032, 60.3476, 14.6774, 6.0},
{-1802.3086, -182.4884, 11.9989, 6.0},
{-1852.6919, -233.7217, 17.9430, 6.0},
{-2002.6488, -198.1924, 35.4275, 6.0},
{-2006.8594, -68.2464, 34.8869, 6.0},
{-2042.4216, -67.2241, 34.8882, 6.0},
{-2054.1309, -97.1779, 34.8862, 6.0},
{-2088.8389, -97.3427, 34.8804, 6.0}
};
Fahrschule_Stationen[][e_Pruefung] = {
{-2047.0698, -78.9770, 34.8860, 6.0},
{-2106.0088, -68.4744, 34.8882, 6.0},
{-2251.8965, -45.1003, 34.8883, 6.0},
{-2276.3950, 52.1817, 34.8805, 6.0},
{-2400.5483, -67.7900, 34.8805, 6.0},
{-2599.5723, -68.1146, 3.9970, 6.0},
{-2807.4138, -48.1616, 6.7481, 6.0},
{-2806.6597, 143.6969, 6.7477, 6.0},
{-2779.0969, 156.3102, 6.7472, 6.0},
{-2544.2495, 155.2064, 3.8983, 6.0},
{-2239.2341, 318.2473, 34.8884, 6.0},
{-2035.4738, 317.9279, 34.7321, 6.0},
{-1979.4679, 340.8038, 34.3082, 6.0},
{-1849.6448, 405.2497, 16.7322, 6.0},
{-1765.3301, 296.4426, 7.3805, 6.0},
{-1806.9032, 60.3476, 14.6774, 6.0},
{-1802.3086, -182.4884, 11.9989, 6.0},
{-1852.6919, -233.7217, 17.9430, 6.0},
{-2002.6488, -198.1924, 35.4275, 6.0},
{-2006.8594, -68.2464, 34.8869, 6.0},
{-2042.4216, -67.2241, 34.8882, 6.0},
{-2054.1309, -97.1779, 34.8862, 6.0},
{-2088.8389, -97.3427, 34.8804, 6.0}
};
public OnFilterScriptInit()
{
{
return 1;
}
}
public OnPlayerCommandText(playerid, cmdtext[]) {
if (strcmp("/fahrpruefung", cmdtext, true, 8) == 0) {
if(!Fahrschule[playerid][pmi_bAktiv]) {
new
vehicleid = GetPlayerVehicleID(playerid),
model = GetVehicleModel(vehicleid);
if(model == 496) {
Fahrschule[playerid][pmi_Checkpoint]=0;
Fahrschule[playerid][pmi_bAktiv]=false;
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Fahrprüfung gestartet, fahre nun zu den einzelnen Checkpoints!");
GivePlayerMoney(playerid, -20000);
SetPlayerCheckpoint(playerid,Fahrschule_Stationen[0][M_fX],Fahrschule_Stationen[0][M_fY],Fahrschule_Stationen[0][M_fZ],Fahrschule_Stationen[0][M_fRad]);
}
else {
SendClientMessage(playerid, COLOR_RED, "Du bist nicht bei der Fahrschule!");
}
}
else {
SendClientMessage(playerid, COLOR_RED, "Es macht schon jemand ein Führersein. Komm später wieder!");
}
return 1;
}
return 0;
}
public OnPlayerEnterCheckpoint(playerid) {
if(Fahrschule[playerid][pmi_bAktiv]) {
Fahrschule[playerid][pmi_Checkpoint]++;
DisablePlayerCheckpoint(playerid);
new
playercp = Fahrschule[playerid][pmi_Checkpoint];
if(playercp == sizeof(Fahrschule_Stationen)) {
Fahrschule[playerid][pmi_bAktiv]=false;
// Extra code
SendClientMessage(playerid, COLOR_GREEN, "Super Arbeit,du hast den Führerschein bestanden!");
GameTextForPlayer(playerid,"Führerschein bestanden!",5*1000,5);
SetPVarInt(playerid,"Autofahrschein",1);
new vid = GetPlayerVehicleID(playerid);
SetVehicleToRespawn(vid);
}
else {
new
String[128];
PlayerPlaySound(playerid,1056,0.0,0.0,0.0);
format(String,sizeof(String),"Weiter so,du hast es fasst geschafft ! (%d / %d)",playercp,sizeof(Fahrschule_Stationen));
SendClientMessage(playerid,COLOR_LIGHTGREEN,String);
SetPlayerCheckpoint(playerid,Fahrschule_Stationen[playercp][M_fX],Fahrschule_Stationen[playercp][M_fY],Fahrschule_Stationen[playercp][M_fZ],Fahrschule_Stationen[playercp][M_fRad]);
}
return 1;
}
return 1;
}
if (strcmp("/fahrpruefung", cmdtext, true, 8) == 0) {
if(!Fahrschule[playerid][pmi_bAktiv]) {
new
vehicleid = GetPlayerVehicleID(playerid),
model = GetVehicleModel(vehicleid);
if(model == 496) {
Fahrschule[playerid][pmi_Checkpoint]=0;
Fahrschule[playerid][pmi_bAktiv]=false;
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Fahrprüfung gestartet, fahre nun zu den einzelnen Checkpoints!");
GivePlayerMoney(playerid, -20000);
SetPlayerCheckpoint(playerid,Fahrschule_Stationen[0][M_fX],Fahrschule_Stationen[0][M_fY],Fahrschule_Stationen[0][M_fZ],Fahrschule_Stationen[0][M_fRad]);
}
else {
SendClientMessage(playerid, COLOR_RED, "Du bist nicht bei der Fahrschule!");
}
}
else {
SendClientMessage(playerid, COLOR_RED, "Es macht schon jemand ein Führersein. Komm später wieder!");
}
return 1;
}
return 0;
}
public OnPlayerEnterCheckpoint(playerid) {
if(Fahrschule[playerid][pmi_bAktiv]) {
Fahrschule[playerid][pmi_Checkpoint]++;
DisablePlayerCheckpoint(playerid);
new
playercp = Fahrschule[playerid][pmi_Checkpoint];
if(playercp == sizeof(Fahrschule_Stationen)) {
Fahrschule[playerid][pmi_bAktiv]=false;
// Extra code
SendClientMessage(playerid, COLOR_GREEN, "Super Arbeit,du hast den Führerschein bestanden!");
GameTextForPlayer(playerid,"Führerschein bestanden!",5*1000,5);
SetPVarInt(playerid,"Autofahrschein",1);
new vid = GetPlayerVehicleID(playerid);
SetVehicleToRespawn(vid);
}
else {
new
String[128];
PlayerPlaySound(playerid,1056,0.0,0.0,0.0);
format(String,sizeof(String),"Weiter so,du hast es fasst geschafft ! (%d / %d)",playercp,sizeof(Fahrschule_Stationen));
SendClientMessage(playerid,COLOR_LIGHTGREEN,String);
SetPlayerCheckpoint(playerid,Fahrschule_Stationen[playercp][M_fX],Fahrschule_Stationen[playercp][M_fY],Fahrschule_Stationen[playercp][M_fZ],Fahrschule_Stationen[playercp][M_fRad]);
}
return 1;
}
return 1;
}
Bitte helft mir.
Danke
Scripter4.0