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


description[Plugin] Não Compila Empty[Plugin] Não Compila

more_horiz
Alguém ajeita esse plugin ele não compila '-'

Código:

/*================================================================================

   ---------------------------------------------------------------------------------
   |   <= Description =>                     |
   |   -----------------                     |
   |                              |
   | This plugin added a colored NightVision into Zombie Infection Mod (Biohazard).|   
   | Some code taken from Zombie Plague 4.3. Thanks you, MeRcyLeZZ.      |
   | Official page: < http://amxx.com.ua/bio-colored-nightvision/ >      |
   ---------------------------------------------------------------------------------
   
   ---------------------------------------------------------------------------------
   |   <= CVARs =>                        |
   |   -----------                        |
   |                              |
   | nvg_radius 80 - Size radius lighting.                  |
   ---------------------------------------------------------------------------------
   
   ---------------------------------------------------------------------------------
   |   <= Changelog =>                        |
   |   ---------------                        |
   |                              |
   | * v1.0: (3.9.2010)                        |
   |    - First release.                     |
   ---------------------------------------------------------------------------------
   
================================================================================*/

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <biohazard>

#define PLUGIN "[BIO] Colored NightVision"
#define VERSION "1.0"
#define AUTHOR "Slavvkko"

#define OFFSET_TEAM 114
#define OFFSET_NVG 129

new const g_Colors[][3] =
{
//   R   G   B
   {150,   0,   0},   // 1
   {0,   150,   0},   // 2
   {0,   0,   150},   // 3
   {0,   150,   150},   // 4
   {102,   0,   255},   // 5
   {202,   31,   123},   // 6
   {255,   255,   0}   // 7
};

new g_UserColor[33][3];
new bool:g_Chose[33];
new bool:g_nvision[33];
new bool:g_nvisionenabled[33];
new g_playername[33][32];
new g_maxplayers;

// SaveColor written by type Zombie Plague 4.3
const MAX_STATS_SAVED = 64;
new db_name[MAX_STATS_SAVED][32];
new db_user_nvg_color[MAX_STATS_SAVED][3];
new bool:db_chose[MAX_STATS_SAVED];
new db_slot_i;

new cvar_autonvg, cvar_radius;

public plugin_init()
{
   register_plugin(PLUGIN, VERSION, AUTHOR);
   register_dictionary("bio_colored_nightvision.txt");
   
   register_logevent("logevent_round_end", 2, "1=Round_End");
   
   register_clcmd("say /nvg", "clcmd_nvg");
   register_clcmd("say_team /nvg", "clcmd_nvg");
   register_clcmd("nightvision", "clcmd_nightvision");
   
   cvar_autonvg = get_cvar_pointer("bh_autonvg");
   cvar_radius = register_cvar("nvg_radius", "80");
   
   RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1);
   RegisterHam(Ham_Killed, "player", "fw_PlayerKilled");
   register_forward(FM_ClientUserInfoChanged, "fw_ClientUserInfoChanged");
   
   g_maxplayers = get_maxplayers();
   
   register_message(get_user_msgid("NVGToggle"), "message_NVGToggle");
}

public logevent_round_end()
{
   static id;
   for (id = 1; id <= g_maxplayers; id++)
      SaveColor(id);
}

public fw_PlayerSpawn_Post(id)
{
   if (!is_user_alive(id) || !fm_cs_get_user_team(id))
      return;
      
   remove_task(id);
   g_nvision[id] = false;
}

public fw_PlayerKilled(victim, attacker, shouldgib)
{
   g_nvision[victim] = false;
   set_task(0.1, "spec_nvision", victim);
}

public fw_ClientUserInfoChanged(id)
{
   get_user_name(id, g_playername[id], charsmax(g_playername[]));
}

public client_putinserver(id)
{
   get_user_name(id, g_playername[id], charsmax(g_playername[]));
   
   // Set color 2
   g_UserColor[id] = g_Colors[1];
   g_Chose[id] = false;
   
   LoadColor(id);
}

public client_disconnect(id)
{
   SaveColor(id);
   remove_task(id);
}

public event_infect(victim, attacker)
{
   if (!g_Chose[victim])
      ShowMenu(victim);
   
   if (get_pcvar_num(cvar_autonvg))
   {
      g_nvisionenabled[victim] = true;
      remove_task(victim);
      set_task(0.1, "set_user_nvision", victim, _, _, "b");
   }
   
   g_nvision[victim] = true;
}

public message_NVGToggle()
{
   return PLUGIN_HANDLED;
}

public clcmd_nvg(id)
{
   ShowMenu(id);
   
   return PLUGIN_HANDLED;
}

public clcmd_nightvision(id)
{
   if (g_nvision[id] || fm_get_user_nvg(id))
   {
      g_nvisionenabled[id] = !(g_nvisionenabled[id]);
      
      remove_task(id);
      if (g_nvisionenabled[id])
         set_task(0.1, "set_user_nvision", id, _, _, "b");
   }
   
   return PLUGIN_HANDLED;
}

ShowMenu(id)
{
   static iMenu, szMenu[64], i, Buffer[2];
   
   formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUTITLE");
   
   iMenu = menu_create(szMenu, "handler_nvg");
   
   for (i = 0; i < sizeof(g_Colors); i++)
   {
      formatex(szMenu, charsmax(szMenu), "NVG_COLOR_%d", i + 1);
      format(szMenu, charsmax(szMenu), "%L", id, szMenu);
      Buffer[0] = i;
      menu_additem(iMenu, szMenu, Buffer);
   }
   
   formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUBACK");
   menu_setprop(iMenu, MPROP_BACKNAME, szMenu);
   formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUNEXT");
   menu_setprop(iMenu, MPROP_NEXTNAME, szMenu);
   formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUEXIT");
   menu_setprop(iMenu, MPROP_EXIT, szMenu);
   
   menu_display(id, iMenu);
}

public handler_nvg(id, iMenu, item)
{
   if (item == MENU_EXIT)
   {
      menu_destroy(iMenu);
      return PLUGIN_HANDLED;
   }
   
   static Buffer[2], temp, itemid;
   menu_item_getinfo(iMenu, item, temp, Buffer, charsmax(Buffer), _, _, temp);
   itemid = Buffer[0];
   
   g_UserColor[id] = g_Colors[itemid];
   
   g_Chose[id] = true;
   
   menu_destroy(iMenu);
   return PLUGIN_HANDLED;
}

SaveColor(id)
{
   if (!g_Chose[id])
      return;

   if (db_name[id][0] && !equal(g_playername[id], db_name[id]))
   {
      if (db_slot_i >= sizeof(db_name))
         db_slot_i = g_maxplayers + 1;
      
      copy(db_name[db_slot_i], charsmax(db_name[]), db_name[id]);
      db_user_nvg_color[db_slot_i] = db_user_nvg_color[id];
      db_chose[db_slot_i] = g_Chose[id];
      db_slot_i++;
   }
   
   copy(db_name[id], charsmax(db_name[]), g_playername[id]);
   db_user_nvg_color[id] = g_UserColor[id];
   db_chose[id] = g_Chose[id];
}

LoadColor(id)
{
   static i;
   for (i = 0; i < sizeof(db_name); i++)
   {
      if (equal(g_playername[id], db_name[i]))
      {
         g_Chose[id] = db_chose[i];
         if (g_Chose[id])
            g_UserColor[id] = db_user_nvg_color[i];
            
         return;
      }
   }
}

public spec_nvision(id)
{
   if (!is_user_connected(id) || is_user_alive(id))
      return;
   
   g_nvision[id] = true;
   g_nvisionenabled[id] = true;
   remove_task(id);
   set_task(0.1, "set_user_nvision", id, _, _, "b");
}

public set_user_nvision(id)
{
   static origin[3];
   get_user_origin(id, origin);
   
   message_begin(MSG_ONE_UNRELIABLE, SVC_TEMPENTITY, _, id);
   write_byte(TE_DLIGHT);
   write_coord(origin[0]);
   write_coord(origin[1]);
   write_coord(origin[2]);
   write_byte(get_pcvar_num(cvar_radius));
   write_byte(g_UserColor[id][0]);
   write_byte(g_UserColor[id][1]);
   write_byte(g_UserColor[id][2]);
   write_byte(2);
   write_byte(0);
   message_end();
}

stock fm_cs_get_user_team(id)
{
   return get_pdata_int(id, OFFSET_TEAM);
}

stock fm_get_user_nvg(index)
{
   return get_pdata_int(index, OFFSET_NVG);
}

description[Plugin] Não Compila EmptyRe: [Plugin] Não Compila

more_horiz

Código:

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>

#define PLUGIN "[BIO] Colored NightVision"
#define VERSION "1.0"
#define AUTHOR "Slavvkko"

#define OFFSET_TEAM 114
#define OFFSET_NVG 129

new const g_Colors[][3] =
{
//  R  G  B
  {150,  0,  0},  // 1
  {0,  150,  0},  // 2
  {0,  0,  150},  // 3
  {0,  150,  150},  // 4
  {102,  0,  255},  // 5
  {202,  31,  123},  // 6
  {255,  255,  0}  // 7
};

new g_UserColor[33][3];
new bool:g_Chose[33];
new bool:g_nvision[33];
new bool:g_nvisionenabled[33];
new g_playername[33][32];
new g_maxplayers;

// SaveColor written by type Zombie Plague 4.3
const MAX_STATS_SAVED = 64;
new db_name[MAX_STATS_SAVED][32];
new db_user_nvg_color[MAX_STATS_SAVED][3];
new bool:db_chose[MAX_STATS_SAVED];
new db_slot_i;

new cvar_autonvg, cvar_radius;

public plugin_init()
{
  register_plugin(PLUGIN, VERSION, AUTHOR);
  register_dictionary("bio_colored_nightvision.txt");
 
  register_logevent("logevent_round_end", 2, "1=Round_End");
 
  register_clcmd("say /nvg", "clcmd_nvg");
  register_clcmd("say_team /nvg", "clcmd_nvg");
  register_clcmd("nightvision", "clcmd_nightvision");
 
  cvar_autonvg = get_cvar_pointer("bh_autonvg");
  cvar_radius = register_cvar("nvg_radius", "80");
 
  RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1);
  RegisterHam(Ham_Killed, "player", "fw_PlayerKilled");
  register_forward(FM_ClientUserInfoChanged, "fw_ClientUserInfoChanged");
 
  g_maxplayers = get_maxplayers();
 
  register_message(get_user_msgid("NVGToggle"), "message_NVGToggle");
}

public logevent_round_end()
{
  static id;
  for (id = 1; id <= g_maxplayers; id++)
      SaveColor(id);
}

public fw_PlayerSpawn_Post(id)
{
  if (!is_user_alive(id) || !fm_cs_get_user_team(id))
      return;
     
  remove_task(id);
  g_nvision[id] = false;
}

public fw_PlayerKilled(victim, attacker, shouldgib)
{
  g_nvision[victim] = false;
  set_task(0.1, "spec_nvision", victim);
}

public fw_ClientUserInfoChanged(id)
{
  get_user_name(id, g_playername[id], charsmax(g_playername[]));
}

public client_putinserver(id)
{
  get_user_name(id, g_playername[id], charsmax(g_playername[]));
 
  // Set color 2
  g_UserColor[id] = g_Colors[1];
  g_Chose[id] = false;
 
  LoadColor(id);
}

public client_disconnect(id)
{
  SaveColor(id);
  remove_task(id);
}

public event_infect(victim, attacker)
{
  if (!g_Chose[victim])
      ShowMenu(victim);
 
  if (get_pcvar_num(cvar_autonvg))
  {
      g_nvisionenabled[victim] = true;
      remove_task(victim);
      set_task(0.1, "set_user_nvision", victim, _, _, "b");
  }
 
  g_nvision[victim] = true;
}

public message_NVGToggle()
{
  return PLUGIN_HANDLED;
}

public clcmd_nvg(id)
{
  ShowMenu(id);
 
  return PLUGIN_HANDLED;
}

public clcmd_nightvision(id)
{
  if (g_nvision[id] || fm_get_user_nvg(id))
  {
      g_nvisionenabled[id] = !(g_nvisionenabled[id]);
     
      remove_task(id);
      if (g_nvisionenabled[id])
        set_task(0.1, "set_user_nvision", id, _, _, "b");
  }
 
  return PLUGIN_HANDLED;
}

ShowMenu(id)
{
  static iMenu, szMenu[64], i, Buffer[2];
 
  formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUTITLE");
 
  iMenu = menu_create(szMenu, "handler_nvg");
 
  for (i = 0; i < sizeof(g_Colors); i++)
  {
      formatex(szMenu, charsmax(szMenu), "NVG_COLOR_%d", i + 1);
      format(szMenu, charsmax(szMenu), "%L", id, szMenu);
      Buffer[0] = i;
      menu_additem(iMenu, szMenu, Buffer);
  }
 
  formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUBACK");
  menu_setprop(iMenu, MPROP_BACKNAME, szMenu);
  formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUNEXT");
  menu_setprop(iMenu, MPROP_NEXTNAME, szMenu);
  formatex(szMenu, charsmax(szMenu), "%L", id, "NVG_MENUEXIT");
  menu_setprop(iMenu, MPROP_EXIT, szMenu);
 
  menu_display(id, iMenu);
}

public handler_nvg(id, iMenu, item)
{
  if (item == MENU_EXIT)
  {
      menu_destroy(iMenu);
      return PLUGIN_HANDLED;
  }
 
  static Buffer[2], temp, itemid;
  menu_item_getinfo(iMenu, item, temp, Buffer, charsmax(Buffer), _, _, temp);
  itemid = Buffer[0];
 
  g_UserColor[id] = g_Colors[itemid];
 
  g_Chose[id] = true;
 
  menu_destroy(iMenu);
  return PLUGIN_HANDLED;
}

SaveColor(id)
{
  if (!g_Chose[id])
      return;

  if (db_name[id][0] && !equal(g_playername[id], db_name[id]))
  {
      if (db_slot_i >= sizeof(db_name))
        db_slot_i = g_maxplayers + 1;
     
      copy(db_name[db_slot_i], charsmax(db_name[]), db_name[id]);
      db_user_nvg_color[db_slot_i] = db_user_nvg_color[id];
      db_chose[db_slot_i] = g_Chose[id];
      db_slot_i++;
  }
 
  copy(db_name[id], charsmax(db_name[]), g_playername[id]);
  db_user_nvg_color[id] = g_UserColor[id];
  db_chose[id] = g_Chose[id];
}

LoadColor(id)
{
  static i;
  for (i = 0; i < sizeof(db_name); i++)
  {
      if (equal(g_playername[id], db_name[i]))
      {
        g_Chose[id] = db_chose[i];
        if (g_Chose[id])
            g_UserColor[id] = db_user_nvg_color[i];
           
        return;
      }
  }
}

public spec_nvision(id)
{
  if (!is_user_connected(id) || is_user_alive(id))
      return;
 
  g_nvision[id] = true;
  g_nvisionenabled[id] = true;
  remove_task(id);
  set_task(0.1, "set_user_nvision", id, _, _, "b");
}

public set_user_nvision(id)
{
  static origin[3];
  get_user_origin(id, origin);
 
  message_begin(MSG_ONE_UNRELIABLE, SVC_TEMPENTITY, _, id);
  write_byte(TE_DLIGHT);
  write_coord(origin[0]);
  write_coord(origin[1]);
  write_coord(origin[2]);
  write_byte(get_pcvar_num(cvar_radius));
  write_byte(g_UserColor[id][0]);
  write_byte(g_UserColor[id][1]);
  write_byte(g_UserColor[id][2]);
  write_byte(2);
  write_byte(0);
  message_end();
}

stock fm_cs_get_user_team(id)
{
  return get_pdata_int(id, OFFSET_TEAM);
}

stock fm_get_user_nvg(index)
{
  return get_pdata_int(index, OFFSET_NVG);
}


Tenta ai ;)

description[Plugin] Não Compila EmptyRe: [Plugin] Não Compila

more_horiz
https://mega.co.nz/#!Nt8TDCiI!EE2SQkI4JLpLb7ZYAiZgVWpVYhw9Fyh2bHLaEmIzcHA

description[Plugin] Não Compila EmptyRe: [Plugin] Não Compila

more_horiz
Para quem disse ter feito um item extra, é bem simples pegar a include do bioharzard.

Download da include: Clique aqui

description[Plugin] Não Compila EmptyRe: [Plugin] Não Compila

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