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[Pedido] Sma Empty[Pedido] Sma

more_horiz
Gente eu precisoo da Sma do Assasino alguem tem ?
me passa por favor

@Edit

E Tambem queriia esse Plugin com sma de preferencia


[Pedido] Sma YVHDIxtTT8gAAAABJRU5ErkJggg==

description[Pedido] Sma EmptyRe: [Pedido] Sma

more_horiz
Ta ai

Código:

#include <amxmodx>
#include <amx_settings_api>
#include <cs_teams_api>
#include <zp50_gamemodes>
#include <zp50_class_assassin>
#include <zp50_deathmatch>
#include <zp50_items.inc>

new modo

// Settings file
new const ZP_SETTINGS_FILE[] = "zombieplague.ini"

// Default sounds
new const sound_assassin[][] = { "zombie_plague/assassin1.wav" , "zombie_plague/assassin2.wav" }

#define SOUND_MAX_LENGTH 64

new Array:g_sound_assassin

// HUD messages
#define HUD_EVENT_X -1.0
#define HUD_EVENT_Y 0.17
#define HUD_EVENT_R 0
#define HUD_EVENT_G 255
#define HUD_EVENT_B 255

new g_MaxPlayers
new g_HudSync
new g_TargetPlayer

new cvar_assassin_chance, cvar_assassin_min_players
new cvar_assassin_show_hud, cvar_assassin_sounds
new cvar_assassin_allow_respawn
#include <hamsandwich>
public plugin_init()
{
   RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1);
}
public plugin_precache()
{
   // Register game mode at precache (plugin gets paused after this)
   register_plugin("[ZP] Game Mode: assassin", ZP_VERSION_STRING, "ZP Dev Team")
   zp_gamemodes_register("Assasin Mode")
   
   // Create the HUD Sync Objects
   g_HudSync = CreateHudSyncObj()
   
   g_MaxPlayers = get_maxplayers()
   
   cvar_assassin_chance = register_cvar("zp_assassin_chance", "20")
   cvar_assassin_min_players = register_cvar("zp_assassin_min_players", "0")
   cvar_assassin_show_hud = register_cvar("zp_assassin_show_hud", "1")
   cvar_assassin_sounds = register_cvar("zp_assassin_sounds", "1")
   cvar_assassin_allow_respawn = register_cvar("zp_assassin_allow_respawn", "0")
   
   // Initialize arrays
   g_sound_assassin = ArrayCreate(SOUND_MAX_LENGTH, 1)
   
   // Load from external file
   amx_load_setting_string_arr(ZP_SETTINGS_FILE, "Sounds", "ROUND ASSASSIN", g_sound_assassin)
   
   // If we couldn't load custom sounds from file, use and save default ones
   new index
   if (ArraySize(g_sound_assassin) == 0)
   {
      for (index = 0; index < sizeof sound_assassin; index++)
         ArrayPushString(g_sound_assassin, sound_assassin[index])
      
      // Save to external file
      amx_save_setting_string_arr(ZP_SETTINGS_FILE, "Sounds", "ROUND ASSASSIN", g_sound_assassin)
   }
   
   // Precache sounds
   new sound[SOUND_MAX_LENGTH]
   for (index = 0; index < ArraySize(g_sound_assassin); index++)
   {
      ArrayGetString(g_sound_assassin, index, sound, charsmax(sound))
      if (equal(sound[strlen(sound)-4], ".mp3"))
      {
         format(sound, charsmax(sound), "sound/%s", sound)
         precache_generic(sound)
      }
      else
         precache_sound(sound)
   }
}

// Deathmatch module's player respawn forward
public zp_fw_deathmatch_respawn_pre(id)
{
   // Respawning allowed?
   if (!get_pcvar_num(cvar_assassin_allow_respawn))
      return PLUGIN_HANDLED;
   
   return PLUGIN_CONTINUE;
}

public zp_fw_core_spawn_post(id)
{
   // Always respawn as human on assassin rounds
   zp_core_respawn_as_zombie(id, false)
}

public zp_fw_gamemodes_choose_pre(game_mode_id, skipchecks)
{
   if (!skipchecks)
   {
      // Random chance
      if (random_num(1, get_pcvar_num(cvar_assassin_chance)) != 1)
         return PLUGIN_HANDLED;
      
      // Min players
      if (GetAliveCount() < get_pcvar_num(cvar_assassin_min_players))
         return PLUGIN_HANDLED;
   }
   
   // Game mode allowed
   return PLUGIN_CONTINUE;
}

public zp_fw_gamemodes_choose_post(game_mode_id, target_player)
{
   // Pick player randomly?
   g_TargetPlayer = (target_player == RANDOM_TARGET_PLAYER) ? GetRandomAlive(random_num(1, GetAliveCount())) : target_player
}

public zp_fw_gamemodes_start()
{
   // Turn player into assassin
   zp_class_assassin_set(g_TargetPlayer)

   
   // Remaining players should be humans (CTs)
   new id
   for (id = 1; id <= g_MaxPlayers; id++)
   {
      // Not alive
      if (!is_user_alive(id))
         continue;
      
      // This is our assassin
      if (zp_class_assassin_get(id))
         continue;
      
      // Switch to CT
      cs_set_player_team(id, CS_TEAM_CT)
   }
   
   // Play assassin sound
   if (get_pcvar_num(cvar_assassin_sounds))
   {
      new sound[SOUND_MAX_LENGTH]
      ArrayGetString(g_sound_assassin, random_num(0, ArraySize(g_sound_assassin) - 1), sound, charsmax(sound))
      PlaySoundToClients(sound)
   }
   
   if (get_pcvar_num(cvar_assassin_show_hud))
   {
      // Show assassin HUD notice
      new name[32]
      get_user_name(g_TargetPlayer, name, charsmax(name))
      set_hudmessage(HUD_EVENT_R, HUD_EVENT_G, HUD_EVENT_B, HUD_EVENT_X, HUD_EVENT_Y, 1, 0.0, 5.0, 1.0, 1.0, -1)
      ShowSyncHudMsg(0, g_HudSync, "%s e o Assassino !!!", name)
   }
   modo = true
}

// Plays a sound on clients
PlaySoundToClients(const sound[])
{
   if (equal(sound[strlen(sound)-4], ".mp3"))
      client_cmd(0, "mp3 play ^"sound/%s^"", sound)
   else
      client_cmd(0, "spk ^"%s^"", sound)
}

// Get Alive Count -returns alive players number-
GetAliveCount()
{
   new iAlive, id
   
   for (id = 1; id <= g_MaxPlayers; id++)
   {
      if (is_user_alive(id))
         iAlive++
   }
   
   return iAlive;
}

// Get Random Alive -returns index of alive player number target_index -
GetRandomAlive(target_index)
{
   new iAlive, id
   
   for (id = 1; id <= g_MaxPlayers; id++)
   {
      if (is_user_alive(id))
         iAlive++
      
      if (iAlive == target_index)
         return id;
   }
   
   return -1;
}
public zp_fw_gamemodes_end()
{
   if(modo)
   modo = false
}
public zp_fw_items_select_pre(id, itemid, ignorecost)
{
   if(modo)
   {         
      return ZP_ITEM_DONT_SHOW;
   }
   //return HAM_IGNORED;
   return PLUGIN_CONTINUE
}
public fw_PlayerSpawn_Post(id)
{
   if(!modo)
      return PLUGIN_HANDLED
   
   if (zp_class_assassin_get(id))
      return PLUGIN_HANDLED
   
   if (!zp_core_is_zombie(id))
      return PLUGIN_HANDLED   
      
   zp_core_cure(id)
   
   return PLUGIN_HANDLED_MAIN   
}

Só falta converter  pra advance

@Edit

Ta ai como colocar essa mensaginha verde 

Link: https://zplague.forumeiro.com/t5412-include-zp_tutor_print

description[Pedido] Sma EmptyRe: [Pedido] Sma

more_horiz
[D]etonado[R] escreveu:
Ta ai

Código:

#include <amxmodx>
#include <amx_settings_api>
#include <cs_teams_api>
#include <zp50_gamemodes>
#include <zp50_class_assassin>
#include <zp50_deathmatch>
#include <zp50_items.inc>

new modo

// Settings file
new const ZP_SETTINGS_FILE[] = "zombieplague.ini"

// Default sounds
new const sound_assassin[][] = { "zombie_plague/assassin1.wav" , "zombie_plague/assassin2.wav" }

#define SOUND_MAX_LENGTH 64

new Array:g_sound_assassin

// HUD messages
#define HUD_EVENT_X -1.0
#define HUD_EVENT_Y 0.17
#define HUD_EVENT_R 0
#define HUD_EVENT_G 255
#define HUD_EVENT_B 255

new g_MaxPlayers
new g_HudSync
new g_TargetPlayer

new cvar_assassin_chance, cvar_assassin_min_players
new cvar_assassin_show_hud, cvar_assassin_sounds
new cvar_assassin_allow_respawn
#include <hamsandwich>
public plugin_init()
{
 RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1);
}
public plugin_precache()
{
 // Register game mode at precache (plugin gets paused after this)
 register_plugin("[ZP] Game Mode: assassin", ZP_VERSION_STRING, "ZP Dev Team")
 zp_gamemodes_register("Assasin Mode")
 
// Create the HUD Sync Objects
 g_HudSync = CreateHudSyncObj()
 
g_MaxPlayers = get_maxplayers()
 
cvar_assassin_chance = register_cvar("zp_assassin_chance", "20")
 cvar_assassin_min_players = register_cvar("zp_assassin_min_players", "0")
 cvar_assassin_show_hud = register_cvar("zp_assassin_show_hud", "1")
 cvar_assassin_sounds = register_cvar("zp_assassin_sounds", "1")
 cvar_assassin_allow_respawn = register_cvar("zp_assassin_allow_respawn", "0")
 
// Initialize arrays
 g_sound_assassin = ArrayCreate(SOUND_MAX_LENGTH, 1)
 
// Load from external file
 amx_load_setting_string_arr(ZP_SETTINGS_FILE, "Sounds", "ROUND ASSASSIN", g_sound_assassin)
 
// If we couldn't load custom sounds from file, use and save default ones
 new index
 if (ArraySize(g_sound_assassin) == 0)
 {
 for (index = 0; index < sizeof sound_assassin; index++)
 ArrayPushString(g_sound_assassin, sound_assassin[index])
 
// Save to external file
 amx_save_setting_string_arr(ZP_SETTINGS_FILE, "Sounds", "ROUND ASSASSIN", g_sound_assassin)
 }
 
// Precache sounds
 new sound[SOUND_MAX_LENGTH]
 for (index = 0; index < ArraySize(g_sound_assassin); index++)
 {
 ArrayGetString(g_sound_assassin, index, sound, charsmax(sound))
 if (equal(sound[strlen(sound)-4], ".mp3"))
 {
 format(sound, charsmax(sound), "sound/%s", sound)
 precache_generic(sound)
 }
 else
 precache_sound(sound)
 }
}

// Deathmatch module's player respawn forward
public zp_fw_deathmatch_respawn_pre(id)
{
 // Respawning allowed?
 if (!get_pcvar_num(cvar_assassin_allow_respawn))
 return PLUGIN_HANDLED;
 
return PLUGIN_CONTINUE;
}

public zp_fw_core_spawn_post(id)
{
 // Always respawn as human on assassin rounds
 zp_core_respawn_as_zombie(id, false)
}

public zp_fw_gamemodes_choose_pre(game_mode_id, skipchecks)
{
 if (!skipchecks)
 {
 // Random chance
 if (random_num(1, get_pcvar_num(cvar_assassin_chance)) != 1)
 return PLUGIN_HANDLED;
 
// Min players
 if (GetAliveCount() < get_pcvar_num(cvar_assassin_min_players))
 return PLUGIN_HANDLED;
 }
 
// Game mode allowed
 return PLUGIN_CONTINUE;
}

public zp_fw_gamemodes_choose_post(game_mode_id, target_player)
{
 // Pick player randomly?
 g_TargetPlayer = (target_player == RANDOM_TARGET_PLAYER) ? GetRandomAlive(random_num(1, GetAliveCount())) : target_player
}

public zp_fw_gamemodes_start()
{
 // Turn player into assassin
 zp_class_assassin_set(g_TargetPlayer)

 
// Remaining players should be humans (CTs)
 new id
 for (id = 1; id <= g_MaxPlayers; id++)
 {
 // Not alive
 if (!is_user_alive(id))
 continue;
 
// This is our assassin
 if (zp_class_assassin_get(id))
 continue;
 
// Switch to CT
 cs_set_player_team(id, CS_TEAM_CT)
 }
 
// Play assassin sound
 if (get_pcvar_num(cvar_assassin_sounds))
 {
 new sound[SOUND_MAX_LENGTH]
 ArrayGetString(g_sound_assassin, random_num(0, ArraySize(g_sound_assassin) - 1), sound, charsmax(sound))
 PlaySoundToClients(sound)
 }
 
if (get_pcvar_num(cvar_assassin_show_hud))
 {
 // Show assassin HUD notice
 new name[32]
 get_user_name(g_TargetPlayer, name, charsmax(name))
 set_hudmessage(HUD_EVENT_R, HUD_EVENT_G, HUD_EVENT_B, HUD_EVENT_X, HUD_EVENT_Y, 1, 0.0, 5.0, 1.0, 1.0, -1)
 ShowSyncHudMsg(0, g_HudSync, "%s e o Assassino !!!", name)
 }
 modo = true
}

// Plays a sound on clients
PlaySoundToClients(const sound[])
{
 if (equal(sound[strlen(sound)-4], ".mp3"))
 client_cmd(0, "mp3 play ^"sound/%s^"", sound)
 else
 client_cmd(0, "spk ^"%s^"", sound)
}

// Get Alive Count -returns alive players number-
GetAliveCount()
{
 new iAlive, id
 
for (id = 1; id <= g_MaxPlayers; id++)
 {
 if (is_user_alive(id))
 iAlive++
 }
 
return iAlive;
}

// Get Random Alive -returns index of alive player number target_index -
GetRandomAlive(target_index)
{
 new iAlive, id
 
for (id = 1; id <= g_MaxPlayers; id++)
 {
 if (is_user_alive(id))
 iAlive++
 
if (iAlive == target_index)
 return id;
 }
 
return -1;
}
public zp_fw_gamemodes_end()
{
 if(modo)
 modo = false
}
public zp_fw_items_select_pre(id, itemid, ignorecost)
{
 if(modo)
 {
return ZP_ITEM_DONT_SHOW;
 }
 //return HAM_IGNORED;
 return PLUGIN_CONTINUE
}
public fw_PlayerSpawn_Post(id)
{
 if(!modo)
 return PLUGIN_HANDLED
 
if (zp_class_assassin_get(id))
 return PLUGIN_HANDLED
 
if (!zp_core_is_zombie(id))
 return PLUGIN_HANDLED

zp_core_cure(id)
 
return PLUGIN_HANDLED_MAIN
}

Só falta converter  pra advance

@Edit

Ta ai como colocar essa mensaginha verde 

Link: https://zplague.forumeiro.com/t5412-include-zp_tutor_print
Não tem o plugin que ele pediu ai no post, ai so ta falando como arruma o erro.

description[Pedido] Sma EmptyRe: [Pedido] Sma

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