Checkpoints definieren?

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 an alle da draußen,


    ich hab eine frage und zwar kan ich checkpoints definieren? wen ja kann mir einer sagen wie oder ein kleines bsp zeigen?


    ich danke im vorraus


    MFG GTA0071

  • sry das ich nun erst antworte aber wie schreib ich das dann? also beim definieren? ich kann ja schlecht so das machen:


    #define CP1 = SetPlayerCheackpoint(......)


    oder?

  • McToasty und super619: Überlegt doch bitte bervor ihr was postest. Mit den Beiträgen kann er wenig anfangen. Außerdem ist super619's Beitrag Schwachsinn


    Also, man kann die CPs nicht einfach wie Objekte nach Schema
    CheckPointVar = SetPlayerCheckpoint(...);
    erstellen, das die Funktion SetPlayerCheckpoint nicht die CP-ID wiedergibt, sondern afaik 1 wenn er erfolgreich erstellt wurde. Deswegen muss man eine PVar anlegen um die Checkpoint-ID festzulegen und abzufragen:


    // Als erstes eine Nummer für einen CP ausdenken:
    #define CP_Blubb 514


    // Dann wenn du für jmd einen Checkpoint setzen willst:
    SetPlayerCheckpoint(playerid,X,Y,Z,R);
    SetPVarInt(playerid,"cpid",CP_Blubb);


    // Wenn du nun abfragen willst, ob jemand im Checkpoint Blubb steht:
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid") == CP_Blubb)


    Ich scripte NICHT mehr, ich möchte mit NIEMANDEM einen Server aufmachen habe auch NICHTS mehr mit LoH zu tun, also lasst es mit den PNs!

  • aha ok ich hab das so ungefähr kapiert da währen jetzt noch ein paar fragen:


    Zitat

    // Dann wenn du für jmd einen Checkpoint setzen willst:
    SetPlayerCheckpoint(playerid,X,Y,Z,R);
    SetPVarInt(playerid,"cpid",CP_Blubb);


    bei dem SetPlayerCheckpoint nuss uch dann halt stat xyz meine coords rein ´hauen richtig?


    und die abfrage kommt die unter public OnPlayerEnterCheckpoint(playerid)?

  • ich hab nun alles so rein gefügt wir ihr sagtet aber nun hat sich mein script verkurbelt.... bei der Mode anzeige steht nun Unknown, ich kann keiner meiner cmds mehr eintippen und wen ich spawn fall ich erst mal 5 min.


    so hab ich das nun alles gemacht:


    //Checkpoints
    #define pizzacp1 0
    #define pizzacp2 1
    #define pizzacp3 2
    #define pizzacp4 3
    #define pizzacp5 4
    #define pizzacp6 5
    #define pizzacp7 6
    #define pizzacp8 7
    #define pizzacp9 8
    #define pizzacp10 9
    #define pizzacp11 10
    #define pizzacp12 11
    #define pizzacp13 12


    if(IsAPizzaCar(newcar))
    {
    if(GetPlayerSkin(playerid) == 155)
    {
    SetPlayerCheckpoint(playerid,-2078.5029,903.3665,63.7316, 3.0);
    SetPVarInt(playerid,"cpid",pizzacp1);
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, 0xAA3333AA,"Das sind Job Fahrzeuge. Gehe zum Pizza Stack oder zum Hotel um einen Job anzunehmen!");
    }
    }


    public OnPlayerEnterCheckpoint(playerid)
    {
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid") == pizzacp1)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2156.0720,866.3926,74.9619, 3.0);
    SetPVarInt(playerid,"cpid1",pizzacp2);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid1") == pizzacp2)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2223.4404,817.6969,49.0475, 3.0);
    SetPVarInt(playerid,"cpid2",pizzacp3);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid2") == pizzacp3)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2398.8418,828.3600,36.3096, 3.0);
    SetPVarInt(playerid,"cpid3",pizzacp4);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid3") == pizzacp4)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2377.1379,942.3401,45.0452, 3.0);
    SetPVarInt(playerid,"cpid4",pizzacp5);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid4") == pizzacp5)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2363.4045,1114.2823,55.3232, 3.0);
    SetPVarInt(playerid,"cpid5",pizzacp6);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid5") == pizzacp6)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2492.5144,1139.7162,55.3232, 3.0);
    SetPVarInt(playerid,"cpid6",pizzacp7);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid6") == pizzacp7)
    {
    GivePlayerMoney(playerid, 50);
    SendClientMessage(playerid, 0xFFFF00AA,"Du hast die hälfte deiner Pizzas ausgetragen!");
    SetPlayerCheckpoint(playerid,-2576.2710,1148.2888,55.3191, 3.0);
    SetPVarInt(playerid,"cpid7",pizzacp8);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid7") == pizzacp8)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2636.9893,932.9592,71.5406, 3.0);
    SetPVarInt(playerid,"cpid8",pizzacp9);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid8") == pizzacp9)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2741.8311,865.1337,64.3259, 3.0);
    SetPVarInt(playerid,"cpid9",pizzacp10);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid9") == pizzacp10)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2732.2722,719.4633,40.8670, 3.0);
    SetPVarInt(playerid,"cpid10",pizzacp11);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid10") == pizzacp11)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-2374.4004,693.6350,34.7563, 3.0);
    SetPVarInt(playerid,"cpid11",pizzacp12);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid11") == pizzacp12)
    {
    GivePlayerMoney(playerid, 50);
    SetPlayerCheckpoint(playerid,-1729.0125,991.4770,17.1858, 3.0);
    SetPVarInt(playerid,"cpid12",pizzacp13);
    }
    if(IsPlayerInCheckpoint(playerid) && GetPVarInt(playerid,"cpid12") == pizzacp13)
    {
    SendClientMessage(playerid, 0xFFFF00AA,"Du hast alle Pizzen ausgetragen. Super!");
    SendClientMessage(playerid, 0xFFFF00AA,"Bitte parke den Roller wieder auf den Parkplatz!");
    GivePlayerMoney(playerid, 100);
    }
    return 1;
    }


    wie schon gesagt die probleme stehen oben.
    hoffe es kann jemand helfen


    MFG GTA


    Edit// das forum lässt es falsh einrücken. also bei mir im pawno war alles richtig eingerückt

  • GetPVarInt(playerid,"cpid1")
    GetPVarInt(playerid,"cpid2")
    Da hast du falsch mitgedacht, es heißt immer "cpid".


    Du brauchst noch eine Art Kein-Checkpoint-angezeigt-ID, die sollte am besten 0 sein:
    #define NO_CP 0
    #define pizzacp1 1
    #define pizzacp2 2
    #define pizzacp3 3
    #define pizzacp4 4
    #define pizzacp5 5
    #define pizzacp6 6
    #define pizzacp7 7
    #define pizzacp8 8
    #define pizzacp9 9
    #define pizzacp10 10
    #define pizzacp11 11
    #define pizzacp12 12
    #define pizzacp13 13


    Wenn du nun den Checkpoint für jemanden verschwinden lassen willst:
    DisablePlayerCheckpoint(playerid);
    SetPVarInt(playerid,"cpid",NO_CP);


    Übrigens musst diese Abfrage nicht unbedingt in OnPlayerEnterCheckpoint, man kann überall abfragen, ob jmd im Checkpoint X ist. Wenn aber etwas passieren soll, wenn man den CP betritt, kommt das in OnPlayerEnterCheckpoint.


    Ich scripte NICHT mehr, ich möchte mit NIEMANDEM einen Server aufmachen habe auch NICHTS mehr mit LoH zu tun, also lasst es mit den PNs!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen