Zplague
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Zplague Entrar

Seu portal de Zombie Plague no Brasil


descriptionPEDIDO TAG , e Comando Respawn EmptyPEDIDO TAG , e Comando Respawn

more_horiz
PEDIDO TAG , e Comando Respawn 1704256573 Alguem pode me Arruma Aquele plugin de TAGs que tem quando fala no chat assim
(ADM)Bruno oi
(VIP)Bruno Oi
(Fundador)Bruno Oi
(Master)Bruno oi
se vcs tiverem me passem PEDIDO TAG , e Comando Respawn 3637433308
yy E tambem um comando de respawn para ADMIN yy

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Ta aqui ele tem [FUNDADOR] [MASTER] [ADM] E [VIP]

"NOME" "SENHA" "abcdefghijklmnopqrstuv" "a" // [FUNDADOR]
"NOME" "SENHA" "abcdefghijklmnopqrstuw" "a" // [MASTER]
"NOME" "SENHA" "abcdefghijklmnopqrstux" "a" // [ADM]
"NOME" "SENHA" "abcdefghijklmnopqrstuy" "a" // [VIP]

Código:


#include <    amxmodx>
#include <    amxmisc>

#define PLUGIN "Tag and Chat Colors"
#define VERSION "2.0"
#define AUTHOR "Arion"

#define ACCESS_LEVEL ADMIN_IMMUNITY
#define ADMIN_LISTEN ADMIN_LEVEL_H

#define ADMIN_FLAG_V (1<<21)
#define ADMIN_FLAG_W (1<<22)
#define ADMIN_FLAG_X (1<<23)
#define ADMIN_FLAG_Y (1<<24)

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

new const g_szTag[][] = {
    "", // NAO REMOVA
    "[FUNDADOR]",
    "[MASTER]",
    "[ADM]",
    "[VIP]"
}

new const g_iTagFlag[sizeof(g_szTag)] = {
    ADMIN_ALL, // NAO REMOVA
    ADMIN_FLAG_V,
    ADMIN_FLAG_W,
    ADMIN_FLAG_X,
    ADMIN_FLAG_Y
}

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)

    g_MessageColor = register_cvar("amx_color", "2")  // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
    g_NameColor = register_cvar("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
    g_AdminListen = register_cvar("amx_listen", "1")  // Set whether admins see or not all messages(Alive, dead and team-only)

    sayText = get_user_msgid("SayText")
    teamInfo = get_user_msgid("TeamInfo")
    maxPlayers = get_maxplayers()

    register_message(sayText, "avoid_duplicated")

    register_concmd("amx_color", "set_color", ACCESS_LEVEL, "")
    register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "")
    register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    register_clcmd("say", "hook_say")
    register_clcmd("say_team", "hook_teamsay")
}

public avoid_duplicated(msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}

get_tag_index(id)
{
    new flags = get_user_flags(id)
   
    for(new i = 1; i < sizeof(g_iTagFlag); i++)
    {
        if(check_admin_flag(flags, g_iTagFlag[i]))
        {
            return i
        }
    }
   
    return 0
}

check_admin_flag(flags, flag)
{
    if(flag == ADMIN_ADMIN)
    {
        return ((flags & ~ADMIN_USER) > 0)
    }
    else if(flag == ADMIN_ALL)
    {
        return 1
    }
   
    return (flags & flag)
}

public hook_say(id)
{
    read_args(message, 191)
    remove_quotes(message)

    // Gungame commands and empty messages
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
        return PLUGIN_CONTINUE

    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // Name
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
            case 2:
                format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
            }
        }

        // Message
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Yellow
                format(strText, 191, "%s", message)
            case 2:    // Green
                format(strText, 191, "^x04%s", message)
            case 3:    // White
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Blue
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Red
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else    // Player is not admin. Team-color name : Yellow message
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s^x03%s", alive, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s^x01 :  %s", strName, strText)

    sendMessage(color, isAlive)    // Sends the colored message

    return PLUGIN_CONTINUE
}

public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]

    switch(playerTeam) // Team names which appear on team-only messages
    {
        case 1:
            copy(playerTeamName, 11, "Terrorists")

        case 2:
            copy(playerTeamName, 18, "Counter-Terrorists")

        default:
            copy(playerTeamName, 9, "Spectator")
    }

    read_args(message, 191)
    remove_quotes(message)

    // Gungame commands and empty messages
    if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
        return PLUGIN_CONTINUE

    new name[32]
    get_user_name(id, name, 31)

    new admin = get_tag_index(id)

    new isAlive

    if(is_user_alive(id))
    {
        isAlive = 1
        alive = "^x01"
    }
    else
    {
        isAlive = 0
        alive = "^x01*DEAD* "
    }

    static color[10]

    if(admin)
    {
        // Name
        switch(get_pcvar_num(g_NameColor))
        {
            case 1:
                format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
            case 2:
                format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
            case 3:
            {
                color = "SPECTATOR"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 4:
            {
                color = "CT"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 5:
            {
                color = "TERRORIST"
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
            case 6:
            {
                get_user_team(id, color, 9)
                format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
            }
        }

        // Message
        switch(get_pcvar_num(g_MessageColor))
        {
            case 1:    // Yellow
                format(strText, 191, "%s", message)
            case 2:    // Green
                format(strText, 191, "^x04%s", message)
            case 3:    // White
            {
                copy(color, 9, "SPECTATOR")
                format(strText, 191, "^x03%s", message)
            }
            case 4:    // Blue
            {
                copy(color, 9, "CT")
                format(strText, 191, "^x03%s", message)
            }
            case 5:    // Red
            {
                copy(color, 9, "TERRORIST")
                format(strText, 191, "^x03%s", message)
            }
        }
    }
    else    // Player is not admin. Team-color name : Yellow message
    {
        get_user_team(id, color, 9)
        format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
        format(strText, 191, "%s", message)
    }

    format(message, 191, "%s ^x01:  %s", strName, strText)

    sendTeamMessage(color, isAlive, playerTeam)    // Sends the colored message

    return PLUGIN_CONTINUE
}

public set_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 5)
    {
        set_pcvar_num(g_MessageColor, newColor)

        if(get_pcvar_num(g_NameColor) != 1 &&
            ((newColor == 3 &&  get_pcvar_num(g_NameColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_NameColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_NameColor) != 5)))
        {
            set_pcvar_num(g_NameColor, 2)
        }
    }

    return PLUGIN_HANDLED
}

public set_name_color(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newColor
    read_argv(1, arg, 1)

    newColor = str_to_num(arg)

    if(newColor >= 1 && newColor <= 6)
    {
        set_pcvar_num(g_NameColor, newColor)

        if((get_pcvar_num(g_MessageColor) != 1
            &&((newColor == 3 &&  get_pcvar_num(g_MessageColor) != 3)
            ||(newColor == 4 &&  get_pcvar_num(g_MessageColor) != 4)
            ||(newColor == 5 &&  get_pcvar_num(g_MessageColor) != 5)))
            || get_pcvar_num(g_NameColor) == 6)
        {
            set_pcvar_num(g_MessageColor, 2)
        }
    }

    return PLUGIN_HANDLED
}

public set_listen(id, level, cid)
{
    if(!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED

    new arg[1], newListen
    read_argv(1, arg, 1)

    newListen = str_to_num(arg)

    set_pcvar_num(g_AdminListen, newListen)

    return PLUGIN_HANDLED
}

public sendMessage(color[], alive)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            get_user_team(player, teamName, 9)  // Stores user's team name to change back after sending the message
            changeTeamInfo(player, color)      // Changes user's team according to color choosen
            writeMessage(player, message)      // Writes the message on player's chat
            changeTeamInfo(player, teamName)    // Changes user's team back to original
        }
    }
}

public sendTeamMessage(color[], alive, playerTeam)
{
    new teamName[10]

    for(new player = 1; player < maxPlayers; player++)
    {
        if(!is_user_connected(player))
            continue

        if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
        {
            if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team(player, teamName, 9) // Stores user's team name to change back after sending the message
                changeTeamInfo(player, color)      // Changes user's team according to color choosen
                writeMessage(player, message)      // Writes the message on player's chat
                changeTeamInfo(player, teamName)  // Changes user's team back to original
            }
        }
    }
}

public changeTeamInfo(player, team[])
{
    message_begin(MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo(Which is responsable for which time player is)
    write_byte(player)    // Write byte needed
    write_string(team)  // Changes player's team
    message_end()      // Also Needed
}

public writeMessage(player, message[])
{
    message_begin(MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText(Which is responsable for writing colored messages)
    write_byte(player)    // Write byte needed
    write_string(message)  // Effectively write the message, finally, afterall
    message_end()          // Needed as always

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Muito obrigado cara Agradeço a todos da ZPLAGUE E A VC valeu mesmo agora so falta o comando de Reviver

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Esta aqui teste ai por favor veja se funcionará.

Código:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN "Admin Reviver"
#define VERSION "1.0"
#define AUTHOR "Leozinho"

new PlayerId[33]

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   
    register_clcmd("say /respawn" , "AdmReviver")
    register_clcmd("say_team /respawn" , "AdmReviver")
}
public AdmReviver( id ) {
   new Nick[33]
    if(!(get_user_flags( id ) & ADMIN_BAN) )
        return PLUGIN_HANDLED
   get_user_name(id, Nick[id], 32)
   
   
    new menu = menu_create("\rAdmin Reviver", "menuhandled");
   
    new players[32], pnum, tempid;
    new szName[32], szTempid[10];
   
    get_players(players, pnum);
   
    for( new i; i<pnum; i++ ) {
       
        tempid = players[i];
       
        get_user_name(tempid, szName, 31);
        num_to_str(tempid, szTempid, 9);
       
        menu_additem(menu, szName, szTempid, 0);
       
        menu_setprop(menu, MPROP_EXITNAME, "\dSair" )
        menu_setprop(menu, MPROP_BACKNAME, "\dVoltar" )
        menu_setprop(menu, MPROP_NEXTNAME, "\dProxima" )
    }
   
   
    menu_display(id, menu);
   
    return PLUGIN_HANDLED;
   
   
}

public menuhandled(id, menu, item) {
    if( item == MENU_EXIT )
        return PLUGIN_HANDLED;
   
    new data[6], iName[64];
    new access, callback;
   
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
   
    PlayerId[id] = str_to_num(data);
   
  ExecuteHamB(Ham_CS_RoundRespawn, PlayerId[id]);
        return;
  ExecuteHamB(Ham_CS_RoundRespawn, PlayerId[id])
}

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Deu Bug mano nao funcionou

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Tente agora.

Código:

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#define PLUGIN "Admin Reviver"
#define VERSION "1.0"
#define AUTHOR "Leozinho"

new PlayerId[33]

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   
    register_clcmd("say /respawn" , "AdmReviver")
    register_clcmd("say_team /respawn" , "AdmReviver")
}
public AdmReviver( id ) {
   new Nick[33]
    if(!(get_user_flags( id ) & ADMIN_BAN) )
        return PLUGIN_HANDLED
   get_user_name(id, Nick[id], 32)
   
   
    new menu = menu_create("\rAdmin Reviver", "menuhandled");
   
    new players[32], pnum, tempid;
    new szName[32], szTempid[10];
   
    get_players(players, pnum);
   
    for( new i; i<pnum; i++ ) {
       
        tempid = players[i];
       
        get_user_name(tempid, szName, 31);
        num_to_str(tempid, szTempid, 9);
       
        menu_additem(menu, szName, szTempid, 0);
       
        menu_setprop(menu, MPROP_EXITNAME, "\dSair" )
        menu_setprop(menu, MPROP_BACKNAME, "\dVoltar" )
        menu_setprop(menu, MPROP_NEXTNAME, "\dProxima" )
    }
   
   
    menu_display(id, menu);
   
    return PLUGIN_HANDLED;
   
   
}

public menuhandled(id, menu, item) {
    if( item == MENU_EXIT )
        return PLUGIN_HANDLED;
   
    new data[6], iName[64];
    new access, callback;
   
  PlayerId[id] = str_to_num(data);
  new szName[2][33]
  new Nick[33]
  get_user_name(id, Nick[id], 32)
    get_user_name(PlayerId[id], szName[1], 32)

  menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
   
 
  ExecuteHamB(Ham_CS_RoundRespawn, Nick[PlayerId[id]]);
        return;
     
      ExecuteHamB(Ham_CS_RoundRespawn, Nick[PlayerId[id]])
 
}

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
bruno2090 escreveu:
Muito obrigado cara Agradeço a todos da ZPLAGUE E A VC valeu mesmo agora so falta o comando de Reviver


Pega o básico mesmo. Fiz para você baseado no plugin reviver de Leozinho. ^^

Atenção: Plugin não-testado

Código:

#include <amxmodx>
#include <hamsandwich>

public plugin_init()
{
   register_plugin("Reviver Admin", "1.0", "AnDroidEL")
   // Comando apenas para administradores
   register_clcmd("say reviver", "cmdReviverAdmin", ADMIN_ADMIN)
   register_clcmd("say /reviver", "cmdReviverAdmin", ADMIN_ADMIN)
}

public cmdReviverAdmin(id)
{
   if(is_user_alive(id))
   return
   {
      ExecuteHamB(Ham_CS_RoundRespawn, id)
      return
   }
   ExecuteHamB(Ham_CS_RoundRespawn, id)
}


Ou use reviver ou /reviver no chat do jogo.

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
me diz uma coisa quando for no mod suvivor sniper armagedon e outros que nao pode reviver ele nao funciona nao ne ?

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
bruno2090 escreveu:
me diz uma coisa quando for no mod suvivor sniper armagedon e outros que nao pode reviver ele nao funciona nao ne ?


Ele está ativado para todos os modos do jogo. Se quiser desativar alguns, adicione isso:

Código:

#include <amxmodx>
#include <hamsandwich>
#include <zombieplague>

public plugin_init()
{
   register_plugin("Reviver Admin", "1.0", "AnDroidEL")
   // Comando apenas para administradores
   register_clcmd("say reviver", "cmdReviverAdmin", ADMIN_ADMIN)
   register_clcmd("say /reviver", "cmdReviverAdmin", ADMIN_ADMIN)
}

public cmdReviverAdmin(id)
{
   if(zp_is_round_nemesis() || zp_is_round_survivor() || zp_is_round_swarm() || zp_is_round_plague())
   {
      if(is_user_alive(id))
      return
      {
         ExecuteHamB(Ham_CS_RoundRespawn, id)
         return
      }
      ExecuteHamB(Ham_CS_RoundRespawn, id)
   }
}


Nessa linha:

Código:

if(zp_is_round_nemesis() || zp_is_round_survivor() || zp_is_round_swarm() || zp_is_round_plague())


Apenas adicione o "!" antes do parâmetro. Exemplo: !zp_is_round_nemesis. Você pode fazer isso nos outros também. O que isso fará? Ele bloqueará os modos que não se poderá utilizar o reviver.

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
hm entendo mais na hora que eu tentei compilar ele de erro mano deixe esse plugin pra la eu preciso e mesmo de um comando mesmo que fica no admin menu que e um respawn que so admin masters podem usar pra reviver os players eu quero esse eu pensei que esse plugin era esse mais nao eu quero esse plugin ai que eu pedi se nao for pedir muito

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Eu entendi que era pra fazer um menu para adm reviver os outros jogadores desculpa ai mano.

Ta aqui.

Código:

#include <amxmodx>
#include <hamsandwich>
#include <zombieplague>

public plugin_init()
{
  register_plugin("Reviver Admin", "1.0", "AnDroidEL")
  // Comando apenas para administradores
  register_clcmd("say reviver", "cmdReviverAdmin", ADMIN_ADMIN)
  register_clcmd("say /reviver", "cmdReviverAdmin", ADMIN_ADMIN)
}

public cmdReviverAdmin(id)
{
    if(!zp_is_nemesis_round() && !zp_is_plague_round() && !zp_is_survivor_round() && !zp_is_swarm_round())
  {
      if (is_user_alive(id))
      return;
      {
        ExecuteHamB(Ham_CS_RoundRespawn, id);
        return;
      }
      ExecuteHamB(Ham_CS_RoundRespawn, id)
  }
}

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Isso ai Valeu mano era o que eu tava procurando desculpa ai por vcs fazerem coisas atoa Mais vlw mesmo assim leozinho e androide

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Resolvido
Tópico fechado.
Qualquer coisa me manda mp

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
Só para implementar uma coisa a mais, eu pensei que era zp_is_round_nemesis, e não zp_is_nemesis_round. Além disso, estive em outro computador sem o AMX Mod X e o Compilador OFF aqui. Desculpe, por isso que deu erro ao compilar. Os códigos que eu tinha postado como o que eu citei acima era só inverter.

Desculpe o trabalho. Leozinho, obrigado por deixar os créditos. Bom trabalho! =)

descriptionPEDIDO TAG , e Comando Respawn EmptyRe: PEDIDO TAG , e Comando Respawn

more_horiz
privacy_tip Permissões neste sub-fórum
Não podes responder a tópicos
power_settings_newInicie sessão para responder