
Стаж: 10 лет
Город: Москва
Сообщений: 222
Благодарностей: 68
Полезность: 173
|
В общем дело обстояло так, наш ГМ решил добавить ещё одну игру на JB сервер. Попросил кого то там на стороне. И тут потом кидает мне код, а там: Код:
public jb_set_game(num) { switch(num) { case 1: client_cmd(id, "say /boxgo") case 2: cmd_game_zombie() case 3: cmd_game_iviz() case 4: cmd_game_sparta() case 5: cmd_game_shark() case 6: cmd_game_alien() case 7: cmd_game_runner() case 8: cmd_game_hide() case 9: { jb_set_chay() g_GameMode = 8 g_TimerOver = 300 set_task(300.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") jail_open() } case 10: cmd_game_sniper() } } я аж осел на жопу. Теперь второй день пытаюсь исправить, но моих маловажны знаний совсем не хватает. Сможете разжувать новичку как сделать? Код:
#pragma tabsize 0 #include <amxmodx> #include <amxmisc> #include <engine> #include <fakemeta> #include <hamsandwich> #include <fun> #include <cstrike> #include <dhudmessage>
native jb_set_user_money(id, num) native jb_get_user_money(id) native jb_get_level_name(id, string[], len) native jb_get_exp(id) native jb_get_exp_current(id) native jb_get_level(id) native jb_user_member_gang(id) native jb_gang_skin() native jb_gang() //native jb_gang_name(string[], len)
native jb_moto(id) native jb_kogti(id) native jb_lom(id) native jb_machete(id) native jb_hands(id) native jb_set_money(amount) native jb_get_money() native jb_set_chay(); native jb_get_chay();
#define PLUGIN_NAME "JailBreak Extreme" #define PLUGIN_AUTHOR "JoRoPiTo" #define PLUGIN_VERSION "2.7" #define PLUGIN_CVAR "jbextreme"
#define TASK_STATUS 2487000 #define TASK_FREEDAY 2487100 #define TASK_ROUND 2487200 #define TASK_SAFETIME 2487400 #define TASK_FREEEND 2487500
#define TASK_HNS_DAY 51129 #define TASK_GAME_OVER 51149
#define TEAM_MENU "#Team_Select_Spect" #define TEAM_MENU2 "#Team_Select_Spect" #define HUD_DELAY Float:4.0 #define CELL_RADIUS Float:200.0
#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 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])
#define m_iPrimaryWeapon 116 #define m_iVGUI 510 #define m_fGameHUDInitialized 349 #define m_fNextHudTextArgsGameTime 198 #define ID_SHOWHUD (taskid - TASK_SHOWHUD)
enum _hud { _hudsync, Float:_x, Float:_y, Float:_time } enum _lastrequest { _knife, _deagle, _freeday, _weapon } enum _duel { _name[16], _csw, _entname[32], _opt[32], _sel[32] }
enum (+= 100) { TASK_SHOWHUD = 10 }
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_SimonRandom new gp_GlowModels new gp_AutoLastresquest new gp_RestartRaund new gp_Motd new gp_AutoOpen new gp_TeamChange
new g_MaxClients new g_MsgStatusText new g_MsgStatusIcon new g_MsgVGUIMenu new g_MsgShowMenu new g_MsgClCorpse new g_MsgMOTD
new gc_TalkMode new gc_VoiceBlock new gc_SimonSteps new gc_ButtonShoot new Float:gc_CrowbarMul
new bool:g_Translate[33]
#define ZOMBIE_SPEED Float:530.0
new const server_model[] = {"zono4ka35"}
new const endsounds[][] = { "ng_z0na35/1.mp3", "ng_z0na35/2.mp3", "ng_z0na35/3.mp3", "ng_z0na35/4.mp3", "ng_z0na35/5.mp3", "ng_z0na35/6.mp3", "ng_z0na35/7.mp3", "ng_z0na35/8.mp3", "ng_z0na35/9.mp3", "ng_z0na35/10.mp3", "ng_z0na35/11.mp3" }
new const LEVELS_NAME[][] = { "Шкура", //1 "Малышка", //2 "Игрок", //3 "Баклан", //3 "Деловой", //3 "Свой человек", //3 "Бродяга", //3 "Опытный", //3 "Боец", //3 "Блатной", //3 "Пахан", //3 "Главарь", //3 "Хозяин", //3 "Папик зонки", //3 "Элита z0na35" //3 }
new const _p_Moto[] = { "models/p_moto.mdl" } new const _v_Moto[] = { "models/chainsaw_new3.mdl" }
new const _p_Moto1[] = { "models/p_kogti55.mdl" } new const _v_Moto1[] = { "models/v_kogti55.mdl" }
new const _p_Moto2[] = { "models/p_lom55.mdl" } new const _v_Moto2[] = { "models/v_lom55.mdl" }
new const _p_Mahete[] = { "models/p_Mahete.mdl" } new const _v_Mahete[] = { "models/v_Mahete.mdl" }
new const _p_Hands[] = { "models/p_Hands.mdl" } new const _v_Hands[] = { "models/v_Hands.mdl" }
//Game Sound new const g_Game_2[] = {"sound/GameSound/sparta.mp3"} new const g_Game_3[] = {"sound/GameSound/galaxy_xxx.mp3"} new const g_Game_4[] = {"sound/GameSound/hide_me.mp3"} new const g_Game_7[] = {"sound/GameSound/speed.mp3"}
new const _FistModels[][] = { "models/p_bknuckles.mdl", "models/z0na55VS/mod_hands.mdl" } new const _BOXFistModels[][] = { "models/p_boxing_z.mdl", "models/v_boxing_z.mdl" } new const _CTFistModels[][] = { "models/p_baton55.mdl", "models/v_baton55.mdl" } new const _CrowbarModels[][] = { "models/z0na55VS/p_balrog91.mdl", "models/z0na55VS/v_balrog91.mdl" } new const _FistSounds[][] = { "weapons/cbar_hitbod2.wav", "weapons/cbar_hitbod1.wav", "weapons/bullet_hit1.wav", "weapons/bullet_hit2.wav" } 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"}
new const _WeaponsFree[][] = { "weapon_scout", "weapon_deagle", "weapon_mac10", "weapon_elite", "weapon_ak47", "weapon_m4a1", "weapon_mp5navy" } new const _WeaponsFreeCSW[] = { CSW_SCOUT, CSW_DEAGLE, CSW_MAC10, CSW_ELITE, CSW_AK47, CSW_M4A1, CSW_MP5NAVY } new const _WeaponsFreeAmmo[] = { 90, 35, 100, 120, 90, 90, 120 }
new const _Duel[][_duel] = { { "Deagle", CSW_DEAGLE, "weapon_deagle", "JBE_MENU_LASTREQ_OPT4", "JBE_MENU_LASTREQ_SEL4" }, { "Scout", CSW_SCOUT, "weapon_scout", "JBE_MENU_LASTREQ_OPT5", "JBE_MENU_LASTREQ_SEL5" }, { "Grenades", CSW_HEGRENADE, "weapon_hegrenade", "JBE_MENU_LASTREQ_OPT6", "JBE_MENU_LASTREQ_SEL6" }, { "Awp", CSW_AWP, "weapon_awp", "JBE_MENU_LASTREQ_OPT7", "JBE_MENU_LASTREQ_SEL7" }, { "M3", CSW_M3,"weapon_m3", "JBE_MENU_LASTREQ_OPT8", "JBE_MENU_LASTREQ_SEL8" } }
new const sounds[][] = { "jbe_count/1.mp3", "jbe_count/1.mp3", "jbe_count/2.mp3", "jbe_count/3.mp3", "jbe_count/4.mp3", "jbe_count/5.mp3", "jbe_count/6.mp3", "jbe_count/7.mp3", "jbe_count/8.mp3", "jbe_count/9.mp3", "jbe_count/10.mp3" }
// 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}, {255, 140, 0}, {0, 0, 255}, {255, 0, 0} }
new g_PlayerSpect[33] new g_PlayerSimon[33] new g_GameBox[33] new g_SpeedPlayer[33] new g_SpeedPlayerZombie[33]
// MoneyTranslite new g_TransferMoney[33] new PlayerCredit[33]
// Game new g_TimerOver new g_TimeHide new g_GameMode = 0 new zsMaxPlayers
new g_BackToCT = 0
new CsTeams:g_PlayerTeam[33] new Float:g_SimonRandom new Trie:g_CellManagers new g_JailDay new g_PlayerJoin new g_PlayerNomic new g_HaveVoice new g_PlayerWanted new g_PlayerCrowbar new g_PlayerCrowbar2 new g_PlayerRevolt new g_PlayerFreeday new g_FreedayBlock new g_PlayerLast new g_FreedayAuto new g_FreedayNext new g_TeamCount[CsTeams] new g_TeamAlive[CsTeams] new g_BoxStarted new g_RoundDay new g_CrowbarCount new g_Simon new g_Count new g_Counted new g_SimonAllowed new g_SimonTalking new g_SimonVoice new g_RoundStarted new g_LastDenied new g_Freeday new g_Restart_Timer new g_BlockWeapons new g_RoundEnd new g_Duel new g_DuelA new g_DuelB new g_SafeTime new g_Weekday[64] new g_Buttons[10] new g_Hud, g_SyncHud
new bool:spawnenable = true;
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)
register_dictionary("jbextreme.txt")
g_MsgStatusText = get_user_msgid("StatusText") g_MsgStatusIcon = get_user_msgid("StatusIcon") g_MsgVGUIMenu = get_user_msgid("VGUIMenu") g_MsgShowMenu = get_user_msgid("ShowMenu") g_MsgMOTD = get_user_msgid("MOTD") g_MsgClCorpse = get_user_msgid("ClCorpse")
register_message(g_MsgStatusText, "msg_statustext") register_message(g_MsgStatusIcon, "msg_statusicon") register_message(g_MsgVGUIMenu, "msg_vguimenu") register_message(g_MsgShowMenu, "msg_showmenu") register_message(g_MsgMOTD, "msg_motd") register_message(g_MsgClCorpse, "msg_clcorpse")
register_event("CurWeapon", "current_weapon", "be", "1=1", "2=29") register_event("CurWeapon", "current_weapon_two", "be", "1=1") register_event("StatusValue", "Event_StatusValueShow", "be", "1=2", "2!0"); register_event("StatusValue", "Event_StatusValueHide", "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) RegisterHam(Ham_Touch, "weapon_hegrenade", "player_touchweapon") RegisterHam(Ham_Touch, "weaponbox", "player_touchweapon") RegisterHam(Ham_Touch, "armoury_entity", "player_touchweapon")
register_forward(FM_SetClientKeyValue, "set_client_kv") register_forward(FM_EmitSound, "sound_emit") register_forward(FM_Voice_SetClientListening, "voice_listening") register_forward(FM_CmdStart, "player_cmdstart", 1)
register_logevent("round_end", 2, "1=Round_End") 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_menucmd(register_menuid(TEAM_MENU), 51, "team_select") register_menucmd(register_menuid(TEAM_MENU2), 51, "team_select")
register_menu("MenuT", 1023, "cmd_server_menu_t") register_menu("MenuCT", 1023, "cmd_server_menu_ct")
register_clcmd("jointeam", "cmd_jointeam") register_clcmd("joinclass", "cmd_joinclass") register_clcmd("+simonvoice", "cmd_voiceon") register_clcmd("-simonvoice", "cmd_voiceoff")
register_clcmd("say /fd", "cmd_freeday", ADMIN_BAN) register_clcmd("say /voice", "cmd_voice", ADMIN_BAN) register_clcmd("say /open", "adm_open", ADMIN_BAN)
register_clcmd("say /fd", "cmd_freeday") register_clcmd("say /lr", "cmd_lastrequest") register_clcmd("say /duel", "cmd_lastrequest") register_clcmd("say /simon", "cmd_simon") register_clcmd("simon", "cmd_simon") register_clcmd("say /smenu", "cmd_simonmenu") register_clcmd("say /box", "cmd_box")
register_clcmd("say /Menu", "check_menu") register_clcmd("say /menu", "check_menu") register_clcmd("Menu", "check_menu")
register_clcmd("jbe_freeday", "adm_freeday", ADMIN_KICK) register_concmd("jbe_open", "adm_open", ADMIN_KICK) register_concmd("jbe_box", "adm_box", ADMIN_KICK)
gp_GlowModels = register_cvar("jbe_glowmodels", "0") gp_SimonSteps = register_cvar("jbe_simonsteps", "0") gp_CrowbarMul = register_cvar("jbe_crowbarmultiplier", "25.0") gp_CrowbarMax = register_cvar("jbe_maxcrowbar", "1") gp_TeamRatio = register_cvar("jbe_teamratio", "3") gp_TeamChange = register_cvar("jbe_teamchange", "0") gp_CtMax = register_cvar("jbe_maxct", "3") gp_BoxMax = register_cvar("jbe_boxmax", "28") gp_RetryTime = register_cvar("jbe_retrytime", "10.0") gp_RoundMax = register_cvar("jbe_freedayround", "240.0") gp_AutoLastresquest = register_cvar("jbe_autolastrequest", "1") gp_Motd = register_cvar("jbe_motd", "1") gp_SimonRandom = register_cvar("jbe_randomsimon", "0") gp_AutoOpen = register_cvar("jbe_autoopen", "1") gp_TalkMode = register_cvar("jbe_talkmode", "2") gp_VoiceBlock = register_cvar("jbe_blockvoice", "0") gp_ButtonShoot = register_cvar("jbe_buttonshoot", "1") gp_RestartRaund = register_cvar("jbe_auto_rr_time","15.0")
g_Restart_Timer = floatround(get_pcvar_float(gp_RestartRaund))
zsMaxPlayers = get_maxplayers() g_MaxClients = get_global_int(GL_maxClients) set_task(1.0, "start_rr_timer", _, _, _, "a", floatround(get_pcvar_float(gp_RestartRaund)))
for(new i = 0; i < sizeof(g_HudSync); i++) g_HudSync[i][_hudsync] = CreateHudSyncObj()
g_SyncHud = CreateHudSyncObj() g_Hud = CreateHudSyncObj()
setup_buttons() }
public plugin_precache() { new fastdl2[128]
static i
format(fastdl2, 127, "models/player/%s/%s.mdl", server_model, server_model) precache_model(fastdl2)
for(i = 0; i < sizeof(_FistModels); i++) precache_model(_FistModels[i])
for(i = 0; i < sizeof(_BOXFistModels); i++) precache_model(_BOXFistModels[i])
for(i = 0; i < sizeof(_CTFistModels); i++) precache_model(_CTFistModels[i])
for(i = 0; i < sizeof(_CrowbarModels); i++) precache_model(_CrowbarModels[i])
for(i = 0; i < sizeof(_FistSounds); i++) precache_sound(_FistSounds[i]) for(new i = 1; i <= 10; i++) precache_sound(sounds[i]) for(new i = 1; i <= 10; i++) precache_sound(endsounds[i]) //Game Sound precache_generic(g_Game_2) precache_generic(g_Game_3) precache_generic(g_Game_4) precache_generic(g_Game_7) precache_sound("JBprogame/jail_mode/halyava1.wav") precache_sound("JBprogame/timepass_ac.wav") precache_sound("GameSoNew.wav") precache_sound("figtday.wav") precache_sound("GameSnip.wav") precache_sound("JBprogame/duel/zonaduel_2016.wav") precache_sound("JBprogame/jail_mode/bell.wav") precache_sound("boxonoff.wav") precache_model("models/v_crowbar.mdl") precache_model("models/p_crowbar.mdl") precache_model("models/dance_okey.mdl") precache_model("models/jail_west_v2/jail_horse.mdl") precache_model("models/jail_west_v2/jail_grass.mdl") precache_model("models/jail_west_v2/jail_cactus.mdl") precache_model("models/jail_west_v2/jail_boll.mdl") 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 }
public client_putinserver(id) { set_task(1.0, "hud_Informer", id + TASK_SHOWHUD, _, _, "b") clear_bit(g_PlayerJoin, id) clear_bit(g_PlayerCrowbar, id) clear_bit(g_PlayerCrowbar2, 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, "stopsound") }
public client_disconnect(id) { if(g_Simon == id) { g_Simon = 0 ClearSyncHud(0, g_HudSync[2][_hudsync]) player_hudmessage(0, 2, 5.0, _, "%L", LANG_SERVER, "JBE_SIMON_HASGONE") } else if(g_PlayerLast == id || (g_Duel && (id == g_DuelA || id == g_DuelB))) { g_Duel = 0 g_DuelA = 0 g_DuelB = 0 g_LastDenied = 0 g_BlockWeapons = 0 g_PlayerLast = 0 } g_Translate[id] = false remove_task(id+TASK_SHOWHUD) 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 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_vguimenu(msgid, dest, id) { static msgarg1 static CsTeams:team msgarg1 = get_msg_arg_int(1) if(msgarg1 == 2) { team = cs_get_user_team(id) if((team == CS_TEAM_T) && !is_user_admin(id) && (is_user_alive(id) || !get_pcvar_num(gp_TeamChange))) { client_print(id, print_center, "%L", LANG_SERVER, "JBE_TEAM_CANTCHANGE") return PLUGIN_HANDLED } show_menu(id, 51, TEAM_MENU, -1) return PLUGIN_HANDLED } return PLUGIN_CONTINUE }
public msg_showmenu(msgid, dest, id) { static msgarg1, roundloop static CsTeams:team msgarg1 = get_msg_arg_int(1) if(msgarg1 != 531 && msgarg1 != 563) return PLUGIN_CONTINUE roundloop = floatround(get_pcvar_float(gp_RetryTime) / 2) team = cs_get_user_team(id) if(team == CS_TEAM_T) { if(!is_user_admin(id) && (is_user_alive(id) || (g_RoundStarted >= roundloop) || !get_pcvar_num(gp_TeamChange))) { client_print(id, print_center, "%L", LANG_SERVER, "JBE_TEAM_CANTCHANGE") return PLUGIN_HANDLED }else{ show_menu(id, 51, TEAM_MENU, -1) return PLUGIN_HANDLED } }else{ show_menu(id, 51, TEAM_MENU, -1) 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_two(id) { if(!is_user_alive(id)) return PLUGIN_CONTINUE if(g_RoundEnd) { if(get_user_weapon(id) != CSW_KNIFE) engclient_cmd(id, "weapon_knife") } if(g_SpeedPlayer[id]) set_user_maxspeed(id, 510.0) if(g_SpeedPlayerZombie[id]) set_user_maxspeed(id,ZOMBIE_SPEED) return PLUGIN_CONTINUE }
public current_weapon(id) { if(!is_user_alive(id)) return PLUGIN_CONTINUE if(cs_get_user_team(id) == CS_TEAM_CT) { if(g_RoundEnd) { set_pev(id, pev_viewmodel2, "models/dance_okey.mdl") set_pev(id, pev_weaponmodel2, _FistModels[0]) } else { if(get_bit(g_PlayerCrowbar2, id)) { set_pev(id, pev_viewmodel2, "models/v_crowbar.mdl") set_pev(id, pev_weaponmodel2, "models/p_crowbar.mdl") } else { set_pev(id, pev_viewmodel2, _CTFistModels[1]) set_pev(id, pev_weaponmodel2, _CTFistModels[0]) } } } else if(cs_get_user_team(id) == CS_TEAM_T) { if(g_RoundEnd) { set_pev(id, pev_viewmodel2, "models/dance_okey.mdl") set_pev(id, pev_weaponmodel2, _FistModels[0]) } else { if(get_bit(g_PlayerCrowbar, id)) { set_pev(id, pev_viewmodel2, _CrowbarModels[1]) set_pev(id, pev_weaponmodel2, _CrowbarModels[0]) } else if(get_bit(g_PlayerCrowbar2, id)) { set_pev(id, pev_viewmodel2, "models/v_crowbar.mdl") set_pev(id, pev_weaponmodel2, "models/p_crowbar.mdl") } else if (jb_moto(id)) { set_pev(id, pev_viewmodel2, _v_Moto) set_pev(id, pev_weaponmodel2, _p_Moto) } else if (jb_kogti(id)) { set_pev(id, pev_viewmodel2, _v_Moto1) set_pev(id, pev_weaponmodel2, _p_Moto1) } else if (jb_lom(id)) { set_pev(id, pev_viewmodel2, _v_Moto2) set_pev(id, pev_weaponmodel2, _p_Moto2) } else if (jb_machete(id)) { set_pev(id, pev_viewmodel2, _v_Mahete) set_pev(id, pev_weaponmodel2, _p_Mahete) } else if (jb_hands(id)) { set_pev(id, pev_viewmodel2, _v_Hands) set_pev(id, pev_weaponmodel2, _p_Hands) } else { if(g_BoxStarted) { set_pev(id, pev_viewmodel2, _BOXFistModels[1]) set_pev(id, pev_weaponmodel2, _BOXFistModels[0]) } else { set_pev(id, pev_viewmodel2, _FistModels[1]) set_pev(id, pev_weaponmodel2, _FistModels[0]) } } } } return PLUGIN_CONTINUE }
public hud_Informer(taskid) { static id id = ID_SHOWHUD if(!is_user_alive(id)) { id = pev(id, pev_iuser2) if (!is_user_alive(id)) return } new i, n,len,freeday[1024],Message[1024], szTextWanted[256] new name[32], /*rank_name[32], gang_name[32],*/ szText2[32], name2[32] len = 0 get_user_name(jb_gang(), name2, charsmax(name2)) get_user_name(id, szText2, charsmax(szText2)) //jb_get_level_name(id, rank_name, charsmax(rank_name)) //jb_gang_name(gang_name, charsmax(gang_name)) format( szTextWanted, 255, "%s", wanted_list() ); n = 0 formatex(freeday, charsmax(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) } } if(id == ID_SHOWHUD) { len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_WEEKDAY",g_JailDay,g_Weekday) if(g_GameMode) { switch( g_GameMode ) { case 1: len += formatex(Message[len], 511 - len, "Режим игры: Спарта^n") case 2: len += formatex(Message[len], 511 - len, "Режим игры: Галактика^n") case 3: len += formatex(Message[len], 511 - len, "Режим игры: Акула^n") case 4: len += formatex(Message[len], 511 - len, "Режим игры: Мясо^n") case 5: len += formatex(Message[len], 511 - len, "Режим игры: Догонялки^n") case 6: len += formatex(Message[len], 511 - len, "Режим игры: Охота^n") case 7: len += formatex(Message[len], 511 - len, "Режим игры: Прятки^n") case 8: len += formatex(Message[len], 511 - len, "Режим игры: Чай-чай выручай^n") case 9: len += formatex(Message[len], 511 - len, "Режим игры: Ночь дыма^n") case 10: len += formatex(Message[len], 511 - len, "Режим игры: Турнир по боксу^n") } } else if(g_PlayerLast) { get_user_name(g_PlayerLast, name, 31) len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_LASTREQ",name) } else if(g_Freeday) { len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_FREEDAY") }else if(g_BoxStarted) { len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_BOX") }else if(g_Simon) { get_user_name(g_Simon, name, charsmax(name)) len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_SIMON",name) }else { len += formatex(Message[len],511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_SIMON_OFF") }
len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_INFORMER_CT",g_TeamAlive[CS_TEAM_CT],g_TeamCount[CS_TEAM_CT]) len += formatex(Message[len], 511 - len, "%L^n^n", LANG_SERVER, "JBE_INFORMER_TT",g_TeamAlive[CS_TEAM_T],g_TeamCount[CS_TEAM_T])
len += formatex(Message[len], 511 - len, "Звание: %s^n", LEVELS_NAME[jb_get_level(id)]) len += formatex(Message[len], 511 - len, "Опыт: %d/%d | Деньги: %d^n^n", jb_get_exp(id), jb_get_exp_current(id), jb_get_user_money(id)) if(g_Restart_Timer) { len += formatex(Message[len], 511 - len, "%L^n", LANG_SERVER, "JBE_RESTART_RAUND",g_Restart_Timer) } if(g_PlayerFreeday && !g_Freeday) { len += formatex(Message[len], 511 - len, "%s^n^n", freeday) } len += formatex(Message[len], 511 - len, "%s^n^n", szTextWanted) if(g_TimerOver > 0) { len += formatex(Message[len], 511 - len, "Игра закончиться через %i секунд",g_TimerOver) g_TimerOver = g_TimerOver - 1 } if (g_TimeHide > 0) { len += formatex(Message[len], 511 - len, "Прятки начнуться через %i секунд",g_TimeHide) }
} else if(id != ID_SHOWHUD) { set_hudmessage(127, 170, 255, 0.50, 0.70, 0, 6.0, 1.1, 0.0, 0.0, -1) ShowSyncHudMsg(ID_SHOWHUD, g_SyncHud, "Группа в ВК: vk.com/cszona35^nНик игрока: %s^nЗвание: [%s] | Опыт: [%d/%d]^nДеньги: %d | HP: %d", szText2, LEVELS_NAME[jb_get_level(id)], jb_get_exp(id), jb_get_exp_current(id), jb_get_user_money(id), get_user_health(id)) }
//set_hudmessage(255, 204, 0, 0.14, 0.15, 0, 6.0, 1.1, 0.0, 0.0, -1) set_hudmessage(127, 170, 255, 0.15, 0.06, 0, 6.0, 1.1, 0.0, 0.0, -1) show_hudmessage(ID_SHOWHUD, Message) //set_hudmessage( 201, 201, 14, 0.09, 0.06, 0, 6.0, 1.1, 0.0, 0.0, -1 ) //ShowSyncHudMsg(ID_SHOWHUD, g_SyncHud2, Message) //wanted_list() }
public wanted_list(){ static i, n,wanted[1024] new szTextWanted[512] new name[32] n = 0; formatex(wanted, charsmax(wanted), "[z0na35] Розыск:"); 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); } }
formatex(szTextWanted, charsmax( szTextWanted ), wanted) return szTextWanted }
public Event_StatusValueShow(id) { new player = read_data(2) new name[32]
get_user_name(player, name, charsmax(name)) //jb_get_level_name(player, rank_name, charsmax(rank_name))
set_hudmessage(85, 212, 239, -1.0, 0.75, 0, 6.0, 8.0)
if(cs_get_user_team(player) == CS_TEAM_T) { ShowSyncHudMsg(id, g_Hud, "Зэк: %s | HP: %d^nЗвание: %s^nОпыт: %d/%d", name, get_user_health(player), LEVELS_NAME[jb_get_level(player)], jb_get_exp(player), jb_get_exp_current(player)) } else { ShowSyncHudMsg(id, g_Hud, "Охрана: %s | HP: %d^nЗвание: %s^nОпыт: %d/%d", name, get_user_health(player), LEVELS_NAME[jb_get_level(player)], jb_get_exp(player), jb_get_exp_current(player)) } return PLUGIN_HANDLED }
public Event_StatusValueHide(id) ClearSyncHud(id, g_Hud)
public impulse_100(id) { if(cs_get_user_team(id) == CS_TEAM_T) return PLUGIN_HANDLED return PLUGIN_CONTINUE }
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) if(g_RoundEnd) { g_RoundEnd = 0 g_JailDay++ }
set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 0)
if(is_user_alive(id) && is_user_connected(id)) { if(cs_get_user_team(id) == CS_TEAM_CT) { player_strip_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 90) cmd_weapon_menu(id) } }
clear_bit(g_PlayerCrowbar, id) clear_bit(g_PlayerCrowbar2, id) clear_bit(g_PlayerWanted, id) team = cs_get_user_team(id)
switch(team) { case(CS_TEAM_T): { g_PlayerLast = 0 if(jb_user_member_gang(id)) { set_user_info(id, "model", "3ek") entity_set_int(id, EV_INT_skin, jb_gang_skin()) } else { set_user_info(id, "model", server_model) entity_set_int(id, EV_INT_body, 2) } if(is_freeday() || get_bit(g_FreedayAuto, id)) { freeday_set(0, id) clear_bit(g_FreedayAuto, id) } else { if(jb_user_member_gang(id)) entity_set_int(id, EV_INT_skin, jb_gang_skin()) 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) } } cs_set_user_armor(id, 0, CS_ARMOR_NONE) } case(CS_TEAM_CT): { g_PlayerSimon[id]++ set_user_info(id, "model", server_model) entity_set_int(id, EV_INT_body, 3) cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM) } } if(g_GameMode == 9) { if (cs_get_user_team(id) == CS_TEAM_CT) { set_bit(g_BackToCT, id) cs_set_user_team2(id, CS_TEAM_T) } new j = 0; strip_user_weapons(id) j = random_num(0, sizeof(_WeaponsFree) - 1) give_item(id, "weapon_knife") give_item(id, _WeaponsFree[j]) cs_set_user_bpammo(id, _WeaponsFreeCSW[j], _WeaponsFreeAmmo[j]) } first_join(id) if(!spawnenable) { user_silentkill(id); ChatColor(id, "!g[z0na35] !tНельзя воскрешаться после 0!"); } return HAM_IGNORED }
stock cs_set_user_team2(index, {CsTeams,_}:team, update = 1) { if (index == g_Simon) { g_Simon = 0 hud_status(0) } set_pdata_int(index, 114, _:team) set_pev(index, pev_team, _:team)
if(update) { static _msg_teaminfo; if(!_msg_teaminfo) _msg_teaminfo = get_user_msgid("TeamInfo") static teaminfo[][] = { "UNASSIGNED", "TERRORIST", "CT", "SPECTATOR" } message_begin(MSG_ALL, _msg_teaminfo) write_byte(index) write_string(teaminfo[_:team]) message_end() } return 1 }
public player_damage(victim, ent, attacker, Float:damage, bits) { if(!is_user_connected(victim) || !is_user_connected(attacker) || victim == attacker) return HAM_IGNORED if((g_GameMode == 9) && (g_Simon == attacker) && get_user_weapon(attacker) == CSW_KNIFE && get_bit(g_PlayerCrowbar2, attacker)) { set_user_rendering(attacker, kRenderFxNone, 0, 0, 0, kRenderNormal, 0 ) remove_task(7447) set_task(3.1, "task_inviz",7447); SetHamParamFloat(4, damage * 25.0) return HAM_OVERRIDE } 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_DuelA && attacker == g_DuelB) || (victim == g_DuelB && attacker == g_DuelA)) 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) hud_status(0) } return HAM_IGNORED } } case(2): { if(attacker != g_PlayerLast) return HAM_SUPERCEDE } default: { if((victim == g_DuelA && attacker == g_DuelB) || (victim == g_DuelB && attacker == g_DuelA)) return HAM_IGNORED return HAM_SUPERCEDE } } 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 ClearSyncHud(0, g_HudSync[2][_hudsync]) player_hudmessage(0, 2, 5.0, _, "%L", LANG_SERVER, "JBE_SIMON_KILLED") if(is_user_connected(attacker) && jb_user_member_gang(attacker)) jb_set_money(jb_get_money() + 800) } if((g_GameMode == 9) && (g_Simon == attacker)) { set_user_health(g_Simon, get_user_health(g_Simon) + 200) } 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) entity_set_int(attacker, EV_INT_skin, 4) client_cmd(victim, "say /life") if(jb_user_member_gang(attacker)) { set_dhudmessage(255, 0, 0, -1.0, 0.5, 0, 6.0, 12.0) show_dhudmessage(0, "Банда^nНачала бунт!") } } } case(CS_TEAM_T): { clear_bit(g_PlayerRevolt, victim) clear_bit(g_PlayerWanted, victim) client_cmd(victim, "say /life") } } } default: { if(g_Duel != 2 && (attacker == g_DuelA || attacker == g_DuelB)) { set_user_rendering(victim, kRenderFxNone, 0, 0, 0, kRenderNormal, 0) set_user_rendering(attacker, kRenderFxNone, 0, 0, 0, kRenderNormal, 0) g_Duel = 0 g_LastDenied = 0 g_BlockWeapons = 0 g_PlayerLast = 0 team_count() } } } hud_status(0) return HAM_IGNORED }
public player_touchweapon(id, ent) { static model[32], class[32] if(g_BlockWeapons) return HAM_SUPERCEDE if(is_valid_ent(id) && g_Duel != 6 && is_user_alive(ent) && cs_get_user_team(ent) == CS_TEAM_CT) { 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 block_player() { static i new mxplr for(i = 1; i < mxplr; i++) { if(!g_Translate[i]) continue if(is_user_alive(i)) user_kill(i) get_user_team(i) == 2 } }
public voice_listening(receiver, sender, bool:listen) { if((receiver == sender)) return FMRES_IGNORED if(is_user_admin(sender)) { 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 } if(get_bit(g_HaveVoice, sender)) { 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) } } } engfunc(EngFunc_SetClientListening, receiver, sender, listen) return FMRES_SUPERCEDE }
public cmd_voice(id) { if(g_Simon == id || is_user_admin(id)) { menu_players(id, CS_TEAM_T, 0, 1, "voice_enable_select", "%L", LANG_SERVER, "JBE_GVC_MENU") } return PLUGIN_HANDLED }
public voice_enable_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) enable_player_voice(id, player) cmd_simonmenu(id) return PLUGIN_HANDLED }
public enable_player_voice(id, player) { static src[32], dst[32] get_user_name(player, dst, charsmax(dst)) if (!get_bit(g_HaveVoice, player)) { set_bit(g_HaveVoice, player) if(0 < id <= g_MaxClients) { get_user_name(id, src, charsmax(src)) player_hudmessage(0, 1, 3.0,{150, 150, 150}, "%L", LANG_SERVER, "JBE_GVC_ENABLED", src, dst) } } else { clear_bit(g_HaveVoice, player) if(0 < id <= g_MaxClients) { get_user_name(id, src, charsmax(src)) player_hudmessage(0, 1, 3.0,{150, 150, 150}, "%L", LANG_SERVER, "JBE_GVC_DISABLED", src, dst) } } }
public player_cmdstart(id, uc, random) { if(g_Duel > 3) cs_set_user_bpammo(id, _Duel[g_Duel - 4][_csw], 1) }
public round_first() { g_JailDay = 0 for(new i = 1; i <= g_MaxClients; i++) g_PlayerSimon[i] = 0 set_cvar_num("sv_alltalk", 1) set_cvar_num("mp_roundtime", 2) set_cvar_num("mp_limitteams", 0) set_cvar_num("mp_autoteambalance", 0) set_cvar_num("mp_tkpunish", 0) set_cvar_num("mp_friendlyfire", 1) round_end() }
public round_end() { g_GameMode = 0 g_SafeTime = 0 g_PlayerRevolt = 0 g_PlayerFreeday = 0 g_PlayerLast = 0 g_BoxStarted = 0 g_CrowbarCount = 0 g_Simon = 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_FreedayBlock = 0 g_FreedayNext = (random_num(0,99) >= 95) g_RoundEnd = 1 g_Duel = 0 spawnenable = true; remove_task(935) remove_task(666) for(new i = 1; i <= g_MaxClients; i++) { if(!is_user_connected(i)) continue menu_cancel(i) g_SpeedPlayer[i] = false g_SpeedPlayerZombie[i] = false player_strip_weapons(i) give_item(i, "weapon_knife") } client_cmd(0, "mp3 stop;mp3 play sound/%s",endsounds[random_num(0,10)]) //remove_task(TASK_STATUS) remove_task(TASK_FREEDAY) remove_task(TASK_FREEEND) remove_task(TASK_ROUND) remove_task(TASK_HNS_DAY) remove_task(TASK_GAME_OVER) if(!task_exists(488)) set_task(0.1, "LogEvent_RoundEndTask", 488); //GameTimer set_lights("#OFF") g_TimeHide = false g_TimerOver = 0 for(new i = 0; i < sizeof(g_HudSync); i++) ClearSyncHud(0, g_HudSync[i][_hudsync]) }
public LogEvent_RoundEndTask() { for(new i = 1; i <= get_maxplayers(); i++) { if(!is_user_alive(i)) continue player_strip_weapons(i) set_pev(i, pev_viewmodel2, "models/dance_okey.mdl") set_pdata_float(i, 83, 5.0) UTIL_WeaponAnimation(i, 0) } }
public round_start() { if(g_RoundEnd) return team_count() if(!g_Simon && is_freeday()) { g_Freeday = 1 emit_sound(0, CHAN_AUTO, "JBprogame/jail_mode/bell.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) check_freeday(TASK_FREEDAY) } else { set_task(300.0, "check_freeday", TASK_FREEDAY) } set_task(HUD_DELAY, "hud_status", TASK_STATUS, _, _, "b") set_task(get_pcvar_float(gp_RetryTime) + 1.0, "safe_time", TASK_SAFETIME) set_task(120.0, "freeday_end", TASK_FREEDAY) g_SimonRandom = get_pcvar_num(gp_SimonRandom) ? random_float(15.0, 45.0) : 0.0 g_SimonAllowed = 1 g_FreedayNext = 0 switch(g_RoundDay) { case 0: copy(g_Weekday, 63, "Понедельник") case 1:copy(g_Weekday, 63, "Вторник") case 2:copy(g_Weekday, 63, "Среда") case 3:copy(g_Weekday, 63, "Четверг") case 4:copy(g_Weekday, 63, "Пятница") case 5:copy(g_Weekday, 63, "Суббота [Игра, выбор: Зєки]") case 6: { g_RoundDay = -1; copy(g_Weekday, 63, "Воскресенье [Игра, выбор: Саймона]"); } } for(new i = 1; i <= get_maxplayers(); i++) { if(!is_user_connected(i)) continue clear_bit(g_PlayerCrowbar2, i) jb_set_user_money(i, jb_get_user_money(i) + 50) } g_RoundDay++ set_lights("#OFF") }
public cmd_jointeam(id) return PLUGIN_HANDLED
public cmd_joinclass(id) return PLUGIN_HANDLED
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 if(g_GameMode > 0) { ChatColor(id,"В игровые дни !gСаймон !tнедоступен") return PLUGIN_HANDLED } static CsTeams:team, name[32] team = cs_get_user_team(id) if(g_SimonAllowed && !g_Freeday && team == CS_TEAM_CT) { if(is_user_alive(id)) { if(!g_Simon) { g_Simon = id get_user_name(id, name, charsmax(name)) entity_set_int(id, EV_INT_body, 1) g_PlayerSimon[id]-- if(get_pcvar_num(gp_GlowModels)) player_glow(id, g_Colors[0]) player_strip_weapons(id) give_item(id, "weapon_deagle") give_item(id, "weapon_m4a1") give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_DEAGLE, 35) cs_set_user_bpammo(id, CSW_M4A1, 90) cs_set_user_bpammo(id, CSW_AK47, 90) hud_status(0) set_user_health(id, 350) set_user_armor(id, 255) cmd_simonmenu(id) }else ChatColor(id,"Нельзя взять Начальника Тюрьмы, должность уже занята.") }else ChatColor(id,"Нельзя взять Начальника Тюрьмы, Вы мертвы.") } return PLUGIN_HANDLED }
public cmd_simonmenu(id) { if(g_GameMode > 0) { ChatColor(id,"!tСаймон!y Меню недоступно в !gигровые дни") return PLUGIN_HANDLED } if(g_Simon == id) { static menu, menuname[32], option[64] formatex(menuname, charsmax(menuname), "\w%L", LANG_SERVER, "JBE_SIMON_MENU") menu = menu_create(menuname, "smenu_handler") formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_1") menu_additem(menu, option, "1", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_2") menu_additem(menu, option, "2", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_3") menu_additem(menu, option, "3", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_4") menu_additem(menu, option, "4", 0) if(!g_GameBox[id]){ formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_5") menu_additem(menu, option, "5", 0) }else{ formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_5_2") menu_additem(menu, option, "5", 0) } formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_6") menu_additem(menu, option, "6", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_7") menu_additem(menu, option, "7", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_8") menu_additem(menu, option, "8", 0) formatex(option, charsmax(option), "\w%L", LANG_SERVER, "JBE_SIMON_MENU_9") menu_additem(menu, option, "9", 0) menu_setprop(menu, MPROP_NEXTNAME, "Далее") menu_setprop(menu, MPROP_BACKNAME, "Назад") menu_setprop(menu, MPROP_EXITNAME, "Выход") menu_setprop(menu, MPROP_EXIT,MEXIT_ALL) menu_display(id,menu,0) }else{ client_print(id, print_center, "%L", LANG_SERVER, "JBE_SM_ONLYSIMON") } return PLUGIN_HANDLED }
public smenu_handler(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'): { jail_open() cmd_simonmenu(id) } case ('2'): { emit_sound(0, CHAN_AUTO, "JBprogame/jail_mode/bell.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) cmd_simonmenu(id) } case ('3'): { cmd_freeday(id) } case ('4'): { if(GetAliveCt() < 2) { ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_TRANSLITE") cmd_simonmenu(id) }else{ Translate_Player(id) } } case ('5'): { if(GetAliveTT() < 2) { ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_GAME_BOX") cmd_simonmenu(id) }else{ if(g_Simon == id) { if(g_GameBox[id]) { cmd_nobox(id) g_GameBox[id] = 0 }else{ cmd_box(id) g_GameBox[id] = 1 } cmd_simonmenu(id) client_print(0, print_console, "Simon %s ON BOX", dst) } } } case ('6'): { if(GetAliveTT() < 1) { ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_VOICE") cmd_simonmenu(id) }else{ cmd_voice(id) } } case ('7'): { cmd_timer_menu(id) } case ('8'): { if(GetAliveCt() < 2) { ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_RESET") cmd_simonmenu(id) }else{ cmd_simonreset(id) } } case ('9'): { client_cmd(id, "say /football") } } return PLUGIN_HANDLED }
public cmd_open(id) { if(id == g_Simon) jail_open() return PLUGIN_HANDLED }
public cmd_box(id) { new szName[32]; get_user_name(id, szName, charsmax(szName)) static i if((id < 0) || (is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT)) { if(g_GameMode == 0) { if(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) set_cvar_num("mp_tkpunish", 0) set_cvar_num("mp_friendlyfire", 1) g_BoxStarted = 1 emit_sound(0, CHAN_AUTO, "JBprogame/jail_mode/bell.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) player_hudmessage(0, 1, 3.0,{255, 255, 255}, "%L", LANG_SERVER, "JBE_GUARD_BOX") ChatColor(0,"[^4z0na35^3]^1 Игрок ^4%s ^3включил бокс.", szName) }else player_hudmessage(0, 1, 3.0,{255, 255, 255}, "%L", LANG_SERVER, "JBE_GUARD_CANTBOX") } } return PLUGIN_HANDLED }
public cmd_nobox(id) { new szName[32]; get_user_name(id, szName, charsmax(szName)) static i if((id < 0) || (is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT)) { if(g_BoxStarted) { for(i = 1; i <= g_MaxClients; i++) if(is_user_alive(i) && cs_get_user_team(i) == CS_TEAM_T) engclient_cmd(i, "weapon_knife") g_BoxStarted = 0 set_cvar_num("mp_friendlyfire", 0) emit_sound(0, CHAN_AUTO, "JBprogame/jail_mode/bell.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) player_hudmessage(0, 1, 3.0,{255, 255, 255}, "%L", LANG_SERVER, "JBE_GUARD_BOX_OFF") ChatColor(0, "[^4z0na35^3]^1 Игрок ^4%s ^3выключил бокс.", szName) }else player_hudmessage(id, 1, 3.0,{255, 255, 255}, "%L", LANG_SERVER, "JBE_GUARD_BOX_ON") } return PLUGIN_HANDLED }
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) || is_user_admin(id))) { 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 cmd_freeday_player(id) { if((is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT) || is_user_admin(id)) menu_players(id, CS_TEAM_T, id, 1, "freeday_select", "%L", LANG_SERVER, "JBE_MENU_FREEDAY") return PLUGIN_CONTINUE }
public cmd_lastrequest(id) { new Players[32] new playerCount, i, TAlive get_players(Players, playerCount, "ac") for (i=0; i<playerCount; i++) { if (is_user_connected(Players[i])) if ( cs_get_user_team(Players[i]) == CS_TEAM_T ) { TAlive++; } } if (TAlive == 1) { for (i=0; i<playerCount; i++) { if ( cs_get_user_team(Players[i]) == CS_TEAM_T ) { g_PlayerLast = Players[i]; if (get_pcvar_num(gp_AutoLastresquest)) cmd_lastrequest_2(Players[i]) break; } } } return PLUGIN_CONTINUE }
public cmd_lastrequest_2(id) { if(g_GameMode > 0) return PLUGIN_HANDLED static i, num[5], menu, menuname[32], option[64] if(g_LastDenied || id != g_PlayerLast || g_RoundEnd || !is_user_alive(id)) return PLUGIN_CONTINUE formatex(menuname, charsmax(menuname), "%L", LANG_SERVER, "JBE_MENU_LASTREQ") menu = menu_create(menuname, "lastrequest_select") formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_OPT1") menu_additem(menu, option, "1", 0) formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_OPT9") menu_additem(menu, option, "9", 0) formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_OPT2") menu_additem(menu, option, "2", 0) formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_OPT3") menu_additem(menu, option, "3", 0) for(i = 0; i < sizeof(_Duel); i++) { num_to_str(i + 4, num, charsmax(num)) formatex(option, charsmax(option), "%L", LANG_SERVER, _Duel[i][_opt]) menu_additem(menu, option, num, 0) } menu_setprop(menu, MPROP_NEXTNAME, "Далее") menu_setprop(menu, MPROP_BACKNAME, "Назад") menu_setprop(menu, MPROP_EXITNAME, "Выход") menu_setprop(menu, MPROP_EXIT,MEXIT_ALL) menu_display(id, menu) return PLUGIN_CONTINUE }
public adm_freeday(id) { static player, user[32] if(!is_user_admin(id)) return PLUGIN_CONTINUE read_argv(1, user, charsmax(user)) player = cmd_target(id, user, 2) if(is_user_connected(player) && cs_get_user_team(player) == CS_TEAM_T) { freeday_set(id, player) } return PLUGIN_HANDLED }
public adm_open(id) { if(!is_user_admin(id)) return PLUGIN_CONTINUE new name[32] get_user_name(id, name, charsmax(name)) player_hudmessage(0, 1, 3.0,{150, 150, 150}, "%L", LANG_SERVER, "JBE_OPEN_DOORS", name) jail_open() return PLUGIN_HANDLED }
public adm_box(id) { if(!is_user_admin(id)) return PLUGIN_CONTINUE cmd_box(-1) return PLUGIN_HANDLED }
public team_select(id, key) { static CsTeams:team, roundloop, admin roundloop = get_pcvar_num(gp_RetryTime) / 2 team = cs_get_user_team(id) admin = is_user_admin(id) team_count() if(!admin && (team == CS_TEAM_UNASSIGNED) && (g_RoundStarted >= roundloop) && g_TeamCount[CS_TEAM_CT] && g_TeamCount[CS_TEAM_T] && !is_user_alive(id)) { team_join(id, CS_TEAM_SPECTATOR) client_print(id, print_center, "%L", LANG_SERVER, "JBE_TEAM_CANTJOIN") return PLUGIN_HANDLED } switch(key) { case(0): { if(team == CS_TEAM_T) return PLUGIN_HANDLED team_join(id, CS_TEAM_T) } case(1): { if(team == CS_TEAM_CT || (!admin && get_bit(g_PlayerNomic, id))) return PLUGIN_HANDLED if(g_TeamCount[CS_TEAM_CT] < ctcount_allowed() || admin) team_join(id, CS_TEAM_CT) else client_print(id, print_center, "%L", LANG_SERVER, "JBE_TEAM_CTFULL") } case(5): { user_silentkill(id) team_join(id, CS_TEAM_SPECTATOR) } } return PLUGIN_HANDLED }
public Translate_Player(id) { new menu = menu_create( "\wСписок Охранников:", "tranlist_menu_player" ) new players[32], pnum, tempid new szName[32], szTempid[10] cs_get_user_team(id) get_players(players, pnum) for(new i; i<pnum; i++) { if(get_user_team(players[i]) != 2 || !is_user_alive(players[i])) continue if((get_user_flags(players[i]) & ADMIN_IMMUNITY )) continue; if(id == players[i]) continue tempid = players[i] if(!is_user_alive(tempid)) { }else{ get_user_name(tempid, szName, 31) num_to_str(tempid, szTempid, 9) menu_additem(menu, szName, szTempid, 0) } } menu_setprop( menu, MPROP_NEXTNAME, "Дальше") menu_setprop( menu, MPROP_BACKNAME, "Назад") menu_setprop( menu, MPROP_EXITNAME, "Выход") menu_display(id, menu, 0) return PLUGIN_HANDLED }
public tranlist_menu_player(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64], playername[33], playername2[33] new access, callback menu_item_getinfo(menu, item, access, data,5, iName, 63, callback) new tempid = str_to_num(data) cs_get_user_team(tempid) get_user_name(id, playername, 32) get_user_name(tempid, playername2, 32) user_kill(tempid) cs_set_user_team(tempid, CS_TEAM_T) set_user_info(tempid, "model", server_model) set_pev(tempid, pev_body, 2) set_pev(tempid, pev_skin, random_num(0, 2)) g_Translate[tempid] = true ChatColor(0, "%L", LANG_SERVER, "JBE_TRANSLIT_PLAYER",playername, playername2) menu_destroy(menu) return PLUGIN_HANDLED }
public team_join(id, CsTeams:team) { static restore, vgui, msgblock restore = get_pdata_int(id, m_iVGUI) vgui = restore & (1<<0) if(vgui) set_pdata_int(id, m_iVGUI, restore & ~(1<<0)) switch(team) { case CS_TEAM_SPECTATOR: { msgblock = get_msg_block(g_MsgShowMenu) set_msg_block(g_MsgShowMenu, BLOCK_ONCE) dllfunc(DLLFunc_ClientPutInServer, id) set_msg_block(g_MsgShowMenu, msgblock) set_pdata_int(id, m_fGameHUDInitialized, 1) engclient_cmd(id, "jointeam", "6") } case CS_TEAM_T, CS_TEAM_CT: { msgblock = get_msg_block(g_MsgShowMenu) set_msg_block(g_MsgShowMenu, BLOCK_ONCE) engclient_cmd(id, "jointeam", (team == CS_TEAM_CT) ? "2" : "1") engclient_cmd(id, "joinclass", "1") set_msg_block(g_MsgShowMenu, msgblock) g_PlayerSpect[id] = 0 } } if(vgui) set_pdata_int(id, m_iVGUI, restore) }
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 && g_SafeTime) { prisoner_last(last) } } else { if(g_Duel || g_DuelA || g_DuelB) { if(is_user_alive(g_DuelA)) { set_user_rendering(g_DuelA, kRenderFxNone, 0, 0, 0, kRenderNormal, 0) player_strip_weapons(g_DuelA) } if(is_user_alive(g_DuelB)) { set_user_rendering(g_DuelB, kRenderFxNone, 0, 0, 0, kRenderNormal, 0) player_strip_weapons(g_DuelB) } } g_PlayerLast = 0 g_DuelA = 0 g_DuelB = 0 g_Duel = 0 } }
public revolt_start() { if(g_GameMode > 0) return PLUGIN_HANDLED emit_sound(0, CHAN_AUTO, "JBprogame/timepass_ac.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) hud_status(0) set_dhudmessage(255, 0, 0, -1.0, 0.71, 0, 6.0, 12.0) show_dhudmessage(0, "ВНИМАНИЕ, БУНТ!") return PLUGIN_HANDLED }
public hud_status(task) { if(g_RoundStarted < (get_pcvar_num(gp_RetryTime) / 2)) g_RoundStarted++ if(!g_Freeday && !g_Simon && g_SimonAllowed && (0.0 < g_SimonRandom < get_gametime())) { cmd_simon(random_num(1, g_MaxClients)) } 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 safe_time(task) g_SafeTime = 1
public check_freeday(task) { static Float:roundmax, i if(!g_Simon && !g_PlayerLast) { g_Freeday = 1 g_FreedayBlock = 1 hud_status(0) 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, "JBprogame/jail_mode/bell.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) player_hudmessage(0, 8, 3.0, {255, 255, 255}, "%L", LANG_SERVER, "JBE_STATUS_ENDTIMER", floatround(roundmax - 60.0)) remove_task(TASK_ROUND) } } if(get_pcvar_num(gp_AutoOpen)) jail_open() }
public freeday_end(task) { if(g_Freeday || g_PlayerFreeday) { g_FreedayBlock = 1 client_cmd(0, "mp3 stop") emit_sound(0, CHAN_AUTO, "JBprogame/jail_mode/halyava1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) new Players[32] new playerCount, i get_players(Players, playerCount, "ac") for (i=0; i<playerCount; i++) { if(cs_get_user_team(Players[i]) == CS_TEAM_T) { if(g_PlayerWanted) { if(jb_user_member_gang(Players[i])) { set_user_info(Players[i], "model", "3ek") entity_set_int(Players[i], EV_INT_skin, 4) } else entity_set_int(Players[i], EV_INT_skin, 4) } if(jb_user_member_gang(Players[i])) { set_user_info(Players[i], "model", "3ek") entity_set_int(Players[i], EV_INT_skin, jb_gang_skin()) } else entity_set_int(Players[i], EV_INT_skin, random_num(0,2)) } } } g_PlayerFreeday = 0 g_Freeday = 0 spawnenable = false hud_status(0) }
public check_end(task) { 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) } } }
public cmd_timer_menu(id) { if(cs_get_user_team(id) != CS_TEAM_CT) return PLUGIN_HANDLED new classic_menu1 = menu_create("\wДать Отчет", "menu_timer") menu_additem(classic_menu1, "\wОт 3", "1") menu_additem(classic_menu1, "\wОт 5", "2") menu_additem(classic_menu1, "\wОт 7", "3") menu_additem(classic_menu1, "\wОт 10", "4") menu_setprop(classic_menu1, MPROP_EXITNAME, "Выход") menu_setprop(classic_menu1, MPROP_EXIT,MEXIT_ALL) menu_display(id,classic_menu1,0) return PLUGIN_HANDLED }
public menu_timer(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new s_Data[6], s_Name[64], i_Access, i_Callback menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback) new i_Key = str_to_num(s_Data) switch(i_Key) { case 1: { if(g_Counted) return PLUGIN_HANDLED g_Count = 3 g_Counted = true set_task(1.0, "Count_Timer", 55, "", 0, "b") } case 2: { if(g_Counted) return PLUGIN_HANDLED g_Count = 5 g_Counted = true set_task(1.0, "Count_Timer", 66, "", 0, "b") } case 3: { if(g_Counted) return PLUGIN_HANDLED g_Count = 7 g_Counted = true set_task(1.0, "Count_Timer", 77, "", 0, "b") } case 4: { if(g_Counted) return PLUGIN_HANDLED g_Count = 10 g_Counted = true set_task(1.0, "Count_Timer", 88, "", 0, "b") } } menu_destroy(menu) return PLUGIN_HANDLED }
public Count_Timer(id) { if(g_Count == 1) { remove_task(id) g_Counted = false } client_print(0, print_center, "%L", LANG_SERVER, "JBE_TIMER_OTSHET", g_Count); client_cmd(0, "mp3 play sound/%s", sounds[g_Count]) g_Count-- }
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, {255, 255, 255}, "%L", LANG_SERVER, "JBE_PRISONER_LAST", name) remove_task(TASK_ROUND) if(roundmax > 0.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) } }
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) static name1[32],name2[32]; get_user_name(id, name1, charsmax(name1)) get_user_name(player, name2, charsmax(name2)) ChatColor(0,"%s дал фд %s",name1,name2) return PLUGIN_HANDLED }
public duel_knives(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) g_LastDenied = 0 return PLUGIN_HANDLED } static 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), "%L^n%L", LANG_SERVER, "JBE_MENU_LASTREQ_SEL3", src, LANG_SERVER, "JBE_MENU_DUEL_SEL", src, dst) player_hudmessage(0, 6, 3.0, {255, 255, 255}, option) g_DuelA = id clear_bit(g_PlayerCrowbar, id) player_strip_weapons(id) player_glow(id, g_Colors[3]) set_user_health(id, 100) g_DuelB = player player_strip_weapons(player) player_glow(player, g_Colors[2]) set_user_health(player, 100) g_BlockWeapons = 1 return PLUGIN_HANDLED }
public duel_guns(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) g_LastDenied = 0 g_Duel = 0 return PLUGIN_HANDLED } static gun, 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), "%L^n%L", LANG_SERVER, _Duel[g_Duel - 4][_sel], src, LANG_SERVER, "JBE_MENU_DUEL_SEL", src, dst) emit_sound(0, CHAN_AUTO, "JBprogame/duel/zonaduel_2016.wav", 1.0, ATTN_NORM, 0, PITCH_NORM) player_hudmessage(0, 6, 3.0, {255, 255, 255}, option) g_DuelA = id clear_bit(g_PlayerCrowbar, id) clear_bit(g_PlayerCrowbar2, id) player_strip_weapons(id) gun = give_item(id, _Duel[g_Duel - 4][_entname]) cs_set_weapon_ammo(gun, 1) set_user_health(id, 100) player_glow(id, g_Colors[3]) g_DuelB = player player_strip_weapons(player) gun = give_item(player, _Duel[g_Duel - 4][_entname]) cs_set_weapon_ammo(gun, 1) set_user_health(player, 100) player_glow(player, g_Colors[2]) g_BlockWeapons = 1 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((id == g_Simon) || is_user_admin(id)) { if(!g_FreedayBlock) { g_Simon = 0 check_freeday(TASK_FREEDAY) ChatColor(0,"%s дал всем ФД!",dst) } else ChatColor(id,"В этом раунде уже был выходной") } } } return PLUGIN_HANDLED }
public lastrequest_select(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } static i, dst[32], data[5], access, callback, option[64] menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback) get_user_name(id, dst, charsmax(dst)) switch(data[0]) { case('1'): { formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_SEL1", dst) player_hudmessage(0, 6, 3.0, {255, 255, 255}, option) set_bit(g_FreedayAuto, id) user_silentkill(id) } case('2'): { if(GetAliveCt() > 0) { formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_SEL2", dst) player_hudmessage(0, 6, 3.0, {255, 255, 255}, option) g_Duel = 2 player_strip_weapons_all() i = random_num(0, sizeof(_WeaponsFree) - 1) give_item(id, _WeaponsFree[i]) g_BlockWeapons = 1 cs_set_user_bpammo(id, _WeaponsFreeCSW[i], _WeaponsFreeAmmo[i]) }else ChatColor(id,"Нельзя выбрать дуэль, нет противников.") } case('3'): { if(GetAliveCt() > 0) { g_Duel = 3 menu_players(id, CS_TEAM_CT, 0, 1, "duel_knives", "%L", LANG_SERVER, "JBE_MENU_DUEL") }else ChatColor(id,"Нельзя выбрать дуэль, нет противников.") } case('9'): { user_silentkill(id) jb_set_user_money(id, 700) formatex(option, charsmax(option), "%L", LANG_SERVER, "JBE_MENU_LASTREQ_SEL9", dst) player_hudmessage(0, 6, 3.0, {255, 255, 255}, option) } default: { if(GetAliveCt() > 0) { g_Duel = str_to_num(data) menu_players(id, CS_TEAM_CT, 0, 1, "duel_guns", "%L", LANG_SERVER, "JBE_MENU_DUEL") }else ChatColor(id,"Нельзя выбрать дуэль, нет противников.") } } g_LastDenied = 1 menu_destroy(menu) return PLUGIN_HANDLED }
public cmd_weapon_menu(id) { if(g_GameMode > 0) return PLUGIN_HANDLED new wMenu = menu_create("Выберите Оружие:","cmd_menu_weapon") menu_additem(wMenu, "Взять [Aк-47 + Deagle]","1") menu_additem(wMenu, "Взять [M4A1 + Deagle]","2") menu_additem(wMenu, "Взять [Famas + Deagle]","3") menu_additem(wMenu, "Взять [Awp + Deagle]","4") menu_additem(wMenu, "Взять [M3 + Deagle]","5") menu_setprop(wMenu, MPROP_EXITNAME, "Выход") menu_setprop(wMenu, MPROP_EXIT,MEXIT_ALL) menu_display(id,wMenu,0) return PLUGIN_HANDLED }
public cmd_menu_weapon(id, menu, item) { if(item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64], access, callback menu_item_getinfo(menu, item, access, data,5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1: { give_item(id,"weapon_ak47") cs_set_user_bpammo(id,CSW_AK47,100) } case 2: { give_item(id,"weapon_m4a1") cs_set_user_bpammo( id,CSW_M4A1,100) } case 3: { give_item(id,"weapon_famas") cs_set_user_bpammo(id,CSW_FAMAS,100) } case 4: { give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 100) } case 5: { give_item( id,"weapon_m3") cs_set_user_bpammo(id,CSW_M3,100) } } menu_destroy(menu) 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)) { set_bit(g_PlayerFreeday, player) entity_set_int(player, EV_INT_skin, 3) if(get_pcvar_num(gp_GlowModels)) player_glow(player, g_Colors[1]) if(0 < id <= g_MaxClients) { get_user_name(id, src, charsmax(src)) player_hudmessage(0, 1, 3.0,{150, 150, 150}, "%L", LANG_SERVER, "JBE_GUARD_FREEDAYGIVE", src, dst) } else if(!is_freeday()) { player_hudmessage(0, 1, 3.0,{150, 150, 150}, "%L", LANG_SERVER, "JBE_PRISONER_HASFREEDAY", dst) } } }
stock first_join(id) { if(!get_bit(g_PlayerJoin, id)) set_bit(g_PlayerJoin, 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] = {255, 255, 255}, 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, -1) else set_hudmessage(color[0], color[1], color[2], x, y, 0, 0.00, g_HudSync[hudid][_time], 0.00, 0.00, -1) 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 plugin_natives() { register_native("jbe_freeday_give", "cmd_give_freeday", 1) register_native("jb_get_freeday_all", "get_freeday_all", 1) register_native("jb_get_freeday", "get_freeday", 1) register_native("jbe_is_user_simon", "native_get_user_simon", 1) register_native("jb_set_box_off", "cmd_box_native_off", 1) register_native("jb_set_box_on", "cmd_box_native_on", 1) register_native("jbe_nowanted", "cmd_jbe_nowanted", 1) register_native("jbe_ctclothes", "cmd_jbe_ctclothes", 1) //register_native("jbe_clown", "cmd_jbe_clown", 1) register_native("jb_get_gamemode", "get_gamemode", 1) register_native("jb_get_last", "get_last", 1) register_native("jb_give_crowbar", "jb_give_crowbar", 1) register_native("jb_set_game", "jb_set_game", 1) register_native("jb_get_day", "jb_get_day", 1) register_native("jb_get_wanted", "get_wanted", 1) register_native("jb_set_wanted", "set_wanted", 1) }
public bool:get_freeday_all() { if(is_freeday()) return true return false }
public bool:get_freeday(id) { if(get_bit(g_PlayerWanted, id)) return true return false }
public set_wanted(id) { if(!get_bit(g_PlayerWanted, id)) { set_bit(g_PlayerWanted, id) entity_set_int(id, EV_INT_skin, 4) } } public jb_get_day() return g_RoundDay
public jb_set_game(num) { switch(num) { case 1: client_cmd(id, "say /boxgo") case 2: cmd_game_zombie() case 3: cmd_game_iviz() case 4: cmd_game_sparta() case 5: cmd_game_shark() case 6: cmd_game_alien() case 7: cmd_game_runner() case 8: cmd_game_hide() case 9: { jb_set_chay() g_GameMode = 8 g_TimerOver = 300 set_task(300.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") jail_open() } case 10: cmd_game_sniper() } }
public jb_give_crowbar(id) { if(get_user_weapon(id) == CSW_KNIFE) { set_pev(id, pev_viewmodel2, "models/v_crowbar.mdl") set_pev(id, pev_weaponmodel2, "models/p_crowbar.mdl") } set_bit(g_PlayerCrowbar2, id) }
public get_last() return g_PlayerLast public get_gamemode() return g_GameMode
public bool:get_wanted(id) { if(get_bit(g_PlayerWanted, id)) return true return false }
public cmd_jbe_nowanted(id) { if(get_bit(g_PlayerWanted, id)) { clear_bit(g_PlayerWanted, id) if(jb_user_member_gang(id)) { set_user_info(id, "model", "3ek") entity_set_int(id, EV_INT_skin, jb_gang_skin()) } else { set_user_info(id, "model", server_model) entity_set_int(id, EV_INT_body, 2) entity_set_int(id, EV_INT_skin, random_num(0, 2)) } } }
public cmd_jbe_ctclothes(id) { if(cs_get_user_team(id) == CS_TEAM_T) { set_user_info(id, "model", server_model) entity_set_int(id, EV_INT_body, 3) } } // натив(Мод) на BOX-ON(Игрок) public cmd_box_native_on() { if(g_TeamAlive[CS_TEAM_T] <= get_pcvar_num(gp_BoxMax) && g_TeamAlive[CS_TEAM_T] > 1) { set_cvar_num("mp_tkpunish", 0) set_cvar_num("mp_friendlyfire", 1) g_BoxStarted = 1 } } // натив(Мод) на BOX-OFF(Игрок) public cmd_box_native_off() { if(g_TeamAlive[CS_TEAM_T] <= get_pcvar_num(gp_BoxMax) && g_TeamAlive[CS_TEAM_T] > 1) { set_cvar_num("mp_tkpunish", 0) set_cvar_num("mp_friendlyfire", 0) g_BoxStarted = 0 } }
public native_get_user_simon(id) { if(cs_get_user_team(id) != CS_TEAM_CT) return 0 return g_Simon == id? 1 : 0 }
public cmd_give_freeday(id) { static dst[32] get_user_name(id, dst, charsmax(dst)) if(!get_bit(g_PlayerWanted, id)) { if(is_user_alive(id)) { set_bit(g_PlayerFreeday, id) entity_set_int(id, EV_INT_skin, 3) player_hudmessage(0, 1, 3.0,{150, 150, 150}, "Заключенный %s приобрел себе Свободный день", dst) } else ChatColor(0,"Вы не можете купить Свободный день, вы мертвы") } }
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 GetAliveTT() { new CountTT, i for(i = 1; i <= get_maxplayers(); i++) if(is_user_alive(i) && is_user_connected(i) && get_user_team(i) == 1) CountTT++ return CountTT }
stock GetAliveCt() { new CountCt, i for(i = 1; i <= get_maxplayers(); i++) if(is_user_alive(i) && is_user_connected(i) && get_user_team(i) == 2) CountCt++ return CountCt }
public cmd_simonreset(id) { if((id == g_Simon) || is_user_admin(id) ) menu_players(id, CS_TEAM_CT, id, 1, "cmd_simon_ct", "Передать саймона - охранику") 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 set_user_health(g_Simon, 100) entity_set_int(id, EV_INT_body, 3) g_Simon = 0 current_weapon_two(id) client_cmd(player, "simon") get_user_name(player, dst, charsmax(dst)) get_user_name(id, src, charsmax(src)) entity_set_int(id, EV_INT_body, 3) ChatColor(0,"%L", LANG_SERVER, "JBE_TRANSLITE_SIMON",src, dst) return PLUGIN_HANDLED }
public start_rr_timer() { if(g_Restart_Timer == 1) { if(g_Freeday) { g_Freeday = 0 } server_cmd("sv_restartround 1") } g_Restart_Timer-- }
public client_authorized(id) { client_cmd(id, "bind ^"F3^" ^"say /Menu^"") }
public check_menu(id) { if(!is_user_connected(id)) return if(get_user_team(id) == 1) OpenT(id) else if(get_user_team(id) == 2) OpenCT(id) }
public OpenT(id) { if(!is_user_connected(id)) return static menu[512], iLen iLen = 0 iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\y[\wz0na35\y]^n\wIp: 193.19.119.166:27086^n^n") if(g_Freeday) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w1.\y] \wОткрыть клетки^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w1.\y] \dОткрыть клетки^n") if(is_user_alive(id)) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w2.\y] \wМагазин^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w2.\y] \dМагазин^n") if(GetAliveTT() > 1) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w3.\y] \wВзломать банк^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w3.\y] \dВзломать банк^n") if(is_user_alive(id)) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w4.\y] \wЯ - последний^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w4.\y] \dЯ - последний^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w5.\y] \wПередать деньги^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w6.\y] \wБанды^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w7.\y] \wШапочки^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w8.\y] \wИнформация^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w9.\y] \wЗеленые билеты^n^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "[\w0.\y] \wВыход") show_menu(id, 1023, menu, -1, "MenuT") }
public cmd_server_menu_t(id, key) { switch(key) { case 0: { if(g_Freeday) jail_open() else ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_OPEN") } case 1: { if(is_user_alive(id)) client_cmd(id, "say /shop") else ChatColor(id,"!tВы должны быть Живы") } case 2: { if(is_user_alive(id)) client_cmd(id, "say /crash") else ChatColor(id,"!tВы должны быть Живы") } case 3: { if(GetAliveTT() > 1) ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_LR") else client_cmd(id, "say /lr") } case 4: { if(is_user_alive(id)) transfermoney(id) else ChatColor(id,"%L", LANG_SERVER, "JBE_ACCESS_TRANSLITE_MONEY") } case 5: client_cmd(id, "say /gang") case 6: { client_cmd(id, "say /hats") } case 7: client_cmd(id, "say /vipjj") case 8: client_cmd(id, "say /life") } return PLUGIN_HANDLED }
public OpenCT(id) { if(!is_user_connected(id)) return static menu[512], iLen iLen = 0 iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\y[\wz0na35\y]^n\wIp: 193.19.119.166:27086^n^n") if(!g_Simon) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w1.\y] \wВзять Саймона^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w1.\y] \dВзять Саймона^n") if(g_Simon == id) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w2.\y] \wМеню Саймона^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w2.\y] \dМеню Саймона^n") if(is_user_alive(id)) iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w3.\y] \wВкусняшки для КТ^n") else iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w3.\y] \dВкусняшки для КТ^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w4.\y] \wЗеленые билеты^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w5.\y] \wШапочки^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w6.\y] \wИгровые дни^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\y[\w7.\y] \wИнформация^n^n") iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r0. \wВыход") show_menu(id, 1023, menu, -1, "MenuCT") }
public cmd_server_menu_ct(id, key) { switch(key) { case 0: { if(!g_Simon) client_cmd(id, "say /simon") else ChatColor(id,"Нельзя взять начальника тюрьмы, должность уже занята.") } case 1: { if(g_Simon == id) client_cmd(id, "say /smenu") else ChatColor(id,"Вы не !tСаймон!y и не можете открыть !tМеню Саймона") } case 2: { if(is_user_alive(id)) client_cmd(id, "say /shop") else ChatColor(id,"!tВы должны быть Живы") } case 3: { client_cmd(id, "say /life") } case 4: { client_cmd(id, "say /hats") } case 5: { if(g_Simon == id) cmd_game_menu(id) } case 6: { client_cmd(id, "say /vipjj") } } return PLUGIN_HANDLED } //====================================================================== //= [Передача денег] Меню с игроками //By SimplePRO //====================================================================== public transfermoney(id) { new i, name[32], num[5], menu, menuitem[64] menu = menu_create("\wМеню передачи денег:", "transfermoney_choice") for(i=1; i<=32; i++) { if(is_user_connected(i)) { if(get_user_team(id) == get_user_team(i) && id != i) { get_user_name(i, name, charsmax(name)) formatex(menuitem, charsmax(menuitem), "%s \r[\y%i$\r]\w", name, jb_get_user_money(i)) num_to_str(i, num, charsmax(num)) menu_additem(menu, menuitem, num, 0) } } } menu_setprop(menu, MPROP_EXITNAME, "Выход") menu_display(id, menu) return PLUGIN_HANDLED }
public transfermoney_choice(id, menu, item) { if(item == MENU_EXIT) return PLUGIN_HANDLED new dst[32], data[5], access, callback menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback) menu_destroy(menu) PlayerCredit[id] = str_to_num(data) g_TransferMoney[id] = 0 transfermoney_count(id) return PLUGIN_HANDLED }
public transfermoney_count(id) { new menu, menuname[128], name[32] get_user_name(PlayerCredit[id], name, charsmax(name)) formatex(menuname, charsmax(menuname), "Передать \r%i$\w ^nИгроку \y%s", g_TransferMoney[id], name) menu = menu_create(menuname, "transfermoney_count_choice") if(jb_get_user_money(id) >= g_TransferMoney[id] + 100 && g_TransferMoney[id] <= 15900) menu_additem(menu, "Добавить 100$", "1", 0) else menu_additem(menu, "\dДобавить 100$", "1", 0) if(jb_get_user_money(id) >= g_TransferMoney[id] + 1000 && g_TransferMoney[id] <= 15000) menu_additem(menu, "Добавить 1000$", "2", 0) else menu_additem(menu, "\dДобавить 1000$", "2", 0) if(g_TransferMoney[id] >= 100) menu_additem(menu, "Отнять 100$", "3", 0) else menu_additem(menu, "\dОтнять 100$", "3", 0) if(g_TransferMoney[id] >= 1000) menu_additem(menu, "Отнять 1000$", "4", 0) else menu_additem(menu, "\dОтнять 1000$", "4", 0) if(jb_get_user_money(id) != 0) menu_additem(menu, "Добавить все деньги", "5", 0) else menu_additem(menu, "\dДобавить все деньги", "5", 0) if(g_TransferMoney[id] != 0) menu_additem(menu, "Отнять все деньги^n", "6", 0) else menu_additem(menu, "\dОтнять все деньги^n", "6", 0) if(g_TransferMoney[id] != 0) menu_additem(menu, "\rПередать", "7", 0) else menu_additem(menu, "\dПередать", "7", 0) menu_setprop(menu, MPROP_EXITNAME, "Выход") menu_display(id, menu) return PLUGIN_HANDLED }
public transfermoney_count_choice(id, menu, item) { if(item == MENU_EXIT) return PLUGIN_HANDLED new name1[32], name2[32], data[5], dst[32], access, callback menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback) menu_destroy(menu) new key = str_to_num(data) switch(key) { case 1: { if(jb_get_user_money(id) >= g_TransferMoney[id] + 100) { if(g_TransferMoney[id] <= 15900) g_TransferMoney[id] = g_TransferMoney[id] + 100 else ChatColor(id, "Количество денег для передачи достигло !tмаксимума.") }else ChatColor(id, "У Вас недостаточно !tденег.") transfermoney_count(id) } case 2: { if(jb_get_user_money(id) >= g_TransferMoney[id] + 1000) { if(g_TransferMoney[id] <= 15000) g_TransferMoney[id] = g_TransferMoney[id] + 1000 else ChatColor(id, "Количество денег для передачи достигло !tмаксимума.") } else ChatColor(id, "У Вас недостаточно !tденег.") transfermoney_count(id) } case 3: { if(g_TransferMoney[id] >= 100) g_TransferMoney[id] = g_TransferMoney[id] - 100 else ChatColor(id, "Количество денег для передачи достигло !tминимума.") transfermoney_count(id) } case 4: { if(g_TransferMoney[id] >= 1000) g_TransferMoney[id] = g_TransferMoney[id] - 1000 else ChatColor(id, "Количество денег для передачи достигло !tминимума.") transfermoney_count(id) } case 5: { if(jb_get_user_money(id) != 0) { g_TransferMoney[id] = jb_get_user_money(id) if(g_TransferMoney[id] > 16000) g_TransferMoney[id] = 16000 } else ChatColor(id, "У Вас недостаточно !tденег.") transfermoney_count(id) } case 6: { if(g_TransferMoney[id] != 0) g_TransferMoney[id] = 0 else ChatColor(id, "Нельзя отнять !gденьги!y, количество !tденег!y для передачи равно нулю.") transfermoney_count(id) } case 7: { if(g_TransferMoney[id] <= jb_get_user_money(id)) { if(is_user_connected(PlayerCredit[id])) { get_user_name(id, name1, charsmax(name1)) get_user_name(PlayerCredit[id], name2, charsmax(name2)) jb_set_user_money(id, jb_get_user_money(id) - g_TransferMoney[id]) jb_set_user_money(PlayerCredit[id], jb_get_user_money(PlayerCredit[id]) + g_TransferMoney[id]) ChatColor(id, "Вы передали !t%i$!y игроку !g%s.", g_TransferMoney[id], name2) ChatColor(PlayerCredit[id], "Игрок !t%s!y передал Вам !g%i$.", name1, g_TransferMoney[id]) if(jb_get_user_money(PlayerCredit[id]) > 16000) jb_set_user_money(PlayerCredit[id], 16000) PlayerCredit[id] = 0 g_TransferMoney[id] = 0 }else ChatColor(id, "Игрок которому вы передаёте !gденьги отключился.") }else ChatColor(id, "У Вас недостаточно !tденег!y для !gпередачи.") } } return PLUGIN_HANDLED } /*=============================================================================== =======================*/
/*=============================================================================== = Функция: Меню Игр ================================================================================ =*/ public cmd_game_menu(id) { if(g_GameMode > 0 || g_BoxStarted || g_Freeday) { ChatColor(id, "!yСейчас нельзя включить игру!") return PLUGIN_HANDLED } static menu, menuname[32], option[64] formatex(menuname, charsmax(menuname), "\wВыберете игру:") menu = menu_create(menuname, "smenu_game") formatex(option, charsmax(option), "\wТурнир по боксу") menu_additem(menu, option, "1", 0) formatex(option, charsmax(option), "\wОхота") menu_additem(menu, option, "2", 0) formatex(option, charsmax(option), "\wГалактика") menu_additem(menu, option, "3", 0) formatex(option, charsmax(option), "\wСпарта") menu_additem(menu, option, "4", 0) formatex(option, charsmax(option), "\wАкула") menu_additem(menu, option, "5", 0) formatex(option, charsmax(option), "\wНочь дыма") menu_additem(menu, option, "6", 0) formatex(option, charsmax(option), "\wДогонялки \r(без оружия)") menu_additem(menu, option, "7", 0) formatex(option, charsmax(option), "\wПрятки^n") menu_additem(menu, option, "8", 0) formatex(option, charsmax(option), "\wЧай-чай выручай") menu_additem(menu, option, "9", 0) formatex(option, charsmax(option), "\wМясо^n") menu_additem(menu, option, "10", 0) menu_setprop(menu , MPROP_EXITNAME, "Выход") menu_setprop(menu , MPROP_EXIT, MEXIT_ALL) menu_display( id, menu, 0 ) return PLUGIN_HANDLED } /*=============================================================================== = Функция: Действие в меню игр ================================================================================ =*/ public smenu_game(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'): client_cmd(id, "say /boxgo") case ('2'): cmd_game_zombie() case ('3'): cmd_game_iviz() case ('4'): cmd_game_sparta() case ('5'): cmd_game_shark() case ('6'): cmd_game_alien() case ('7'): cmd_game_runner() case ('8'): cmd_game_hide() case ('9'): { jb_set_chay() g_GameMode = 8 g_TimerOver = 300 set_task(300.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") jail_open() } case ('10'): cmd_game_sniper() } return PLUGIN_HANDLED } /*=============================================================================== = Режим: Убиваем охранников после отчета ================================================================================ =*/ public cmd_game_over() { for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) if(get_user_team(i) == 2) user_kill(i) } } /*=============================================================================== = Режим: Спарта ================================================================================ =*/ public cmd_game_sparta() { jail_open() set_lights("f") g_GameMode = 1 g_BlockWeapons = 1 client_cmd(0, "mp3 stop; mp3 play %s", g_Game_2) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_deagle" ) cs_set_user_bpammo(i, CSW_DEAGLE, 999) set_user_health(i,100) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_deagle" ) cs_set_user_bpammo(i, CSW_DEAGLE, 999) set_user_health(i,450) } } } g_TimerOver = 130 set_task(130.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Неведимки ================================================================================ =*/ public cmd_game_iviz() { jail_open() set_lights("c") g_GameMode = 2 g_BlockWeapons = 1 client_cmd(0, "mp3 stop; mp3 play %s", g_Game_3) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_scout" ) cs_set_user_nvg(i, true) cs_set_user_bpammo(i, CSW_SCOUT, 900 ) set_user_gravity(i,0.1) set_user_health(i,100) set_user_rendering(i, kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRender Normal,50) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_scout" ) cs_set_user_bpammo(i, CSW_SCOUT, 900 ) set_user_gravity(i,0.1) set_user_health(i,500) set_user_rendering(i, kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRender Normal,50) } } } g_TimerOver = 150 set_task(150.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Акула ================================================================================ =*/ public cmd_game_shark() { jail_open() set_lights("d") g_GameMode = 3 g_BlockWeapons = 1 emit_sound(0, CHAN_VOICE, "GameSoNew.wav", 1.0, ATTN_NORM, 0, PITCH_LOW) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_deagle") give_item(i, "weapon_m3") cs_set_user_bpammo(i, CSW_DEAGLE, 100 ) cs_set_user_bpammo(i, CSW_M3, 100 ) set_user_health(i,100) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") set_user_health(i,650) set_user_noclip(i, 1) } } } g_TimerOver = 160 set_task(160.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Снайпер ================================================================================ =*/ public cmd_game_sniper() { jail_open() set_lights("c") g_GameMode = 4 g_BlockWeapons = 1 server_cmd("jb_block_weapons") emit_sound(0, CHAN_VOICE, "GameSnip.wav", 1.0, ATTN_NORM, 0, PITCH_LOW) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_m249" ) cs_set_user_bpammo(i, CSW_M249, 900 ) set_user_health(i,200) set_user_rendering(i, kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRender Normal,50) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_m249" ) cs_set_user_bpammo(i, CSW_M249, 900 ) set_user_health(i,950) set_user_rendering(i, kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRender Normal,50) } } } g_TimerOver = 130 set_task(130.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Догонялки ================================================================================ =*/ public cmd_game_runner() { jail_open() set_lights("d") g_GameMode = 5 g_BlockWeapons = 1 client_cmd(0, "mp3 stop; mp3 play %s", g_Game_7) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") set_user_health(i,1) set_user_gravity(i,0.3) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) set_user_godmode(i, 1) give_item(i, "weapon_knife") set_user_health(i,100) set_user_gravity(i,0.3) } g_SpeedPlayer[i] = true set_user_maxspeed(i, 580.0) } } g_TimerOver = 150 set_task(150.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Зомби ================================================================================ =*/ public cmd_game_zombie() { jail_open() set_lights("c") g_GameMode = 6 g_BlockWeapons = 1 emit_sound(0, CHAN_VOICE, "figtday.wav", 1.0, ATTN_NORM, 0, PITCH_LOW) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_m3" ) give_item(i, "weapon_ak47" ) give_item(i, "weapon_m4a1" ) give_item(i, "weapon_deagle" ) give_item(i, "weapon_galil" ) cs_set_user_bpammo(i, CSW_M3, 16 ) cs_set_user_bpammo(i, CSW_AK47, 50 ) cs_set_user_bpammo(i, CSW_M4A1, 40 ) cs_set_user_bpammo(i, CSW_DEAGLE, 20 ) cs_set_user_bpammo(i, CSW_GALIL, 90 ) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") g_SpeedPlayerZombie[i] = true entity_set_int(i, EV_INT_body, 4) set_user_gravity(i, 0.3) set_user_health(i,3850) set_user_maxspeed(i, 550.0) } } } g_TimerOver = 130 set_task(130.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") } /*=============================================================================== = Режим: Начало Пряток ================================================================================ =*/ public cmd_game_hide() { jail_open() set_lights("d") g_GameMode = 7 for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_CT) { set_user_godmode(i, 1) set_pev(i, pev_flags, pev(i, pev_flags) | FL_FROZEN) } else if(cs_get_user_team(i) == CS_TEAM_T) { set_user_gravity(i, 0.5) cs_set_user_nvg(i, true) engclient_cmd(i, "nightvision") } player_strip_weapons(i) } } g_TimeHide = 20 set_task(1.0, "cmd_time_hide", TASK_HNS_DAY, _, _, "b") } /*=============================================================================== = Функция: Если отчет закончился то: ================================================================================ =*/ public cmd_time_hide() { if(g_GameMode == 7) { --g_TimeHide if(g_TimeHide <= 0) { remove_task(TASK_HNS_DAY) cmd_start_hide() } } else remove_task(TASK_HNS_DAY) } /*=============================================================================== = Режим: Прятки ================================================================================ =*/ public cmd_start_hide() { set_lights("b") g_BlockWeapons = 1 client_cmd(0, "mp3 stop; mp3 play %s", g_Game_4) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { g_SpeedPlayer[i] = true set_user_maxspeed(i, 320.0) give_item(i, "weapon_knife") give_item(i, "weapon_hegrenade") give_item(i, "weapon_flashbang") give_item(i, "weapon_flashbang") give_item(i, "weapon_smokegrenade") } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") client_cmd(i, "impulse 100") give_item(i, "weapon_m4a1") give_item(i, "weapon_ak47") cs_set_user_bpammo( i, CSW_AK47, 900 ) cs_set_user_bpammo(i, CSW_M4A1, 900 ) set_pev(i, pev_flags, pev(i, pev_flags) & ~FL_FROZEN) } } } g_TimerOver = 200 set_task(200.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") }
public cmd_game_alien() { jail_open() set_lights("a") g_GameMode = 9 g_BlockWeapons = 1 emit_sound(0, CHAN_VOICE, "GameSoNew.wav", 1.0, ATTN_NORM, 0, PITCH_LOW) for(new i = 1; i<=zsMaxPlayers; i++) { if(is_user_connected(i) && is_user_alive(i)) { if(cs_get_user_team(i) == CS_TEAM_T) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_m249" ) client_cmd(i, "impulse 100") cs_set_user_bpammo(i, CSW_M249, 200 ) set_user_health(i,550) give_item(i, "weapon_smokegrenade") cs_set_user_nvg(i, true) } else if(cs_get_user_team(i) == CS_TEAM_CT) { player_strip_weapons(i) give_item(i, "weapon_knife") give_item(i, "weapon_m249" ) client_cmd(i, "impulse 100") give_item(i, "weapon_smokegrenade") give_item(i, "weapon_smokegrenade") cs_set_user_bpammo(i, CSW_M249, 450 ) set_user_health(i,3300) cs_set_user_nvg(i, true) } } } g_TimerOver = 130 set_task(130.0, "cmd_game_over", TASK_GAME_OVER, _, _, "b") }
stock UTIL_WeaponAnimation(pPlayer, iAnimation) { set_pev(pPlayer, pev_weaponanim, iAnimation); engfunc(EngFunc_MessageBegin, MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, {0.0, 0.0, 0.0}, pPlayer); write_byte(iAnimation); write_byte(0); message_end(); } /*=============================================================================== = Функция: Цветной чат ================================================================================ =*/ stock ChatColor(const id, const input[], any:...) { new count = 1, players[32]; static msg[191]; vformat(msg, 190, input, 3); format(msg, sizeof(msg), "!y[!gJailBreak!y] %s", msg); //Префикс replace_all(msg, 190, "!g", "^4"); // Green Color replace_all(msg, 190, "!y", "^1"); // Default Color replace_all(msg, 190, "!t", "^3"); // Team Color 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(); } } } }
public Function() { } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1049\\ f0\\ fs16 \n\\ par } */
Код:
#include <amxmodx> #include <amxmisc> #include <fun> #include <fakemeta> #include <fakemeta_util> #include <hamsandwich> #include <engine> #include <cstrike>
#define PLUGIN "Chempion BOX Game" #define VERSION "1.1" #define AUTHOR "Weazzy_"
native jbe_is_user_simon(id); native jb_get_last(); native jb_set_box_off(); native jb_set_box_on();
#define ID_TIMER 7135134
new bool:onoff;
new const g_Game[] = {"sound/boxonoff.wav"} new const g_GameWinner[] = {"sound/vzlomal35.wav"} new playersboxing[3]; new fightnum = 0; new playerboxingname[2][32]; new playerwinnername[32]; new g_Time; new ActionTime[64]; new Players[32], Count; new BeaconSprite
public plugin_init() { register_plugin(PLUGIN,VERSION,AUTHOR); register_clcmd("say /boxgo","RunGame",ADMIN_SLAY); RegisterHam(Ham_Touch, "armoury_entity", "BlockWeapon") RegisterHam(Ham_Touch, "weaponbox", "BlockWeapon") RegisterHam(Ham_Spawn, "player", "player_spawn", 1) RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage") register_logevent("end_round", 2, "1=Round_End") register_logevent("start_round", 2, "1=Round_Start") register_event( "CurWeapon", "EventCurWeapon", "be", "1=1" ); RegisterHam(Ham_Use,"func_button","UseButton",0) RegisterHam(Ham_TraceAttack, "func_button", "button_attack") RegisterHam(Ham_Killed,"player","ham_player_kill") }
public plugin_precache() { precache_generic(g_Game); precache_generic(g_GameWinner); BeaconSprite = precache_model("sprites/shockwave.spr") } public start_round() { if(task_exists(ID_TIMER)) { remove_task(ID_TIMER); } }
public end_round() { if(onoff) { onoff = false; set_pev(0, pev_flags, pev(0, pev_flags) & ~FL_FROZEN); arrayset(playersboxing,0,2); playerboxingname[0] = ""; playerboxingname[1] = ""; set_user_godmode(0,0) ActionTime = ""; fm_set_rendering(0); if(task_exists(ID_TIMER)) { remove_task(ID_TIMER); } jb_set_box_off() } }
public player_spawn(id) { if(onoff) user_kill(id);
if(task_exists(id)) { remove_task(id); } }
public BlockWeapon(ent, id) { if(onoff && get_user_team(id) == 1) return HAM_SUPERCEDE
return PLUGIN_CONTINUE }
public RunGame(id) { if(jbe_is_user_simon(id)) { onoff = true; new szPlayers[32]; new szNum, szPlayer; emit_sound(0, CHAN_AUTO, g_Game, 1.0, ATTN_NORM, 0, PITCH_NORM);
get_players(szPlayers, szNum)
for(new i; i < szNum; i++) { szPlayer = szPlayers[i]
if(!is_user_alive(szPlayer) || !is_user_connected(szPlayer)) continue
if(get_user_team(szPlayer) == 1) { strip_user_weapons(szPlayer); set_pev(szPlayer, pev_flags, pev(szPlayer, pev_flags) | FL_FROZEN); set_user_godmode(szPlayer, 1); jb_set_box_on() find_boxers(); } }
set_task(2.0, "Timer", ID_TIMER, _, _, "b"); server_cmd("jbe_open"); } return PLUGIN_HANDLED }
public ham_player_kill(victim, killer, corpse){ if(onoff) { if(victim == playersboxing[1] || victim == playersboxing[0]) { if(!is_user_connected(killer)){ return; }
fm_set_rendering((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); strip_user_weapons((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); set_pev((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]), pev_flags, pev((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]), pev_flags) | FL_FROZEN); set_user_godmode((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]),1); get_user_name((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]), playerwinnername, charsmax(playerwinnername)); if(task_exists((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]))) { remove_task((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); } formatex(ActionTime, charsmax(ActionTime), "Winner"); emit_sound(0, CHAN_AUTO, g_GameWinner, 1.0, ATTN_NORM, 0, PITCH_NORM); find_boxers(); } } }
public client_disconnect(id) { if(onoff) { if(id == playersboxing[0] || id == playersboxing[1]) { fm_set_rendering((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); strip_user_weapons((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); set_pev((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]), pev_flags, pev((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]), pev_flags) | FL_FROZEN); set_user_godmode((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]),1); if(task_exists((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1]))) { remove_task((is_user_alive(playersboxing[0]) ? playersboxing[0] : playersboxing[1])); } formatex(ActionTime, charsmax(ActionTime), "Status"); emit_sound(0, CHAN_AUTO, g_GameWinner, 1.0, ATTN_NORM, 0, PITCH_NORM) find_boxers(); } } }
public UseButton(ent, idcaller, idactivator, use_type, Float:value) {
if(onoff && get_user_team(idactivator) == 1) return HAM_SUPERCEDE
return PLUGIN_CONTINUE }
public button_attack(button, id, Float:damage, Float:direction[3], tracehandle, damagebits) { if(onoff && get_user_team(id) == 1 && is_valid_ent(button)) return HAM_SUPERCEDE
return PLUGIN_CONTINUE }
public fw_TakeDamage(victim, inflictor, attacker, Float:damage) { if(onoff) { if(get_user_team(victim) == 2 && get_user_team(attacker) == 1) { return HAM_SUPERCEDE } } return PLUGIN_CONTINUE }
public EventCurWeapon(id) { if(onoff && get_user_team(id) == 1) { if(get_user_weapon(id) != CSW_KNIFE) { strip_user_weapons(id); give_item(id, "weapon_knife"); } } }
stock find_boxers() { get_players(Players, Count, "ahe","TERRORIST"); if(Count > 1) { playersboxing[0] = Players[random_num(0, Count - 1)]; playersboxing[1] = Players[random_num(0, Count - 1)]; while(playersboxing[0] == playersboxing[1]){ playersboxing[1] = Players[random_num(0, Count - 1)]; if(playersboxing[0] != playersboxing[1]) break; } get_user_name(playersboxing[0],playerboxingname[0],31); get_user_name(playersboxing[1],playerboxingname[1],31); set_user_godmode(playersboxing[0],0); set_user_godmode(playersboxing[1],0); set_pev(playersboxing[0], pev_flags, pev(playersboxing[0], pev_flags) & ~FL_FROZEN); set_pev(playersboxing[1], pev_flags, pev(playersboxing[1], pev_flags) & ~FL_FROZEN); give_item(playersboxing[0], "weapon_knife"); give_item(playersboxing[1], "weapon_knife"); set_user_health(playersboxing[0],100); set_user_health(playersboxing[1],100); set_task(1.0, "Beacon", playersboxing[0]) set_task(1.0, "Beacon", playersboxing[1]) fm_set_rendering(playersboxing[0],kRenderFxGlowShell,255,0,0,kRenderNormal,50); fm_set_rendering(playersboxing[1],kRenderFxGlowShell,0,0,255,kRenderNormal,50); fightnum++; g_Time = 20; formatex(ActionTime, charsmax(ActionTime), "StatusTimer");
} else if(Count == 1) { get_user_name(Players[0], playerwinnername, charsmax(playerwinnername)); formatex(ActionTime, charsmax(ActionTime), "Winner"); set_pev(Players[0], pev_flags, pev(Players[0], pev_flags) & ~FL_FROZEN); set_user_godmode(Players[0],0); emit_sound(0, CHAN_AUTO, g_GameWinner, 1.0, ATTN_NORM, 0, PITCH_NORM) end_round() } }
public Timer() { set_hudmessage(127, 170, 255, -1.0, 0.06, 0, 6.0, 2.1, 0.0, 0.0, -1); if(equali(ActionTime,"Winner")) { get_players(Players, Count, "ahe","TERRORIST"); get_user_name(Players[0], playerwinnername, charsmax(playerwinnername)); show_hudmessage(0, "Чемпион по боксу - %s!",playerwinnername); if(task_exists(ID_TIMER)) { remove_task(ID_TIMER); } } else if(equali(ActionTime,"Status")) { show_hudmessage(0, "%d бой не состоялся!",fightnum); } else if(equali(ActionTime,"StatusTimer")) { g_Time -= 1 if(g_Time >= 1) { show_hudmessage(0, "Бой %d^n%s против %s^n|Таймер: %d|",fightnum,playerboxingname[0],playerboxingname[1],g_Time); } else { client_cmd(0, "mp3 stop"); if(get_user_health(playersboxing[0]) < get_user_health(playersboxing[1])) { user_kill(playersboxing[0]); } else if(get_user_health(playersboxing[0]) > get_user_health(playersboxing[1])) { user_kill(playersboxing[1]); } show_hudmessage(0, "%d бой не состоялся!",fightnum); formatex(ActionTime, charsmax(ActionTime), "Status"); } } }
public Beacon(id) { if(id == playersboxing[1]) { static origin[3] get_user_origin(id, origin) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_BEAMCYLINDER) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]-20) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]+200) write_short(BeaconSprite) write_byte(0) write_byte(1) write_byte(6) write_byte(2) write_byte(205) write_byte(205) write_byte(255) write_byte(0) write_byte(149) write_byte(0) message_end() } else if(id == playersboxing[0]) { static origin[3] get_user_origin(id, origin) message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_BEAMCYLINDER) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]-20) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]+200) write_short(BeaconSprite) write_byte(0) write_byte(1) write_byte(6) write_byte(2) write_byte(205) write_byte(205) write_byte(149) write_byte(0) write_byte(255) write_byte(0) message_end() } set_task(1.0, "Beacon", id) return PLUGIN_CONTINUE }
Пожалуйста, помогите :) Кое что забыл, да простит меня модератор: Помогите исправить ошибку (Пост #867693) <- тут про саму игру, мы изначально пытались вне мода запустить Решением должно было последовать добавление игры в мод. Но так как ни то, ни другое не работает, решил обратиться к Вам.
Отредактировал: shram47, - 7.12.2015, 4:30

Enough to hope for someone's help, I will do it myself and I will not ask anyone. I cope with children and can cope with amxx :thank_you:
|