ooc ein Ausschaltbar machen

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
  • Morgen


    ich frage mich wie ich den /o chat atkiv-/deaktiv machen kann


    ocmd:ooc(playerid,params[])
    {
    new string[128],nachricht,sender[MAX_PLAYER_NAME];
    if(sscanf(params,"s",nachricht))return SendClientMessage(playerid,COLOR_GRAD2,"INFO: /ooc [NACHRICHT]");
    {
    GetPlayerName(playerid, sender, sizeof(sender));
    format(string,sizeof(string),"(( %s: %s ))",sender,nachricht);
    SendClientMessageToAll(COLOR_WHITE,string);
    }
    return 1;
    }


    also wenn ich /oocon eingebe sollte er angehen und wenn ich /oocoff eingebe sollte der ausgehen


    habt ihr ne lösung für mich?


    MFG
    schnarre

  • Erstelle dir einen Bool und einen Befehl um diesen zu toggeln. (Wenn der auf true ist, wird er auf false gesetzt und umgekehrt)
    Dann mach eine Abfrage in deinen OOC rein, ob der bool true oder false ist und je nachdem gibst du dann die Nachricht aus oder nicht.


    Mit freundlichen Grüßen
    eXchange


    Bitte keine Script/Supportanfragen via PN!!!
    (Ausnahme: Scripten gegen Bezahlung!)

  • Du machst ein new OOC;


    bei deinem Command, der den Öffnen/Schließen soll ein OOC = 1; / OOC= 0;.


    Dann bei dem Chat:


    ocmd:ooc(playerid,params[])
    {
    if(OOC == 1)
    {
    new string[128],nachricht,sender[MAX_PLAYER_NAME];
    if(sscanf(params,"s",nachricht))return SendClientMessage(playerid,COLOR_GRAD2,"INFO: /ooc [NACHRICHT]");
    {
    GetPlayerName(playerid, sender, sizeof(sender));
    format(string,sizeof(string),"(( %s: %s ))",sender,nachricht);
    SendClientMessageToAll(COLOR_WHITE,string);
    }
    }
    return 1;
    }


    und darauf if(OOC == 0)


    nur das das die Admins machen können

    Back to the roots!


  • if(strcmp(cmdtext,"/noooc")==0)
    {
    if(PlayerInfo[playerid][pAdmin]<=1)
    {
    if(ooc==0)
    {
    OOC=1;
    SendClientMessage(playerid,FARBE,"Du hast den O-Chat eingeschaltet.");
    }
    if(ooc==1)
    {
    OOC=0;
    SendClientMessage(playerid,FARBE,"Du hast den O-Chat ausgeschaltet.");
    }


    }
    return 1;
    }

    Liebe Grüße


    Marcel

  • Hier das was du wolltest:

    new bool:oocoffen;
    ocmd:ooc(playerid,params[])
    {
    if(oocoffen == false && /* Admin == 0 */) // Dort eintragen wenn er kein Admin ist
    {
    SendClientMessage(playerid, COLOR_WHITE, "Der OOC Chat ist nur für Admins offen.");
    return 1; // Wenn OOC zu ist & er kein Admin ist kommt die Nachricht nicht
    }
    new string[128],nachricht,sender[MAX_PLAYER_NAME];
    if(sscanf(params,"s",nachricht))return SendClientMessage(playerid,COLOR_GRAD2,"INFO: /ooc [NACHRICHT]");
    {
    GetPlayerName(playerid, sender, sizeof(sender));
    format(string,sizeof(string),"(( %s: %s ))",sender,nachricht);
    SendClientMessageToAll(COLOR_WHITE,string);
    }
    return 1;
    }


    ocmd:oocon(playerid,params[])
    {
    #pragma unused params
    if(/*Admin Abfrage*/)
    {
    if(oocoffen == true) return SendClientMessage(playerid, COLOR_WHITE, "Der OOC Chat ist bereits offen.");
    oocoffen = true;
    SendClientMessage(playerid, COLOR_WHITE, "Du hast den OOC Chat geöffnet.");
    }
    return 1;
    }


    ocmd:oocoff(playerid,params[])
    {
    #pragma unused params
    if(/*Admin Abfrage*/)
    {
    if(oocoffen == false) return SendClientMessage(playerid, COLOR_WHITE, "Der OOC Chat ist bereits geschlossen.");
    oocoffen = false;
    SendClientMessage(playerid, COLOR_WHITE, "Du hast den OOC Chat geschlossen.");
    }
    return 1;
    }

    Und hier für den Fall das du das lieber haben willst anstatt mit oocon & oocoff:

    ocmd:ooctoggle(playerid,params[])
    {
    #pragma unused params
    if(/*Admins Definition*/)
    {
    if(oocoffen==true)
    {
    oocoffen = false;
    SendClientMessage(playerid, COLOR_WHITE, "OOC Chat geschlossen.");
    }
    else
    {
    oocoffen = true;
    SendClientMessage(playerid, COLOR_WHITE, "OOC Chat geöffnet.");
    }


    }
    return 1;
    }


    Hoffe das funktioniert so.