L 07/04/2022 - 17:22:01: HudSyncObject -1 is invalid
L 07/04/2022 - 17:22:01: [AMXX] Displaying debug trace (plugin "jb_playarena.amxx", version "1.9")
L 07/04/2022 - 17:22:01: [AMXX] Run time error 10: native error (native "ShowSyncHudMsg")
L 07/04/2022 - 17:22:01: [AMXX] [0] jb_playarena.sma::player_hudmessage (line 5916)
L 07/04/2022 - 17:22:01: [AMXX] [1] jb_playarena.sma::JailHudTask (line 5678)
Va rog rapid
Code: Select all
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta_util>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#include <nvault>
#include <dhudmessage>
#include <Play_ArenaINC>
#define PLUGIN_NAME "JailBreak Extreme Ultimated"
#define PLUGIN_AUTHOR "JoRoPiTo & PedoBear"
#define PLUGIN_VERSION "1.9"
#define PLUGIN_CVAR "JbExtreme Ultimated"
#define TASK_STATUS 2487000
#define TASK_FREEDAY 2487100
#define TASK_ROUND 2487200
#define TASK_HELP 2487300
#define TASK_FREEEND 2487500
#define HUD_DELAY Float:1.0
#define CELL_RADIUS Float:200.0
#pragma semicolon 0
#pragma tabsize 0
#define ADMIN_ACCESS ADMIN_SLAY
#define ADMIN_VOICE ADMIN_RESERVATION
//Player StatusIcon
#define IsPlayer(%1) (1 <= %1 <= mxplr)
#define jbe_is_user_valid(%0) (%0 && %0 <= g_iMaxPlayers)
#define is_valid_player(%1) (1 <= %1 <= 32)
#define get_bit(%1,%2) ( %1 & 1 << ( %2 & 31 ) )
#define set_bit(%1,%2) %1 |= ( 1 << ( %2 & 31 ) )
#define clear_bit(%1,%2) %1 &= ~( 1 << ( %2 & 31 ) )
#define invert_bit(%0,%1) ((%0) ^= (1 << (%1)))
#define isnotset_bit(%0,%1) (~(%0) & (1 << (%1)))
#define vec_len(%1) floatsqroot(%1[0] * %1[0] + %1[1] * %1[1] + %1[2] * %1[2])
#define vec_mul(%1,%2) ( %1[0] *= %2, %1[1] *= %2, %1[2] *= %2)
#define vec_copy(%1,%2) ( %2[0] = %1[0], %2[1] = %1[1],%2[2] = %1[2])
// Offsets
#define m_iPrimaryWeapon 116
#define m_iVGUI 510
#define m_fGameHUDInitialized 349
#define m_fNextHudTextArgsGameTime 198
enum _hud { _hudsync, Float:_x, Float:_y, Float:_time }
new gp_PrecacheSpawn
new gp_PrecacheKeyValue
new gp_CrowbarMax
new gp_CrowbarMul
new gp_TeamRatio
new gp_CtMax
new gp_BoxMax
new gp_TalkMode
new gp_VoiceBlock
new gp_RetryTime
new gp_RoundMax
new gp_ButtonShoot
new gp_SimonSteps
new gp_GlowModels
new gp_AutoLastresquest
new gp_LastRequest
new gp_Motd
new gp_SpectRounds
new gp_AutoOpen
new g_MaxClients
new g_MsgStatusText
new g_MsgStatusIcon
new g_MsgClCorpse
new g_MsgMOTD
new gc_TalkMode
new gc_VoiceBlock
new gc_SimonSteps
new gc_ButtonShoot
new Float:gc_CrowbarMul
// Precache
new const VIP_ACCES[] = { "x" }
new const _Pumni[][] = { "models/jb_pa_models/p_pumni.mdl", "models/jb_pa_models/v_hands.mdl" }
new const _Ranga[][] = { "models/jb_pa_models/p_ranga.mdl", "models/jb_pa_models/v_ranga.mdl" }
new const v_Bulan[] = { "models/jb_pa_models/v_bulan.mdl" }
new const p_Bulan[] = { "models/jb_pa_models/p_bulan.mdl" }
new const _FistSounds[][] = { "weapons/cbar_hitbod2.wav", "weapons/cbar_hitbod1.wav", "weapons/bullet_hit1.wav", "weapons/bullet_hit2.wav" }
new const game_box[] = { "sound/jb_pa_sounds/jb_box.mp3" }
new const game_boxoff[] = { "sound/jb_pa_sounds/jb_aplauze.mp3" }
new const _RemoveEntities[][] = {
"func_hostage_rescue", "info_hostage_rescue", "func_bomb_target", "info_bomb_target",
"hostage_entity", "info_vip_start", "func_vip_safetyzone", "func_escapezone"
}
// Reasons
new const g_Reasons[][] = {
"",
"JBE_PRISONER_REASON_1",
"JBE_PRISONER_REASON_2",
"JBE_PRISONER_REASON_3",
"JBE_PRISONER_REASON_4",
"JBE_PRISONER_REASON_5",
"JBE_PRISONER_REASON_6"
}
// HudSync: 0=ttinfo / 1=info / 2=simon / 3=ctinfo / 4=player / 5=day / 6=center / 7=help / 8=timer
new const g_HudSync[][_hud] = {
{0, 0.6, 0.2, 2.0},
{0, -1.0, 0.7, 5.0},
{0, 0.1, 0.2, 2.0},
{0, 0.1, 0.3, 2.0},
{0, -1.0, 0.9, 3.0},
{0, 0.6, 0.1, 3.0},
{0, -1.0, 0.6, 3.0},
{0, 0.8, 0.3, 20.0},
{0, -1.0, 0.4, 3.0}
}
//Colors: 0: Simon || 1: Freeday || 2: CT Duel || 3: TT Duel
new const g_Colors[][3] = { {0, 255, 0}, {0, 255, 0}, {0, 0, 255}, {255, 0, 0} }
new CsTeams:g_PlayerTeam[33]
new Trie:g_CellManagers
new g_HelpText[512]
new g_JailDay
new g_PlayerJoin
new g_PlayerReason[33]
new g_PlayerSpect[33]
new g_PlayerSimon[33]
new g_PlayerNomic
new g_PlayerWanted
new g_PlayerCrowbar
new g_PlayerRevolt
new g_PlayerHelp
new g_PlayerFreeday
new g_PlayerLast
new g_FreedayAuto
new g_FreedayNext
new g_TeamCount[CsTeams]
new g_TeamAlive[CsTeams]
new g_BoxStarted
new g_CrowbarCount
new g_Simon
new g_SimonAllowed
new g_SimonTalking
new g_SimonVoice
new g_RoundStarted
new g_LastDenied
new g_Freeday
new g_BlockWeapons
new g_RoundEnd
new g_Duel
new g_Buttons[10]
//GodMode Menu
new g_PlayerVoice
new mxplr
new bool:team
//DaysMenu
#define DMG_HEGRENADE (1<<24)
#define m_bloodColor 89
#define m_iPrimaryWeapon 116
//Tag Day
#define BREAK_GLASS 0x01
new g_pSpriteFrost, g_pModelFrost
new g_Cvar[7]
new szHelpNum
new szPlayerCaught[33]
new szPlayerTime[33]
new szPlayerCT[33]
new g_syncHudMessage
new g_syncHudMessage2
new tagday[33]
new secundeday
new is_freezed[33];
const HNSCount = 120;
new g_HNSCount;
new gmsgScreenFade;
new g_GameMode;
new check_blueteam = 0;
new check_redteam = 0;
new check_bteam;
new check_rteam;
new m_iBlood[2];
enum
{
TASK_GANGDAY
};
//Aura Days
#define TASK_AURA 100
#define ID_AURA (taskid - TASK_AURA)
new cvar_players_aura, cvar_players_aura_color_R, cvar_players_aura_color_G, cvar_players_aura_color_B
//Functii Days-URI
new bool:g_isDay;
//Nume Days-uri
new const g_DayName[ 20 ][] = {
"",
"Zombie Day",
"Reverse Zombie Day",
"Spartan Day",
"Gravity Day",
"Grenade Day",
"NightCrawler Day",
"Box Day",
"Gang Day",
"War Day",
"Hns Day",
"Hns Simple Day",
"Ghost Day",
"GodMode Day",
"Magic Day",
"Tag Day",
"One Hp Day",
"DodgeBall Day",
"HeadShot Day",
"PaintBall Day"
};
//Block Things
new g_pBlockRadio, g_pRemoveBuyZone;
#if cellbits == 32
#define OFFSET_BZ 235
#else
#define OFFSET_BZ 268
#endif
//RoundEnd
#define TASK_FADE 51137
//Drop Crowbar
new const gCrowbarClassname[ ] = { "crowbar$" };
new const g_CrowbarModel[ ] = { "models/jb_pa_models/w_cbd.mdl" };
enum _: iCrowbarSequences
{
CrowbarIdle = 0,
CrowbarFloat,
CrowbarSpin
}
//SimonMenu
#define SM_PREFIX "!y[!gSimonMenu!y]"
#define CHEK_WEAPON_AMOUNT 3 // Amount on the round
#define CHEK_WEAPON_DIST 150 // Distance
new ChekWeaponAmount[33]
//LastReQuest Nou
#define TASK_LAST 51134
#define DUEL_PREFIX "!y[!gLastRequest!y]"
new g_PlayerDuelT, g_PlayerDuelCT
new PlayDuel
//Team Menu
#define m_iVGUI 510
#define m_fGameHUDInitialized 349
#define TEAM_REFRESH_DELAY 10.0
// Old Style Menus
stock const FIRST_JOIN_MSG [] = "#Team_Select" ;
stock const FIRST_JOIN_MSG_SPEC [] = "#Team_Select_Spect" ;
stock const INGAME_JOIN_MSG [] = "#IG_Team_Select" ;
stock const INGAME_JOIN_MSG_SPEC [] = "#IG_Team_Select_Spect" ;
const iMaxLen = sizeof ( INGAME_JOIN_MSG_SPEC );
enum
{
TEAM_T = 1,
TEAM_CT = 2,
TEAM_ALL = 5,
TEAM_START = 6
}
enum
{
AL_NOT = 0,
AL_ALIVE = 1,
AL_BOTH = 2
}
// New VGUI Menus
stock const VGUI_JOIN_TEAM_NUM = 2 ;
#define TASK_SHOWTEAMMENU_TIMER 51120
new gp_AutoJoin
new inround
new bool:user[32]
//Block Fire in The Hole
enum _:CvarBits (<<=1)
{
BLOCK_RADIO = 1,
BLOCK_MSG
};
new g_pCvar;
public plugin_init()
{
unregister_forward(FM_Spawn, gp_PrecacheSpawn)
unregister_forward(FM_KeyValue, gp_PrecacheKeyValue)
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)
register_cvar(PLUGIN_CVAR, PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY)
set_task(HUD_DELAY, "JailHudTask", TASK_STATUS, _, _, "b")
register_dictionary("jb_playarena.txt")
g_MsgStatusText = get_user_msgid("StatusText")
g_MsgStatusIcon = get_user_msgid("StatusIcon")
g_MsgMOTD = get_user_msgid("MOTD")
g_MsgClCorpse = get_user_msgid("ClCorpse")
register_message(g_MsgStatusText, "msg_statustext")
register_message(get_user_msgid("TextMsg"), "message_textmsg")
register_message(get_user_msgid("TextMsg" ), "MessageTextMsg");
register_message(g_MsgStatusIcon, "msg_statusicon")
register_message(g_MsgMOTD, "msg_motd")
register_message(g_MsgClCorpse, "msg_clcorpse")
register_event("CurWeapon", "current_weapon", "be", "1=1", "2=29")
register_event("StatusValue", "player_status", "be", "1=2", "2!0")
register_event("StatusValue", "player_status", "be", "1=1", "2=0")
register_impulse(100, "impulse_100")
RegisterHam(Ham_Spawn, "player", "player_spawn", 1)
RegisterHam(Ham_TakeDamage, "player", "player_damage")
RegisterHam(Ham_TraceAttack, "player", "player_attack")
RegisterHam(Ham_TraceAttack, "func_button", "button_attack")
RegisterHam(Ham_Killed, "player", "player_killed", 1)
//Functii Block
register_forward(FM_ClientKill, "FwdClientKill");
register_clcmd("drop", "block_drop")
RegisterHam(Ham_TakeHealth, "player", "Player_TakeHealth")
register_message(get_user_msgid("SendAudio"), "block_FITH_audio");
register_clcmd("radio1", "CmdRadio");
register_clcmd("radio2", "CmdRadio");
register_clcmd("radio3", "CmdRadio");
g_pBlockRadio = register_cvar("jailbreak_radio", "1");
g_pRemoveBuyZone = register_cvar("jailbreak_removebz", "1");
if(get_pcvar_num(g_pRemoveBuyZone))
{
register_message(get_user_msgid("StatusIcon" ), "MsgStatusIcon"); //BuyZone Icon
// Remove buyzone on map
remove_entity_name( "info_map_parameters" );
remove_entity_name( "func_buyzone" );
// Create own entity to block buying
new iEntity = create_entity( "info_map_parameters" );
DispatchKeyValue( iEntity, "buying", "3" );
DispatchSpawn( iEntity );
}
//DaysMenu
RegisterHam(Ham_TraceAttack, "player", "fwdDamagePlayer")
register_forward(FM_PlayerPreThink, "fw_PlayerPreThink")
g_Cvar[1] = register_cvar("jb_chay_timestart", "10")
g_Cvar[2] = register_cvar("jb_chay_timespasti", "20")
g_Cvar[3] = register_cvar("jb_chay_hp", "25")
g_Cvar[4] = register_cvar("jb_chay_speed", "400.0")
g_Cvar[5] = register_cvar("jb_chay_gravity", "0.2")
register_cvar("jb_dayss", "");
gmsgScreenFade = get_user_msgid("ScreenFade")
g_syncHudMessage2 = CreateHudSyncObj();
g_syncHudMessage = CreateHudSyncObj();
//Crowbar Drop
register_event("DeathMsg", "Hook_DeathMessage", "a")
register_touch(gCrowbarClassname, "player", "Forward_TouchCrowbar")
//Team Menu
register_message ( get_user_msgid ( "ShowMenu" ), "message_ShowMenu" );
register_message ( get_user_msgid ( "VGUIMenu" ), "message_VGUIMenu" );
register_clcmd("chooseteam" , "show_team_menu")
register_clcmd ( "jointeam" , "jointeam" )
register_clcmd ( "joinclass" , "jointeam" )
gp_AutoJoin = register_cvar ( "jb_autojoin" , "0" )
register_forward(FM_SetClientKeyValue, "set_client_kv")
register_forward(FM_EmitSound, "sound_emit")
register_forward(FM_Voice_SetClientListening, "voice_listening")
register_forward(FM_CmdStart, "cmd_last_start", 1)
register_logevent("round_first", 2, "0=World triggered", "1&Restart_Round_")
register_logevent("round_first", 2, "0=World triggered", "1=Game_Commencing")
register_logevent("round_start", 2, "0=World triggered", "1=Round_Start")
register_logevent("round_end", 2, "1=Round_End")
register_clcmd("+simonvoice", "cmd_voiceon")
register_clcmd("-simonvoice", "cmd_voiceoff")
//Comenzi Ascunse;
register_clcmd("+simonvoice", "cmd_voiceon")
register_clcmd("-simonvoice", "cmd_voiceoff")
register_clcmd("say /fd", "cmd_freeday")
register_clcmd("say /freeday", "cmd_freeday")
register_clcmd("say /frd", "cmd_freeday")
register_clcmd("say /lr", "cmd_lastrequest")
register_clcmd("say /lastrequest", "cmd_lastrequest")
register_clcmd("say /duel", "cmd_lastrequest")
register_clcmd("say /simon", "cmd_simon")
register_clcmd("say /simonmenu", "cmd_simonmenu")
register_clcmd("say /menu", "cmd_simonmenu")
register_clcmd("say /open", "cmd_open")
register_clcmd("say /nomic", "cmd_nomic")
register_clcmd("say /box", "cmd_boxmenu")
register_clcmd("say /days", "cmd_daysmenu" )
register_clcmd("say /daysmenu", "cmd_daysmenu")
register_clcmd("say /day", "cmd_daysmenu")
register_clcmd("say /zile", "cmd_daysmenu")
register_clcmd("say /bind", "ClCmd_BindKeys");
register_clcmd("jbe_freeday", "adm_freeday", ADMIN_ACCESS)
register_concmd("jbe_nomic", "adm_nomic", ADMIN_RESERVATION)
register_concmd("jbe_open", "adm_open", ADMIN_ACCESS)
register_concmd("jbe_box", "adm_box", ADMIN_ACCESS)
register_concmd("jbe_boxoff", "adm_boxoff", ADMIN_ACCESS)
register_concmd("jb_simonreset", "cmd_simonreset", ADMIN_ACCESS)
gp_GlowModels = register_cvar("jbe_glowmodels", "1")
gp_SimonSteps = register_cvar("jbe_simonsteps", "1")
gp_CrowbarMul = register_cvar("jbe_crowbarmultiplier", "25.0")
gp_CrowbarMax = register_cvar("jbe_maxcrowbar", "1")
gp_TeamRatio = register_cvar("jbe_teamratio", "3")
gp_CtMax = register_cvar("jbe_maxct", "6")
gp_BoxMax = register_cvar("jbe_boxmax", "6")
gp_RetryTime = register_cvar("jbe_retrytime", "10.0")
gp_RoundMax = register_cvar("jbe_freedayround", "240.0")
gp_AutoLastresquest = register_cvar("jbe_autolastrequest", "1")
gp_LastRequest = register_cvar("jbe_lastrequest", "1")
gp_Motd = register_cvar("jbe_motd", "1")
gp_SpectRounds = register_cvar("jbe_spectrounds", "3")
gp_AutoOpen = register_cvar("jbe_autoopen", "1")
gp_TalkMode = register_cvar("jbe_talkmode", "2") // 0-alltak / 1-tt talk / 2-tt no talk
gp_VoiceBlock = register_cvar("jbe_blockvoice", "2") // 0-dont block / 1-block voicerecord / 2-block voicerecord except simon
gp_ButtonShoot = register_cvar("jbe_buttonshoot", "1") // 0-standard / 1-func_button shoots!
g_pCvar = register_cvar( "sv_fith_block", "3" );
cvar_players_aura = register_cvar("jb_players_aura", "1")
cvar_players_aura_color_R = register_cvar("jb_players_aura_color_R", "0")
cvar_players_aura_color_G = register_cvar("jb_players_aura_color_G", "500")
cvar_players_aura_color_B = register_cvar("jb_players_aura_color_B", "500")
g_MaxClients = get_global_int(GL_maxClients)
for(new i = 0; i < sizeof(g_HudSync); i++)
g_HudSync[i][_hudsync] = CreateHudSyncObj()
formatex(g_HelpText, charsmax(g_HelpText), "%L^n^n%L^n^n%L^n^n%L",
LANG_SERVER, "JBE_HELP_TITLE",
LANG_SERVER, "JBE_HELP_BINDS",
LANG_SERVER, "JBE_HELP_GUARD_CMDS",
LANG_SERVER, "JBE_HELP_PRISONER_CMDS")
setup_buttons()
}
public fw_GetGameDescription()
{
new DayName[32];
if(g_GameMode >= 1)
formatex(DayName, charsmax(DayName), "%s", g_DayName[g_GameMode])
else if(g_RoundEnd)
formatex(DayName, charsmax(DayName), "Zi Normala")
else if(g_Freeday)
formatex(DayName, charsmax(DayName), "Zi Libera")
else
formatex(DayName, charsmax(DayName), "Zi Normala")
forward_return(FMV_STRING, DayName);
return FMRES_SUPERCEDE;
}
public ClCmd_BindKeys(id)
client_cmd(id, "^"^";BIND v +simonvoice");
public FwdClientKill(const id)
{
if(!is_user_alive(id))
return FMRES_IGNORED;
if(cs_get_user_team( id ) == CS_TEAM_T || cs_get_user_team( id ) == CS_TEAM_CT)
{
if(g_GameMode >= 1 || g_PlayerLast)
{
client_print(id, print_console, "Nu poti sa iti dai Kill acum !")
return FMRES_SUPERCEDE;
}
}
return FMRES_IGNORED;
}
public MsgStatusIcon(msg_id, msg_dest, id)
{
new szIcon[ 8 ];
get_msg_arg_string( 2, szIcon, 7 );
static const BuyZone[ ] = "buyzone";
if(equal(szIcon, BuyZone))
{
set_pdata_int( id, OFFSET_BZ, get_pdata_int( id, OFFSET_BZ, 5 ) & ~( 1 << 0 ), 5 );
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE;
}
public CmdRadio(id)
{
if(get_pcvar_num(g_pBlockRadio))
return PLUGIN_HANDLED_MAIN;
return PLUGIN_CONTINUE;
}
public block_drop(id)
{
if(g_GameMode >= 1 || g_Duel >= 1)
return PLUGIN_HANDLED;
return PLUGIN_CONTINUE;
}
public Player_TakeHealth(id)
{
if(g_GameMode >= 1 || (g_BoxStarted && get_user_team(id) == 1) || g_Duel >= 1)
return HAM_SUPERCEDE
return HAM_IGNORED
}
public block_FITH_audio(msg_id, msg_dest, entity)
return IsBlocked( BLOCK_RADIO ) ? GetReturnValue( 2, "%!MRAD_FIREINHOLE" ) : PLUGIN_CONTINUE;
GetReturnValue( const iParam, const szString[ ] )
{
new szTemp[ 18 ];
get_msg_arg_string( iParam, szTemp, 17 );
return ( equal( szTemp, szString ) ) ? PLUGIN_HANDLED : PLUGIN_CONTINUE;
}
bool:IsBlocked( const iType )
return bool:( get_pcvar_num( g_pCvar ) & iType );
public plugin_precache()
{
static i
precache_model("models/player/jb_pa_player/jb_pa_player.mdl")
precache_model("models/player/Play_Arena_VipCT/Play_Arena_VipCT.mdl")
precache_model("models/player/Play_Arena_VipT/Play_Arena_VipT.mdl")
precache_model("models/player/JB_FootBall_TeamA/JB_FootBall_TeamA.mdl")
precache_model("models/player/JB_FootBall_TeamB/JB_FootBall_TeamB.mdl")
//Bulan Gardieni
precache_model(v_Bulan)
precache_model(p_Bulan)
//Drop Crowbar Model
precache_model(g_CrowbarModel)
//Baza Models Official
for(i = 0; i < sizeof(_Pumni); i++)
precache_model(_Pumni[i])
for(i = 0; i < sizeof(_Ranga); i++)
precache_model(_Ranga[i])
//Sounds Pumni
for(i = 0; i < sizeof(_FistSounds); i++)
precache_sound(_FistSounds[i])
//Sound Box
precache_generic(game_box)
precache_generic(game_boxoff)
//Client Connect
precache_generic("sound/jb_pa_sounds/client_connect.mp3")
//Sound Baza
precache_sound("jb_pa_sounds/jb_alarma.wav")
precache_sound("jb_pa_sounds/jb_lr.wav")
precache_sound("jb_pa_sounds/jbkill.wav")
precache_sound("jb_pa_sounds/jb_clopotel.wav")
precache_sound("jb_pa_sounds/jb_open.wav")
//DaysMenu
precache_model("models/player/jb_pa_zombie/jb_pa_zombie.mdl")
g_pSpriteFrost = precache_model("sprites/play_arenasprites/frostgib.spr");
precache_sound("jb_pa_sounds/days_mode/tagday/freeze_player.wav");
g_CellManagers = TrieCreate()
gp_PrecacheSpawn = register_forward(FM_Spawn, "precache_spawn", 1)
gp_PrecacheKeyValue = register_forward(FM_KeyValue, "precache_keyvalue", 1)
}
public precache_spawn(ent)
{
if(is_valid_ent(ent))
{
static szClass[33]
entity_get_string(ent, EV_SZ_classname, szClass, sizeof(szClass))
for(new i = 0; i < sizeof(_RemoveEntities); i++)
if(equal(szClass, _RemoveEntities[i]))
remove_entity(ent)
}
}
public precache_keyvalue(ent, kvd_handle)
{
static info[32]
if(!is_valid_ent(ent))
return FMRES_IGNORED
get_kvd(kvd_handle, KV_ClassName, info, charsmax(info))
if(!equal(info, "multi_manager"))
return FMRES_IGNORED
get_kvd(kvd_handle, KV_KeyName, info, charsmax(info))
TrieSetCell(g_CellManagers, info, ent)
return FMRES_IGNORED
}
/*==========================================================================
CrowBar DROP
==========================================================================*/
public Hook_DeathMessage()
{
new iVictim = read_data(2);
if(read_data(1) == iVictim)
return;
new Float:flPlayerOrigin [3]
pev(iVictim, pev_origin, flPlayerOrigin)
flPlayerOrigin[2] += 4.0;
new iEntityCB = create_entity("info_target")
if(!pev_valid(iEntityCB))
return;
if(get_user_team(iVictim) == 1 && get_bit(g_PlayerCrowbar, iVictim))
{
engfunc(EngFunc_SetOrigin, iEntityCB, flPlayerOrigin)
set_pev(iEntityCB, pev_classname, gCrowbarClassname)
engfunc(EngFunc_SetModel, iEntityCB, g_CrowbarModel)
set_pev(iEntityCB, pev_solid, SOLID_SLIDEBOX)
set_pev(iEntityCB, pev_movetype, MOVETYPE_NONE)
set_pev(iEntityCB, pev_framerate, 1.0)
set_pev(iEntityCB, pev_sequence, CrowbarFloat)
engfunc(EngFunc_SetSize, iEntityCB, Float:{ -10.0, -10.0, -10.0 }, Float:{ 10.0, 10.0, 10.0 })
engfunc(EngFunc_DropToFloor, iEntityCB)
set_pev(iEntityCB, pev_nextthink, get_gametime( ) + 1.0)
set_rendering( iEntityCB, kRenderFxGlowShell, (random_num(1, 255)), (random_num(1, 255)), (random_num(1, 255)), kRenderNormal, 75 );
clear_bit(g_PlayerCrowbar, iVictim)
}
}
public Forward_TouchCrowbar(iEntityCB, id)
{
if( pev_valid( iEntityCB ) && get_user_team(id) == 1 )
{
engclient_cmd ( id, "weapon_knife" );
g_CrowbarCount++
set_bit(g_PlayerCrowbar, id)
current_weapon(id)
set_pev( iEntityCB, pev_flags, FL_KILLME );
}
/*if( pev_valid( iEntityCB ) && get_user_team(id) == 2 )
{
set_pev( iEntityCB, pev_solid, SOLID_NOT );
}*/
return PLUGIN_CONTINUE;
}
/*=========================================================================
END CrowBar DROP
==========================================================================*/
public client_connect(id)
{
client_cmd(id,"mp3 loop sound/jb_pa_sounds/client_connect.mp3")
client_cmd(id, "echo ");
client_cmd(id, "echo ^" *=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*^" ");
client_cmd(id, "echo ^" *=-= JB.FRAGBITE.ro > SERVER ROMANESC =-=*^" ");
client_cmd(id, "echo ^" *=-= Iti uram o sadere cat mai placuta =-=*^" ");
client_cmd(id, "echo ^" *=-= Pentru admine aveti link mai jos =-=*^" ");
client_cmd(id, "echo ^" *=-= http://fragbite.ro/forum/index.php?/forum/251-jailbreak-%C2%BB-jb/ =-=*^" ");
client_cmd(id, "echo ^" *=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*^" ");
client_cmd(id, "echo ");
new userip[32], userauthid[32], username[32], password[32], password1[32], password2[32], password3[32], password4[32], password5[32]
get_user_ip(id, userip, 31, 1)
get_user_authid(id, userauthid, 31)
get_user_name(id, username, 31)
get_user_info(id, "_jb", password, 31)
get_user_info(id, "_pw", password1, 31)
get_user_info(id, "_zm", password2, 31)
get_user_info(id, "_cs", password3, 31)
get_user_info(id, "_zp", password4, 31)
get_user_info(id, "_anzo", password5, 31)
log_to_file("PlayArenaSecurity.log", "------ [ Nume : %s ] ===== [ SteamID : %s ] ===== [ IP: %s ]===== [_jb: %s ] ===== [ _pw: %s ] ===== [ _zm: %s ] ===== [ _cs: %s ] ===== [ _zp: %s ] ===== [ _anzo: %s ] ------", username, userauthid, userip, password, password1, password2, password3, password4, password5)
}
public client_putinserver(id)
{
clear_bit(g_PlayerJoin, id)
clear_bit(g_PlayerHelp, id)
clear_bit(g_PlayerCrowbar, id)
clear_bit(g_PlayerNomic, id)
clear_bit(g_PlayerWanted, id)
clear_bit(g_SimonTalking, id)
clear_bit(g_SimonVoice, id)
g_PlayerSpect[id] = 0
g_PlayerSimon[id] = 0
client_cmd(id, "cl_minmodels 0")
console_cmd(id, "cl_minmodels 0")
set_task(10.0, "welcome", id)
if(get_user_flags(id) & read_flags(VIP_ACCES))
{
new szName[32]
get_user_name(id,szName,31)
chatcolor(0, "!t[!gJb.FRAGBITE.ro!t] !y*!tV!y.!tI!y.!tP!y* !g%s !ta intrat !yin !gPenitenciar!y.", szName)
}
}
public welcome(id)
{
client_print(id, print_center, "Server detinut de happy")
chatcolor(id, "!tId !ghappy!y: !gd.paceagiu!t@!yyahoo!t.!gcom")
chatcolor(id, "!yPentru !gprobleme !tlegate !yde !gServer !tcontactati-ma !y!!!")
chatcolor(id, "!yDoresti sa iti bagi bind-ul de simon ? Daca da scrie in chat: /bind")
}
public client_disconnect(id)
{
if(g_Simon == id)
g_Simon = 0
if(g_PlayerLast == id || (g_Duel && (id == g_PlayerDuelT || id == g_PlayerDuelCT)))
{
g_Duel = 0
g_PlayerDuelT = 0
g_PlayerDuelCT = 0
g_LastDenied = 0
g_PlayerLast = 0
g_BlockWeapons = 0
}
remove_task(id + 22838)
if(get_bit(check_bteam, id))
check_blueteam--;
else if(get_bit(check_rteam, id))
check_redteam--;
remove_task(id+TASK_AURA)
if(g_TeamCount[CS_TEAM_T] == 0 || g_TeamCount[CS_TEAM_CT] == 0)
{
remove_task(TASK_SHOWTEAMMENU_TIMER)
inround = 0
}
if(get_user_flags(id) & read_flags(VIP_ACCES))
{
new szName[32]
get_user_name(id,szName,31)
chatcolor(0, "!t[!gJb.FRAGBITE.ro!t] !y*!tV!y.!tI!y.!tP!y* !g%s !ta iesit !ydin !gPenitenciar!y.", szName)
}
team_count()
}
public client_PostThink(id)
{
if(id != g_Simon || !gc_SimonSteps || !is_user_alive(id) ||
!(entity_get_int(id, EV_INT_flags) & FL_ONGROUND) || entity_get_int(id, EV_ENT_groundentity))
return PLUGIN_CONTINUE
static Float:origin[3]
static Float:last[3]
entity_get_vector(id, EV_VEC_origin, origin)
if(get_distance_f(origin, last) < 32.0)
{
return PLUGIN_CONTINUE
}
vec_copy(origin, last)
if(entity_get_int(id, EV_INT_bInDuck))
origin[2] -= 18.0
else
origin[2] -= 36.0
message_begin(MSG_BROADCAST, SVC_TEMPENTITY, {0,0,0}, 0)
write_byte(TE_WORLDDECAL)
write_coord(floatround(origin[0]))
write_coord(floatround(origin[1]))
write_coord(floatround(origin[2]))
write_byte(105)
message_end()
return PLUGIN_CONTINUE
}
public message_textmsg()
{
static msg[32]
get_msg_arg_string(2, msg, charsmax(msg))
if(g_GameMode >= 1)
return PLUGIN_HANDLED
if(equal(msg, "#Terrorists_Win"))
{
client_print(0, print_center, "%L", 0, "WIN_PRISONERS")
return PLUGIN_HANDLED
}
else if(equal(msg, "#CTs_Win"))
{
client_print(0, print_center, "%L", 0, "WIN_GUARD")
return PLUGIN_HANDLED
}
else if(equal(msg, "#Game_Commencing") || equal(msg, "#Game_will_restart_in"))
{
client_print(0, print_center, "%L", 0, "WIN_NO_ONE")
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public MessageTextMsg()
return ( get_msg_args( ) == 5 && IsBlocked( BLOCK_MSG ) ) ? GetReturnValue( 5, "#Fire_in_the_hole" ) : PLUGIN_CONTINUE;
public msg_statustext(msgid, dest, id)
return PLUGIN_HANDLED
public msg_statusicon(msgid, dest, id)
{
static icon[5]
get_msg_arg_string(2, icon, charsmax(icon))
if(icon[0] == 'b' && icon[2] == 'y' && icon[3] == 'z')
{
set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0))
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public msg_motd(msgid, dest, id)
{
if(get_pcvar_num(gp_Motd))
return PLUGIN_HANDLED
return PLUGIN_CONTINUE
}
public msg_clcorpse(msgid, dest, id)
{
return PLUGIN_HANDLED
}
public current_weapon(player)
{
if(!is_user_alive(player))
return PLUGIN_CONTINUE
if(g_GameMode >= 1 || g_PlayerLast)
{
if(is_user_alive(player) && is_user_connected(player))
clear_bit(g_PlayerCrowbar, player)
else if(get_bit(g_PlayerCrowbar, player))
clear_bit(g_PlayerCrowbar, player)
else if(set_bit(g_PlayerCrowbar, player))
clear_bit(g_PlayerCrowbar, player)
if(get_user_team(player) == 1)
{
set_pev(player, pev_viewmodel2, _Pumni[1])
set_pev(player, pev_weaponmodel2, _Pumni[0])
}
else if(get_user_team(player) == 2)
{
set_pev(player, pev_viewmodel2, v_Bulan)
set_pev(player, pev_weaponmodel2, p_Bulan)
}
}
else if(get_bit(g_PlayerCrowbar, player))
{
if(is_user_alive(player) && is_user_connected(player))
{
set_pev(player, pev_viewmodel2, _Ranga[1])
set_pev(player, pev_weaponmodel2, _Ranga[0])
}
}
else if(is_user_alive(player) && is_user_connected(player))
{
if(get_user_team(player) == 1)
{
set_pev(player, pev_viewmodel2, _Pumni[1])
set_pev(player, pev_weaponmodel2, _Pumni[0])
}
else if(get_user_team(player) == 2)
{
set_pev(player, pev_viewmodel2, v_Bulan)
set_pev(player, pev_weaponmodel2, p_Bulan)
}
}
return PLUGIN_CONTINUE
}
public player_status(id)
{
static type, player, CsTeams:team, option[64]
type = read_data(1)
player = read_data(2)
switch(type)
{
case(1):
{
//ClearSyncHud(id, g_HudSync[1][_hudsync])
}
case(2):
{
team = cs_get_user_team(player)
if((team != CS_TEAM_T) && (team != CS_TEAM_CT))
return PLUGIN_HANDLED
new target, body;
get_user_aiming(id, target, body, 9999);
new sName[32];
get_user_name(target, sName, sizeof(sName) -1);
if(get_user_team (target) == 1)
{
formatex(option, charsmax(option), "Prizonierul: %s^nViata: %d^nTigari: %d^n", sName, get_user_health(target), jb_get_tigari(target))
player_hudmessage(id, 4, 2.0, {255, 20, 20}, option)
}
else if (get_user_team(target) == 2)
{
formatex(option, charsmax(option), "Gardianul: %s^nViata: %d^nMoney: %d^n", sName, get_user_health(target), cs_get_user_money(target))
player_hudmessage(id, 4, 2.0, {20, 255, 20}, option)
}
}
}
return PLUGIN_HANDLED
}
public impulse_100(id)
{
if(cs_get_user_team(id) == CS_TEAM_T)
return PLUGIN_HANDLED
return PLUGIN_CONTINUE
}
/*======================================================
SIMONMENU
======================================================*/
public cmd_simonmenu(id)
{
if(g_Simon == id)
{
if(is_user_alive(id) && is_user_connected(id))
{
new simon_menu = menu_create("\rSimonMenu \yJb.FRAGBITE.ro", "simon_choice");
menu_additem(simon_menu, "\rDeschide \yCelule", "1", 0);
menu_additem(simon_menu, "FreeDay Menu", "2", 0);
menu_additem(simon_menu, "\rDing", "3", 0);
menu_additem(simon_menu, "Box Menu", "4", 0);
menu_additem(simon_menu, "\rZile \ySpeciale", "5", 0);
menu_additem(simon_menu, "Demisioneaza din gradu de Simon !", "6", 0);
if(g_GameMode == 13)
menu_additem(simon_menu, "\rRevive Menu", "7", 0)
else
menu_additem(simon_menu, "Revive Menu \r[GodMode Only]", "7", ADMIN_ADMIN)
if(g_GameMode == 13)
menu_additem(simon_menu, "\rVoice Menu", "8", 0)
else
menu_additem(simon_menu, "Voice Menu \r[GodMode Only]", "7", ADMIN_ADMIN)
menu_additem(simon_menu, "\yFootBall Menu", "9", 0)
menu_additem(simon_menu, "Scoate Wanted", "10", 0)
menu_additem(simon_menu, "Verifica Prizonieri de Arme", "11", 0)
menu_setprop(simon_menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, simon_menu, 0);
}
}
else
client_print(id, print_chat, "*** Nu esti SIMON deci nu poti accesa SIMON MENU ***");
return PLUGIN_HANDLED;
}
public simon_choice(id, simon_menu, item)
{
if( item == MENU_EXIT || !is_user_alive(id) )
{
menu_destroy(simon_menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64], name[32];
new access, callback;
get_user_name(g_Simon, name, charsmax(name))
menu_item_getinfo(simon_menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
jail_open()
new name[32]
get_user_name(g_Simon, name, charsmax(name))
set_hudmessage(0, 104, 139, -1.0, 0.74, 0, 6.0, 5.0)
show_hudmessage(0, "%L", 0, "JBE_OPEN_DOOR_SIMON", name)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_open.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
cmd_simonmenu(id)
}
case 2: cmd_freeday(id)
case 3:
{
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
cmd_simonmenu(id)
}
case 4: cmd_boxmenu(id)
case 5: cmd_daysmenu(id)
case 6: cmd_simonreset(id)
case 7: cmd_simonrevive(id)
case 8: cmd_voicemenu(id)
case 9:
{
open_football_menu(id)
make_teams()
}
case 10: RemoveWanted(id)
case 11: CheckWeapon(id)
}
menu_destroy(simon_menu);
return PLUGIN_HANDLED;
}
public cmd_simonreset(id)
{
if((g_Simon == id) || get_user_flags(id) & read_flags ("a"))
menu_players(id, CS_TEAM_CT, id, 1, "cmd_simon_ct", "\rCine vrei sa fie SIMON in loc ?")
return PLUGIN_CONTINUE
}
public cmd_simon_ct(id, menu, item)
{
if(item == MENU_EXIT || (g_Simon != id))
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static dst[32],src[32], data[5], player, access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
player = str_to_num(data)
if (g_Simon == player)
return PLUGIN_CONTINUE
g_Simon = 0
cmd_simon(player)
get_user_name(player, dst, charsmax(dst))
get_user_name(id, src, charsmax(src))
set_hudmessage(0, 104, 139, -1.0, -0.35, 0, 6.0, 10.0)
show_hudmessage(0, "%s a predat grad-ul de SIMON lui %s", src, dst)
if(get_user_flags(id) & read_flags(VIP_ACCES))
set_user_info(id, "model", "Play_Arena_VipCT")
else
{
set_user_info(id, "model", "jb_pa_player")
entity_set_int(id, EV_INT_body, 3)
}
return PLUGIN_HANDLED
}
public cmd_simonrevive(id)
{
if(g_Simon == id)
menu_revive(id, CS_TEAM_T, "revive", "Revive Menu")
return PLUGIN_CONTINUE
}
public revive(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static dst[32], data[5], access, callback, player
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
player = str_to_num(data)
new name[32], name2[32]
get_user_name(id, name, 31)
get_user_name(player, name2, 31)
if(player > 0 && is_user_connected(player) && !is_user_alive(player))
{
ExecuteHamB(Ham_CS_RoundRespawn, player)
chatcolor(0, "!g[SimonMenu] !ySimon !g%s !yi-a dat !grevive !tPrizonierului !g%s", name, name2)
}
cmd_simonrevive(id)
return PLUGIN_HANDLED
}
stock menu_revive(id, CsTeams:team, callback[], title[], any:...)
{
static i, name[32], num[5], menu, menuname[32]
formatex(menuname, charsmax(menuname), title)
menu = menu_create(menuname, callback)
for(i = 1; i <= g_MaxClients; i++)
{
if(!is_user_connected(i) || is_user_alive(i))
continue
if(!(team == CS_TEAM_T || team == CS_TEAM_CT) || ((team == CS_TEAM_T || team == CS_TEAM_CT) && (cs_get_user_team(i) == team)))
{
get_user_name(i, name, charsmax(name))
num_to_str(i, num, charsmax(num))
menu_additem(menu, name, num, 0)
}
}
menu_display(id, menu)
}
public CheckWeapon(id)
{
if(g_Simon != id)
return
new vic, bd
get_user_aiming(id, vic, bd, CHEK_WEAPON_DIST)
if(is_user_alive(vic) && get_user_team(vic) == 1)
{
new iBitWeapons = pev(vic, pev_weapons) + (1<<31)
if(iBitWeapons &= ~(1<<CSW_HEGRENADE | 1<<CSW_SMOKEGRENADE | 1<<CSW_FLASHBANG | 1<<CSW_KNIFE))
chatcolor(id, "%L", id, "HAVE_WEAPON", SM_PREFIX)
else
chatcolor(id, "%L", id, "NO_HAVE_WEAPON", SM_PREFIX)
ChekWeaponAmount[id]--
}
}
public RemoveWanted(id)
{
if(g_PlayerWanted <= 0)
{
chatcolor(id, "!g[SimonMenu] !yNu !geste !ynici un !gPrizonier !tCautat !y.")
return PLUGIN_HANDLED
}
new i_Menu = menu_create("\rCui vrei sa scoti Wanted-ul?", "remove_wanted_handler")
new s_Players[32], i_Num, i_Player
new s_Name[32], s_Player[10]
get_players(s_Players, i_Num)
for (new i; i < i_Num; i++)
{
i_Player = s_Players[i]
if(is_user_alive(i_Player) && id != i_Player && get_user_team(i_Player) == 1 && get_bit(g_PlayerWanted, i_Player))
{
get_user_name(i_Player, s_Name, charsmax(s_Name))
num_to_str(i_Player, s_Player, charsmax(s_Player))
menu_additem(i_Menu, s_Name, s_Player, 0)
}
}
menu_display(id, i_Menu, 0)
return PLUGIN_HANDLED
}
public remove_wanted_handler(id, i_Menu, item)
{
if(item == MENU_EXIT || g_Simon != id)
{
menu_destroy(i_Menu)
return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(i_Menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
new name[32], name_player[32]
get_user_name(id, name, charsmax(name))
get_user_name(i_Player, name_player, charsmax(name_player))
if(g_Simon == id && id != i_Player && is_user_alive(i_Player) && get_user_team(i_Player) == 1 && get_bit(g_PlayerWanted, i_Player))
{
set_hudmessage(20, 255, 255, -1.0, 0.74, 0, 6.0, 8.0)
show_hudmessage(0, "%L", id, "CLEAR_WANTED_LIST", name, name_player)
clear_bit(g_PlayerWanted, i_Player)
set_user_info(i_Player, "model", "jb_pa_player")
entity_set_int(i_Player, EV_INT_body, 2)
entity_set_int(i_Player, EV_INT_skin, random_num(0, 2))
set_user_rendering(i_Player, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
}
menu_destroy(i_Menu)
return PLUGIN_HANDLED
}
public cmd_voicemenu(id)
{
new Buffer[512]
formatex(Buffer, charsmax(Buffer), "%L", id, "GIVE_OR_TAKE_VOICE_MENU")
new i_Menu = menu_create(Buffer, "cmd_voicemenu_handler")
new s_Players[32], i_Num, i_Player
new s_Name[32], s_Player[10]
get_players(s_Players, i_Num)
for (new i; i < i_Num; i++)
{
i_Player = s_Players[i]
if(is_user_alive(i_Player) && id != i_Player && get_user_team(i_Player) == 1)
{
get_user_name(i_Player, s_Name, charsmax(s_Name))
num_to_str(i_Player, s_Player, charsmax(s_Player))
if(get_bit(g_PlayerVoice, i_Player))
formatex(Buffer, charsmax(Buffer), "%L", id, "GIVE_VOICE", s_Name)
else
formatex(Buffer, charsmax(Buffer), "%L", id, "PICK_VOICE", s_Name)
menu_additem(i_Menu, Buffer, s_Player, 0)
}
}
menu_display(id, i_Menu, 0)
return PLUGIN_HANDLED
}
public cmd_voicemenu_handler(id, i_Menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(i_Menu)
return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(i_Menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Player = str_to_num(s_Data)
new name[32], name_player[32]
get_user_name(id, name, charsmax(name))
get_user_name(i_Player, name_player, charsmax(name_player))
if(g_Simon == id && id != i_Player && get_user_team(i_Player) == 1)
{
if(get_bit(g_PlayerVoice, i_Player))
{
chatcolor(0, "!g[VoiceMenu] !ySimon !g%s !yi-a luat !gVocea !tlui !g%s .", name, name_player)
clear_bit(g_PlayerVoice, i_Player)
cmd_voicemenu(id)
}
else
{
chatcolor(0, "!g[VoiceMenu] !ySimon !g%s !yi-a dat !gVoce !tlui !g%s .", name, name_player)
set_bit(g_PlayerVoice, i_Player)
cmd_voicemenu(id)
}
}
menu_destroy(i_Menu)
return PLUGIN_HANDLED
}
public make_teams()
{
static i
for(i = 0; i < mxplr; i++)
{
if(!is_user_alive(i) || get_user_team(i) != 1)
continue
if(team)
{
set_user_info(i, "model", "JB_FootBall_TeamA")
entity_set_int(i, EV_INT_body, random_num(0, 1))
}
else
{
set_user_info(i, "model", "JB_FootBall_TeamB")
entity_set_int(i, EV_INT_body, random_num(0, 1))
}
team = !team
}
}
/*======================================================
END SIMONMENU ---> BoxMenu
======================================================*/
public cmd_boxmenu(id)
{
if((is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT))
{
if(g_PlayerLast)
{
chatcolor(id, "!g[BoxMenu]!y Nu poti sa dai box cand e !gUltimul !tPrizonier !yin !gViata!y.")
return PLUGIN_HANDLED
}
/*if(g_GameMode == 1 || g_GameMode == 17 || g_GameMode == 15)
{
chatcolor(id, "!g[BoxMenu]!y Nu poti sa dai box cand e !gZi Speciala!y.")
return PLUGIN_HANDLED
}*/
if(g_GameMode == 0 || g_GameMode == 13)
{
new szText[ 555 char ];
formatex( szText, charsmax( szText ), "%L", id, "BOXMENU_TITLE");
new menu = menu_create( szText, "box_handler" );
formatex( szText, charsmax( szText ), "%L", id, "BOXMENU_M1" );
menu_additem( menu, szText, "1", 0 );
formatex( szText, charsmax( szText ), "%L", id, "BOXMENU_M2" );
menu_additem( menu, szText, "2", 0 );
menu_display( id, menu, 0)
}
else
chatcolor(id, "!g[BoxMenu]!y Nu poti sa dai box cand e !gZi Speciala!y.")
}
else
chatcolor(id, "%L",0,"BOX_ACCES")
return PLUGIN_HANDLED
}
public box_handler( id, menu, item )
{
if( item == MENU_EXIT )
{
menu_destroy( menu )
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo( menu, item, access, data,5, iName, 63, callback )
new key = str_to_num( data )
switch( key )
{
case 1:
{
cmd_box(id)
cmd_boxmenu(id)
}
case 2:
{
cmd_boxoff(id)
cmd_boxmenu(id)
}
}
menu_destroy( menu )
return PLUGIN_HANDLED
}
public cmd_box(id)
{
if(g_PlayerLast)
{
chatcolor(id, "!t[!gBox!t] !yNu poti activa !tBox,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
static i
if((id < 0) || (is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT) || get_user_flags(id) & read_flags("f"))
{
if(g_GameMode == 13 && g_TeamAlive[CS_TEAM_T] > 1)
{
for(i = 1; i <= g_MaxClients; i++)
if(is_user_alive(i) && cs_get_user_team(i) == CS_TEAM_T)
set_user_health(i, 100)
client_cmd(0, "mp3 play ^"%s^"", game_box)
set_cvar_num("mp_tkpunish", 0)
set_cvar_num("mp_friendlyfire", 1)
jb_strip_user_cold_weapons(i)
g_BoxStarted = 1
if(get_user_team(id) == 2)
{
new name[32]
get_user_name(id, name, 63)
chatcolor(0, "%L",0,"BOX_START", name)
player_hudmessage(0, 1, 3.0, _, "Modul Box a fost pornit de: %s", name)
}
}
else if(g_GameMode == 0 && g_TeamAlive[CS_TEAM_T] <= get_pcvar_num(gp_BoxMax) && g_TeamAlive[CS_TEAM_T] > 1)
{
for(i = 1; i <= g_MaxClients; i++)
if(is_user_alive(i) && cs_get_user_team(i) == CS_TEAM_T)
{
set_user_health(i, 100)
give_item(i, "weapon_knife")
set_cvar_string("jbe_shop", "0");
}
client_cmd(0, "mp3 play ^"%s^"", game_box)
set_cvar_num("mp_tkpunish", 0)
set_cvar_num("mp_friendlyfire", 1)
g_BoxStarted = 1
if(get_user_team(id) == 2)
{
new name[32]
get_user_name(id, name, 63)
chatcolor(0, "%L",0,"BOX_START", name)
player_hudmessage(0, 1, 3.0, _, "Modul Box a fost pornit de: %s", name)
}
}
else
player_hudmessage(id, 1, 3.0, _, "%L", LANG_SERVER, "JBE_GUARD_CANTBOX")
}
return PLUGIN_HANDLED
}
public cmd_boxoff(id)
{
if(g_PlayerLast)
{
chatcolor(id, "!t[!gBox!t] !yNu poti dezactiva !tBox,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
static i
if(is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT || get_user_flags(id) & read_flags("f"))
{
for(i = 1; i <= g_MaxClients; i++)
if(is_user_alive(i) && cs_get_user_team(i) == CS_TEAM_T)
{
set_user_health(i, 100)
set_cvar_string("jbe_shop", "1");
}
client_cmd(0, "mp3 play ^"%s^"", game_boxoff)
set_cvar_num("mp_tkpunish", 0)
set_cvar_num("mp_friendlyfire", 0)
g_BoxStarted = 0
new name[32]
get_user_name(id, name, 63)
chatcolor(0, "%L",0,"BOX_STOP", name)
player_hudmessage(0, 1, 3.0, _, "Modul Box a fost oprit de: %s", name)
}
return PLUGIN_HANDLED
}
/*======================================================
END BOXMENU --> HELPMENU
======================================================*/
public cmd_helpmenu(id)
{
if(!is_user_alive(id))
return PLUGIN_HANDLED
static menu
menu = menu_create("\yHelpMenu \wJb.FRAGBITE.ro", "helpmenu_handler")
menu_additem(menu, "\rInformatii \wMod", "1")
menu_additem(menu, "\rInformatii \wServer", "2")
menu_additem(menu, "\rMeniu \wWho\y/\wDonatii", "3")
menu_display(id, menu)
return PLUGIN_HANDLED
}
public helpmenu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1: info_mod(id)
case 2: informatii(id)
case 3: client_cmd(id,"say /who")
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public info_mod(id)
{
show_motd(id,"/addons/amxmodx/configs/PedoBearHome/info_mod.htm")
return 0
}
public informatii(id)
{
show_motd(id,"/addons/amxmodx/configs/PedoBearHome/info_server.htm")
return 0
}
/*======================================================
END HELPEMENU ---> FreedayMenu
======================================================*/
public cmd_freeday(id)
{
static menu, menuname[32], option[64]
if(!is_freeday() && ((is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT) || get_user_flags(id) & read_flags ("c")))
{
formatex(menuname, charsmax(menuname), "%L", LANG_SERVER, "JBE_MENU_FREEDAY")
menu = menu_create(menuname, "freeday_choice")
formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_FREEDAY_PLAYER")
menu_additem(menu, option, "1", 0)
formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_FREEDAY_ALL")
menu_additem(menu, option, "2", 0)
menu_display(id, menu)
}
return PLUGIN_HANDLED
}
public freeday_choice(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static dst[32], data[5], access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
menu_destroy(menu)
get_user_name(id, dst, charsmax(dst))
switch(data[0])
{
case('1'): cmd_freeday_player(id)
case('2'):
{
if((cs_get_user_team(id) == CS_TEAM_CT) || get_user_flags(id) & read_flags ("c"))
cmd_ask(id)
}
}
return PLUGIN_HANDLED
}
public cmd_freeday_player(id)
{
if((is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT) || get_user_flags(id) & read_flags ("c"))
menu_players(id, CS_TEAM_T, id, 1, "freeday_select", "%L", LANG_SERVER, "JBE_MENU_FREEDAY")
return PLUGIN_CONTINUE
}
public freeday_select(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static dst[32], data[5], player, access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
player = str_to_num(data)
freeday_set(id, player)
return PLUGIN_HANDLED
}
public cmd_ask(id)
{
static menu, menuname[32], option[64]
if(!is_freeday() && ((is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT)))
{
formatex(menuname, charsmax(menuname), "%L", LANG_SERVER, "JBE_FD_ANSWER_TITLE")
menu = menu_create(menuname, "freeday_ask")
formatex(option, charsmax(option), "\y%L", LANG_SERVER, "JBE_FD_ANSWER_YES")
menu_additem(menu, option, "1", 0)
formatex(option, charsmax(option), "\r%L", LANG_SERVER, "JBE_FD_ANSWER_NO")
menu_additem(menu, option, "2", 0)
menu_display(id, menu)
}
return PLUGIN_HANDLED
}
public freeday_ask(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
static dst[32], data[5], access, callback
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
menu_destroy(menu)
get_user_name(id, dst, charsmax(dst))
switch(data[0])
{
case('1'):
{
if(g_isDay)
{
chatcolor(id, "!g[JailBreak] !yNu poti da !gFreeDay !ypentru ca este in curs o !gZi Speciala !t.")
return PLUGIN_HANDLED
}
if(g_PlayerLast)
{
chatcolor(id, "!g[JailBreak] !yNu poti activa !tZiua Libera,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
if((cs_get_user_team(id) == CS_TEAM_CT))
{
g_Simon = 0
get_user_name(id, dst, charsmax(dst))
chatcolor(0, "!g[JailBreak] !yGardianul !t[!g%s!t] !ya dat la toti !tPrizonieri !gFreeDay!y.", dst)
check_freeday(TASK_FREEDAY)
}
}
case('2'):
{
if(g_isDay)
{
chatcolor(id, "!g[JailBreak] !yNu poti da !gFreeDay !ypentru ca este in curs o !gZi Speciala !t.")
return PLUGIN_HANDLED
}
if(g_PlayerLast)
{
chatcolor(id, "!g[JailBreak] !yNu poti da !tZi Libera,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
if((cs_get_user_team(id) == CS_TEAM_CT))
cmd_freeday(id)
}
}
return PLUGIN_HANDLED
}/*======================================================
End FreedayMenu ---> DaysMenu
======================================================*/
public cmd_daysmenu(id)
{
/*if(g_JailDay == 0 || g_JailDay == 5 || g_JailDay == 6 || g_JailDay == 7)
return PLUGIN_HANDLED*/
if(g_PlayerLast)
{
chatcolor(id, "!g[BoxMenu]!y Nu poti sa accesa !gDaysMenu cand !yeste !gUltimul !tPrizonier !yin !gViata!y.")
return PLUGIN_HANDLED
}
if(g_Simon == id)
{
if(is_user_alive(id))
if(g_GameMode <= 0)
JBDays(id);
else
chatcolor(id, "!t[!gManagerDays!t] !eu !gZi !tSpeciala !ya fost aleasa !gdeja!y.")
}
else
chatcolor(id, "!t[!gManagerDays!t] !gTu !tnu esti !gSimon!y.")
return PLUGIN_HANDLED
}
public HnsCount()
{
set_hudmessage(0 , 255, 0, -1.0, 0.28, 2, 1.1, 1.1, 0.01, 0.01);
show_hudmessage(0, "Prizonierii au: %d secunede sa se ascunda !!", g_HNSCount--);
if(g_HNSCount == 0)
{
set_hudmessage(random_num(1,255), random_num(1,255), random_num(1,255), -1.0, -1.0, 0, 6.0, 12.0)
show_hudmessage(0, "Timp-ul s-a scurs, iar Gardienii vor veni sa va caute !!")
}
}
public JBDays(id)
{
new a = get_timeleft()
new menu = menu_create("\rDaysMenu \yJb.FRAGBITE.ro", "days_menu_handler");
menu_additem(menu, "Zombie Day", "1", 0);
menu_additem(menu, "Spartan Day", "2", 0);
menu_additem(menu, "Gravity Day", "3", 0);
menu_additem(menu, "Grenade Day", "4", 0);
menu_additem(menu, "NightCrawler Day", "5", 0);
menu_additem(menu, "Box Day", "6", 0);
menu_additem(menu, "Gang Day", "7", 0);
menu_additem(menu, "War Day", "8", 0);
menu_additem(menu, "Hns Day", "9", 0);
menu_additem(menu, "Ghost Day", "10", 0);
if( a < 301 )
menu_additem(menu, "GodMode Day", "11", 0);
else
menu_additem(menu, "\dGodMode Day\r [Numai in ultimele 5 min]", "11", 0);
menu_additem(menu, "Magic Day", "12", 0);
menu_additem(menu, "Tag Day", "13", 0);
menu_additem(menu, "One Hp Day", "14", 0);
menu_additem(menu, "DodgeBall Day", "15", 0);
menu_additem(menu, "HeadShot Day", "16", 0);
menu_additem(menu, "PaintBall Day \r[DEZACTIVAT]", "17", ADMIN_ADMIN);
menu_setprop(menu, MPROP_NEXTNAME, "Inainte")
menu_setprop(menu, MPROP_BACKNAME, "Inapoi")
menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public days_menu_handler(id, menu, item)
{
if( item == MENU_EXIT || !is_user_alive(id) )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1: ZombieDayMenu(id)
case 2:
{
SpartanDay()
set_cvar_string("jb_dayss", "Spartan Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Spartan Day !t]", name);
}
case 3:
{
GravityDay()
set_cvar_string("jb_dayss", "Gravity Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("sv_parachute", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Gravity Day !t]", name);
}
case 4:
{
GrenadeDay()
set_cvar_string("jb_dayss", "Grenade Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Grenade Day !t]", name);
}
case 5:
{
NightDay()
set_cvar_string("jb_dayss", "NightCrawler Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_camera", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g NightCrawler Day !t]", name);
}
case 6:
{
BoxDay()
set_cvar_string("jb_dayss", "Box Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Box Day !t]", name);
}
case 7:
{
GangDay()
set_cvar_string("jb_dayss", "Gang Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Gang Day !t]", name);
}
case 8:
{
WarDay()
set_cvar_string("jb_dayss", "War Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g War Day !t]", name);
}
case 9: HnsDayMenu(id)
case 10:
{
GhostDay()
set_cvar_string("jb_dayss", "Ghost Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Ghost Day !t]", name);
}
case 11:
{
new a = get_timeleft()
if( a < 301 )
{
GodModeDay()
set_cvar_string("jb_dayss", "GodMode Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jb_autojoin", "1");
secundeday = 500
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g GodMode Day !t]", name);
}
else
chatcolor(0, "!t[!gDays!t] !gGodMode Day!y poate fi dat numai in !gUltimele 5 Minute !y.");
}
case 12:
{
MagicDay()
set_cvar_string("jb_dayss", "Magic Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Magic Day !t]", name);
}
case 13:
{
TagDay()
set_cvar_string("jb_dayss", "Tag Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("sv_parachute", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Tag Day !t]", name);
}
case 14:
{
OneHpDay()
set_cvar_string("jb_dayss", "One Hp Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 200
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g One Hp Day !t]", name);
}
case 15:
{
DodgeBallDay()
set_cvar_string("jb_dayss", "DodgeBall Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("sv_parachute", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 200
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g DodgeBall Day !t]", name);
}
case 16:
{
HeadShotDay()
set_cvar_string("jb_dayss", "HeadShot Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 200
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!g Days !t] Simon !t[!g %s !t] a pornit !gZiua Speciala!y: !t[!g HeadShot Day !t]", name);
}
case 17:
{
PaintBallDay()
set_cvar_string("jb_dayss", "PaintBall Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 200
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g PaintBall Day !t]", name);
}
}
new crowbar_ent
while((crowbar_ent=engfunc(EngFunc_FindEntityByString, crowbar_ent, "classname", gCrowbarClassname)) != 0)
engfunc(EngFunc_RemoveEntity, crowbar_ent)
jb_strip_user_cold_weapons(id)
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public ZombieDayMenu(id)
{
new menu = menu_create("\rZombie Day \yMenu", "zomibieday_menu_handler");
menu_additem(menu, "Zombie Day \d[\rPrizonieri Zombie\d]", "1", 0);
menu_additem(menu, "Reverse Zombie Day \d[\rGardieni Zombie\d]", "2", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public zomibieday_menu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
ZombieDay()
set_cvar_string("jb_dayss", "Zombie Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 400
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Zombie Day !t]", name);
}
case 2:
{
RzmDay()
set_cvar_string("jb_dayss", "Reverse Zombie Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 400
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Reverse Zombie Day !t]", name);
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public HnsDayMenu(id)
{
new menu = menu_create("\rHns Day \yMenu", "hnsday_menu_handler");
menu_additem(menu, "Hns Day \d[\rNormal\d]", "1", 0);
menu_additem(menu, "Hns Simple Day \d[\rFun\d]", "2", 0);
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public hnsday_menu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
HnsDay()
set_cvar_string("jb_dayss", "Hns Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 300
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Hns Day !t]", name);
}
case 2:
{
HnsSimpleDay()
set_cvar_string("jb_dayss", "Hns Simple Day");
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
secundeday = 500
set_task(1.0, "block_weapons_task", id)
new name[33]
get_user_name(id, name, 31)
chatcolor(0, "!t[!gDays!t] !ySimon !t[!g%s!t] !ya pornit !gZiua Speciala!y: !t[!g Hns Simple Day !t]", name);
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
/*============ PUBLIC ZILE SPECIALE ============*/
public ZombieDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 1
secundeday = 400
set_cvar_string("jb_dayss", "Zombie Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
set_lights("b")
if(get_user_team(id) == 1)
{
set_user_health(id, 3000);
set_user_info(id, "model", "jb_pa_zombie")
entity_set_int(id, EV_INT_body, 1)
give_item(id, "weapon_knife");
}
else if(get_user_team(id) == 2)
{
give_item(id, "weapon_ak47")
give_item(id, "weapon_m4a1")
give_item(id, "weapon_deagle")
cs_set_user_bpammo( id, CSW_AK47, 999 );
cs_set_user_bpammo( id, CSW_M4A1, 999 );
cs_set_user_bpammo(id, CSW_DEAGLE, 999);
set_user_health(id, 300);
}
}
fog()
}
public RzmDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 2
secundeday = 400
set_cvar_string("jb_dayss", "Reverse Zombie Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
set_lights("b")
if (cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_info(id, "model", "jb_pa_zombie")
entity_set_int(id, EV_INT_body, 1)
set_user_health(id, 3000);
give_item(id, "weapon_knife");
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
give_item(id, "weapon_deagle")
give_item(id, "weapon_ak47")
give_item(id, "weapon_m4a1")
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_DEAGLE, 999);
cs_set_user_bpammo( id, CSW_AK47, 999 );
cs_set_user_bpammo( id, CSW_M4A1, 999 );
cs_set_user_bpammo( id, CSW_AWP, 999 );
set_user_health(id, 300);
}
}
fog()
}
public SpartanDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 3
secundeday = 300
set_cvar_string("jb_dayss", "Spartan Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
if(cs_get_user_team(id) == CS_TEAM_CT)
{
give_item(id, "weapon_deagle")
give_item(id, "weapon_ak47")
give_item(id, "weapon_m4a1")
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
cs_set_user_bpammo(id, CSW_AK47, 300);
cs_set_user_bpammo(id, CSW_M4A1, 300);
cs_set_user_bpammo(id, CSW_AWP, 300);
}
if(cs_get_user_team(id) == CS_TEAM_T)
{
give_item(id, "weapon_deagle")
give_item(id, "weapon_shield")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
set_user_health(id, 200);
}
}
}
public GravityDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
is_freezed[id] = true
g_GameMode = 4
secundeday = 300
set_cvar_string("jb_dayss", "Gravity Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id)
if (cs_get_user_team(id) == CS_TEAM_T)
{
give_item(id, "weapon_knife")
set_user_gravity(id, 0.375);
}
if (cs_get_user_team(id) == CS_TEAM_CT)
{
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 200)
set_user_gravity(id, 0.375);
}
}
}
public GrenadeDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 5
secundeday = 300
set_cvar_string("jb_dayss", "Grenade Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
set_task(0.0, "give_hegrenade_task", id)
strip_user_weapons(id);
}
}
public NightDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 6
secundeday = 300
set_cvar_string("jb_dayss", "NightCrawler Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
if(cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_health(id, 150);
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0);
set_pev(id, pev_weaponmodel2, _Pumni[0])
give_item(id, "weapon_knife")
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
set_user_health(id, 100);
give_item(id, "weapon_ak47")
give_item(id, "weapon_m4a1")
give_item(id, "weapon_deagle");
cs_set_user_bpammo( id, CSW_AK47, 999 );
cs_set_user_bpammo( id, CSW_M4A1, 999 );
cs_set_user_bpammo(id, CSW_DEAGLE, 999);
}
}
}
public BoxDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 7
secundeday = 300
set_cvar_string("jb_dayss", "Box Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
set_user_health(id, 100);
client_cmd(0, "mp3 play ^"%s^"", game_box)
}
}
public GangDay()
{
new iPlayers[32];
new iNum;
new ids;
g_isDay = true;
g_GameMode = 8
secundeday = 300
set_cvar_string("jb_dayss", "Gang Day");
get_players( iPlayers, iNum );
for( new i = 0; i < iNum; i++ )
{
ids = iPlayers[i]
if( !is_user_alive( ids ) )
continue;
if(cs_get_user_team(ids) == CS_TEAM_T)
{
strip_user_weapons(ids);
if(check_blueteam <= check_redteam)
{
check_blueteam++;
clear_bit(check_rteam, ids);
set_bit(check_bteam, ids);
give_item(ids, "weapon_mp5navy");
cs_set_user_bpammo(ids, CSW_MP5NAVY, 50000);
set_user_rendering(ids, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 40)
chatcolor(ids, "!g[GangDay]!y Esti in !gEchipa !yAlbastra")
}
else
{
check_redteam++;
clear_bit(check_bteam, ids);
set_bit(check_rteam, ids);
give_item(ids, "weapon_mp5navy");
cs_set_user_bpammo( ids, CSW_MP5NAVY, 50000 );
set_user_rendering(ids, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 40)
chatcolor(ids, "!g[GangDay]!y Esti in !gEchipa !yAlbastra")
}
}
else if(cs_get_user_team(ids) == CS_TEAM_CT)
{
set_user_godmode(ids, true);
give_item(ids, "weapon_mp5navy");
cs_set_user_bpammo(ids, CSW_MP5NAVY, 50000);
}
}
set_task( 1.0, "GangDay_Countdown", TASK_GANGDAY, _, _, "a", 123451234 );
}
public GangDay_Countdown()
{
if(check_redteam > 0 && check_blueteam > 0)
{
set_hudmessage(255, 20, 20, 0.84, 0.70, 0, 6.0, 1.2);
ShowSyncHudMsg(0, g_syncHudMessage2, "Rosii: %d^nAlbastrii: %d", check_redteam, check_blueteam);
}
else
if( task_exists(TASK_GANGDAY))
remove_task(TASK_GANGDAY);
}
public WarDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 9
secundeday = 300
set_cvar_string("jb_dayss", "War Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_deagle")
give_item(id, "weapon_ak47")
give_item(id, "weapon_m4a1")
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
cs_set_user_bpammo(id, CSW_AK47, 300);
cs_set_user_bpammo(id, CSW_M4A1, 300);
cs_set_user_bpammo(id, CSW_AWP, 300);
set_user_health(id, 150);
}
}
public HnsDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 10
secundeday = 300
set_cvar_string("jb_dayss", "Hns Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
set_task(120.0, "reset", id)
jail_open()
if (cs_get_user_team(id) == CS_TEAM_CT)
{
Fade_To_Black(id)
set_user_godmode(id, true);
set_pev(id, pev_flags, pev(id, pev_flags) | FL_FROZEN);
}
}
set_lights("b")
g_HNSCount = HNSCount;
set_task( 1.0 , "HnsCount" , _ , _ , _ , "a" , g_HNSCount);
}
public reset(id)
{
switch(get_user_team(id))
{
case 1: set_pev(id, pev_flags, pev(id, pev_flags) | FL_FROZEN);
case 2:
{
set_pev(id, pev_flags, pev(id, pev_flags) & ~FL_FROZEN);
Reset_Screen(id)
}
}
}
public HnsSimpleDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 11
secundeday = 500
set_cvar_string("jb_dayss", "Hns Simple Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
set_task(120.0, "reset_simple", id)
jail_open()
set_lights("b")
if (cs_get_user_team(id) == CS_TEAM_CT)
{
Fade_To_Black(id)
set_user_godmode(id, true);
set_pev(id, pev_flags, pev(id, pev_flags) | FL_FROZEN);
}
}
g_HNSCount = HNSCount;
set_task( 1.0 , "HnsCount" , _ , _ , _ , "a" , g_HNSCount);
}
public reset_simple(id)
{
if(get_user_team(id))
{
set_pev(id, pev_flags, pev(id, pev_flags) & ~FL_FROZEN);
Reset_Screen(id)
}
}
public GhostDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 12
secundeday = 300
set_cvar_string("jb_dayss", "Ghost Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
set_lights("b");
jail_open()
if(cs_get_user_team(id) == CS_TEAM_CT)
{
user_rendering(id, kRenderFxGlowShell, 150.0, 150.0, 170.0, kRenderNormal, 0.0);
set_user_noclip(id, 1)
set_pev(id, pev_health, 506.0);
set_pdata_int(id, m_bloodColor, 15);
set_pev(id, pev_maxspeed, 320.0);
give_item(id, "weapon_knife");
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
new iEnt = give_item(id, "weapon_m249")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 2000)
set_pev(id, pev_health, 120.0);
}
}
}
public GodModeDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 13
secundeday = 1200
jail_open()
set_cvar_string("jb_dayss", "GodMode Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
//set_lights("a")
if (cs_get_user_team(id) == CS_TEAM_CT)
{
give_item(id, "weapon_deagle")
cs_set_user_bpammo( id, CSW_DEAGLE, 999)
set_user_godmode(id, 1)
/*if(get_pcvar_num(cvar_players_aura))
set_task(0.1, "players_aura", id+TASK_AURA, _, _, "b")*/
}
}
}
public MagicDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 14
secundeday = 300
set_cvar_string("jb_dayss", "Magic Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife")
set_lights("b")
if (cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_health(id, 200);
start_magic(id)
set_pev(id, pev_maxspeed, 450.0);
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
set_user_health(id, 100);
start_magic(id)
}
}
}
public TagDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 15
secundeday = 300
set_cvar_string("jb_dayss", "Tag Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
if (cs_get_user_team(id) == CS_TEAM_CT)
{
szPlayerCT[id] = true
set_user_godmode(id, 1)
set_pev(id, pev_flags, pev(id, pev_flags) | FL_FROZEN)
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
new Float:szSpeed
szSpeed = get_pcvar_float( g_Cvar[4] )
set_user_maxspeed(id, szSpeed)
new Float:szGravity
szGravity = get_pcvar_float( g_Cvar[5] )
set_user_gravity(id, szGravity)
}
strip_user_weapons(id);
give_item(id, "weapon_knife");
jail_open()
set_task(1.0, "PrisoneInformer", 1234, _, _, "b")
set_task(1.0, "Timer", 123, _, _, "b")
}
}
public OneHpDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 16
secundeday = 200
set_cvar_string("jb_dayss", "One Hp Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
if (cs_get_user_team(id) == CS_TEAM_CT)
{
set_user_health(id, 25);
give_item(id, "weapon_knife");
}
if (cs_get_user_team(id) == CS_TEAM_T)
set_user_health(id, 1);
}
}
public DodgeBallDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 17
secundeday = 200
set_cvar_string("jb_dayss", "DodgeBall Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
give_item(id, "weapon_knife");
start_dodgeballday()
jail_open()
}
}
public HeadShotDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 18
secundeday = 200
set_cvar_string("jb_dayss", "HeadShot Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
if (cs_get_user_team(id) == CS_TEAM_CT)
{
give_item(id,"weapon_m4a1")
cs_set_user_bpammo( id, CSW_M4A1, 999 );
set_user_hitzones(0, 0, 2)
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
give_item(id,"weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 999);
set_user_hitzones(0, 0, 2)
}
}
}
public PaintBallDay()
{
new iPlayers[32]
new iNum
new id
g_isDay = true;
g_GameMode = 19
secundeday = 200
set_cvar_string("jb_dayss", "PaintBall Day");
get_players( iPlayers, iNum )
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i]
if(!is_user_alive(id))
continue;
strip_user_weapons(id);
//start_paintball(id)
if (cs_get_user_team(id) == CS_TEAM_CT)
{
give_item( id, "weapon_mp5navy" )
cs_set_user_bpammo( id, CSW_MP5NAVY, 999 );
}
if (cs_get_user_team(id) == CS_TEAM_T)
{
give_item( id, "weapon_mp5navy" )
cs_set_user_bpammo( id, CSW_MP5NAVY, 999 );
}
}
}
public give_hegrenade_task(id)
{
give_item(id, "weapon_hegrenade")
cs_set_user_bpammo(id, CSW_HEGRENADE, 9999)
}
public block_weapons_task(id)
g_BlockWeapons = 1
/*=================== FiNISH ===================*/
/*============ PUBLIC ZILE SPECIALE ============*/
public ResModel(id)
{
new iPlayers[32], iNum, iPid;
get_players( iPlayers, iNum, "a" );
for( new i; i < iNum; i++ )
{
iPid = iPlayers[i];
cs_reset_user_model(iPid)
}
}
public user_kills()
{
new iPlayers[32];
new iNum;
new id;
get_players( iPlayers, iNum );
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i];
if(get_bit(check_rteam, id))
chatcolor(id, "!t[!gGang System!t] !yAti primit !t[!g10!t] !yTigari !")
user_silentkill(id)
chatcolor(id, "!t[!gGang System!t] !yCastigatoii !tsunt !yEchipa !gAlbastra !")
}
}
public user_killss()
{
new iPlayers[32];
new iNum;
new id;
get_players( iPlayers, iNum );
for( new i = 0; i < iNum; i++ )
{
id = iPlayers[i];
if(get_bit(check_bteam, id))
chatcolor(id, "!t[!gGang System!t] !yAti primit !t[!g10!t] !yCREDITE !")
user_silentkill(id)
chatcolor(id, "!t[!gGang System!t] !yCastigatoii !gsunt !tEchipa !gAlbastra !")
}
}
public kill_all()
{
for(new i = 1; i <= g_MaxClients; i++)
{
if(!is_user_connected(i) || !is_user_alive(i))
continue
switch(g_GameMode)
{
case 1: if(get_user_team(i) == 1) user_kill(i)
case 2: if(get_user_team(i) == 1) user_kill(i)
case 3: user_kill(i)
case 4: user_kill(i)
case 5: if(get_user_team(i) == 2) user_kill(i)
case 6: user_kill(i)
case 7: if(get_user_team(i) == 1) user_kill(i)
case 8: user_kill(i)
case 9: if(get_user_team(i) == 2) user_kill(i)
case 10: if(get_user_team(i) == 2) user_kill(i)
case 11: if(get_user_team(i) == 2) user_kill(i)
case 12: user_kill(i)
case 13: user_kill(i)
case 14: if(get_user_team(i) == 2) user_kill(i)
case 15: if(get_user_team(i) == 1) user_kill(i)
case 16: user_kill(i)
case 17: if(get_user_team(i) == 2) user_kill(i)
case 18: if(get_user_team(i) == 2) user_kill(i)
case 19: user_kill(i)
case 20: user_kill(i)
}
//user_kill(i)
}
}
public fwdDamagePlayer(victim, attacker, Float:damage, Float:direction[3], tracehandle, damagebits, Float:vecOrigin[3])
{
if(!is_user_connected(victim) || !is_user_connected(attacker) || victim == attacker)
return HAM_IGNORED
if(g_GameMode == 8)
{
if(cs_get_user_team(attacker) == CS_TEAM_T && cs_get_user_team(victim) == CS_TEAM_T)
{
if(get_bit(check_bteam, attacker) && get_bit(check_bteam, victim)|| get_bit(check_rteam, attacker) && get_bit(check_rteam, victim))
return HAM_SUPERCEDE;
else if(get_bit(check_bteam, attacker) && get_bit(check_rteam, victim)|| get_bit(check_rteam, attacker) && get_bit(check_bteam, victim))
{
if(get_user_health(victim) > 28)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-28 );
}
else
sw_kill(attacker, victim, 1, "Gang Day" )
}
}
else if(cs_get_user_team(attacker) == CS_TEAM_CT && cs_get_user_team(victim) == CS_TEAM_T)
return HAM_SUPERCEDE;
}
if(g_GameMode == 15)
{
if(get_user_team(attacker) == 2 && get_user_team(victim) == 1)
{
if(!tagday[victim] && !szPlayerCaught[victim])
{
set_pev(victim, pev_flags, pev(victim, pev_flags) | FL_FROZEN)
set_user_rendering(victim, kRenderFxGlowShell, 0, 206, 209, kRenderNormal, 25)
szPlayerCaught[victim] = true
szPlayerTime[victim] = get_pcvar_num( g_Cvar[2] )
set_task(1.0, "TouchKill", victim)
++szHelpNum
}
set_user_health(victim, 100)
}
else if(szPlayerCaught[victim] && get_user_team(attacker) == 1 && get_user_team(victim) == 1)
{
szPlayerCaught[victim] = false
remove_task(victim)
szPlayerTime[victim] = 0
new szHealth
szHealth = get_pcvar_num( g_Cvar[3] )
set_user_health(victim, get_user_health(victim) - szHealth)
set_user_health(victim, get_user_health(attacker) + szHealth)
vecOrigin[2] += 15.0;
CREATE_SPRITETRAIL(vecOrigin, g_pSpriteFrost, 30, 20, 2, 20, 10);
new Float:fOrigin[3];
CREATE_BREAKMODEL(fOrigin, _, _, 10, g_pModelFrost, 10, 25, BREAK_GLASS);
emit_sound(victim, CHAN_AUTO, "jb_pa_sounds/days_mode/tagday/freeze_player.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
set_user_rendering(victim, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25)
set_pev(victim, pev_flags, pev(victim, pev_flags) & ~FL_FROZEN)
new Float:szSpeed
szSpeed = get_pcvar_float( g_Cvar[4] )
set_user_maxspeed(victim, szSpeed)
new Float:szGravity
szGravity = get_pcvar_float( g_Cvar[5] )
set_user_gravity(victim, szGravity)
tagday[victim] = true
set_task(2.0, "tagday_end", victim + 22838)
}
}
return HAM_IGNORED
}
public Fade_To_Black(id)
{
message_begin(MSG_ONE_UNRELIABLE, gmsgScreenFade, _, id)
write_short((1<<3)|(1<<8)|(1<<10))
write_short((1<<3)|(1<<8)|(1<<10))
write_short((1<<0)|(1<<2))
write_byte(255)
write_byte(0)
write_byte(0)
write_byte(255)
message_end()
}
public Reset_Screen(id)
{
message_begin(MSG_ONE_UNRELIABLE, gmsgScreenFade, _, id)
write_short(1<<2)
write_short(0)
write_short(0)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(0)
message_end()
}
public fog()
{
message_begin(MSG_ALL,get_user_msgid("Fog"),{0,0,0},0)
write_byte(215) // R
write_byte(0) // G
write_byte(0) // B
write_byte(66) // SD
write_byte(96) // ED
write_byte(27) // D1
write_byte(59) // D2
message_end()
}
public nofog()
{
message_begin(MSG_ALL,get_user_msgid("Fog"),{0,0,0},0)
write_byte(0) // R
write_byte(0) // G
write_byte(0) // B
write_byte(0) // SD
write_byte(0) // ED
write_byte(0) // D1
write_byte(0) // D2
message_end()
}
public fw_PlayerPreThink(id)
{
if(g_GameMode <= 0)
{
if(g_PlayerLast || g_LastDenied)
{
if(is_user_alive(id) && is_user_connected(id))
{
set_user_maxspeed(id, 250.0)
set_user_noclip(id, 0)
set_user_godmode(id, 0)
set_user_gravity(id, 1.0)
}
return PLUGIN_HANDLED
}
}
return FMRES_IGNORED;
}
stock sw_kill( Killer, Victim, ScoreBoard, const Weapon[ ] )
{
set_msg_block( get_user_msgid( "DeathMsg" ), BLOCK_SET );
ExecuteHamB( Ham_Killed, Victim, Killer, 0 );
set_msg_block( get_user_msgid( "DeathMsg" ), BLOCK_NOT );
make_deathmsg( Killer, Victim, 0, Weapon );
if( ScoreBoard )
{
message_begin( MSG_BROADCAST, get_user_msgid( "ScoreInfo" ) );
write_byte( Killer );
write_short( pev( Killer, pev_frags ) );
write_short( get_user_deaths( Killer ) );
write_short( 0 );
write_short( get_user_team( Killer ) );
message_end( );
message_begin( MSG_BROADCAST, get_user_msgid( "ScoreInfo" ) );
write_byte( Victim );
write_short( pev( Victim, pev_frags ) );
write_short( get_user_deaths( Victim ) );
write_short( 0 );
write_short( get_user_team( Victim ) );
message_end( );
}
if(cs_get_user_team(Victim) == CS_TEAM_T && get_bit(check_bteam, Victim))
{
check_blueteam--;
if(check_blueteam == 0)
user_kills()
}
else if(cs_get_user_team(Victim) == CS_TEAM_T && get_bit(check_rteam, Victim))
{
check_redteam--;
if(check_redteam == 0)
user_killss()
}
}
stock create_blood(const Float:origin[3])
{
// Show some blood :)
message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
engfunc(EngFunc_WriteCoord, origin[0])
engfunc(EngFunc_WriteCoord, origin[1])
engfunc(EngFunc_WriteCoord, origin[2])
write_short(m_iBlood[1])
write_short(m_iBlood[0])
write_byte(75)
write_byte(5)
message_end()
}
stock fm_get_aimorigin(index, Float:origin[3])
{
new Float:start[3], Float:view_ofs[3];
pev(index, pev_origin, start);
pev(index, pev_view_ofs, view_ofs);
xs_vec_add(start, view_ofs, start);
new Float:dest[3];
pev(index, pev_v_angle, dest);
engfunc(EngFunc_MakeVectors, dest);
global_get(glb_v_forward, dest);
xs_vec_mul_scalar(dest, 9999.0, dest);
xs_vec_add(start, dest, dest);
engfunc(EngFunc_TraceLine, start, dest, 0, index, 0);
get_tr2(0, TR_vecEndPos, origin);
return 1;
}
stock user_rendering(id, iRenderFx, Float:flRed, Float:flGreen, Float:flBlue, iRenderMode, Float:flRenderAmt)
{
new Float:fRenderColor[3];
fRenderColor[0] = flRed;
fRenderColor[1] = flGreen;
fRenderColor[2] = flBlue;
set_pev(id, pev_renderfx, iRenderFx);
set_pev(id, pev_rendercolor, fRenderColor);
set_pev(id, pev_rendermode, iRenderMode);
set_pev(id, pev_renderamt, flRenderAmt);
}
stock Fade(index, red, green, blue, alpha)
{
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},index);
write_short(1<<10);
write_short(1<<10);
write_short(1<<12);
write_byte(red);
write_byte(green);
write_byte(blue);
write_byte(alpha);
message_end();
}
public players_aura(taskid)
{
// Get player's origin
static origin[3]
get_user_origin(ID_AURA, origin)
// Colored Aura
message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
write_byte(TE_DLIGHT) // TE id
write_coord(origin[0]) // x
write_coord(origin[1]) // y
write_coord(origin[2]) // z
write_byte(20) // radius
write_byte(get_pcvar_num(cvar_players_aura_color_R)) // r
write_byte(get_pcvar_num(cvar_players_aura_color_G)) // g
write_byte(get_pcvar_num(cvar_players_aura_color_B)) // b
write_byte(2) // life
write_byte(0) // decay rate
message_end()
}
public Timer()
{
new szPlayers[32]
new szNum, szPlayer
get_players(szPlayers, szNum)
for(new i; i < szNum; i++)
{
szPlayer = szPlayers[i]
if(!is_user_alive(szPlayer) || !is_user_connected(szPlayer))
continue
if(g_GameMode == 15)
{
if(cs_get_user_team(szPlayer) == CS_TEAM_CT)
{
szPlayerCT[szPlayer] = false
set_pev(szPlayer, pev_flags, pev(szPlayer, pev_flags) & ~FL_FROZEN)
new Float:szSpeed
szSpeed = get_pcvar_float( g_Cvar[4] )
set_user_maxspeed(szPlayer, szSpeed)
new Float:szGravity
szGravity = get_pcvar_float( g_Cvar[5] )
set_user_gravity(szPlayer, szGravity)
}
}
}
}
public tagday_end(taskid)
{
new Touched = taskid - 22838
if(tagday[Touched]) tagday[Touched] = false
remove_task(Touched + 22838)
}
public TouchKill(id)
{
if(szPlayerCaught[id] && szPlayerTime[id] > 0)
{
--szPlayerTime[id]
set_task(1.0, "TouchKill", id)
}
else
{
set_pev(id, pev_flags, pev(id, pev_flags) & ~FL_FROZEN)
user_kill(id)
}
}
public PrisoneInformer(id)
{
if(szHelpNum > 0)
{
szHelpNum = 0
static n
new szText[512], szFormat[512]
n = 0
n = strlen(szText)
new szPlayers[32]
new szNum, szPlayer
get_players(szPlayers, szNum)
for(new i; i < szNum; i++)
{
szPlayer = szPlayers[i]
if(szPlayerCaught[szPlayer])
{
if(szPlayerTime[szPlayer] >= 1)
{
new szName[32]
get_user_name(szPlayer, szName, charsmax( szName ))
n += copy(szText[n], charsmax( szText ) - n, "^n^t")
formatex(szFormat, charsmax( szFormat ), " %s [%i]", szName, szPlayerTime[szPlayer])
n += copy(szText[n], charsmax( szText ) - n, szFormat)
++szHelpNum
}
}
}
set_hudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), 0.0, 0.6, 0, 6.0, 1.0)
ShowSyncHudMsg(0, g_syncHudMessage, "Inghetati: [%d] ^n%s", szHelpNum, szText)
}
}
stock CREATE_SPRITETRAIL(const Float:fOrigin[3], pSprite, iCount, iLife, iScale, iVelocityAlongVector, iRandomVelocity)
{
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_SPRITETRAIL);
engfunc(EngFunc_WriteCoord, fOrigin[0]);
engfunc(EngFunc_WriteCoord, fOrigin[1]);
engfunc(EngFunc_WriteCoord, fOrigin[2]);
engfunc(EngFunc_WriteCoord, fOrigin[0]);
engfunc(EngFunc_WriteCoord, fOrigin[1]);
engfunc(EngFunc_WriteCoord, fOrigin[2]);
write_short(pSprite);
write_byte(iCount);
write_byte(iLife); // 0.1's
write_byte(iScale);
write_byte(iVelocityAlongVector);
write_byte(iRandomVelocity);
message_end();
}
stock CREATE_BREAKMODEL(const Float:fOrigin[3], Float:fSize[3] = {16.0, 16.0, 16.0}, Float:fVelocity[3] = {25.0, 25.0, 25.0}, iRandomVelocity, pModel, iCount, iLife, iFlags)
{
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_BREAKMODEL);
engfunc(EngFunc_WriteCoord, fOrigin[0]);
engfunc(EngFunc_WriteCoord, fOrigin[1]);
engfunc(EngFunc_WriteCoord, fOrigin[2] + 24);
engfunc(EngFunc_WriteCoord, fSize[0]);
engfunc(EngFunc_WriteCoord, fSize[1]);
engfunc(EngFunc_WriteCoord, fSize[2]);
engfunc(EngFunc_WriteCoord, fVelocity[0]);
engfunc(EngFunc_WriteCoord, fVelocity[1]);
engfunc(EngFunc_WriteCoord, fVelocity[2]);
write_byte(iRandomVelocity);
write_short(pModel);
write_byte(iCount); // 0.1's
write_byte(iLife); // 0.1's
write_byte(iFlags);
message_end();
}
/*========================================================
END DaysMenu
========================================================*/
public player_spawn(id)
{
static CsTeams:team
if(!is_user_connected(id))
return HAM_IGNORED
set_pdata_float(id, m_fNextHudTextArgsGameTime, get_gametime() + 999999.0)
player_strip_weapons(id)
ChekWeaponAmount[id] = 3
is_freezed[id] = 0
g_SimonAllowed = 1
g_BlockWeapons = 0
g_FreedayNext = 0
g_isDay = false
secundeday = 0
g_GameMode = 0
g_HNSCount = 0
PlayDuel = false
set_user_maxspeed(id, 250.0)
set_user_noclip(id, 0)
set_user_godmode(id, 0)
set_user_gravity(id, 1.0)
set_cvar_string("jbe_shop", "1");
set_cvar_string("jbe_camera", "1");
set_cvar_string("sv_parachute", "1");
set_cvar_string("jbe_blockweaponmenu", "1");
set_cvar_string("jb_autojoin", "0");
set_cvar_string("jb_dayss", "");
if (get_pcvar_num(cvar_players_aura))
remove_task(id+TASK_AURA)
if(g_RoundEnd)
{
g_RoundEnd = 0
jbe_set_day_week(++g_JailDay);
}
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
clear_bit(g_PlayerCrowbar, id)
clear_bit(g_PlayerWanted, id)
team = cs_get_user_team(id)
switch(team)
{
case(CS_TEAM_T):
{
g_PlayerLast = 0
if(!g_PlayerReason[id])
g_PlayerReason[id] = random_num(1, 6)
player_hudmessage(id, 0, 5.0, {255, 0, 255}, "%L %L", LANG_SERVER, "JBE_PRISONER_REASON",
LANG_SERVER, g_Reasons[g_PlayerReason[id]])
if(get_user_flags(id) & read_flags(VIP_ACCES))
set_user_info(id, "model", "Play_Arena_VipT")
else
{
set_user_info(id, "model", "jb_pa_player")
entity_set_int(id, EV_INT_body, 2)
entity_set_int(id, EV_INT_skin, random_num(0, 2))
}
if(is_freeday() || get_bit(g_FreedayAuto, id))
{
freeday_set(0, id)
clear_bit(g_FreedayAuto, id)
}
else
entity_set_int(id, EV_INT_skin, random_num(0, 2))
if(g_CrowbarCount < get_pcvar_num(gp_CrowbarMax))
{
if(random_num(0, g_MaxClients) > (g_MaxClients / 2))
{
g_CrowbarCount++
set_bit(g_PlayerCrowbar, id)
}
}
player_strip_weapons(id)
cs_set_user_armor(id, 0, CS_ARMOR_NONE)
}
case(CS_TEAM_CT):
{
g_PlayerSimon[id]++
if(get_user_flags(id) & read_flags(VIP_ACCES))
set_user_info(id, "model", "Play_Arena_VipCT")
else
{
set_user_info(id, "model", "jb_pa_player")
entity_set_int(id, EV_INT_body, 3)
}
give_item(id, "weapon_knife")
engclient_cmd(id, "weapon_knife")
set_pev(id, pev_viewmodel2, v_Bulan)
set_pev(id, pev_weaponmodel2, p_Bulan)
cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM)
fm_give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
}
}
user[id] = false
//first_join(id)
return HAM_IGNORED
}
public player_damage(victim, ent, attacker, Float:damage, DamageType, bits)
{
if(get_user_team(attacker) == get_user_team(victim) && bits & DMG_HEGRENADE )
return HAM_IGNORED
if(!is_user_connected(attacker) || get_user_weapon(attacker) != CSW_KNIFE)
return HAM_IGNORED
if(is_user_connected(attacker) && is_user_connected(victim))
if(victim == attacker)
if(DamageType & DMG_HEGRENADE)
return HAM_SUPERCEDE
switch(g_Duel)
{
case(0):
{
if(attacker == ent && get_user_weapon(attacker) == CSW_KNIFE && get_bit(g_PlayerCrowbar, attacker) && cs_get_user_team(victim) != CS_TEAM_T)
{
SetHamParamFloat(4, damage * gc_CrowbarMul)
return HAM_OVERRIDE
}
}
case(2):
{
if(attacker != g_PlayerLast)
return HAM_SUPERCEDE
}
default:
{
if((victim == g_PlayerDuelT && attacker == g_PlayerDuelCT) || (victim == g_PlayerDuelCT && attacker == g_PlayerDuelT))
return HAM_IGNORED
return HAM_SUPERCEDE
}
}
return HAM_IGNORED
}
public player_attack(victim, attacker, Float:damage, Float:direction[3], tracehandle, damagebits)
{
static CsTeams:vteam, CsTeams:ateam
if(!is_user_connected(victim) || !is_user_connected(attacker) || victim == attacker)
return HAM_IGNORED
vteam = cs_get_user_team(victim)
ateam = cs_get_user_team(attacker)
if(ateam == CS_TEAM_CT && vteam == CS_TEAM_CT)
return HAM_SUPERCEDE
switch(g_Duel)
{
case(0):
{
if(ateam == CS_TEAM_CT && vteam == CS_TEAM_T)
{
if(get_bit(g_PlayerRevolt, victim))
clear_bit(g_PlayerRevolt, victim)
return HAM_IGNORED
}
}
case(2):
{
if(attacker != g_PlayerLast)
return HAM_SUPERCEDE
}
default:
{
if((victim == g_PlayerDuelT && attacker == g_PlayerDuelCT) || (victim == g_PlayerDuelCT && attacker == g_PlayerDuelT))
return HAM_IGNORED
return HAM_SUPERCEDE
}
}
/*if(ateam == CS_TEAM_T && vteam == CS_TEAM_T && g_BoxStarted)
{
if(get_knife1(attacker) && get_user_weapon(attacker) == CSW_KNIFE)
{
if(get_user_health(victim) > 30)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-30 );
}
else
sw_kill(attacker, victim, 1, "Box" )
if(get_pdata_int(victim, 75) == HIT_HEAD)
{
if(get_user_health(victim) > 15)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-15 );
}
else
sw_kill(attacker, victim, 1, "Box" )
}
}
else if(get_knife2(attacker) && get_user_weapon(attacker) == CSW_KNIFE)
{
if(get_user_health(victim) > 60)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-60 );
}
else
sw_kill(attacker, victim, 1, "Box" )
if(get_pdata_int(victim, 75) == HIT_HEAD)
{
if(get_user_health(victim) > 15)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-15 );
}
else
sw_kill(attacker, victim, 1, "Box" )
}
}
else if(get_knife3(attacker) && get_user_weapon(attacker) == CSW_KNIFE)
{
if(get_user_health(victim) > 80)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-80 );
}
else
sw_kill(attacker, victim, 1, "Box" )
if(get_pdata_int(victim, 75) == HIT_HEAD)
{
if(get_user_health(victim) > 15)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-15 );
}
else
sw_kill(attacker, victim, 1, "Box" )
}
}
else if(!get_knife1(attacker) && !get_knife2(attacker) && !get_knife3(attacker) && get_user_weapon(attacker) == CSW_KNIFE)
{
if(get_user_health(victim) > 25)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-25 );
}
else
sw_kill(attacker, victim, 1, "Box" )
if(get_pdata_int(victim, 75) == HIT_HEAD)
{
if(get_user_health(victim) > 15)
{
static Float:Origin[3]
fm_get_aimorigin(attacker, Origin)
create_blood(Origin)
set_user_health( victim, get_user_health(victim)-15 );
}
else
sw_kill(attacker, victim, 1, "Box" )
}
}
}*/
if(ateam == CS_TEAM_T && vteam == CS_TEAM_T && !g_BoxStarted)
return HAM_SUPERCEDE
if(ateam == CS_TEAM_T && vteam == CS_TEAM_CT)
{
if(!g_PlayerRevolt)
revolt_start()
set_bit(g_PlayerRevolt, attacker)
}
return HAM_IGNORED
}
public button_attack(button, id, Float:damage, Float:direction[3], tracehandle, damagebits)
{
if(is_valid_ent(button) && gc_ButtonShoot)
{
ExecuteHamB(Ham_Use, button, id, 0, 2, 1.0)
entity_set_float(button, EV_FL_frame, 0.0)
}
return HAM_IGNORED
}
public player_killed(victim, attacker, shouldgib)
{
static CsTeams:vteam, CsTeams:kteam
if(!(0 < attacker <= g_MaxClients) || !is_user_connected(attacker))
kteam = CS_TEAM_UNASSIGNED
else
kteam = cs_get_user_team(attacker)
vteam = cs_get_user_team(victim)
if(g_Simon == victim)
{
g_Simon = 0
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jbkill.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
if(get_pcvar_num(cvar_players_aura))
remove_task(victim+TASK_AURA)
if(cs_get_user_team(victim) == CS_TEAM_T && get_bit(check_bteam, victim))
check_blueteam--;
else if(cs_get_user_team(victim) == CS_TEAM_T && get_bit(check_rteam, victim))
check_redteam--;
switch(g_Duel)
{
case(0):
{
switch(vteam)
{
case(CS_TEAM_CT):
{
if(kteam == CS_TEAM_T && !get_bit(g_PlayerWanted, attacker))
{
set_bit(g_PlayerWanted, attacker)
if(g_GameMode == 1)
{
set_bit(g_PlayerWanted, attacker)
set_user_info(attacker, "model", "jb_pa_zombie")
entity_set_int(attacker, EV_INT_skin, 1)
player_glow(attacker, g_Colors[3])
}
else
{
if(get_user_flags(attacker) & read_flags(VIP_ACCES))
{
set_user_info(attacker, "model", "Play_Arena_VipT")
player_glow(attacker, g_Colors[3])
}
else
{
set_user_info(attacker, "model", "jb_pa_player")
entity_set_int(attacker, EV_INT_skin, 4)
}
}
}
}
case(CS_TEAM_T):
{
clear_bit(g_PlayerRevolt, victim)
clear_bit(g_PlayerWanted, victim)
}
}
}
default:
{
if (vteam == CS_TEAM_T)
{
if(task_exists(TASK_LAST))
remove_task(TASK_LAST)
set_cvar_string("jbe_shop", "0");
set_task(2.1, "task_last_duel", TASK_LAST)
}
if(g_Duel != 2 && (attacker == g_PlayerDuelT || attacker == g_PlayerDuelCT || victim == g_PlayerDuelT || victim == g_PlayerDuelCT))
{
//set_user_rendering(victim, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
set_user_rendering(attacker, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
duel_end()
g_PlayerLast = 0
g_Duel = 0
team_count()
}
}
}
return HAM_IGNORED
}
public player_touchweapon(id, ent)
{
static model[32], class[32]
if(g_BlockWeapons)
return HAM_SUPERCEDE
if(is_valid_ent(id) && is_user_alive(ent) && cs_get_user_team(ent) != CS_TEAM_CT && cs_get_user_team(ent) != CS_TEAM_T)
{
entity_get_string(id, EV_SZ_model, model, charsmax(model))
if(model[7] == 'w' && model[9] == 'h' && model[10] == 'e' && model[11] == 'g')
{
entity_get_string(id, EV_SZ_classname, class, charsmax(class))
if(equal(class, "weapon_hegrenade"))
remove_entity(id)
return HAM_SUPERCEDE
}
}
return HAM_IGNORED
}
public set_client_kv(id, const info[], const key[])
{
if(equal(key, "model"))
return FMRES_SUPERCEDE
return FMRES_IGNORED
}
public sound_emit(id, channel, sample[])
{
if(is_user_alive(id) && equal(sample, "weapons/knife_", 14))
{
switch(sample[17])
{
case('b'): emit_sound(id, CHAN_WEAPON, "weapons/cbar_hitbod2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
case('w'): emit_sound(id, CHAN_WEAPON, "weapons/cbar_hitbod1.wav", 1.0, ATTN_NORM, 0, PITCH_LOW)
case('1', '2'): emit_sound(id, CHAN_WEAPON, "weapons/bullet_hit2.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM)
}
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
public voice_listening(receiver, sender, bool:listen)
{
if((receiver == sender))
return FMRES_IGNORED
if(!is_user_connected(sender) || !is_user_connected(receiver))
return FMRES_IGNORED
if(get_user_flags(sender) & read_flags(VIP_ACCES) || get_user_flags(sender) & read_flags("b"))
{
engfunc(EngFunc_SetClientListening, receiver, sender, true)
return FMRES_SUPERCEDE
}
switch(gc_VoiceBlock)
{
case(2):
{
if((sender != g_Simon) && (!get_bit(g_SimonVoice, sender) && gc_VoiceBlock))
{
engfunc(EngFunc_SetClientListening, receiver, sender, false)
return FMRES_SUPERCEDE
}
}
case(1):
{
if(!get_bit(g_SimonVoice, sender) && gc_VoiceBlock)
{
engfunc(EngFunc_SetClientListening, receiver, sender, false)
return FMRES_SUPERCEDE
}
}
}
if(!is_user_alive(sender))
{
engfunc(EngFunc_SetClientListening, receiver, sender, false)
return FMRES_SUPERCEDE
}
if(sender == g_Simon)
{
engfunc(EngFunc_SetClientListening, receiver, sender, true)
return FMRES_SUPERCEDE
}
listen = true
if(g_SimonTalking && (sender != g_Simon))
listen = false
else
{
static CsTeams:steam
steam = cs_get_user_team(sender)
switch(gc_TalkMode)
{
case(2): listen = (steam == CS_TEAM_CT)
case(1): listen = (steam == CS_TEAM_CT || steam == CS_TEAM_T)
}
}
//Player Voice
if(get_bit(g_PlayerVoice, sender) && is_user_alive(sender))
{
engfunc(EngFunc_SetClientListening, receiver, sender, true)
return FMRES_SUPERCEDE
}
engfunc(EngFunc_SetClientListening, receiver, sender, listen)
return FMRES_SUPERCEDE
}
public round_first()
{
g_JailDay = 0
for(new i = 1; i <= g_MaxClients; i++)
g_PlayerSimon[i] = 0
set_cvar_num("sv_alltalk", 0)
set_cvar_num("mp_roundtime", 3)
set_cvar_num("mp_limitteams", 0)
set_cvar_num("mp_autoteambalance", 0)
round_end()
}
public jbe_set_day_week(iWeek)
g_JailDay = (g_JailDay > 6) ? 1 : iWeek;
public round_start()
{
if(g_RoundEnd)
return
new JailDay[256]
switch(g_JailDay)
{
case 0: formatex(JailDay, charsmax(JailDay), "Luni")
case 1: formatex(JailDay, charsmax(JailDay), "Luni")
case 2: formatex(JailDay, charsmax(JailDay), "Marti")
case 3: formatex(JailDay, charsmax(JailDay), "Miercuri")
case 4: formatex(JailDay, charsmax(JailDay), "Joi")
case 5: formatex(JailDay, charsmax(JailDay), "Vineri")
case 6: formatex(JailDay, charsmax(JailDay), "Sambata")
case 7: formatex(JailDay, charsmax(JailDay), "Duminica")
}
team_count()
if(!g_Simon && is_freeday())
{
g_Freeday = 1
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
check_freeday(TASK_FREEDAY)
}
else
set_task(60.0, "check_freeday", TASK_FREEDAY)
for(new i = 1; i <= g_MaxClients; i++)
{
if(!is_user_connected(i))
continue
set_user_maxspeed(i, 250.0)
set_user_noclip(i, 0)
set_user_godmode(i, 0)
set_user_gravity(i, 1.0)
remove_task(TASK_FADE)
user[i] = false
set_hudmessage(random_num( 1, 255 ), random_num( 1, 255 ), random_num( 1, 255 ), -1.0, 0.71, 2, 6.0, 3.0, 0.1, 1.5);
show_hudmessage(i, "[ Astazi este %s ]^n[ Trezirea ]", JailDay);
}
set_task(120.0, "freeday_end", TASK_FREEDAY)
g_SimonAllowed = 1
g_BlockWeapons = 0
g_FreedayNext = 0
g_isDay = false
secundeday = 0
g_GameMode = 0
g_HNSCount = 0
PlayDuel = false
remove_task(TASK_FADE)
set_cvar_string("jbe_shop", "1");
set_cvar_string("jbe_camera", "1");
set_cvar_string("sv_parachute", "1");
set_cvar_string("jbe_blockweaponmenu", "1");
set_cvar_string("jb_autojoin", "0");
set_cvar_string("jb_dayss", "");
inround = 0
if(g_TeamCount[CS_TEAM_T] > 0 && g_TeamCount[CS_TEAM_CT] > 0)
set_task(1.0, "CnT", TASK_SHOWTEAMMENU_TIMER, _, _, "b")
new crowbar_ent
while((crowbar_ent=engfunc(EngFunc_FindEntityByString, crowbar_ent, "classname", gCrowbarClassname)) != 0)
engfunc(EngFunc_RemoveEntity, crowbar_ent)
}
public round_end()
{
static CsTeams:team
static spectrounds
g_PlayerRevolt = 0
g_PlayerFreeday = 0
g_PlayerLast = 0
g_BoxStarted = 0
g_Simon = 0
g_CrowbarCount = 0
g_SimonAllowed = 0
g_RoundStarted = 0
g_LastDenied = 0
g_BlockWeapons = 0
g_TeamCount[CS_TEAM_T] = 0
g_TeamCount[CS_TEAM_CT] = 0
g_Freeday = 0
g_FreedayNext = (random_num(0,99) >= 95)
g_RoundEnd = 1
g_Duel = 0
g_PlayerLast = 0
PlayDuel = false
//remove_task(TASK_STATUS)
remove_task(TASK_FREEDAY)
remove_task(TASK_FREEEND)
remove_task(TASK_ROUND)
spectrounds = get_pcvar_num(gp_SpectRounds)
duel_end()
for(new i = 1; i <= g_MaxClients; i++)
{
if(!is_user_connected(i))
continue
szPlayerCT[i] = false
szPlayerCaught[i] = false
szPlayerTime[i] = 0
g_GameMode = 0
secundeday = 0
set_user_maxspeed(i, 250.0)
set_user_noclip(i, 0)
set_user_godmode(i, 0)
set_user_gravity(i, 1.0)
set_lights("#OFF");
set_cvar_string("mp_friendlyfire", "0");
set_cvar_string("jb_autojoin", "0");
g_isDay = false
set_cvar_string("jb_dayss", "");
set_user_hitzones(0, 0, 255)
nofog()
if(task_exists(TASK_GANGDAY))
remove_task(TASK_GANGDAY);
clear_bit(check_bteam, i);
clear_bit(check_rteam, i);
check_blueteam = 0;
check_redteam = 0;
set_cvar_string("jbe_shop", "1");
set_cvar_string("jbe_camera", "1");
set_cvar_string("sv_parachute", "1");
set_cvar_string("jbe_blockweaponmenu", "1");
set_cvar_string("jb_autojoin", "0");
set_cvar_string("jb_dayss", "");
remove_task(TASK_FADE)
set_task(0.6, "end_fadescreen", TASK_FADE)
menu_cancel(i)
team = cs_get_user_team(i)
player_strip_weapons(i)
switch(team)
{
case(CS_TEAM_SPECTATOR,CS_TEAM_UNASSIGNED):
{
g_PlayerSpect[i]++
if(g_PlayerSpect[i] > spectrounds)
{
client_cmd(i, "disconnect")
server_print("JBE Disconnected spectator client #%i", i)
}
}
}
}
for(new i = 0; i < sizeof(g_HudSync); i++)
ClearSyncHud(0, g_HudSync[i][_hudsync])
}
public end_fadescreen()
{
for(new i = 1; i <= g_MaxClients; i++)
{
set_hudmessage(random_num( 1, 255 ), random_num( 1, 255 ), random_num( 1, 255 ), -1.0, 0.71, 2, 6.0, 3.0, 0.1, 1.5);
show_hudmessage(i, "****^n [ Ziua a luat Sfarsit ]^n [ Toata lumea la Somn ]^n *****");
}
message_begin(MSG_BROADCAST, get_user_msgid("ScreenFade"))
write_short(12288)
write_short(12288)
write_short(0x0001)
write_byte(0)
write_byte(0)
write_byte(0)
write_byte(255)
message_end()
}
public cmd_voiceon(id)
{
client_cmd(id, "+voicerecord")
set_bit(g_SimonVoice, id)
if(g_Simon == id || is_user_admin(id))
set_bit(g_SimonTalking, id)
return PLUGIN_HANDLED
}
public cmd_voiceoff(id)
{
client_cmd(id, "-voicerecord")
clear_bit(g_SimonVoice, id)
if(g_Simon == id || is_user_admin(id))
clear_bit(g_SimonTalking, id)
return PLUGIN_HANDLED
}
public cmd_simon(id)
{
if(!is_user_connected(id))
return PLUGIN_HANDLED
static CsTeams:team, name[32]
team = cs_get_user_team(id)
if(g_SimonAllowed && !g_Freeday && is_user_alive(id) && team == CS_TEAM_CT && !g_Simon)
{
g_Simon = id
get_user_name(id, name, charsmax(name))
set_pev(id, pev_body, 1)
g_PlayerSimon[id]--
set_user_info(id, "model", "jb_pa_player")
entity_set_int(id, EV_INT_body, 1)
ChekWeaponAmount[id] = 3
client_print( id, print_chat, "*** Acum este simon, da-le comenzi PRIZONIERILOR ! ***");
cmd_simonmenu(id)
}
return PLUGIN_HANDLED
}
public cmd_open(id)
{
if(id == g_Simon)
{
jail_open()
new name[32]
get_user_name(g_Simon, name, charsmax(name))
set_hudmessage(0, 104, 139, -1.0, 0.74, 0, 6.0, 5.0)
show_hudmessage(0, "%L", 0, "JBE_OPEN_DOOR_SIMON", name)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_open.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
else if(g_Freeday)
{
if(is_user_alive(id) && is_user_connected(id))
{
if(get_user_team(id) == 2)
{
jail_open()
new name[32]
get_user_name(id, name, 63)
set_hudmessage(0, 104, 139, -1.0, 0.74, 0, 6.0, 5.0)
show_hudmessage(0, "%L", 0, "JBE_OPEN_DOOR_GUARD", name)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_open.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
}
}
return PLUGIN_HANDLED
}
public cmd_nomic(id)
{
static CsTeams:team
team = cs_get_user_team(id)
if(team == CS_TEAM_CT)
{
server_print("JBE Transfered guard to prisoners team client #%i", id)
if(g_Simon == id)
g_Simon = 0
if(!is_user_admin(id))
set_bit(g_PlayerNomic, id)
user_silentkill(id)
cs_set_user_team(id, CS_TEAM_T)
}
return PLUGIN_HANDLED
}
public cmd_help(id)
{
if(id > g_MaxClients)
id -= TASK_HELP
remove_task(TASK_HELP + id)
switch(get_bit(g_PlayerHelp, id))
{
case(0):
{
set_bit(g_PlayerHelp, id)
player_hudmessage(id, 7, 15.0, {230, 100, 10}, "%s", g_HelpText)
set_task(15.0, "cmd_help", TASK_HELP + id)
}
default:
{
clear_bit(g_PlayerHelp, id)
ClearSyncHud(id, g_HudSync[7][_hudsync])
}
}
}
/*======================================================
End FreedayMenu ---> LAST REQUEST
======================================================*/
public cmd_lastrequest(id)
{
if(g_isDay)
{
player_hudmessage(id, 8, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_CANT_LR")
return PLUGIN_HANDLED
}
if(g_TeamAlive[CS_TEAM_CT] <= 0)
return PLUGIN_HANDLED
if(!is_user_alive(g_PlayerLast))
task_last_duel()
if(!get_pcvar_num(gp_LastRequest) || g_LastDenied || g_PlayerLast != id || !is_user_alive(id) || g_Duel || GetPlayersNum( 1, 1 ) == 5)
return PLUGIN_HANDLED
new Buffer[512]
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_NAME")
new menu = menu_create(Buffer, "lastrequest_select")
if(!PlayDuel)
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_MONEY")
else
formatex(Buffer, charsmax(Buffer), "\d%L", id, "DUEL_MENU_MONEY")
menu_additem(menu, Buffer, "1")
if(!PlayDuel)
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_FREEDAY")
else
formatex(Buffer, charsmax(Buffer), "\d%L", id, "DUEL_MENU_FREEDAY")
menu_additem(menu, Buffer, "2")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_KNIFE")
menu_additem(menu, Buffer, "3")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_DEAGLE")
menu_additem(menu, Buffer, "4")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_GRENADE")
menu_additem(menu, Buffer, "5")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_M249")
menu_additem(menu, Buffer, "6")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_AWP")
menu_additem(menu, Buffer, "7")
formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_SCOUT")
menu_additem(menu, Buffer, "8")
/*formatex(Buffer, charsmax(Buffer), "%L", id, "DUEL_MENU_BAGHETE")
menu_additem(menu, Buffer, "9")*/
menu_display(id, menu, 0)
return PLUGIN_HANDLED
}
public lastrequest_select(id, menu, item)
{
if(g_isDay)
{
player_hudmessage(id, 8, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_CANT_LR")
return PLUGIN_HANDLED
}
if(item == MENU_EXIT || g_PlayerLast != id || !is_user_alive(id) || g_Duel)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new dst[32], option[128]
new data[6], iName[64], access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
get_user_name(id, dst, charsmax(dst))
new key = str_to_num(data)
switch(key)
{
case 1:
{
if(!PlayDuel)
{
formatex(option, charsmax(option), "Prizonierul %s a ales sa primeasca^n8000 Dolari", dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
cs_set_user_money(id, 8000)
user_kill(id)
g_Duel = 0
}
else
{
chatcolor(id, "%L", id, "DUEL_ALREDY", DUEL_PREFIX)
cmd_lastrequest(id)
}
}
case 2:
{
if(!PlayDuel)
{
set_bit(g_FreedayAuto, id)
user_silentkill(id)
formatex(option, charsmax(option), "Prizonierul %s a ales sa primeasca^nZi Libera", dst)
player_hudmessage(0, 6, 3.0, {0, 255, 0}, option)
g_Duel = 2
}
else
{
chatcolor(id, "%L", id, "DUEL_ALREDY", DUEL_PREFIX)
cmd_lastrequest(id)
}
}
case 3:
{
g_Duel = 3
menu_players(id, CS_TEAM_CT, 0, 1, "duel_box", "%L", id, "MENU_DUEL_PLAYERS")
}
default:
{
g_Duel = key
menu_players(id, CS_TEAM_CT, 0, 1, "duel_arme", "%L", id, "MENU_DUEL_PLAYERS")
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public duel_box(id, menu, item)
{
if(g_isDay)
{
player_hudmessage(0, 8, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_CANT_LR")
return PLUGIN_HANDLED
}
if(item == MENU_EXIT || g_PlayerLast != id)
{
menu_destroy(menu)
g_LastDenied = 0
g_Duel = 0
return PLUGIN_HANDLED
}
new dst[32], data[5], access, callback, option[128], player, src[32]
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
get_user_name(id, src, charsmax(src))
player = str_to_num(data)
formatex(option, charsmax(option), "%s a ales Duel de Box^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
client_cmd(0, "mp3 play ^"%s^"", game_box)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
set_user_health(id, 100)
clear_bit(g_PlayerCrowbar, id)
strip_user_weapons(id);
give_item(id, "weapon_knife");
set_user_noclip(id, 0)
set_user_godmode(id, 0)
set_user_gravity(id,1.0)
set_user_maxspeed(id, 250.0)
player_glow(id, g_Colors[3])
jb_strip_user_cold_weapons(id)
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons ( player );
give_item ( player, "weapon_knife" );
player_glow(player, g_Colors[2])
set_user_health(player, 100)
set_user_maxspeed(player, 250.0)
set_user_noclip(player, 0)
set_user_godmode(player, 0)
set_user_gravity(player,1.0)
jb_strip_user_cold_weapons(player)
}
new crowbar_ent
while((crowbar_ent=engfunc(EngFunc_FindEntityByString, crowbar_ent, "classname", gCrowbarClassname)) != 0)
engfunc(EngFunc_RemoveEntity, crowbar_ent)
g_BlockWeapons = 1
g_PlayerLast = 0
g_LastDenied = 1
g_Duel = 3
PlayDuel = true
jail_open()
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
return PLUGIN_HANDLED
}
public cmd_last_start(id, handle, seed)
{
if(!is_user_alive(id) || !g_Duel)
return FMRES_IGNORED
if(g_Duel != 6) // m249
{
if(g_Duel == 4)
cs_set_user_bpammo(id, CSW_DEAGLE, 1)
else if(g_Duel == 5)
cs_set_user_bpammo(id, CSW_HEGRENADE, 1)
else if(g_Duel == 7)
cs_set_user_bpammo(id, CSW_AWP, 1)
else if(g_Duel == 8)
cs_set_user_bpammo(id, CSW_SCOUT, 1)
}
return FMRES_IGNORED
}
public duel_arme(id, menu, item)
{
if(g_isDay)
{
player_hudmessage(0, 8, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_CANT_LR")
return PLUGIN_HANDLED
}
if(item == MENU_EXIT || g_PlayerLast != id)
{
menu_destroy(menu)
g_LastDenied = 0
g_Duel = 0
return PLUGIN_HANDLED
}
PlayDuel = true
new dst[32], data[5], access, callback, option[128], player, src[32]
menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
get_user_name(id, src, charsmax(src))
player = str_to_num(data)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_lr.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
set_user_health(id, 100)
set_user_maxspeed(id, 250.0)
set_user_noclip(id, 0)
set_user_godmode(id, 0)
set_user_gravity(id,1.0)
player_glow(id, g_Colors[3])
set_user_health(player, 100)
set_user_maxspeed(player, 250.0)
set_user_noclip(player, 0)
set_user_godmode(player, 0)
set_user_gravity(player,1.0)
player_glow(player, g_Colors[2])
set_hudmessage(139, 101, 8, -1.0, 0.6, 0, 6.0, 1.0)
switch(g_Duel)
{
case 4:
{
formatex(option, charsmax(option), "%s a ales Duel de Deagle^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
new iEnt = give_item(id, "weapon_deagle")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(id, 100)
player_glow(id, g_Colors[3])
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
new iEnt = give_item(player, "weapon_deagle")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(player, 100)
player_glow(player, g_Colors[2])
}
g_Duel = 4
}
case 5:
{
formatex(option, charsmax(option), "%s a ales Duel de Grenade^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
new iEnt = give_item(id, "weapon_hegrenade")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
player_glow(id, g_Colors[3])
set_user_health(id, 100)
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
new iEnt = give_item(player, "weapon_hegrenade")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
player_glow(player, g_Colors[2])
set_user_health(player, 100)
}
g_Duel = 5
}
case 6:
{
formatex(option, charsmax(option), "%s a ales Duel de Rambo^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
//cs_set_user_bpammo(id, CSW_M249,0)
new iEnt = give_item(id, "weapon_m249")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 2000)
player_glow(id, g_Colors[3])
set_user_health(id, 2000)
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
//cs_set_user_bpammo(player, CSW_M249, 0)
new iEnt = give_item(player, "weapon_m249")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 2000)
player_glow(player, g_Colors[2])
set_user_health(player, 2000)
}
g_Duel = 6
}
case 7:
{
formatex(option, charsmax(option), "%s a ales Duel de Awp^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
new iEnt = give_item(id, "weapon_awp")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(id, 100)
player_glow(id, g_Colors[3])
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
new iEnt = give_item(player, "weapon_awp")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(player, 100)
player_glow(player, g_Colors[2])
}
g_Duel = 7
}
case 8:
{
formatex(option, charsmax(option), "%s a ales Duel de Scout^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
new iEnt = give_item(id, "weapon_scout")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(id, 100)
player_glow(id, g_Colors[3])
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
new iEnt = give_item(player, "weapon_scout")
if (is_valid_ent(iEnt))
cs_set_weapon_ammo(iEnt, 1)
set_user_health(player, 100)
player_glow(player, g_Colors[2])
}
g_Duel = 8
}
case 9:
{
formatex(option, charsmax(option), "%s a ales Duel de Baghete^nDuel: %s vs %s", src, src, dst)
player_hudmessage(0, 6, 3.0, {139, 101, 8}, option)
if(id > 0 && is_user_connected(id) && is_user_alive(id))
{
g_PlayerDuelT = id
strip_user_weapons(id)
start_magic(id)
set_user_health(id, 500)
player_glow(id, g_Colors[3])
}
if(player > 0 && is_user_connected(player) && is_user_alive(player))
{
g_PlayerDuelCT = player
strip_user_weapons(player)
start_magic(player)
set_user_health(player, 500)
player_glow(player, g_Colors[2])
}
g_Duel = 9
}
}
new crowbar_ent
while((crowbar_ent=engfunc(EngFunc_FindEntityByString, crowbar_ent, "classname", gCrowbarClassname)) != 0)
engfunc(EngFunc_RemoveEntity, crowbar_ent)
g_BlockWeapons = 1
g_PlayerLast = 0
g_LastDenied = 1
jail_open()
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "0");
return PLUGIN_HANDLED
}
public task_last_duel()
{
if(g_RoundEnd || g_TeamAlive[CS_TEAM_CT] <= 0)
return PLUGIN_HANDLED
new TAlive
for(new i = 0; i <= get_maxplayers(); i++)
{
if(!is_user_alive(i))
continue
if(get_user_team(i) == 1)
TAlive++
}
if(TAlive == 1)
{
for(new i = 0; i <= get_maxplayers(); i++)
{
if(!is_user_alive(i))
continue
if(get_user_team(i) == 1)
{
g_PlayerLast = i
cmd_lastrequest(i)
break;
}
}
}
set_cvar_string("jbe_blockweaponmenu", "0");
set_cvar_string("jbe_shop", "0");
return PLUGIN_CONTINUE
}
public duel_end()
{
new Duel[256]
switch(g_Duel)
{
case 0: formatex(Duel, charsmax(Duel), "Box")
case 1: formatex(Duel, charsmax(Duel), "Box")
case 2: formatex(Duel, charsmax(Duel), "Box")
case 3: formatex(Duel, charsmax(Duel), "Box")
case 4: formatex(Duel, charsmax(Duel), "Deagle")
case 5: formatex(Duel, charsmax(Duel), "Grenazi")
case 6: formatex(Duel, charsmax(Duel), "M249")
case 7: formatex(Duel, charsmax(Duel), "Awp")
case 8: formatex(Duel, charsmax(Duel), "Scout")
case 9: formatex(Duel, charsmax(Duel), "Magic")
}
if(g_PlayerDuelT == 1 && g_PlayerDuelCT >= 1)
{
new name[32]
if(is_user_connected(g_PlayerDuelT) && is_user_alive(g_PlayerDuelT))
{
get_user_name(g_PlayerDuelT, name, charsmax(name))
chatcolor(0, "!t[!gLastRequest!t]!y Prizonierul !t[!g%s!t] !ya castigat !tDuelul !yde !t[!g%s!t] !y.", name, Duel)
set_user_rendering(g_PlayerDuelT)
}
else if(is_user_connected(g_PlayerDuelCT) && is_user_alive(g_PlayerDuelCT))
{
get_user_name(g_PlayerDuelT, name, charsmax(name))
chatcolor(0, "!t[!gLastRequest!t]!y Gardianul !t[!g%s!t] !ya castigat !tDuelul !yde !t[!g%s!t] !y.", name, Duel)
set_user_rendering(g_PlayerDuelCT)
}
}
if(g_Duel >= 3)
{
player_strip_weapons(g_PlayerDuelCT)
player_strip_weapons(g_PlayerDuelT)
}
client_cmd(0, "stopsound")
set_cvar_string("jbe_shop", "0");
task_last_duel()
g_Duel = 0
g_PlayerDuelT = 0
g_PlayerDuelCT = 0
g_LastDenied = 0
g_PlayerLast = 0
g_BlockWeapons = 0
}
GetPlayersNum(iTeam, iAlive)
{
new iPlayersNum;
for( new iPlayers = get_maxplayers( ); iPlayers > 0; iPlayers-- )
{
if( !is_user_connected( iPlayers ) )
continue;
if( get_user_team( iPlayers ) == iTeam && ( is_user_alive( iPlayers ) == iAlive || iAlive == 2 ) )
iPlayersNum++;
}
return iPlayersNum;
}
stock remove_frozen()
{
new szPlayers[32]
new szNum, szPlayer
get_players(szPlayers, szNum)
for(new i; i < szNum; i++)
{
szPlayer = szPlayers[i]
if(!is_user_alive(szPlayer) || !is_user_connected(szPlayer))
continue
set_pev(szPlayer, pev_flags, pev(szPlayer, pev_flags) & ~FL_FROZEN)
}
}
/*======================================================
End Last Request ---> COMENZI ADMIN
======================================================*/
public adm_freeday(id)
{
if(g_isDay)
{
chatcolor(id, "!g[JailBreak] !yNu poti da !gFreeDay !ypentru ca este in curs o !gZi Speciala !t.")
return PLUGIN_HANDLED
}
if(g_PlayerLast)
{
chatcolor(id, "!g[JailBreak] !yNu poti da !tZi Libera,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
new arg[32], cmd[32];
read_argv(0,cmd,31);
read_argv(1,arg,31);
new player = cmd_target(id,arg,CMDTARGET_OBEY_IMMUNITY | CMDTARGET_ALLOW_SELF);
if(get_user_flags(id) & read_flags ("c"))
{
new name[32], name2[32];
get_user_name(id,name,31);
get_user_name(player,name2, 31);
if(is_user_connected(player) && cs_get_user_team(player) == CS_TEAM_T)
{
freeday_set(id, player)
chatcolor(0, "!y[!gAdminControl!y] !tAdmin-ul !y[!g%s!y] !ya dat zi libera lui !y[!g%s!y].", name, name2)
log_to_file("LogJailBreak.log","[ JBE_FREEDAY ] Admin-ul [ %s ] a dat zi libera lui [ %s ].", name, name2)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
}
else
{
chatcolor(id, "!y[!gAdminControl!y] !yNu ai !gacces !yla aceasta comanda.")
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED
}
public adm_nomic(id)
{
new arg[32], cmd[32];
read_argv(0,cmd,31);
read_argv(1,arg,31);
new player = cmd_target(id, arg, CMDTARGET_OBEY_IMMUNITY | CMDTARGET_ALLOW_SELF);
if(id == 0 || get_user_flags(id) & read_flags ("b"))
{
new name[32], name2[32];
get_user_name(id,name,31);
get_user_name(player,name2, 31);
if(is_user_connected(player))
{
cmd_nomic(player);
chatcolor(0, "!y[!gAdminControl!y] !tAdmin-ul !y[!g%s!y] !yl-a mutat la !gPrizonieri !ype !y[!g%s!y].", name, name2)
log_to_file("LogJailBreak.log","[JBE_NOMIC] Admin-ul [ %s ] l-a mutat la T pe [ %s ].", name, name2)
}
}
else
{
chatcolor(id, "!y[!gAdminControl!y] !yNu ai !gacces !yla aceasta comanda.")
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED;
}
public adm_open(id)
{
if(get_user_flags(id) & ADMIN_ACCESS)
{
new nume[18]
get_user_name(id, nume, 17)
chatcolor(0, "!y[!gAdminControl!y] !tAdmin-ul !y[!g%s!y] !ya folosit !y[!gjbe_open!y].", nume)
log_to_file("LogJailBreak.log","[JBE_OPEN] Admin-ul [ %s ] a deschis celulele prin JBE_OPEN ",nume)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_open.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
jail_open()
}
else
{
chatcolor(id, "!y[!gAdminControl!y] !yNu ai !gacces !yla aceasta comanda.")
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED
}
public adm_box(id)
{
if(g_PlayerLast)
{
chatcolor(id, "!t[!gBox!t] !yNu poti activa !tBox,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
if(get_user_flags(id) & ADMIN_ACCESS)
{
new nume[16]
get_user_name(id, nume, 15)
chatcolor(0, "!y[!gAdminControl!y]!y Admin-ul !y[!g%s!y] !ya folosit !g[!yjbe_box!g].", nume)
log_to_file("LogJailBreak.log","[ JBE_BOX ] Admin-ul [ %s ] a dat BOX prin JBE_BOX ", nume)
cmd_box(id)
}
else
{
chatcolor(id, "!y[!gAdminControl!y] !yNu ai !gacces !yla aceasta comanda.")
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED
}
public adm_boxoff(id)
{
if(g_PlayerLast)
{
chatcolor(id, "!t[!gBox!t] !yNu poti dezactiva !tBox,!y cand este !gUltimul Prizonier!y, !tin !gviata !y!")
return PLUGIN_HANDLED
}
if(get_user_flags(id) & ADMIN_ACCESS)
{
new nume[16]
get_user_name(id, nume, 15)
chatcolor(0, "!y[!gAdminControl!y]!y Admin-ul !y[!g%s!y] !ya folosit !g[!yjbe_boxoff!g].", nume)
log_to_file("LogJailBreak.log","[ JBE_BOX ] Admin-ul [ %s ] a dat BOX-OFF prin JBE_BOXOFF ", nume)
cmd_boxoff(id)
}
else
{
chatcolor(id, "!y[!gAdminControl!y] !yNu ai !gacces !yla aceasta comanda.")
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED
}
public FreeDayALL(id)
{
g_Simon = 0
chatcolor(0, "!g[Jb.FRAGBITE.ro] !gFreeDay ALL!y a fost dat !gAUTOMAT !ypentru aceasta!g Zi Speciala.");
check_freeday(TASK_FREEDAY)
}
/*======================================================
END COMENZI ADMIN ---> Team Menu
======================================================*/
public show_team_menu(id)
{
if(inround < 30)
{
if(!user[id])
{
if(cs_get_user_team(id) != CS_TEAM_SPECTATOR && cs_get_user_team(id) != CS_TEAM_T && cs_get_user_team(id) != CS_TEAM_CT)
{
cs_set_user_team(id, 3)
user_kill(id)
}
static menu, szText[ 555 char ];
menu = menu_create( "\wMeniu Echipe \yJb.FRAGBITE.ro:^n\rRatie: \d[\w3\d] \rPrizonieri \w- \d[\w1\d] \yGardian", "team_choice" );
formatex( szText, charsmax( szText ), "\rPrizonieri \y[\d%d\y]", g_TeamAlive[CS_TEAM_T] );
menu_additem( menu, szText, "1")
if(get_user_flags(id) & read_flags("x") || get_user_flags(id) & read_flags("a") || get_player_num(TEAM_CT, AL_BOTH) <= get_player_num(TEAM_T, AL_BOTH)/4
|| g_TeamCount[CS_TEAM_CT] == 0 || g_TeamCount[CS_TEAM_T] > 5 && g_TeamCount[CS_TEAM_CT] == 1|| g_TeamCount[CS_TEAM_T] > 8 && g_TeamCount[CS_TEAM_CT] == 2 || g_TeamCount[CS_TEAM_T] > 11 && g_TeamCount[CS_TEAM_CT] == 3 || g_TeamCount[CS_TEAM_T] > 14 && g_TeamCount[CS_TEAM_CT] == 4 || g_TeamCount[CS_TEAM_T] > 17 && g_TeamCount[CS_TEAM_CT] == 5
|| g_TeamCount[CS_TEAM_T] > 20 && g_TeamCount[CS_TEAM_CT] == 6)
{
formatex( szText, charsmax( szText ), "\yGardieni \r[\d%d\r]^n^n", g_TeamAlive[CS_TEAM_CT] );
menu_additem( menu, szText, "2")
}
else
menu_additem( menu, "Gardieni \r[Ocupat]^n^n","2", ADMIN_ADMIN);
menu_additem( menu, "\yVizitatori penitenciar", "3")
menu_display ( id , menu )
}
else
client_print(id, print_center, "[Play-Arena] Ti-ai schimbat odata echipa runda asta !!!")
}
else if(get_user_flags(id) & read_flags("a") || get_user_flags(id) & read_flags("x"))
{
if(!user[id])
{
static menu, szText[ 555 char ];
menu = menu_create( "\wMeniu Echipe \yJb.FRAGBITE.ro:^n\rRatie: \d[\w3\d] \rPrizonieri \w- \d[\w1\d] \yGardian", "team_choice" );
formatex( szText, charsmax( szText ), "\rPrizonieri \y[\d%d\y]", g_TeamAlive[CS_TEAM_T] );
menu_additem( menu, szText, "1")
formatex( szText, charsmax( szText ), "\yGardieni \r[\d%d\r]^n^n", g_TeamAlive[CS_TEAM_CT] );
menu_additem( menu, szText, "2")
menu_additem( menu, "\yVizitatori \rPenitenciar", "3")
menu_display ( id , menu )
}
}
else
{
if(cs_get_user_team(id) != CS_TEAM_SPECTATOR && cs_get_user_team(id) != CS_TEAM_T && cs_get_user_team(id) != CS_TEAM_CT)
{
cs_set_user_team(id, 3)
user_kill(id)
}
else
client_print(id, print_center, "[Play-Arena] Nu poti intra in timpul rundei !!!")
}
return PLUGIN_HANDLED
}
public team_choice ( id , menu , item )
{
static dst [ 32 ], data [ 5 ], access , callback
static restore, vgui
if( item == MENU_EXIT )
{
menu_destroy ( menu )
return PLUGIN_HANDLED
}
restore = get_pdata_int(id, m_iVGUI)
vgui = restore & (1<<0)
if(vgui)
set_pdata_int(id, m_iVGUI, restore & ~(1<<0))
menu_item_getinfo ( menu , item , access , data , charsmax ( data ), dst , charsmax ( dst ), callback )
menu_destroy ( menu )
switch( data [ 0 ])
{
case('1'):
{
if(inround < 30)
{
if(!user[id] && is_user_connected(id))
{
if(cs_get_user_team(id) == CS_TEAM_T)
show_team_menu ( id )
else
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "1")
engclient_cmd(id, "joinclass", "1")
if(cs_get_user_team(id) != CS_TEAM_T)
{
cs_set_user_team(id, 1)
user_kill(id)
}
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
user[id] = true
new name[32]
get_user_name(id, name, 31)
}
}
else
client_print(id, print_center, "[Play-Arena] Nu poti intra in timpul rundei !!!")
}
else if(get_user_flags(id) & read_flags("x") || get_user_flags(id) & read_flags("a"))
{
if(cs_get_user_team(id) == CS_TEAM_T)
show_team_menu ( id )
else
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "1")
engclient_cmd(id, "joinclass", "1")
if(cs_get_user_team(id) != CS_TEAM_T)
{
cs_set_user_team(id, 1)
user_kill(id)
}
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
user[id] = true
new name[32]
get_user_name(id, name, 31)
}
}
else
client_print(id, print_center, "[Play-Arena] Nu poti intra in timpul rundei !!!")
}
case('2'):
{
if(inround < 30)
{
if(!user[id] && is_user_connected(id))
{
if(cs_get_user_team(id) == CS_TEAM_CT)
show_team_menu ( id )
else
{
if(get_user_flags(id) & read_flags("x") || get_user_flags(id) & read_flags("a") || get_player_num(TEAM_CT, AL_BOTH) <= get_player_num(TEAM_T, AL_BOTH)/4
|| g_TeamCount[CS_TEAM_CT] == 0 || g_TeamCount[CS_TEAM_T] > 5 && g_TeamCount[CS_TEAM_CT] == 1|| g_TeamCount[CS_TEAM_T] > 8 && g_TeamCount[CS_TEAM_CT] == 2 || g_TeamCount[CS_TEAM_T] > 11 && g_TeamCount[CS_TEAM_CT] == 3 || g_TeamCount[CS_TEAM_T] > 14 && g_TeamCount[CS_TEAM_CT] == 4 || g_TeamCount[CS_TEAM_T] > 17 && g_TeamCount[CS_TEAM_CT] == 5
|| g_TeamCount[CS_TEAM_T] > 20 && g_TeamCount[CS_TEAM_CT] == 6)
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "2")
engclient_cmd(id, "joinclass", "1")
if(cs_get_user_team(id) != CS_TEAM_CT)
{
cs_set_user_team(id, 2)
user_kill(id)
}
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
user[id] = true
new name[32]
get_user_name(id, name, 31)
}
else
{
show_team_menu ( id )
client_print(id, print_center, "[Play-Arena] Sunt prea multi Gardieni !!!")
}
}
}
else
client_print(id, print_center, "[Play-Arena] Ti-ai schimbat odata echipa runda asta !!!")
}
else if(get_user_flags(id) & read_flags("x") || get_user_flags(id) & read_flags("a"))
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "2")
engclient_cmd(id, "joinclass", "1")
if(cs_get_user_team(id) != CS_TEAM_CT)
{
cs_set_user_team(id, 2)
user_kill(id)
}
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
user[id] = true
new name[32]
get_user_name(id, name, 31)
}
else
client_print(id, print_center, "[Play-Arena] Nu poti intra in timpul rundei !!!")
}
case('3'):
{
if(inround < 30)
{
if(!user[id] && is_user_connected(id))
{
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
show_team_menu ( id )
else
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "6")
engclient_cmd(id, "joinclass", "1")
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
user[id] = true
if(cs_get_user_team(id) != CS_TEAM_SPECTATOR)
{
cs_set_user_team(id, 3)
user_kill(id)
}
new name[32]
get_user_name(id, name, 31)
}
}
else
client_print(id, print_center, "[Play-Arena] Ti-ai schimbat odata echipa runda asta !!!")
}
else if(get_user_flags(id) & read_flags("x") || get_user_flags(id) & read_flags("a"))
{
if(!user[id] && is_user_connected(id))
{
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
show_team_menu ( id )
else
{
new msgblock = get_msg_block(get_user_msgid ( "ShowMenu" ))
set_msg_block(get_user_msgid ( "ShowMenu" ), BLOCK_ONCE)
engclient_cmd(id, "jointeam", "6")
engclient_cmd(id, "joinclass", "1")
set_msg_block(get_user_msgid ( "ShowMenu" ), msgblock)
if(cs_get_user_team(id) != CS_TEAM_SPECTATOR)
{
cs_set_user_team(id, 3)
user_kill(id)
}
user[id] = true
new name[32]
get_user_name(id, name, 31)
}
}
}
else
client_print(id, print_center, "[Play-Arena] Nu poti intra in timpul rundei !!!")
}
}
if(vgui)
set_pdata_int(id, m_iVGUI, restore)
return PLUGIN_HANDLED
}
stock get_player_num(team, alive)
{
static player_num
player_num = 0
for(new i = 0; i < get_maxplayers(); i++)
{
if(!is_user_connected(i))
continue
if(alive == AL_NOT)
{
if(is_user_alive(i))
continue
}else if(alive == AL_ALIVE) {
if(!is_user_alive(i))
continue
}else if(alive == AL_BOTH)
if(team == TEAM_ALL)
{
if(cs_get_user_team(i) == CS_TEAM_UNASSIGNED || cs_get_user_team(i) == CS_TEAM_SPECTATOR)
continue
} else if(team == TEAM_T) {
if(cs_get_user_team(i) != CS_TEAM_T)
continue
} else if(team == TEAM_CT) {
if(cs_get_user_team(i) != CS_TEAM_CT)
continue
}
player_num++
}
return player_num
}
public jointeam ( id )
return PLUGIN_HANDLED
public CnT()
{
inround++
if(inround == 30)
remove_task(TASK_SHOWTEAMMENU_TIMER)
return PLUGIN_HANDLED
}
public message_ShowMenu ( iMsgid , iDest , id )
{
static sMenuCode [ iMaxLen ];
get_msg_arg_string ( 4 , sMenuCode , sizeof ( sMenuCode ) - 1 );
if( equal ( sMenuCode , FIRST_JOIN_MSG ) || equal ( sMenuCode , FIRST_JOIN_MSG_SPEC ))
{
if ( get_pcvar_num ( gp_AutoJoin ) == 1 )
set_autojoin_task( id , iMsgid )
else
show_team_menu ( id )
return PLUGIN_HANDLED ;
}
return PLUGIN_CONTINUE ;
}
public message_VGUIMenu ( iMsgid , iDest , id )
{
if( get_msg_arg_int ( 1 ) != VGUI_JOIN_TEAM_NUM )
return PLUGIN_CONTINUE ;
cs_set_user_team(id, 3)
user_kill(id)
show_team_menu ( id )
return PLUGIN_HANDLED ;
}
public task_Autojoin ( iParam [], id )
{
if(g_PlayerLast)
return PLUGIN_HANDLED
new iMsgBlock = get_msg_block ( iParam [ 0 ]);
set_msg_block ( iParam [ 0 ], BLOCK_SET );
engclient_cmd ( id , "jointeam" , "1" )
engclient_cmd ( id , "joinclass" , "1" )
set_msg_block ( iParam [ 0 ], iMsgBlock );
return PLUGIN_HANDLED
}
stock set_autojoin_task ( id , iMsgid )
{
if(g_PlayerLast)
return PLUGIN_HANDLED
new iParam [ 2 ];
iParam [ 0 ] = iMsgid ;
set_task ( 0.1 , "task_Autojoin" , id , iParam , sizeof ( iParam ));
return PLUGIN_HANDLED
}
public team_count()
{
static CsTeams:team, last
g_TeamCount[CS_TEAM_UNASSIGNED] = 0
g_TeamCount[CS_TEAM_T] = 0
g_TeamCount[CS_TEAM_CT] = 0
g_TeamCount[CS_TEAM_SPECTATOR] = 0
g_TeamAlive[CS_TEAM_UNASSIGNED] = 0
g_TeamAlive[CS_TEAM_T] = 0
g_TeamAlive[CS_TEAM_CT] = 0
g_TeamAlive[CS_TEAM_SPECTATOR] = 0
for(new i = 1; i <= g_MaxClients; i++)
{
if(is_user_connected(i))
{
team = cs_get_user_team(i)
g_TeamCount[team]++
g_PlayerTeam[i] = team
if(is_user_alive(i))
{
g_TeamAlive[team]++
if(team == CS_TEAM_T)
last = i
}
}
else
g_PlayerTeam[i] = CS_TEAM_UNASSIGNED
}
if(g_TeamAlive[CS_TEAM_T] == 1)
{
if(last != g_PlayerLast)
prisoner_last(last)
}
else
{
if(g_Duel || g_PlayerDuelT || g_PlayerDuelCT)
{
if(is_user_alive(g_PlayerDuelT))
{
set_user_rendering(g_PlayerDuelT, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
player_strip_weapons(g_PlayerDuelT)
}
if(is_user_alive(g_PlayerDuelCT))
{
set_user_rendering(g_PlayerDuelCT, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
player_strip_weapons(g_PlayerDuelCT)
}
}
g_PlayerLast = 0
g_PlayerDuelT = 0
g_PlayerDuelCT = 0
g_Duel = 0
}
}
/*======================================================
END Team Menu
======================================================*/
public prisoner_last(id)
{
static name[32], Float:roundmax
if(is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_T)
{
roundmax = get_pcvar_float(gp_RoundMax)
get_user_name(id, name, charsmax(name))
g_PlayerLast = id
//player_hudmessage(0, 6, 5.0, {0, 0, 255}, "%L", LANG_SERVER, "JBE_PRISONER_LAST", name)
remove_task(TASK_ROUND)
if(roundmax > 0.0)
{
player_hudmessage(0, 8, 3.0, {255, 0, 255}, "%L", LANG_SERVER, "JBE_STATUS_ENDTIMER", floatround(roundmax - 60.0))
set_task(roundmax - 60.0, "check_end", TASK_ROUND)
}
if((g_TeamAlive[CS_TEAM_CT] > 0) && get_pcvar_num(gp_AutoLastresquest))
{
cmd_lastrequest(id)
set_cvar_string("jbe_shop", "0");
set_cvar_string("jbe_blockweaponmenu", "1");
}
}
}
public revolt_start()
{
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_alarma.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
set_task(5.0, "stop_sound")
}
public stop_sound(task)
client_cmd(0, "stopsound")
public JailHudTask()
{
static i, n
new name[32], simon[32], last[32], szStatus[64], wanted[1024], freeday[1024], JailDay[256], DayName[256]
if(g_RoundStarted < 5 / 2)
g_RoundStarted++
n = 0
formatex(wanted, charsmax(wanted), "%L", LANG_SERVER, "JBE_PRISONER_WANTED")
n = strlen(wanted)
for(i = 0; i < g_MaxClients; i++)
{
if(get_bit(g_PlayerWanted, i) && is_user_alive(i) && n < charsmax(wanted))
{
get_user_name(i, name, charsmax(name))
n += copy(wanted[n], charsmax(wanted) - n, "^n^t")
n += copy(wanted[n], charsmax(wanted) - n, name)
}
}
n = 0
formatex(freeday, charsmax(freeday), "%L", LANG_SERVER, "JBE_PRISONER_FREEDAY")
n = strlen(freeday)
for(i = 0; i < g_MaxClients; i++)
{
if(get_bit(g_PlayerFreeday, i) && is_user_alive(i) && n < charsmax(freeday))
{
get_user_name(i, name, charsmax(name))
n += copy(freeday[n], charsmax(freeday) - n, "^n^t")
n += copy(freeday[n], charsmax(freeday) - n, name)
}
}
team_count()
//formatex(szStatus, charsmax(szStatus), "%L", LANG_SERVER, "JBE_STATUS", g_TeamAlive[CS_TEAM_T], g_TeamCount[CS_TEAM_T])
message_begin(MSG_BROADCAST, get_user_msgid("StatusText"), {0,0,0}, 0)
write_byte(0)
write_string(szStatus)
message_end()
switch(g_JailDay)
{
case 0: formatex(JailDay, charsmax(JailDay), "Luni")
case 1: formatex(JailDay, charsmax(JailDay), "Luni")
case 2: formatex(JailDay, charsmax(JailDay), "Marti")
case 3: formatex(JailDay, charsmax(JailDay), "Miercuri")
case 4: formatex(JailDay, charsmax(JailDay), "Joi")
case 5: formatex(JailDay, charsmax(JailDay), "Vineri")
case 6: formatex(JailDay, charsmax(JailDay), "Sambata")
}
if(secundeday >=1 && g_GameMode >= 1)
{
secundeday--;
formatex(DayName, charsmax(DayName), "%s - %d:%02d", g_DayName[g_GameMode], (secundeday / 60), (secundeday % 60))
}
else if(g_GameMode >= 1 && secundeday <= 0)
{
formatex(DayName, charsmax(DayName), "Zi Normala")
kill_all()
}
else if(g_Freeday == 1)
formatex(DayName, charsmax(DayName), "Zi Libera")
else if(g_Freeday == 0)
formatex(DayName, charsmax(DayName), "Zi Normala")
else
formatex(DayName, charsmax(DayName), "Zi Normala")
get_user_name(g_PlayerLast, last, charsmax(last))
get_user_name(g_Simon, simon, charsmax(simon))
if(secundeday <= 0)
{
if(g_Simon)
player_hudmessage(0, 2, HUD_DELAY + 1.0, {0, 104, 139}, "%s este Simon :: Astazi este %s :: %s", simon, JailDay, DayName)
else if(g_Freeday && g_Simon == 0)
player_hudmessage(0, 2, HUD_DELAY + 1.0, {0, 104, 139}, "Astazi este %s :: %s", JailDay, DayName)
else
player_hudmessage(0, 2, HUD_DELAY + 1.0, {0, 104, 139}, "Nu este Simon :: Astazi este %s :: %s", JailDay, DayName)
}
else if(secundeday >= 1)
{
if(g_Simon)
player_hudmessage(0, 2, HUD_DELAY + 1.0, {0, 104, 139}, "%s este Simon :: Astazi este %s :: %s", simon, JailDay, DayName)
else
player_hudmessage(0, 2, HUD_DELAY + 1.0, {0, 104, 139}, "Nu este Simon :: Astazi este %s :: %s", JailDay, DayName)
}
if(!(g_PlayerLast))
{
if(g_PlayerWanted)
player_hudmessage(0, 3, HUD_DELAY + 1.0, {255, 0, 0}, "%s", wanted)
else if(g_PlayerRevolt)
player_hudmessage(0, 3, HUD_DELAY + 1.0, {255, 25, 50}, "%L", LANG_SERVER, "JBE_PRISONER_REVOLT")
}
if(!(g_Freeday))
{
if(g_PlayerFreeday >= 1)
player_hudmessage(0, 7, HUD_DELAY + 1.0, {0, 255, 0}, "%s", freeday)
else
player_hudmessage(0, 7, HUD_DELAY + 1.0, {0, 0, 0}, "%L", LANG_SERVER, "JBE_PRISONER_NO_FREEDAY")
}
gc_TalkMode = get_pcvar_num(gp_TalkMode)
gc_VoiceBlock = get_pcvar_num(gp_VoiceBlock)
gc_SimonSteps = get_pcvar_num(gp_SimonSteps)
gc_ButtonShoot = get_pcvar_num(gp_ButtonShoot)
gc_CrowbarMul = get_pcvar_float(gp_CrowbarMul)
}
public check_freeday(task)
{
static Float:roundmax, i
if(g_isDay)
return PLUGIN_HANDLED
if(!g_Simon && !g_PlayerLast)
{
g_Freeday = 1
jail_open()
roundmax = get_pcvar_float(gp_RoundMax)
if(roundmax > 0.0)
{
for(i = 1; i <= g_MaxClients; i++)
if(is_user_alive(i) && cs_get_user_team(i) == CS_TEAM_T)
freeday_set(0, i)
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
player_hudmessage(0, 8, 3.0, {255, 0, 0}, "%L", LANG_SERVER, "JBE_STATUS_ENDTIMER", floatround(roundmax - 60.0))
remove_task(TASK_ROUND)
set_task(roundmax - 60.0, "check_end", TASK_ROUND)
}
}
if(get_pcvar_num(gp_AutoOpen))
jail_open()
return PLUGIN_HANDLED
}
public freeday_end(task)
{
if(g_Freeday || g_PlayerFreeday)
{
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
player_hudmessage(0, 8, 3.0, {255, 0, 255}, "%L", LANG_SERVER, "JBE_STATUS_ENDFREEDAY")
}
}
public check_end(task)
{
if(g_GameMode >= 1)
{
player_hudmessage(0, 8, 3.0, {0, 104, 139}, "Ziua nu se poate Termina^nPentru ca este in Desfasurare o Zi Speciala")
return PLUGIN_HANDLED
}
if(g_PlayerLast)
{
player_hudmessage(0, 8, 3.0, {0, 104, 139}, "Ziua nu se poate Termina^nPentru ca este Ultimul Prizonier in Viata")
return PLUGIN_HANDLED
}
team_count()
for(new i = 1; i <= g_MaxClients; i++)
{
if(g_PlayerTeam[i] == CS_TEAM_T && is_user_alive(i))
{
user_silentkill(i)
cs_set_user_deaths(i, get_user_deaths(i) - 1)
}
}
for(new i = 1; i <= g_MaxClients; i++)
{
if(g_PlayerTeam[i] == CS_TEAM_CT && is_user_alive(i))
{
user_silentkill(i)
cs_set_user_deaths(i, get_user_deaths(i) - 1)
}
}
emit_sound(0, CHAN_AUTO, "jb_pa_sounds/jb_clopotel.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
player_hudmessage(0, 6, 3.0, {255, 0, 255}, "%L", LANG_SERVER, "JBE_STATUS_ROUNDEND")
return PLUGIN_HANDLED
}
public setup_buttons()
{
new ent[3]
new Float:origin[3]
new info[32]
new pos
while((pos <= sizeof(g_Buttons)) && (ent[0] = engfunc(EngFunc_FindEntityByString, ent[0], "classname", "info_player_deathmatch")))
{
pev(ent[0], pev_origin, origin)
while((ent[1] = engfunc(EngFunc_FindEntityInSphere, ent[1], origin, CELL_RADIUS)))
{
if(!is_valid_ent(ent[1]))
continue
entity_get_string(ent[1], EV_SZ_classname, info, charsmax(info))
if(!equal(info, "func_door"))
continue
entity_get_string(ent[1], EV_SZ_targetname, info, charsmax(info))
if(!info[0])
continue
if(TrieKeyExists(g_CellManagers, info))
{
TrieGetCell(g_CellManagers, info, ent[2])
}
else
{
ent[2] = engfunc(EngFunc_FindEntityByString, 0, "target", info)
}
if(is_valid_ent(ent[2]) && (in_array(ent[2], g_Buttons, sizeof(g_Buttons)) < 0))
{
g_Buttons[pos] = ent[2]
pos++
break
}
}
}
TrieDestroy(g_CellManagers)
}
stock in_array(needle, data[], size)
{
for(new i = 0; i < size; i++)
if(data[i] == needle)
return i
return -1
}
stock freeday_set(id, player)
{
static src[32], dst[32]
get_user_name(player, dst, charsmax(dst))
if(is_user_alive(player) && !get_bit(g_PlayerWanted, player))
{
if(get_pcvar_num(gp_GlowModels))
player_glow(player, g_Colors[1])
set_bit(g_PlayerFreeday, player)
if(get_user_flags(player) & read_flags(VIP_ACCES))
{
set_user_info(player, "model", "Play_Arena_VipT")
player_glow(player, g_Colors[1])
}
else
{
set_user_info(player, "model", "jb_pa_player")
entity_set_int(player, EV_INT_skin, 3)
}
if(0 < id <= g_MaxClients)
{
get_user_name(id, src, charsmax(src))
player_hudmessage(0, 6, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_GUARD_FREEDAYGIVE", src, dst)
}
else if(!is_freeday())
player_hudmessage(0, 6, 3.0, {0, 255, 0}, "%L", LANG_SERVER, "JBE_PRISONER_HASFREEDAY", dst)
}
}
stock first_join(id)
{
if(!get_bit(g_PlayerJoin, id))
{
set_bit(g_PlayerJoin, id)
clear_bit(g_PlayerHelp, id)
set_task(5.0, "cmd_help", TASK_HELP + id)
}
}
stock ctcount_allowed()
{
static count
count = ((g_TeamCount[CS_TEAM_T] + g_TeamCount[CS_TEAM_CT]) / get_pcvar_num(gp_TeamRatio))
if(count < 2)
count = 2
else if(count > get_pcvar_num(gp_CtMax))
count = get_pcvar_num(gp_CtMax)
return count
}
stock player_hudmessage(id, hudid, Float:time = 0.0, color[3] = {0, 255, 0}, msg[], any:...)
{
static text[512], Float:x, Float:y
x = g_HudSync[hudid][_x]
y = g_HudSync[hudid][_y]
if(time > 0)
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.00, time, 0.00, 0.00)
else
set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.00, g_HudSync[hudid][_time], 0.00, 0.00)
vformat(text, charsmax(text), msg, 6)
ShowSyncHudMsg(id, g_HudSync[hudid][_hudsync], text)
}
stock menu_players(id, CsTeams:team, skip, alive, callback[], title[], any:...)
{
static i, name[32], num[5], menu, menuname[32]
vformat(menuname, charsmax(menuname), title, 7)
menu = menu_create(menuname, callback)
for(i = 1; i <= g_MaxClients; i++)
{
if(!is_user_connected(i) || (alive && !is_user_alive(i)) || (skip == i))
continue
if(!(team == CS_TEAM_T || team == CS_TEAM_CT) || ((team == CS_TEAM_T || team == CS_TEAM_CT) && (cs_get_user_team(i) == team)))
{
get_user_name(i, name, charsmax(name))
num_to_str(i, num, charsmax(num))
menu_additem(menu, name, num, 0)
}
}
menu_display(id, menu)
}
stock player_glow(id, color[3], amount=40)
set_user_rendering(id, kRenderFxGlowShell, color[0], color[1], color[2], kRenderNormal, amount)
stock player_strip_weapons(id)
{
strip_user_weapons(id)
give_item(id, "weapon_knife")
set_pdata_int(id, m_iPrimaryWeapon, 0)
}
stock player_strip_weapons_all()
for(new i = 1; i <= g_MaxClients; i++)
if(is_user_alive(i))
player_strip_weapons(i)
stock is_freeday()
return (g_FreedayNext || g_Freeday || (g_JailDay == 1))
public jail_open()
{
static i
for(i = 0; i < sizeof(g_Buttons); i++)
{
if(g_Buttons[i])
{
ExecuteHamB(Ham_Use, g_Buttons[i], 0, 0, 1, 1.0)
entity_set_float(g_Buttons[i], EV_FL_frame, 0.0)
}
}
}
stock chatcolor(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
/*======================================================
END Stock-URI ---> NATIVES by PedoBear
======================================================*/
public plugin_natives()
{
//Native Baza
register_native("get_simon", "native_user_simon", 1)
register_native("jb_is_user_simon", "native_get_user_simon", 1)
register_native("jb_get_user_in_duel", "jb_get_user_in_duel", 1)
register_native("jb_is_user_last", "native_is_last", 1)
register_native("jb_set_user_freeday", "native_set_user_freeday", 1)
register_native("jb_give_simon", "native_get_simon", 1)
register_native("jb_show_lr_menu", "native_show_lr_menu", 1)
register_native("jb_open_doors", "native_open_doors", 1)
register_native("is_free_day", "native_is_free_day", 1)
register_native("jb_fd_all", "native_fd_all", 1)
register_native("Jail_Day", "native_day", 1)
//Native DaysMenu
register_native("open_days", "cmd_daysmenu", 1)
register_native("open_days_lr", "JBDays", 1)
register_native("is_day", "native_is_day", 1)
register_native("Game_Mode", "get_gamemode", 1)
register_native("jb_set_gamemode", "jb_set_game", 1)
}
public native_get_simon(id)
cmd_simon(id)
public native_show_lr_menu(id)
cmd_lastrequest(id)
public native_set_user_freeday(id)
{
new name[32]
get_user_name(id, name, charsmax(name))
set_bit(g_PlayerFreeday, id)
set_user_rendering(id, kRenderFxGlowShell, 0, 250, 0, kRenderNormal, 18)
player_hudmessage(0, 6, 3.0, {0, 104, 139}, "%s a primit FREEDAY de la SERVER !", name)
}
public native_user_simon(id)
return g_Simon
public native_get_user_simon(id)
{
if(cs_get_user_team(id) != CS_TEAM_CT)
return 0
return g_Simon == id? 1 : 0
}
public bool:jb_get_user_in_duel(id)
{
if(id == g_PlayerDuelT || id == g_PlayerDuelCT)
return true
return false
}
public jb_set_game(num)
{
switch(num)
{
case 1: ZombieDay()
case 2: SpartanDay()
case 3: GravityDay()
case 4: GrenadeDay()
case 5: NightDay()
case 6: BoxDay()
case 7: HnsDay()
case 8: GhostDay()
case 9: MagicDay()
case 10: TagDay()
case 11: DodgeBallDay()
case 12: HeadShotDay()
case 13: PaintBallDay()
}
}
//Native DaysMenu
public native_is_day() return g_isDay
public get_gamemode() return g_GameMode
//Native Baza Jb
public native_open_doors() jail_open()
public native_fd_all(id) FreeDayALL(id)
public native_day() return g_JailDay
public native_is_free_day() return g_Freeday
public native_is_last() return g_PlayerLast
/*======================================================
END NATIVE ---> Comenzi Ascunse
======================================================*/
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/