Wie erstelle ich...

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
  • Wie erstellen ich eine Nachricht, die bei einem befehl ausgelöst wird,
    und die alles im umkreis von z.b. 10.0 shene können.


    Z.b. bei /tor



    if (strcmp("/tor", cmdtext, true, 10) == 0)
    {
    //if (PlayerInfo[playerid][pLeader] == 8 || PlayerInfo[playerid][pMember] == 8)
    if(PlayerToPoint(10.0,playerid,228.31884765625, 151.66889953613, 1004.6602783203))
    if(status == 0)
    {
    MoveObject(zell,228.31884765625, 150.16889953613 -1.5, 1004.6602783203,3);
    SendClientMessage(playerid, COLOR_GRAD1, "Zellen geöffnet"); Hier bekommt ja nur der Öffnende die Nachricht...
    status = 1;
    }
    else if(status == 1)
    {
    MoveObject(zell,228.31884765625, 151.66889953613, 1004.6602783203,3);
    SendClientMessage(playerid, COLOR_GRAD1, "Zellen Geschlossen");
    status = 0;
    }
    return 1;
    }

  • Du könntest ganz einfach eine neue SendClientMessage Funktion machen.


    stock SendRangeMessage(playerid, Float:range, color, txt[])
    {
    new Float:mx, Float:my, Float:mz;
    GetPlayerPos(playerid, mx, my, mz);
    for(new i, j = GetMaxPlayers(); i < j; i++)
    {
    if(IsPlayerConnected(i) && !IsPlayerNPC(i) && IsPlayerInRageOfPoint(i, range, mx, my, mz)) SendClientMessage(i, color, txt);
    }
    return 1;
    }

  • ich hab es mal Für dich ausprobiert/getestet und es geht so
    Bei dein Stocks
    stock SendRangeMessage(playerid, Float:range, color, txt[])
    {
    new Float:mx, Float:my, Float:mz;
    GetPlayerPos(playerid, mx, my, mz);
    for(new i, j = GetMaxPlayers(); i < j; i++)
    {
    if(IsPlayerConnected(i) && !IsPlayerNPC(i) && IsPlayerInRangeOfPoint(i, range, mx, my, mz)) SendClientMessage(i, color, txt);
    }
    return 1;
    }
    Bei dein Cods/Befehlen kannst du es so einsetzen
    ocmd:test(playerid,params[])
    {
    SendRangeMessage(playerid, 10, WEIS, "Ich bin ein Test");//10Ist der Radius/Entfernung
    return 1;
    }
    sollten fragen noch offen sein so schreib es hier rien wen es zum Thema passt
    //edit ² Text

    Einmal editiert, zuletzt von Kevin B. ()