Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <cstrike>
- #include <fakemeta>
- #include <engine>
- #include <fun>
- #include <hamsandwich>
- #include <fakemeta_util>
- #define PLUGIN "WARMUP"
- #define VERSION "2.1"
- #define AUTHOR "*Or!g!naL*"
- #define TASKID_WARMDELAY 10000
- #define TASKID_CHECKBEST 10001
- #define VIP_FLAG "t"
- new bool:WARMUP, bool:FirstSpawn[33], PlayerKills[33], MSGID_ScreenFade, MSGID_ScreenShake, MAXPLAYERS, HUDEVENT, WARMUP_DELAY = 120
- new PRIMARY_WEAPONS_BITSUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90),
- SECONDARY_WEAPONS_BITSUM = (1<<CSW_GLOCK18)|(1<<CSW_USP)|(1<<CSW_P228)|(1<<CSW_DEAGLE)|(1<<CSW_FIVESEVEN)|(1<<CSW_ELITE)
- #define HUD_HIDE_CAL (1<<0)
- #define HUD_HIDE_FLASH (1<<1)
- #define HUD_HIDE_RHA (1<<3)
- #define HUD_HIDE_TIMER (1<<4)
- #define HUD_HIDE_MONEY (1<<5)
- #define HUD_HIDE_CROSS (1<<6)
- #define ARMURAA 100
- new g_msgHideWeapon
- new bool:g_bHideCAL, bool:g_bHideFlash, bool:g_bHideRHA
- new bool:g_bHideTimer
- new bool:g_bHideMoney
- new bool:g_bHideCross
- new g_cvarHideFlash, g_cvarHideRHA, g_cvarHideTimer, g_cvarHideMoney, g_cvarHideCross, g_cvarHideCAL
- new Pcvar_Remove;
- new Pcvar_TimeRemove;
- new DeleteWeapons;
- public plugin_init() {
- register_plugin(PLUGIN, VERSION, AUTHOR)
- g_msgHideWeapon = get_user_msgid("HideWeapon")
- register_event("ResetHUD", "onResetHUD", "b")
- register_message(g_msgHideWeapon, "msgHideWeapon")
- RegisterHam(Ham_Spawn, "player", "HAM_Spawn_Post", 1)
- register_event("DeathMsg", "EVENT_Death", "a")
- set_task(1.0, "TASK_DELAY", TASKID_WARMDELAY,_,_, "b")
- WARMUP = true;
- g_cvarHideCAL = register_cvar("amx_hud_hide_cross_ammo_weaponlist", "0")
- g_cvarHideFlash = register_cvar("amx_hud_hide_flashlight", "0")
- // g_cvarHideAll = register_cvar("amx_hud_hide_all", "0") // NOT RECOMMENDED
- g_cvarHideRHA = register_cvar("amx_hud_hide_radar_health_armor", "0")
- g_cvarHideTimer = register_cvar("amx_hud_hide_timer", "1")
- g_cvarHideMoney = register_cvar("amx_hud_hide_money", "1")
- g_cvarHideCross = register_cvar("amx_hud_hide_crosshair", "0")
- // g_cvarDrawCross = register_cvar("amx_hud_draw_newcross", "0")
- HudApplyCVars()
- MSGID_ScreenFade = get_user_msgid("ScreenFade")
- MSGID_ScreenShake = get_user_msgid("ScreenShake")
- MAXPLAYERS = get_maxplayers()
- HUDEVENT = CreateHudSyncObj()
- removeit()
- Pcvar_Remove = register_cvar("amx_remove_item_dropped", "1")
- Pcvar_TimeRemove = register_cvar("amx_time_to_remove","1.0")
- register_forward(FM_SetModel, "Fw_SetModel")
- DeleteWeapons = get_pcvar_num(Pcvar_Remove)
- }
- public TASK_DELAY() {
- if(WARMUP) {
- new id;
- switch(WARMUP_DELAY) {
- case 1..120: {
- set_hudmessage(0, 80, 255, -1.0, 0.35, 0, 1.0, 1.0)
- ShowSyncHudMsg(0, HUDEVENT, "Runda de incalzire a inceput^n (%d second%s)", WARMUP_DELAY, WARMUP_DELAY == 1 ? "" : "s")
- if(WARMUP_DELAY <= 3 && WARMUP_DELAY > 0) {
- for(id = 1; id <= MAXPLAYERS; id++) {
- if(is_user_connected(id)) {
- ScreenShake(id)
- ScreenFade(id, 0.5, random_num(100, 250), random_num(100, 250), random_num(100, 250), 250)
- }
- }
- }
- }
- case 0: {
- set_hudmessage(0, 80, 255, -1.0, 0.35, 0, 1.0, 3.0)
- ShowSyncHudMsg(0, HUDEVENT, "Runda de incalzire^n a luat sfarsit.")
- ScreenShake(id)
- ScreenFade(id, 0.5, random_num(100, 250), random_num(100, 250), random_num(100, 250), 250)
- set_cvar_num("sv_restart", 1)
- WARMUP = false;
- }
- }
- if(WARMUP_DELAY <= 0) {
- set_hudmessage(0, 80, 255, -1.0, 0.35, 0, 1.0, 3.0)
- ShowSyncHudMsg(0, HUDEVENT, "Runda de incalzire^n a luat sfarsit.")
- ScreenShake(id)
- ScreenFade(id, 0.5, random_num(100, 250), random_num(100, 250), random_num(100, 250), 250)
- set_cvar_num("sv_restart", 1)
- set_task(0.1, "TASK_CheckBest", TASKID_CHECKBEST)
- WARMUP = false;
- }
- }
- WARMUP_DELAY--
- }
- public client_putinserver(id) {
- set_task(1.0, "bun_venit", id);
- set_task(1.0, "TASK_Check", id, _, _, "b")
- FirstSpawn[id] = true;
- }
- public bun_venit(id)
- {
- if(WARMUP){
- ColorChat(id ,"!g[AMXX]:!n blasdasdasdasdasd")
- ColorChat(id ,"!g[AMXX]:!n blasdasdasdasdasd")
- }
- }
- public TASK_Check(id) {
- if(is_user_connected(id)) {
- if(get_user_team(id) == 1 || get_user_team(id) == 2 && !is_user_alive(id) && FirstSpawn[id]) {
- TASK_Respawn(id)
- remove_task(id)
- }
- }
- }
- public TASK_CheckBest()
- {
- new iPlayers[32], szName[32], iNum, id, best;
- get_players(iPlayers, iNum, "ch")
- if(!iNum)
- return;
- best = iPlayers[0]
- for(new i = 0; i < iNum; i++)
- {
- id = iPlayers[i]
- if(PlayerKills[id] > PlayerKills[best])
- best = id;
- }
- get_user_name(best, szName, charsmax(szName))
- ColorChat(0 ,"!g[AMXX]:!n Jucatorul!g %s!n a castigat!g ronda de incalzire!n cu!g %d kill-uri.", szName, PlayerKills[best])
- ColorChat(0 ,"!g[AMXX]:!n Acesta a primit!g vip!n timp de o harta si este afisat in lista!g /vips!n dar si in lista!g /who.")
- set_user_flags(best, read_flags(VIP_FLAG))
- remove_task(TASKID_CHECKBEST)
- }
- public HAM_Spawn_Post(id) {
- if(is_user_connected(id) && is_user_alive(id)) {
- if(FirstSpawn[id])
- FirstSpawn[id] = false;
- if(WARMUP)
- set_task(0.2,"TASK_Items",id)
- }
- }
- public EVENT_Death() {
- new Killer=read_data(1),
- Victim=read_data(2)
- if(is_user_connected(Killer) && Killer != Victim) {
- if(WARMUP) {
- PlayerKills[Killer]++
- set_task(0.3,"TASK_Respawn", Victim)
- }
- }
- }
- public TASK_Respawn(id) {
- if(is_user_connected(id) && !is_user_alive(id))
- ExecuteHamB(Ham_CS_RoundRespawn, id)
- }
- public TASK_Items(id) {
- if(WARMUP && is_user_connected(id) && is_user_alive(id)) {
- cs_set_user_money(id, 1600)
- drop_primary_weapons(id)
- drop_secondary_weapons(id)
- new PrimaryWeapons = random_num(1,3),
- SecondaryWeapons = random_num(1,3)
- switch(PrimaryWeapons) {
- case 1:{
- give_item(id,"weapon_m4a1")
- cs_set_user_bpammo(id,CSW_M4A1,90)
- original(id)
- }
- case 2: {
- give_item(id,"weapon_ak47")
- cs_set_user_bpammo(id,CSW_AK47,90)
- original(id)
- }
- case 3: {
- give_item(id,"weapon_awp")
- cs_set_user_bpammo(id,CSW_AWP,20)
- original(id)
- }
- }
- switch(SecondaryWeapons) {
- case 1:{
- give_item(id,"weapon_glock18")
- cs_set_user_bpammo(id,CSW_GLOCK18,40)
- }
- case 2: {
- give_item(id,"weapon_deagle")
- cs_set_user_bpammo(id,CSW_DEAGLE,35)
- }
- case 3: {
- give_item(id,"weapon_usp")
- cs_set_user_bpammo(id,CSW_USP,100)
- }
- }
- }
- }
- public original(id){
- give_item ( id, "item_thighpack" )
- //fm_strip_user_weapons(id);
- fm_give_item(id, "weapon_hegrenade");
- fm_give_item(id, "weapon_flashbang");
- fm_set_user_armor(id, get_user_armor(id)+ ARMURAA);
- cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
- cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
- }
- public ScreenShake(id) {
- if(is_user_connected(id)) {
- message_begin(MSG_ONE_UNRELIABLE, MSGID_ScreenShake, _, id)
- write_short(1<<14)
- write_short((1<<12)*6)
- write_short(1<<14)
- message_end()
- }
- }
- public onResetHUD(id)
- {
- if(WARMUP){
- HudApplyCVars()
- new iHideFlags = GetHudHideFlags()
- if(iHideFlags)
- {
- message_begin(MSG_ONE, g_msgHideWeapon, _, id)
- write_byte(iHideFlags)
- message_end()
- }
- }
- }
- public removeit() {
- if(WARMUP){
- new doneonce = 0
- new fbombt = find_ent_by_class(-1, "func_bomb_target")
- while(fbombt > MAXPLAYERS)
- {
- entity_set_int(fbombt, EV_INT_flags, FL_KILLME)
- doneonce = 1
- fbombt = find_ent_by_class(fbombt, "func_bomb_target")
- }
- if(doneonce == 1)server_cmd("sv_restartround 1")
- new ibombt = find_ent_by_class(-1, "info_bomb_target")
- while(ibombt > MAXPLAYERS)
- {
- entity_set_int(ibombt, EV_INT_flags, FL_KILLME)
- ibombt = find_ent_by_class(ibombt, "info_bomb_target")
- }
- //return PLUGIN_CONTINUE
- }
- }
- public msgHideWeapon()
- {
- if(WARMUP){
- new iHideFlags = GetHudHideFlags()
- if(iHideFlags)
- set_msg_arg_int(1, ARG_BYTE, get_msg_arg_int(1) | iHideFlags)
- }
- }
- GetHudHideFlags(){
- if(WARMUP){
- new iFlags
- if( g_bHideCAL )
- iFlags |= HUD_HIDE_CAL
- if( g_bHideFlash )
- iFlags |= HUD_HIDE_FLASH
- if( g_bHideRHA )
- iFlags |= HUD_HIDE_RHA
- if( g_bHideTimer )
- iFlags |= HUD_HIDE_TIMER
- if( g_bHideMoney )
- iFlags |= HUD_HIDE_MONEY
- if( g_bHideCross )
- iFlags |= HUD_HIDE_CROSS
- return iFlags
- }
- }
- HudApplyCVars()
- {
- if(WARMUP){
- g_bHideCAL = bool:get_pcvar_num(g_cvarHideCAL)
- g_bHideFlash = bool:get_pcvar_num(g_cvarHideFlash)
- // g_bHideAll = bool:get_pcvar_num(g_cvarHideAll)
- g_bHideRHA = bool:get_pcvar_num(g_cvarHideRHA)
- g_bHideTimer = bool:get_pcvar_num(g_cvarHideTimer)
- g_bHideMoney = bool:get_pcvar_num(g_cvarHideMoney)
- g_bHideCross = bool:get_pcvar_num(g_cvarHideCross)
- // g_bDrawCross = bool:get_pcvar_num(g_cvarDrawCross)
- }
- }
- public Fw_SetModel(entity, const model[])
- {
- if(WARMUP){
- static Float:Timetoremove
- Timetoremove = get_pcvar_float(Pcvar_TimeRemove)
- if (DeleteWeapons > 0)
- {
- set_task(Timetoremove, "RemoveItems", entity)
- return;
- }
- }
- }
- public RemoveItems(entity)
- {
- static Class[10]
- pev(entity, pev_classname, Class, sizeof Class - 1)
- if (equal(Class, "weaponbox"))
- {
- set_pev(entity, pev_nextthink, get_gametime() + DeleteWeapons)
- return;
- }
- }
- public ScreenFade(id, const Float:seconds, const red, const green, const blue, const alpha) {
- if(is_user_connected(id)) {
- message_begin(MSG_ONE_UNRELIABLE, MSGID_ScreenFade, _, id)
- write_short(floatround(4096.0 * seconds, floatround_round))
- write_short(floatround(4096.0 * seconds, floatround_round))
- write_short(0x0000)
- write_byte(red)
- write_byte(green)
- write_byte(blue)
- write_byte(alpha)
- message_end()
- }
- }
- stock drop_primary_weapons(Player) {
- static weapons[32], num, i, weaponid;
- num = 0;
- get_user_weapons(Player, weapons, num);
- for(i = 0; i < num; i++) {
- weaponid = weapons [i];
- if(((1<<weaponid) & PRIMARY_WEAPONS_BITSUM)) {
- static wname[32];
- get_weaponname(weaponid, wname, charsmax(wname));
- engclient_cmd(Player, "drop", wname);
- }
- }
- }
- stock drop_secondary_weapons(Player) {
- static weapons [32], num, i, weaponid;
- num = 0;
- get_user_weapons(Player, weapons, num);
- for(i = 0; i < num; i++) {
- weaponid = weapons [i];
- if(((1<<weaponid) & SECONDARY_WEAPONS_BITSUM)) {
- static wname[32];
- get_weaponname(weaponid, wname, charsmax(wname));
- engclient_cmd(Player, "drop", wname);
- }
- }
- }
- stock ColorChat(const id, const input[], any:...) {
- new count = 1, players[32];
- static msg[191];
- vformat(msg, 190, input, 3);
- replace_all(msg, 190, "!g", "^4");
- replace_all(msg, 190, "!n", "^1");
- replace_all(msg, 190, "!t", "^3");
- if(id) players[0] = id;
- else get_players(players, count, "ch"); {
- for(new i = 0; i < count; i++) {
- if(is_user_connected(players[i])) {
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
- write_byte(players[i]);
- write_string(msg);
- message_end();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement