Problem mit mehreren Koordinaten

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
  • Moinmoin.


    Ich habe da ein Problem. Ich habe gerade das wichtigste eines Zigarettensystems fertiggestellt. Nun wollte ich das man nur an bestimmten Punkten Zigaretten kaufen kann. An von mir schon fertig gemappten Zigarettenautomaten. Ich arbeite mit IsPlayerInRangeOfPoint. Ich wollte Platz sparen und nicht tausend mal in meinen Befehl IsPlayerInRangeOfPoint machen. Gibt es eine möglichkeit sowas in ein new oder so zu machen? Wenn ja wie stelle ich das an?


    Mein Befehl ist grade so:


    if(strcmp("/zigarettenkaufen",cmdtext,true) == 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,2,1958.3783,1343.1572,15.3746))
    {
    return SendClientMessage(playerid, 0xFF0000AA,"Sie sind nicht am Kaufpunkt");
    }
    ShowPlayerDialog(playerid,DIALOG_ZIGARETTEN,DIALOG_STYLE_LIST,"Zigarettenautomat","Zigarettenmarken\nBla\nBla","Kaufen","Abbrechen");
    return 1;
    }


    Die Punkte wo ich welche kaufen kann sollen Testeshalber erstmal nur diese sein:


    1929.7468261719, 1320.5987548828, 9.9954395294189
    2264.9921875, 1384.3193359375, 11.516892433167


    Hoffe auf schnelle Hilfe.


    Mfg,
    Seb

  • #define MAX_AUTOMATEN 2
    new Float:Zigarettenautom[MAX_AUTOMATEN][3] = {
    {1929.7468261719, 1320.5987548828, 9.9954395294189},
    {2264.9921875, 1384.3193359375, 11.516892433167}
    };


    for(new i = 0; i < MAX_AUTOMATEN; i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,2.0,Zigarettenautom[i][0],Zigarettenautom[i][1],Zigarettenautom[i][2]))
    {
    ShowPlayerDialog(playerid,DIALOG_ZIGARETTEN,DIALOG_STYLE_LIST,"Zigarettenautomat","Zigarettenmarken\nBla\nBla","Kaufen","Abbrechen");
    }
    }


    So sollte es eigentlich gehen...musst nurnoch im CMD oder in nem KEY einbinden...