Problem mit SetPlayerCheckpoint 1,2,3,2

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
  • Hey wen ich in ein Checkpoint Fahre Klappt alles noch Fahr ich in den 2ten rein Klappt auch noch alles aba wen ich in den Dritten fahren tue Zeigt er mir wider den 2ten an und wen ich in den vierten fahre zeigt er mir den 3An

    public abfahrpunktea()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(PlayerToPoint(5,i,-2083.3999023438, -129.19999694824, 35))
    {
    if(schulung[i] == 1)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2052.8999023438, -140.39999389648, 35, 2.0);
    schulung[i] = 2;
    }
    }
    else if(PlayerToPoint(5,i,-2052.8999023438, -140.39999389648, 35))
    {
    if(schulung[i] == 2)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2070.5, -145.7998046875, 35, 2.0);
    schulung[i] = 3;
    }
    }
    else if(PlayerToPoint(5,i,-2070.5, -145.7998046875, 35))
    {
    if(schulung[i] == 3)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2068.5, -118.90000152588, 35, 2.0);
    schulung[i] = 4;
    }
    }
    else if(PlayerToPoint(5,i,-2068.5, -118.90000152588, 35))
    {
    if(schulung[i] == 4)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2069.599609375, -131.19921875, 35, 2.0);
    schulung[i] = 5;
    }
    }
    else if(PlayerToPoint(5,i,-2069.599609375, -131.19921875, 35))
    {
    if(schulung[i] == 5)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2024.3000488281, -203.10000610352, 35, 2.0);
    schulung[i] = 6;
    }
    }
    else if(PlayerToPoint(5,i,-2024.3000488281, -203.10000610352, 35))
    {
    if(schulung[i] == 6)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2039.2998046875, -128.8994140625, 34.900001525879, 2.0);
    schulung[i] = 7;
    }
    }
    else if(PlayerToPoint(5,i,-2039.2998046875, -128.8994140625, 34.900001525879))
    {
    if(schulung[i] == 7)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2025.19921875, -180.2998046875, 35, 2.0);
    schulung[i] = 8;
    }
    }
    else if(PlayerToPoint(5,i,-2025.19921875, -180.2998046875, 35))
    {
    if(schulung[i] == 8)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2042.3000488281, -163.5, 35, 2.0);
    schulung[i] = 9;
    }
    }
    else if(PlayerToPoint(5,i,-2042.3000488281, -163.5, 35))
    {
    if(schulung[i] == 9)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2042.099609375, -193, 35, 2.0);
    schulung[i] = 10;
    }
    }
    else if(PlayerToPoint(5,i,-2042.099609375, -193, 35))
    {
    if(schulung[i] == 10)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2057.3000488281, -156.5, 35, 2.0);
    schulung[i] = 11;
    }
    }
    else if(PlayerToPoint(5,i,-2057.3000488281, -156.5, 35))
    {
    if(schulung[i] == 11)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2070.6000976563, -170.30000305176, 35, 2.0);
    schulung[i] = 12;
    }
    }
    else if(PlayerToPoint(5,i,-2070.6000976563, -170.30000305176, 35))
    {
    if(schulung[i] == 12)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2038.6999511719, -240.5, 35, 2.0);
    schulung[i] = 13;
    }
    }
    else if(PlayerToPoint(5,i,-2038.6999511719, -240.5, 35))
    {
    if(schulung[i] == 13)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2083.1999511719, -245.89999389648, 36.099998474121, 2.0);
    schulung[i] = 14;
    }
    }
    else if(PlayerToPoint(5,i,-2083.1999511719, -245.89999389648, 36.099998474121))
    {
    if(schulung[i] == 14)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2069.3000488281, -236.69999694824, 35, 2.0);
    schulung[i] = 15;
    }
    }
    else if(PlayerToPoint(5,i,-2069.3000488281, -236.69999694824, 35))
    {
    if(schulung[i] == 15)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2058.6999511719, -228.80000305176, 35, 2.0);
    schulung[i] = 16;
    }
    }
    else if(PlayerToPoint(5,i,-2058.6999511719, -228.80000305176, 35))
    {
    if(schulung[i] == 16)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2088.5, -204.10000610352, 35, 2.0);
    schulung[i] = 17;
    }
    }
    else if(PlayerToPoint(5,i,-2088.5, -204.10000610352, 35))
    {
    if(schulung[i] == 17)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2067.5, -213.69999694824, 38, 2.0);
    schulung[i] = 18;
    }
    }
    else if(PlayerToPoint(5,i,-2067.5, -213.69999694824, 38))
    {
    if(schulung[i] == 18)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i, -2083, -157.19999694824, 35, 2.0);
    schulung[i] = 19;
    }
    }
    else if(PlayerToPoint(5,i,-2083, -157.19999694824, 35))
    {
    if(schulung[i] == 19)
    {
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    SetPlayerCheckpoint(i,-2083, -157.19999694824, 35, 2.0);
    schulung[i] = 20;
    }
    }
    else if(PlayerToPoint(5,i,-2083, -157.19999694824, 35))
    {
    if(schulung[i] == 20)
    {
    DestroyVehicle(Fahrschulauto);
    DisablePlayerCheckpoint(i);
    SendClientMessage(i, ROT, "------------------Erfogreich Bestanden----------------------");
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben ihr Führerschein erfolgreich Bestanden.");
    SetPlayerCheckpoint(i, -2091.8999023438, -129, 34.400001525879, 2.0);
    sInfo[i][sSpieler_autoschein] = 1;
    schulung[i] = 0;
    }
    }
    }
    }

    kann mir da wer helfen ich weis nicht wo der Fehler liegt Die Koordinaten sind alle richtig
    lg kifkat
    //Edit Titel

    Einmal editiert, zuletzt von Kevin B. ()

  • Das ist ein ziemlicher Zeilenaufwand.
    Wir hauen zunächst erstmal alle Checkpoints in ein Array und lassen jedesmal einfach die Variable hochzählen.


    Sieht dann wie folgt aus:

    //Definition des Spielerzählers
    schulung[MAX_PLAYERS]; //Hast du zwar bereits drin, möchte ich aber anders verwenden. Musst du folglich NICHT mehr einbauen ;)



    //Definition für das Array:
    new Float:FahrschulCheckpoints[19][3] = {
    {-2083.3999023438, -129.19999694824, 35.0},
    {-2052.8999023438, -140.39999389648, 35.0},
    {-2070.5, -145.7998046875, 35.0},
    {-2068.5, -118.90000152588, 35.0},
    {-2069.599609375, -131.19921875, 35.0},
    {-2024.3000488281, -203.10000610352, 35.0},
    {-2039.2998046875, -128.8994140625, 34.900001525879},
    {-2025.19921875, -180.2998046875, 35.0},
    {-2042.3000488281, -163.5, 35.0},
    {-2042.099609375, -193, 35.0},
    {-2057.3000488281, -156.5, 35.0},
    {-2038.6999511719, -240.5, 35.0},
    {-2083.1999511719, -245.89999389648, 36.099998474121},
    {-2069.3000488281, -236.69999694824, 35.0},
    {-2058.6999511719, -228.80000305176, 35.0},
    {-2088.5, -204.10000610352, 35.0},
    {-2067.5, -213.69999694824, 38.0},
    {-2083, -157.19999694824, 35.0},
    {-2083, -157.19999694824, 35.0}
    //{-2091.8999023438, -129, 34.400001525879}
    };



    Die Fahrschul-Prüfung muss durch irgendetwas ausgelöst werden. Setze dabei bitte die Variable schulung[playerid]=1; , damit die Prüfung beginnen kann. Somit erspart sich eine überflüssige, sonst notwendige, Variable.
    Setze hierbei auch gleich den ersten Checkpoint zu Prüfungsbeginn: SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0)


    Nun kommen wir zur Abfrage unter dem Callback "OnPlayerEnterCheckpoint":

    public OnPlayerEnterCheckpoint(playerid)
    {
    if(schulung[playerid]>0)//Wenn sich der Spieler in der Prüfung befindet.
    {
    DisablePlayerCheckpoint(playerid);
    if(schulung[playerid]<sizeof(FahrschulCheckpoints))
    {
    schulung[playerid]++;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[schulung[playerid]-1][0],FahrschulCheckpoints[schulung[playerid]-1][1],FahrschulCheckpoints[schulung[playerid]-1][2],3.0);
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(i, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    }
    else//Wenn letzter Checkpoint
    {
    DestroyVehicle(Fahrschulauto);
    SendClientMessage(i, ROT, "------------------Erfogreich Bestanden----------------------");
    SendClientMessage(i, GELB, "[Fahrschuhle]Sie haben ihr Führerschein erfolgreich Bestanden.");
    //SetPlayerCheckpoint(playerid, -2091.8999023438, -129, 34.400001525879, 2.0);//Keine Ahnung wofür du das brauchst, aber ich lasse es mal drin.
    sInfo[playerid][sSpieler_autoschein] = 1;
    schulung[playerid] = 0;//Prüfung beendet.
    }
    }
    return 1;
    }


    So in etwa könnte die ganze Sache aussehen. Wäre nebenbei doch deutlich kürzer.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • danke für deine andwort
    Ich hab es nun so

    public praxisa(playerid)
    {
    schulung[playerid]++;
    SetPlayerPos(playerid,-2029.79,-120.518,35.1692);
    Fahrschulauto = CreateVehicle(405,-2082.92,-124.124,35.3203,175.277, 0, 1,-1);
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Fahr Prüfung Gestartet.");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Auf Zum ersten Checkpoin.");
    }

    dan
    OnPlayerEnterCheckpoint

    if(schulung[playerid]>0)//Wenn sich der Spieler in der Prüfung befindet.
    {
    DisablePlayerCheckpoint(playerid);
    if(schulung[playerid]<sizeof(FahrschulCheckpoints))
    {
    schulung[playerid]++;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[schulung[playerid]][0],FahrschulCheckpoints[schulung[playerid]][1],FahrschulCheckpoints[schulung[playerid]][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    }
    else //Wenn letzter Checkpoint
    {
    DestroyVehicle(Fahrschulauto);
    SendClientMessage(playerid, ROT, "------------------Erfogreich Bestanden----------------------");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Sie haben ihr Führerschein erfolgreich Bestanden.");
    //SetPlayerCheckpoint(playerid, -2091.8999023438, -129, 34.400001525879, 2.0);//Keine Ahnung wofür du das brauchst, aber ich lasse es mal drin.
    sInfo[playerid][sSpieler_autoschein] = 1;
    schulung[playerid] = 0;//Prüfung beendet.
    }
    }

    Wen ich ihn den Ersten rein fahre gibt er mir kein weiteren


  • public praxisa(playerid)
    {
    schulung[playerid]=1;//Direkt auf 1 setzen. Sonst "könnte" es Komplikationen geben!
    SetPlayerPos(playerid,-2029.79,-120.518,35.1692);
    Fahrschulauto = CreateVehicle(405,-2082.92,-124.124,35.3203,175.277, 0, 1,-1);
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);//Der erste CP wird gesetzt.
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Fahr Prüfung Gestartet.");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Auf Zum ersten Checkpoin.");
    }



    if(schulung[playerid]>0)//Wenn sich der Spieler in der Prüfung befindet.
    {
    DisablePlayerCheckpoint(playerid);
    if((schulung[playerid]-1)<sizeof(FahrschulCheckpoints))
    {
    schulung[playerid]++;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[schulung[playerid]-1][0],FahrschulCheckpoints[schulung[playerid]-1][1],FahrschulCheckpoints[schulung[playerid]-1][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Ab zum Nächsten.");
    }
    else //Wenn letzter Checkpoint
    {
    DestroyVehicle(Fahrschulauto);
    SendClientMessage(playerid, ROT, "------------------Erfogreich Bestanden----------------------");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Sie haben ihr Führerschein erfolgreich Bestanden.");
    //SetPlayerCheckpoint(playerid, -2091.8999023438, -129, 34.400001525879, 2.0);//Keine Ahnung wofür du das brauchst, aber ich lasse es mal drin.
    sInfo[playerid][sSpieler_autoschein] = 1;
    schulung[playerid] = 0;//Prüfung beendet.
    }
    }


    Du hast einen Kopierfehler gehabt.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Der Fehler kann ja nur hier in diesen beiden Zeilen liegen, da die Messages ja ausgegeben werden und diese in derselben Klammer/Schleife stehen.

    schulung[playerid]++;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[schulung[playerid]-1][0],FahrschulCheckpoints[schulung[playerid]-1][1],FahrschulCheckpoints[schulung[playerid]-1][2],3.0);


    Gedankenrechnung:


    -Start der Prüfung: schulung[playerid]=1;
    -jetzt unsere schleife: schulung[playerid]++; --> schulung[playerid] ist jetzt 2.
    Nun zum Checkpoint: SetPlayerCheckpoint(playerid,FahrschulCheckpoints[2-1 ; also 1.][0],etc...
    Das sollte doch eigentlich passen.
    Um aber sicherzugehen, setzen wir ein paar Klammern, damit er die Rechnung auch als Ganzes benutzt:



    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[(schulung[playerid]-1)][0],FahrschulCheckpoints[(schulung[playerid]-1)][1],FahrschulCheckpoints[(schulung[playerid]-1)][2],3.0);



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Sorry, aber ich schaue mir keine Scripts über TeamViewer an.
    Hint: Schreib dir doch einfach mal ein paar Testmessages rein, um das Ganze auf Herz und Nieren zu prüfen und den Fehler zu finden.


    Ich kaue ja nicht alles vor ;)
    (Ist ja dein Script)



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • ich sagte ja nicht das alles vohrgekaut werden soll -.-
    er kommt doch nur bei OnPlayerEnterCheckpoint Nicht lang, ich selber weis nicht was ich da machen soll den ich denke mal das mir da die Messages auch nicht weiter helfen können wen es da nicht mal abgefragt wirt

  • Ha moment!
    Nimm mal das DisablePlayerCheckpoint(playerid); raus ;)
    Evtl. klappt es dann.
    Mit der Funktion sollte er ja den vorherigen CP entfernen, aber das fällt ja eh weg, da ein neuer CP gesetzt wird.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Habs überarbeitet und getestet, funktioniert doch wunderbar ;)

    Oben im Script:

    new schulung[MAX_PLAYERS];


    new Float:FahrschulCheckpoints[19][3] = {
    {-2083.3999023438, -129.19999694824, 35.0},
    {-2052.8999023438, -140.39999389648, 35.0},
    {-2070.5, -145.7998046875, 35.0},
    {-2068.5, -118.90000152588, 35.0},
    {-2069.599609375, -131.19921875, 35.0},
    {-2024.3000488281, -203.10000610352, 35.0},
    {-2039.2998046875, -128.8994140625, 34.900001525879},
    {-2025.19921875, -180.2998046875, 35.0},
    {-2042.3000488281, -163.5, 35.0},
    {-2042.099609375, -193.0, 35.0},
    {-2057.3000488281, -156.5, 35.0},
    {-2038.6999511719, -240.5, 35.0},
    {-2083.1999511719, -245.89999389648, 36.099998474121},
    {-2069.3000488281, -236.69999694824, 35.0},
    {-2058.6999511719, -228.80000305176, 35.0},
    {-2088.5, -204.10000610352, 35.0},
    {-2067.5, -213.69999694824, 38.0},
    {-2083.0, -157.19999694824, 35.0},
    {-2083.0, -157.19999694824, 35.0}
    //{-2091.8999023438, -129, 34.400001525879}
    };


    Unter OnPlayerCheckpoint:

    public OnPlayerEnterCheckpoint(playerid)
    {
    if(schulung[playerid]>0)//Wenn sich der Spieler in der Prüfung befindet.
    {
    DisablePlayerCheckpoint(playerid);
    if(schulung[playerid]<sizeof(FahrschulCheckpoints))
    {
    schulung[playerid]++;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[schulung[playerid]-1][0],FahrschulCheckpoints[schulung[playerid]-1][1],FahrschulCheckpoints[schulung[playerid]-1][2],3.0);
    SendClientMessage(playerid, 0xFFAAFF, "[Fahrschuhle]Sie haben den Checkpoint Erreicht.");
    SendClientMessage(playerid, 0xFFAAFF, "[Fahrschuhle]Ab zum Nächsten.");
    }
    else//Wenn letzter Checkpoint
    {
    SendClientMessage(playerid, 0xFFAAFF, "------------------Erfogreich Bestanden----------------------");
    SendClientMessage(playerid, 0xFFAAFF, "[Fahrschuhle]Sie haben ihr Führerschein erfolgreich Bestanden.");
    //SetPlayerCheckpoint(playerid, -2091.8999023438, -129, 34.400001525879, 2.0);//Keine Ahnung wofür du das brauchst, aber ich lasse es mal drin.
    sInfo[playerid][sSpieler_autoschein] = 1;
    schulung[playerid] = 0;//Prüfung beendet.
    }
    }
    return 1;
    }


    Zum Auslösen der Prüfung (also der Command oder was auch immer):

    schulung[playerid]=1;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);


    Würde eventuell die CP noch etwas größer machen, aber das wars dann auch schon ;)



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • ich hab es genau so wie du und warum geht es bei mir nicht?
    Um das zu starten habe ich es so

    public praxisa(playerid)
    {
    SetPlayerVirtualWorld(playerid,0);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,-2029.79,-120.518,35.1692);
    Fahrschulauto = CreateVehicle(405,-2082.92,-124.124,35.3203,175.277, 0, 1,-1);
    schulung[playerid]=1;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Fahr Prüfung Gestartet.");
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Auf Zum ersten Checkpoin.");
    }

  • Schmeiß mal den ganzen alten Kram raus und hau mal das neue direkt hier aus den Fenstern rein.
    Hab das bei mir jetzt direkt ausm Testscript entnommen.


    Zu deiner Funktion. Bau einfach mal einen TestCommand, mit welchem du folgendes auslöst:

    schulung[playerid]=1;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Auf Zum ersten Checkpoint.");



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • ich hab mir mal einfache in Befehl geschrieben da klappt es ebenfalls nicht den ersten zeigt er mir aba danach kein weiteren

    ocmd:ftest(playerid,params[])
    {
    schulung[playerid]=1;
    SetPlayerCheckpoint(playerid,FahrschulCheckpoints[0][0],FahrschulCheckpoints[0][1],FahrschulCheckpoints[0][2],3.0);
    SendClientMessage(playerid, GELB, "[Fahrschuhle]Auf Zum ersten Checkpoint.");
    return 1;
    }

  • Dann musst du noch irgendetwas anderes in deinem Script haben, was auf diese Funktion Einfluss nimmt, bzw. diese blockiert oder Ähnliches.
    Habs selbst getestet und es funktioniert wunderbar.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • ich hatte

    for(new i = 0;i <MAX_PLAYERS;i++)
    DisablePlayerCheckpoint(i);

    ganz unten in den Public und ja ist ja klar das es den nicht Funktioniert ^^
    ich danke dir das du mir dabei geholfen hast doch ihren wie ist es imma noch durch einander es scheint wohl an den Koordinaten zu liegen, wir machen das noch mal neu und hofen den das es geht.