brauche hilfe bei checkpoints erstelln

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
  • hi brotfischer,
    also mein Problem is ich möchte n climbing erstellen
    die map is fertig und ich bin am Ceckpoints machen
    man sollte halt zu Fuß sein
    ich habs mal so versucht (ich hab mir schon gedacht dass es nich geht -.-)



    if(strcmp(cmdtext,"/Climb",true)==0)
    {
    case 1:
    {
    SetPlayerCheckpoint(playerid, 1826.8738,-1634.5306,13.5588, 5.0);
    }
    case 2:
    {
    SetPlayerCheckpoint(playerid, 1856.7260,-1211.7167,20.3898, 5.0);
    }
    case 3:
    {
    SetPlayerCheckpoint(playerid, 1208.0479,-929.9481,42.9049, 5.0);
    }
    case 4:
    {
    SetPlayerCheckpoint(playerid, 1119.0096,-1137.8805,23.7597, 5.0);
    }
    case 5:
    {
    SetPlayerCheckpoint(playerid, 1443.0234,-1028.7131,23.8281, 5.0);
    }
    case 6:
    {
    SetPlayerCheckpoint(playerid, 526.6218,-1480.9631,14.5567, 5.0);
    }
    case 7:
    {
    SetPlayerCheckpoint(playerid, 443.9078,-1724.8008,10.0896, 5.0);
    }
    case 8:
    {
    SetPlayerCheckpoint(playerid, 836.2728,-1788.8121,13.9260, 5.0);
    }
    case 9:
    {
    SetPlayerCheckpoint(playerid, 1508.7136,-1735.5184,13.4921, 5.0);
    }
    case 10:
    {
    SetPlayerCheckpoint(playerid, 1203.5101,-1833.5771,13.4946, 5.0);
    }
    case 11:
    {
    DisablePlayerCheckpoint(playerid);
    }
    return 1;
    }



    kann mir da einer helfen?
    EDIT:
    habs so gemacht geht aber auch nich -.-


    new climbing[MAX_PLAYERS];


    if(strcmp(cmdtext,"/Climb",true)==0)
    {


    switch(climbing[playerid])
    {
    case 1:
    {
    SetPlayerCheckpoint(playerid, 1826.8738,-1634.5306,13.5588, 5.0);
    }
    case 2:
    {
    SetPlayerCheckpoint(playerid, 1856.7260,-1211.7167,20.3898, 5.0);
    }
    case 3:
    {
    SetPlayerCheckpoint(playerid, 1208.0479,-929.9481,42.9049, 5.0);
    }
    case 4:
    {
    SetPlayerCheckpoint(playerid, 1119.0096,-1137.8805,23.7597, 5.0);
    }
    case 5:
    {
    SetPlayerCheckpoint(playerid, 1443.0234,-1028.7131,23.8281, 5.0);
    }
    case 6:
    {
    SetPlayerCheckpoint(playerid, 526.6218,-1480.9631,14.5567, 5.0);
    }
    case 7:
    {
    SetPlayerCheckpoint(playerid, 443.9078,-1724.8008,10.0896, 5.0);
    }
    case 8:
    {
    SetPlayerCheckpoint(playerid, 836.2728,-1788.8121,13.9260, 5.0);
    }
    case 9:
    {
    SetPlayerCheckpoint(playerid, 1508.7136,-1735.5184,13.4921, 5.0);
    }
    case 10:
    {
    SetPlayerCheckpoint(playerid, 1203.5101,-1833.5771,13.4946, 5.0);
    }
    case 11:
    {
    DisablePlayerCheckpoint(playerid);
    }
    }
    return 1;
    }

    2 Mal editiert, zuletzt von [GTR]-_-lol-_- ()

  • Ich würde mal sagen das ganze ist der Fehler xD
    Also ...

    #define Checkpoint1 Coords
    #define Checkpoint2 Coords
    //etc


    if (strcmp("/BEFEHL", cmdtext, true, 10) == 0)
    {
    SetPlayerCheckpoint(playerid, Checkpoint1, 3.0); // Das ist der 1. Checkpoint der gestartet werden soll!
    return 1;
    }
    //Danach musst du ja dem Checkpoint die Funktion zuweisen was passieren soll wenn er rein geht....
    //Das ganze machst du im Public OnPlayerEnterCheckpoint
    //Beispiel
    if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint1))//Hier wird überprüft ob er in der Nähe des Checkpoints der Coords ist....
    {
    SetPlayerCheckpoint(playerid, Checkpoint2, 7.0); // hier wird der next checkpoint gestartet
    GivePlayerMoney(playerid,123456789); // hier bekommt er geld
    SendClientMessage(playerid,0xCC0000FF,"BlaBla");//Hier schiggt er ne Nachricht noch
    }



    Joar so musste es einfach mit alle checkpoints machen.
    Ist zwar nicht die beste Methode und auch nicht die Ressouren sparende Methode aber geht ;) und is einfach...


    MfG
    Ed_Hardy

  • Also ich glaub so,


    Ganz oben:
    #define climbing


    Dann wie gesagt bei OnPlayerEnterCheckpoint musst du dies rein machen:


    if(strcmp(cmdtext,"/Climb",true)==0) //@Ed_Hardy was meinst du mit der 10?
    {
    case 1:
    {
    SetPlayerCheckpoint(playerid, 1826.8738,-1634.5306,13.5588, 5.0);
    }
    case 2:
    {
    SetPlayerCheckpoint(playerid, 1856.7260,-1211.7167,20.3898, 5.0);
    }
    case 3:
    {
    SetPlayerCheckpoint(playerid, 1208.0479,-929.9481,42.9049, 5.0);
    }
    case 4:
    {
    SetPlayerCheckpoint(playerid, 1119.0096,-1137.8805,23.7597, 5.0);
    }
    case 5:
    {
    SetPlayerCheckpoint(playerid, 1443.0234,-1028.7131,23.8281, 5.0);
    }
    case 6:
    {
    SetPlayerCheckpoint(playerid, 526.6218,-1480.9631,14.5567, 5.0);
    }
    case 7:
    {
    SetPlayerCheckpoint(playerid, 443.9078,-1724.8008,10.0896, 5.0);
    }
    case 8:
    {
    SetPlayerCheckpoint(playerid, 836.2728,-1788.8121,13.9260, 5.0);
    }
    case 9:
    {
    SetPlayerCheckpoint(playerid, 1508.7136,-1735.5184,13.4921, 5.0);
    }
    case 10:
    {
    SetPlayerCheckpoint(playerid, 1203.5101,-1833.5771,13.4946, 5.0);
    }
    case 11:
    {
    DisablePlayerCheckpoint(playerid);
    }
    return 1;
    }

    Naja GLAUBEN IST GUT ABER ES IST BESSER ZU WISSEN!


    PS: [ SCRIPTING ] Checkpoints abfahren