Wo kommt die IsPlayerInRangeOf abfrage rein ?

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
  • Moin Leute ,



    Ich wollte mal fragen wie ich das machen soll wenn ich das hier haben will :


    Wenn jemand am bestimmten Ort steht soll er eine Nachricht bekommen un zwar alle 3 Sek soll wieder abgefragt werden ob er da noch ist und wenn ja soll er sie wieder bekommen.


    Und zwar weiß ich das man mit dem IsPlayerInRangeOf befehl arbeiten muss aber nicht wo ? OnplayerGamemode ?
    Muss ich mit einer Schleife Arbeiten oder geht es anders ? Ich denke man muss mit einer Arbeiten , weil er soll ja alle 3 sek diese Message bekommen oder kann man das anders machen ?


    Mfg Angelo

  • Wenn es alle 3 Sekunden abgefragt werden soll, gehört dein If-Clause in die passende Funktion zum Timer.


    http://wiki.sa-mp.com/wiki/SetTimer


    http://wiki.sa-mp.com/wiki/SetTimerEx


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • forward Timer(playerid);


    new Float:Mpx[MAX_PLAYERS],Float:Mpy[MAX_PLAYERS],Float:Mpz[MAX_PLAYERS];


    public OnPlayerSpawn(playerid)
    {
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid, X, Y, Z);
    Mpx[playerid] = X;
    Mpy[playerid] = Y;
    Mpz[playerid] = Z;
    SetTimerEx("Timer",3000,true,"i",playerid);
    return 1;
    }


    public Timer(playerid)
    {
    if(!IsPlayernRangeOfPoint(playerid,5.0,Mpx[playerid],Mpy[playerid],Mpz[playerid]))return SendClientMessage(playerid, 0xFFFFFFFF, "Du hast dich vom spawn entfernt!");
    SendClientMessage(playerid, 0xFFFFFFFF, "Gut, du stehst noch beim Spawn!");
    return 1;
    }

  • ja hab sie ein wenig verändert wollte das jetzt machen das wenn einer ne Waffe hat was ist jetzt daran falsch ?
    Nur eine Sache hast du Falsch geschrieben "IsPlayerInRangeOfPoint" kann aber jeden passieren und war nicht schlimm :)))



    public Timer(playerid)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5.0,Mpx[playerid],Mpy[playerid],Mpz[playerid]))
    if(GetPlayerWeapon(playerid))
    SendClientMessage(playerid, 0xFFFFFFFF, "Der Penner hat ne waffe!");
    return 1;
    }