Prefix przed nickiem

W register_plugin
register_message(get_user_msgid("SayText"),"handleSayText");
potem w dowolnym miejscu w pluginie
public handleSayText(msgId,msgDest,msgEnt){
new id = get_msg_arg_int(1);

if(!is_user_connected(id))      return PLUGIN_CONTINUE;

new szTmp[256],szTmp2[256];
get_msg_arg_string(2,szTmp, charsmax( szTmp ) )

new szPrefix[64] = "[Nasz Prefix]";

if(!equal(szTmp,"#Cstrike_Chat_All")){
add(szTmp2,charsmax(szTmp2),szPrefix);
add(szTmp2,charsmax(szTmp2)," ");
add(szTmp2,charsmax(szTmp2),szTmp);
}
else{
add(szTmp2,charsmax(szTmp2),szPrefix);
add(szTmp2,charsmax(szTmp2),"^x03 %s1^x01 :  %s2");
}

set_msg_arg_string(2,szTmp2);

return PLUGIN_CONTINUE;
}
tutaj ustalamy nasz prefix
new szPrefix[64] = "[Nasz Prefix]";
w zmiennej id mamy id gracza który wysłał wiadomość

11 komentarzy o “Prefix przed nickiem

  1. szefie, mógłbyś napisać jak zrobić prefix „[Klasa] Nick: itd.” (coś podobnego)? będę wdzięczny

      1. ale jak zrobić, żeby klasa się zmieniała.
        kombinowałem i nic (chodzi o nowego coda).

  2. Siemanko Dark mogl bys przerobic ten plugin tak ze dla zwyklych graczy w Prefixie bylo by Gracz a dla adminow w Prefixie Admin Dalbys rade cos takiego zrobic?

  3. nie jestem pewny, Dark mnie poprawi w razie czego, ale wydaje mi się, że tutaj:
    public handleSayText(msgId,msgDest,msgEnt){
    new id = get_msg_arg_int(1);

    if(!is_user_connected(id)) return PLUGIN_CONTINUE;

    new szTmp[256],szTmp2[256];
    get_msg_arg_string(2,szTmp, charsmax( szTmp ) )

    new szPrefix2[64] = „[ADMIN]”;
    new szPrefix[64] = „[GRACZ]”;

    if(!equal(szTmp,”#Cstrike_Chat_All”)){
    if(get_user_flags(id) & ADMIN_BAN){
    add(szTmp2,charsmax(szTmp2),szPrefix2);
    add(szTmp2,charsmax(szTmp2),” „);
    add(szTmp2,charsmax(szTmp2),szTmp);
    }
    }
    elseif{
    if(get_user_flags(id) & ADMIN_BAN){
    add(szTmp2,charsmax(szTmp2),szPrefix2);
    add(szTmp2,charsmax(szTmp2),”^x03 %s1^x01 : %s2″);
    }
    }
    else{
    if(!equal(szTmp,”#Cstrike_Chat_All”)){
    add(szTmp2,charsmax(szTmp2),szPrefix);
    add(szTmp2,charsmax(szTmp2),” „);
    add(szTmp2,charsmax(szTmp2),szTmp);
    }
    else{
    add(szTmp2,charsmax(szTmp2),szPrefix);
    add(szTmp2,charsmax(szTmp2),”^x03 %s1^x01 : %s2”);
    }
    set_msg_arg_string(2,szTmp2);

    return PLUGIN_CONTINUE;
    }

    (nie mogę sprawdzić czy działa, i pewnie da się skrócić :p )
    Ja bym użył takiego czegoś ( bo tutaj jest zdefiniowane dla czasu dla wszystkich (pod „y”) i dla pozostałych. A ja dałbym dla wszystkich:

    public handleSayText(msgId,msgDest,msgEnt){
    new id = get_msg_arg_int(1);

    if(!is_user_connected(id)) return PLUGIN_CONTINUE;

    new szTmp[256],szTmp2[256];
    get_msg_arg_string(2,szTmp, charsmax( szTmp ) )

    new szPrefix2[64] = „[ADMIN]”;
    new szPrefix[64] = „[GRACZ]”;

    if(get_user_flags(id) & ADMIN_BAN){
    add(szTmp2,charsmax(szTmp2),szPrefix2);
    add(szTmp2,charsmax(szTmp2),” „);
    add(szTmp2,charsmax(szTmp2),szTmp);
    }
    }
    else{

    add(szTmp2,charsmax(szTmp2),szPrefix);
    add(szTmp2,charsmax(szTmp2),”^x03 %s1^x01 : %s2”);

    }

    set_msg_arg_string(2,szTmp2);

    return PLUGIN_CONTINUE;
    }

    Oczywiście proszę o Darka o potwierdzenie czy będzie działało albo o jakieś porady 🙂 też by mi się przydało to ogarnąć 😀

  4. WG mnie flaga admin_ban nie musi być dowodem „posiadania” admina 🙂 u mnie ta flaga jest na vipa, a banowanie etc ustawilem przestawilem na immunited, mam free flagi :))

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.