Checkpoint

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
  • Hallo,


    wie kann ich machen, wenn ich jetzt schreibe /tstarten


    danach wird auf der Karte dort ein Checkpoint gesetzt oder dort, also zufall, danach fährt man dort rein und es wird ein Hänger drauf gesetzt,


    wie funktioniert sowas?


    Das ist mein Befehl:


    if(!strcmp("/tstart",cmdtext,true))
    {
    if(PlayerInfo[playerid][pJob] != 20)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    return 1;
    }
    if(IsPlayerInRangeOfPoint(playerid,5.0,-77.2071,-1136.4635,1.0781))
    {
    if(IsInTruckerMission[playerid] == 0)
    {
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre jetzt nach hinten zur Aufladen Position!");
    SendClientMessage(playerid,COLOR_WHITE,"und gebe /aufladen ein fahre dann zum Ablade point.");
    SetPlayerCheckpoint(playerid,2368.2185,2750.8879,10.8203,8.0);
    // SetPlayerCheckpoint(playerid,2413.8665,-2470.4617,13.6250,5.0);
    IsInTruckerMission[playerid] = 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du hast den Job bereits gestartet!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GRAD1,"Du bist nicht am Trucker-Depot!");
    return 1;
    }
    return 1;
    }


    Hoffe es kann wer helfen


    Mfg


    Moritz

  • Ich empfehle dir für deine "Mission" mein Checkpoint-Include.


    [ INCLUDE ] [V1.1] Checkpoint-Include by Ap0llinaris



    #define CHECKPOINT_TRUCKER 1
    #define TYPE_TRUCKER 1


    if(!strcmp("/tstart", cmdtext, true)){
    if(!(PlayerInfo[playerid][pJob]))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Trucker!");
    if(!IsPlayerInRangeOfPoint(playerid,5.0,-77.2071,-1136.4635,1.0781))return SendClientMessage(playerid, COLOR_GRAD1, "Du bist nicht am Trucker-Depot!");
    if(GetPlayerCheckpointID(playerid) == CHECKPOINT_TRUCKER)return SendClientMessage(playerid, COLOR_GRAD1, "Du hast den Job bereits gestartet!");
    // Du solltest ebenfalls noch eine Fahrzeug-Abfrage erstellen.
    /*
    for(new i=0;i<sizeof(TruckVeh);i++){
    if(GetPlayerVehicleID(playerid) == TruckVeh[i]){
    SendClientMessage(playerid,COLOR_WHITE,"Du hast den Job Trucker gestartet!");
    SendClientMessage(playerid,COLOR_WHITE,"Steige in einem Trucker ein, und häng den");
    SendClientMessage(playerid,COLOR_WHITE,"Trailer an deinem Truck an.");
    SendClientMessage(playerid,COLOR_WHITE,"Fahre jetzt nach hinten zur Aufladen Position!");
    SendClientMessage(playerid,COLOR_WHITE,"und gebe /aufladen ein fahre dann zum Ablade point.");
    SetPlayerCheckpointEx(playerid,2368.2185,2750.8879,10.8203,8.0, CHECKPOINT_TRUCKER, TYPE_TRUCKER);
    return 1;
    }
    SendClientMessage(playerid, COLOR_GRAD1, "Du befindest dich in keinem Truck.");
    }
    */
    return 1;
    }


    // Bei deinem "/aufladen"-Befehl solltest du dann die Position abfragen, oder einfach folgendermaßen:
    // if(IsPlayerInCheckpoint(playerid) && GetPlayerCheckpointID(playerid) == CHECKPOINT_TRUCKER)
    // Ich hoffe, ich konnte dir helfen. :) PS: Die Include einfach standard-mäßig einbinden. (#include <includename>)

  • Oke aber wie mache ich das Dort ein checkpoint erstellt wird oder dort?


    Der Server soll es sich ja dann aussuchen


    //e


    if(GetPlayerCheckpointType(playerid) == CHECKPOINT_TYPE_FAHRSCHULE){
    new plVehicle = GetPlayerVehicleID(playerid);
    if(plVehicle == plSchoolCar[playerid]){
    PlayerPlaySound(playerid, 1138, 0.0, 0.0, 0.0);
    switch(GetPlayerCheckpointID(playerid)){
    case CHECKPOINT_FAHRSCHULE_1: SetPlayerCheckpointEx(playerid, 785.5473,-1403.2611,13.2422, 5.0, CHECKPOINT_FAHRSCHULE_2, CHECKPOINT_TYPE_FAHRSCHULE);
    // usw.
    }
    }
    }


    wie soll man das bei /tstart einbauen? und wo den zweiten Point eingeben?