[Mini-Script] Tankstellen

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
  • [Mini-Script] Tankstellen


    Sehr geehrte Damen und Herren,


    Hier eine kleine Nützlichkeit für eure Server: Alle Positionen der Tankstellen in San Andreas mit Abfragefunktion. Dies sollte man nicht als Filterscript oder ähnliches sehen, sondern als kleine Hilfe, damit ihr euch nicht die lästige Arbeit machen müsst, alle Tankstellen auf der Map zusammen zu suchen. Die einzellnen Tankstellen sind nicht beschrieben, also kann ich nur die Positionen aller Tankstellen (insgesamt 19) bieten.




    Installation
    ________________________________________________________________________


    Zuerst must du folgendes "Forward" in dein Script einfügen.
    Dies ist nötig um später bei dem Befehl "/auftanken" oder ähnlichem, kurz und knapp abzufragen, ob der Spieler sich in der Nähe einer Tankstelle aufhält.


    forward IsPlayerAtTankstelle(playerid);



    Dann ist das dazugehörige "Public" nötig.
    Das ist der dazugehörige Code für das vorherige "Forward". Dies sind nun die Positionen aller Tankstellen die nacheinander abgefragt werden. Wenn das stimmt, also sich der Spieler im Umkreis von 5 Metern um eine Tankstelle aufhält, dann wird per [return 1;] die "Antwort ja" zurückgesendet.


    public IsPlayerAtTankstelle(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1944.4954,-1772.7089,13.3906))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1004.2097,-940.1768,42.1797))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 651.8976,-564.9250,16.3359))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -90.8697,-1169.0400,2.4194))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -1605.8799,-2714.1003,48.5335))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2244.3743,-2561.0940,31.9219))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2029.6212,156.7755,28.8359))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -1675.8535,413.2264,7.1797))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -2405.9473,976.4783,45.2969))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -1328.2087,2677.4607,50.0625))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -737.0900,2742.5413,47.2266))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 611.6671,1694.5723,6.9922))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 70.5098,1218.7645,18.8123))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, -1470.9233,1864.3240,32.6328))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 2149.5557,2747.8027,10.8203))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 2640.1379,1106.3120,10.8203))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 1596.4186,2199.0229,10.8203))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 2202.3293,2474.0010,10.8203))
    {return 1;}
    if(IsPlayerInRangeOfPoint(playerid, 5.0, 2114.8806,920.3449,10.8203))
    {return 1;}
    }
    return 0;
    }



    Funktion
    ________________________________________________________________________



    Also nochmals, hier mit einem Beispiel ist dargelegt, wie das ungefair aussehen sollte. Wichtig ist, dass ich die Funktion für das eigendliche Tanken nicht mitgeliefert hab. Da müst ihr also auf andere Toutorials zugreifen. Dies sind lediglich die Positionen der Tankstellen.



    if(strcmp("/auftanken", cmdtext,true) ==0)
    {
    if(IsPlayerInAnyVehicle(playerid))
    { // Ob der Spieler in einem Fahrzeug ist.
    if(IsPlayerAtTankstelle(playerid))
    { // Ob der Spieler an der Tankstelle ist.
    // Euer Code zum Auftanken und Bezahlen.
    }
    else if(!IsPlayerAtTankstelle(playerid))
    {
    SendClientMessage(playerid,Farbcode,"Du bist an keiner Tankstelle!");
    return 1;
    }
    }
    else if(!IsPlayerInAnyVehicle(playerid))
    {
    SendClientMessage(playerid,Farbcode,"Du sitzt in keinem Fahrzeug!");
    return 1;
    }
    }


    ________________________________________________________________________



    Falls Fragen offenstehen, bitte im Thread posten.
    Wenn ihr Fehler im Script entdeckt habt, bitte bei mir melden.


    mit freundlichen Grüßen
    Mr.Master

  • das gehört hir nicht in endweder im showroom oder im tuturial bereich ^^