Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Plugin generated by AMXX-Studio */
- #include < amxmodx >
- #include < amxmisc>
- #include < nvault >
- #include < engine >
- #include < cstrike >
- #include < hamsandwich >
- #include < fakemeta >
- #include < fakemeta_util >
- #include < fun >
- #include < csx >
- #include < xs >
- #include < colorchat >
- #include < dhudmessage >
- #define PLUGIN "Furien XP Mod"
- #define VERSION "0.0.2"
- #define AUTHOR "hadesownage"
- #define is_ent_flare(%1) (pev(%1, pev_iuser4) == 1337) ? 1 : 0
- static const ServerLicensedIp[ ] = "188.213.212.143";
- new const szPrefix [ ] = "[Furien XP Mod]^3 -";
- new Level [ 33 ], eXP [ 33 ];
- new KillXp, HsXp, HeXp, KnifeXp;
- new g_Menu [ 33 ];
- new g_iCount[ 33 ];
- new g_trail;
- new amx_gamename;
- #define TE_SPRITETRAIL 15
- new g_damage;
- new g_damages;
- new gFurienXP, Vault;
- new g_MaxPlayers;
- new g_FuriensWin = 0;
- new g_AntiFuriensWin = 0;
- new gMsgScreenShake;
- new g_FurienHealth;
- new g_AntiFurienHealth;
- #define VIP_ACCESS ADMIN_LEVEL_H
- new bool:UserHaveHpAndAp [ 33 ];
- new bool:UserHaveHeGrenade [ 33 ];
- new bool:UserHaveGodMode [ 33 ];
- new bool:UserHaveNoClip [ 33 ];
- new bool:UserHaveTeleport [ 33 ];
- new bool:UserHaveSuperKnife [ 33 ];
- new bool:UserHaveDualMp5 [ 33 ];
- new bool:UserHasChoosed [ 33 ];
- new bool:g_CanUseHe [ 33 ];
- new const buy_FurienHealth[] = "exhealth/zm_buyhealth.wav"
- new const buy_AntiFurienHealth[] = "exhealth/hm_buyhealth.wav"
- static const COLOR[] = "^x04"; //green
- static const CONTACT[] = "/vip pentru detalii";
- new maxplayers;
- new gmsgSayText;
- new g_ScoreAttrib;
- //======NICK CHANGE-----
- new const g_reason[] = "Nu este permisa schimbarea nickului pe server !";
- new const g_name[] = "name";
- //-------END NICK=====
- //======CREDITS-----
- new PlayerCredits[10000];
- new SymbolsName;
- //-------END CREDITS=====
- //-------POWERS======
- //--| Menu/Power |--//
- new HasPower[33], bool:HasChose[33];
- //--| HE Grenade |--//
- new HE_Cooldown[33] = 0;
- //--| GodMode |--//
- new GodMode_Cooldown[33] = 0;
- new GodMode_DurationCooldown[33] = 0;
- //--| Drop Enemy Weapon |--//
- new DropSprite, DropSprite2;
- new Drop_Cooldown[33] = 0;
- new const DROP_HIT_SND[] = "Furien/DropWpn_HIT.wav";
- const WPN_NOT_DROP = ((1<<2)|(1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4));
- //--| Freeze |--//
- new Freeze_Cooldown[33] = 0;
- new FreezeSprite, FreezeSprite3;
- new Frozen[33];
- new Float:TempSpeed[33], Float:TempGravity[33];
- new const FreezeSprite2[] = { "models/glassgibs.mdl" };
- new const FROSTBREAK_SND[][] = { "Furien/FrostBreak.wav" };
- new const FROSTPLAYER_SND[][] = { "Furien/FrostPlayer.wav" };
- const BREAK_GLASS = 0x01;
- const UNIT_SECOND = (1<<12);
- const FFADE_IN = 0x0000;
- //--| Drag |--//
- new DRAG_MISS_SND[] = "Furien/DragMiss.wav";
- new DRAG_HIT_SND[] = "Furien/DragHit.wav";
- new Hooked[33], Unable2move[33], OvrDmg[33];
- new Float:LastHook[33];
- new bool: BindUse[33] = false, bool: Drag_I[33] = false;
- new Drag_Cooldown[33] = 0;
- new bool:Not_Cooldown[33];
- new DragSprite;
- //--| Teleport |--//
- new TeleportSprite, TeleportSprite2, TeleportSprite3;
- new Teleport_Cooldown[33];
- new const SOUND_BLINK[] = { "weapons/flashbang-1.wav" };
- const UNIT_SEC = 0x1000;
- const FFADE = 0x0000;
- //--| NoRecoil |--//
- new Float: cl_pushangle[33][3];
- const WEAPONS_BITSUM = (1<<CSW_KNIFE|1<<CSW_HEGRENADE|1<<CSW_FLASHBANG|1<<CSW_SMOKEGRENADE|1<<CSW_C4);
- //--| Cvars |--//
- new CvarDropDistance,
- CvarDropCooldown, CvarFreezeDuration, CvarFreezeCooldown, CvarFreezeDistance, CvarDragSpeed, CvarDragCooldown,
- CvarDragDmg2Stop, CvarDragUnb2Move, CvarTeleportCooldown, CvarTeleportRange;
- //-------END POWERS=====
- //-------SALAMANDER=====
- new const fire_classname[] = "fire_salamander";
- new const fire_spr_name[] = "sprites/fire_salamander.spr";
- new const v_model[] = "models/furien/v_salamander.mdl";
- new const p_model[] = "models/furien/p_salamander.mdl";
- new const w_model[] = "models/furien/w_salamander.mdl";
- new const fire_sound[] = "weapons/flamegun-2.wav";
- #define CSW_SALAMANDER CSW_M249
- #define PEV_ENT_TIME pev_fuser1
- #define TASK_FIRE 3123123
- #define TASK_RELOAD 2342342
- new g_had_salamander[33], bool:is_firing[33], bool:is_reloading[33], Float:g_last_fire[33],
- bool:can_fire[33], g_reload_ammo[33], g_ammo[33];
- enum {
- IDLE_ANIM = 0,
- DRAW_ANIM = 4,
- RELOAD_ANIM = 3,
- SHOOT_ANIM = 1,
- SHOOT_END_ANIM = 2
- }
- new g_salamander;
- new cvar_dmgrd_start, cvar_dmgrd_end, cvar_fire_delay, cvar_max_clip;
- //-------END SALAMANDER=======
- //---------FURIEN BONUS BOX======
- new CvarFurienSpeed, CvarAntiFurienSpeed;
- new bool:HasSpeed[33], bool:HasTeleport[33], bool:LowSpeed [ 33 ];
- new const ClassName[] = "BonusBox"
- new Model[2][] = {
- "models/furien/cadout_new.mdl",
- "models/furien/cadouct.mdl"
- }
- new Model_Yellow[2][] = {
- "models/furien/cadout_galben.mdl",
- "models/furien/cadouct_galben.mdl"
- }
- const UNIT_SEC = 0x1000
- const FFADE = 0x0000
- #define FFADE_IN 0x0000 // Just here so we don't pass 0 into the function
- #define FFADE_OUT 0x0001 // Fade out (not in)
- #define FFADE_MODULATE 0x0002 // Modulate (don't blend)
- #define FFADE_STAYOUT 0x0004 // ignores the duration, stays faded out until new ScreenFade message received
- enum {
- Red,
- Green,
- Blue
- };
- //---------END FURIEN BONUS BOX======
- //---------K1ASUS WEAPON ( SCORPION )======
- #define ENG_NULLENT -1
- #define EV_INT_WEAPONKEY EV_INT_impulse
- #define k1ases_WEAPONKEY 890
- #define MAX_PLAYERS 32
- #define IsValidUser(%1) (1 <= %1 <= g_MaxPlayers)
- #define write_coord_f(%1) engfunc(EngFunc_WriteCoord,%1)
- const USE_STOPPED = 0
- const OFFSET_ACTIVE_ITEM = 373
- const OFFSET_WEAPONOWNER = 41
- const OFFSET_LINUX = 4
- const OFFSET_LINUX_WEAPONS = 4
- #define WEAP_LINUX_XTRA_OFF 4
- #define m_fKnown 44
- #define m_flNextPrimaryAttack 46
- #define m_flTimeWeaponIdle 48
- #define m_iClip 51
- #define m_fInReload 54
- #define PLAYER_LINUX_XTRA_OFF 4
- #define m_flNextAttack 83
- #define k1ases_RELOAD_TIME 2.5
- new bool:k1ases_weapon [ 33 ];
- new const Fire_Sounds[][] = { "weapons/k1ar-1.wav" }
- new const sprites_exp[] = "sprites/deimosexp.spr"
- new const explode_sound[] = "cso/deimos_skill_start.wav"
- new const GUNSHOT_DECALS[] = { 41, 42, 43, 44, 45 }
- new k1ases_V_MODEL[64] = "models/furien/v_k1ases.mdl"
- new k1ases_P_MODEL[64] = "models/furien/p_k1ases.mdl"
- new k1ases_W_MODEL[64] = "models/furien/w_k1ases.mdl"
- new cvar_dmg_k1ases, cvar_recoil_k1ases, cvar_clip_k1ases, cvar_k1ases_ammo , cvar_k1asesammo , cvar_k1ases_delay , cvar_k1ases_claw , cvar_rad
- new g_orig_event_k1ases, g_clip_ammo[33] , cvar_k1ases_fire
- new Float:cl_pushangle_k1asus[MAX_PLAYERS + 1][3], m_iBlood[2]
- new g_k1ases_TmpClip[33] , oldweap[33] , g_has_k1ases[33] , g_ammoclaw[33] , g_delay[33]
- new sprites_exp_index
- const PRIMARY_WEAPONS_BIT_SUM = (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)
- new const WEAPONENTNAMES[][] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10",
- "weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550",
- "weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249",
- "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552",
- "weapon_ak47", "weapon_knife", "weapon_p90" }
- //---------END K1ASUS WEAPON ( SCORPION )======
- //---------QUAD BARREL======
- #define m_pPlayer 41
- #define m_flNextPrimaryAttack 46
- #define m_flNextSecondaryAttack 47
- #define m_flTimeWeaponIdle 48
- #define m_iClip 51
- #define m_fInReload 54
- #define m_fInSpecialReload 55
- #define XTRA_OFS_WEAPON 4
- #define XTRA_OFS_PLAYER 5
- #define m_flNextAttack 83
- #define m_rgAmmo_player_Slot0 376
- new const qb_v_model[] = "models/furien/v_qbarrel.mdl"
- new const qb_p_model[] = "models/furien/p_qbarrel.mdl"
- new const qb_w_model[] = "models/furien/w_qbarrel.mdl"
- new const qb_sound[5][] = {
- "weapons/qbarrel_clipin1.wav",
- "weapons/qbarrel_clipin2.wav",
- "weapons/qbarrel_clipout1.wav",
- "weapons/qbarrel_draw.wav",
- "weapons/qbarrel_shoot.wav"
- }
- #define CSW_QB CSW_XM1014
- new g_had_qb[33], Float:g_last_fire_qb[33], Float:g_last_fire2[33], g_bloodspray, g_blood
- new cvar_default_clip, cvar_delayattack, cvar_reloadtime, cvar_randmg_start, cvar_randmg_end
- new g_quad_barrel
- //---------END QUAD BARREL======
- //---------DRAGON CANNON======
- #define CSW_CANNON CSW_UMP45
- #define weapon_cannon "weapon_ump45"
- #define DEFAULT_W_MODEL "models/w_ump45.mdl"
- #define WEAPON_SECRET_CODE 4965
- #define CANNONFIRE_CLASSNAME "cannon_round"
- // Fire Start
- #define WEAPON_ATTACH_F 30.0
- #define WEAPON_ATTACH_R 10.0
- #define WEAPON_ATTACH_U -10.0
- #define TASK_RESET_AMMO 5434
- const pev_ammo = pev_iuser4
- new const WeaponModel[3][] = {
- "models/furien/v_cannon.mdl",
- "models/furien/p_cannon.mdl",
- "models/furien/w_cannon.mdl"
- }
- new const WeaponSound[2][] = {
- "weapons/cannon-1.wav",
- "weapons/cannon_draw.wav"
- }
- new const WeaponResource[5][] = {
- "sprites/fire_cannon.spr",
- "sprites/weapon_cannon.txt",
- "sprites/640hud69.spr",
- "sprites/640hud2_cso.spr",
- "sprites/smokepuff.spr"
- }
- enum {
- MODEL_V = 0,
- MODEL_P,
- MODEL_W
- }
- enum {
- CANNON_ANIM_IDLE = 0,
- CANNON_ANIM_SHOOT1,
- CANNON_ANIM_SHOOT2,
- CANNON_ANIM_DRAW
- }
- new g_had_cannon[33], g_old_weapon[33], g_cannon_ammo[33], g_got_firsttime[33], Float:g_lastshot[33]
- new g_cvar_defaultammo, g_cvar_reloadtime, g_cvar_firespeed, g_cvar_radiusdamage, g_cvar_damage
- new Float:g_temp_reloadtime, g_smokepuff_id
- //---------END DRAGON CANNON======
- //---------M79 WEAPON======
- #define HUD_HIDE_CROSS (1<<6)
- // Weapon/Grenade models
- new const m79_P_MODEL[] = "models/furien/p_m79.mdl"
- new const m79_V_MODEL[] = "models/furien/v_m79fix2.mdl"
- new const m79_W_MODEL[] = "models/furien/w_m79.mdl"
- new const m79_GRENADE_MODEL[] = "models/grenade.mdl"
- // Fire sound
- new const m79_GRENADE_SHOOT[] = "weapons/m79_fire1.wav"
- new const m79_GRENADE_CLIPIN[] = "weapons/m79_clipin.wav"
- new const m79_GRENADE_CLIPON[] = "weapons/m79_clipon.wav"
- new const m79_GRENADE_CLIPOUT[] = "weapons/m79_clipout.wav"
- new const m79_GRENADE_DRAW[] = "weapons/m79_draw.wav"
- // Sprites
- new const m79_GRENADE_TRAIL[] = "sprites/laserbeam.spr"
- new const m79_GRENADE_EXPLOSION[] = "sprites/m79_exp.spr"
- new const m79_GRENADE_SMOKE[] = "sprites/black_smoke3.spr"
- // Cached sprite indexes
- new sTrail, sExplo, sSmoke
- // Sprites
- new gmsgWeaponList
- // Bodyparts and blood
- new mdl_gib_flesh, mdl_gib_head, mdl_gib_lung, mdl_gib_spine,
- blood_drop, blood_spray
- // Item ID
- new m79
- // Player variables
- new g_hasM79[33] // whether player has M79
- new g_FireM79[33] // player is shooting
- new g_canShoot[33] // player can shoot
- new Float:g_last_shot_time[33] // last shot time
- new grenade_count[33] // current grenade count
- new bool:draw_wpn[33] //выбираем пукалку
- new bool:hasOnHandM79[33],bool:canfire[33],
- cvar_granade_damage_radius,
- cvar_granade_max_damage
- // Message ID's
- new g_msgScreenShake,g_msgStatusText
- new gmsgDeathMsg, gmsgScoreInfo
- // Customization(CHANGE HERE)
- #define LAUNCHER_COST 20
- new Float:delayshot = 3.0
- // Tasks
- #define TASK_HUDAMMO 1337
- #define TASK_FRSTSHT 1437
- #define ID_HUDAMMO (taskid - TASK_HUDAMMO)
- #define ID_SHT (taskid - TASK_FRSTSHT)
- enum {
- anim_idle,
- anim_shot1,
- anim_shot2,
- anim_draw,
- }
- //---------END M79 WEAPON======
- new dual_mp5_v_model [ 66 ] = "models/furien/weapons/v_dualmp5.mdl";
- new dual_mp5_p_model [ 66 ] = "models/furien/weapons/p_dualmp5.mdl";
- new infinity_knife_v_model [ 66 ] = "models/furien/knifes/v_infinity_knife1.mdl";
- new infinity_knife_p_model [ 66 ] = "models/furien/knifes/p_infinity_knife1.mdl";
- new katana_knife_v_model [ 66 ] = "models/furien/knifes/v_katana.mdl";
- new katana_knife_p_model [ 66 ] = "models/furien/knifes/p_katana.mdl";
- new double_katana_v_knife_model [ 66 ] = "models/furien/knifes/v_double_katana.mdl";
- new double_katana_p_knife_model [ 66 ] = "models/furien/knifes/p_double_katana.mdl";
- new super_knife_v_model [ 66 ] = "models/furien/knifes/v_natad.mdl";
- new super_knife_p_model [ 66 ] = "models/furien/knifes/p_natad.mdl";
- new axe_knife_v_model [ 66 ] = "models/furien/knifes/v_vipaxe.mdl";
- new axe_knife_p_model [ 66 ] = "models/furien/knifes/p_vipaxe.mdl";
- new trainer_v_model [ 66 ] = "models/furien/knifes/v_combatknife.mdl";
- new trainer_p_model [ 66 ] = "models/furien/knifes/p_combatknife.mdl";
- new ignes_knife_model [ 66 ] = "models/furien/knifes/v_ignes.mdl";
- new elf_knife_model [ 66 ] = "models/furien/knifes/v_elf.mdl";
- new super_knife_shop_v_model [ 66 ] = "models/furien/knifes/v_superknife_shop.mdl";
- // new super_knife_shop_p_model [ 66 ] = "models/furien/knifes/p_superknife_shop.mdl";
- new super_knife_shop_v_model2 [ 66 ] = "models/furien/knifes/v_superknife_shop2.mdl";
- new super_knife_shop_p_model2 [ 66 ] = "models/furien/knifes/p_superknife_shop2.mdl";
- new thompson_v_model [ 66 ] = "models/furien/weapons/v_thompson.mdl";
- new thompson_p_model [ 66 ] = "models/furien/weapons/p_thompson.mdl";
- new uspx_v_model [ 66 ] = "models/furien/weapons/v_uspx.mdl";
- new uspx_p_model [ 66 ] = "models/furien/weapons/p_uspx.mdl";
- new hunter_v_model [ 66 ] = "models/furien/weapons/v_f2000.mdl";
- new hunter_p_model [ 66 ] = "models/furien/weapons/p_f2000.mdl";
- new mage_v_model [ 66 ] = "models/furien/weapons/v_fnc.mdl";
- new mage_p_model [ 66 ] = "models/furien/weapons/p_fnc.mdl";
- new rogue_v_model [ 66 ] = "models/furien/weapons/v_svdex.mdl";
- new rogue_p_model [ 66 ] = "models/furien/weapons/p_svdex.mdl";
- new shaman_v_model [ 66 ] = "models/furien/weapons/v_tar21.mdl";
- new shaman_p_model [ 66 ] = "models/furien/weapons/p_tar21.mdl";
- new warrior_v_model [ 66 ] = "models/furien/weapons/v_kriss.mdl";
- new warrior_p_model [ 66 ] = "models/furien/weapons/p_kriss.mdl";
- new deklowaz_v_model [ 66 ] = "models/furien/weapons/v_dualkriss.mdl";
- new deklowaz_p_model [ 66 ] = "models/furien/weapons/p_dualkriss.mdl";
- new flare_v_model [ 66 ] = "models/furien/weapons/v_flare.mdl";
- new flare_w_model [ 66 ] = "models/furien/weapons/w_flare.mdl";
- new strike_grenade_v_model [ 66 ] = "models/furien/weapons/v_hegrenade.mdl";
- new strike_grenade_p_model [ 66 ] = "models/furien/weapons/p_hegrenade.mdl";
- new bool:dual_mp5 [ 33 ];
- new bool:salamander [ 33 ];
- new bool:SalamanderLimit [ 33 ];
- new bool:katana_knife [ 33 ];
- new bool:double_katana_knife [ 33 ];
- new bool:super_knife [ 33 ];
- new bool:infinity_knife [ 33 ];
- new bool:ignes_knife [ 33 ];
- new bool:elf_knife [ 33 ];
- new bool:trainer [ 33 ];
- new bool:vip_axe_knife [ 33 ];
- new bool:hunter [ 33 ];
- new bool:mage [ 33 ];
- new bool:rogue [ 33 ];
- new bool:shaman [ 33 ];
- new bool:warrior [ 33 ];
- new bool:deklowaz [ 33 ];
- new bool:thompson [ 33 ];
- new bool:uspx [ 33 ];
- new bool:flare [ 33 ];
- new bool:druid [ 33 ];
- new bool:strike_grenade [ 33 ];
- new bool:strike_grenade2 [ 33 ];
- new bool:strike_grenade3 [ 33 ];
- new bool:super_knife_shop [ 33 ];
- new bool:super_knife_shop2 [ 33 ];
- new bool:UserHaveQuad [ 33 ];
- new bool:UserHaveDragon [ 33 ];
- new bool:UserHaveM79 [ 33 ];
- new const Levels [ 30 ] = {
- 250, //1
- 500, //2
- 1000, //3
- 1500, //4
- 2000, //5
- 2500, //6
- 3000, //7
- 3500, //8
- 4000, //9
- 4500, //10
- 5000, //11
- 6000, //12
- 7000, //13
- 8000, //14
- 9000, //15
- 10000, //16
- 11000, //17
- 12000, //18
- 13000, //19
- 14000, //20
- 15000, //21
- 16000, //22
- 18000, //23
- 20000, //24
- 22000, //25
- 24000, //26
- 26000, //27
- 28000, //28
- 29000, //29
- 30000 //30
- };
- new const Prefix [ 30 +2 ] [ ] = {
- "0",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "10",
- "11",
- "12",
- "13",
- "14",
- "15",
- "16",
- "17",
- "18",
- "19",
- "20",
- "21",
- "22",
- "23",
- "24",
- "25",
- "26",
- "27",
- "28",
- "29",
- "30",
- ""
- };
- public plugin_init ( ) {
- new szIp[ 25 ];
- get_user_ip( 0, szIp, sizeof ( szIp ) -1, 1 );
- if( equal( szIp, ServerLicensedIp ) )
- {
- new szPluginName[ 32 ];
- formatex( szPluginName, sizeof( szPluginName ) -1, "[IP Licentiat] %s", PLUGIN );
- register_plugin ( szPluginName, VERSION, "hadesownage" );
- register_clcmd ( "say /xp", "cmdShowXp", -1 );
- register_clcmd ( "say /savexp", "cmdSaveXp", -1 );
- register_clcmd ( "say /level", "cmdShowLevel" );
- register_clcmd ( "say /levele", "cmdShowLevels", -1 );
- register_clcmd ( "say /topxp", "cmdXpTop15", -1 );
- register_clcmd ( "say /clearxp", "cmdClearXp", -1 );
- register_clcmd ( "say /xpmenu", "cmdXpMenu", -1 );
- register_clcmd ( "say /vipweapons", "cmdVipWeaponsMenu", -1 );
- register_clcmd ( "say /class", "cmdClassMenu", -1 );
- register_clcmd ( "say class", "cmdClassMenu", -1 );
- register_clcmd ( "say /refresh", "cmdRefreshXP", -1 );
- register_clcmd ( "say /shop", "cmdShop", -1 );
- register_clcmd ( "say shop", "cmdShop", -1 );
- register_clcmd ( "shop", "cmdShop", -1 );
- register_clcmd ( "say /help", "cmdHelp", -1 );
- register_clcmd ( "say /ajutor", "cmdHelp", -1 );
- register_clcmd ( "say /detalii", "cmdHelp", -1 );
- register_clcmd ( "say /despre", "cmdHelp", -1 );
- register_clcmd ( "say /vip", "cmdShowVipDetails", -1 );
- register_clcmd ( "say /depozit","Depozit", -1 );
- register_clcmd ( "say_team /depozit","Depozit", -1 );
- register_clcmd ( "say /retrage","Retrage", -1 );
- register_clcmd ( "say_team /retrage","Retrage", -1 );
- register_clcmd ( "say /credits","Show_Credits", -1 );
- register_clcmd ( "say /credite","Show_Credits", -1 );
- register_clcmd ( "say_team /credits","Show_Credits", -1 );
- register_clcmd ( "say_team /credite","Show_Credits", -1 );
- register_clcmd ( "+drag","DragStart" );
- register_clcmd ( "-drag","DragEnd" );
- register_clcmd ( "power", "Power" );
- register_clcmd ( "power2", "CmdTeleport" );
- register_clcmd ( "say /furienvip", "cmdCheckVIP", -1 );
- register_clcmd ( "say_team /furienvip", "cmdCheckVIP", -1 );
- register_clcmd ( "vippower", "VIPpower", VIP_ACCESS );
- register_concmd ( "amx_givexp", "cmdGiveXp", ADMIN_IMMUNITY, "<target / all> <amount>" );
- register_concmd ( "amx_setxp", "cmdSetXp", ADMIN_IMMUNITY, "<target> <amount>" );
- register_concmd ( "amx_give_credits", "Give_Credits", ADMIN_IMMUNITY, "<target / ct / t / all> <amount>" );
- register_concmd ( "amx_reset_credits", "Reset_Credits", ADMIN_IMMUNITY, "<target / ct / t / all>" );
- register_event ( "DeathMsg", "eDeath", "a" );
- register_event ( "DeathMsg", "Death", "a" );
- register_event ( "CurWeapon", "AntiFurienCurrentWeapon", "be", "1=1" );
- register_event ( "CurWeapon", "FurienCurrentWeapon", "be", "1=1" );
- register_event ( "HLTV", "GetRandomPlayer", "a", "1=0", "2=0" );
- //register_event ( "TextMsg", "Round_Restart", "a", "2&#Game_C", "2&#Game_w", "2&#Game_will_restart_in" );
- register_forward ( FM_ClientUserInfoChanged, "fwClientUserInfoChanged" );
- register_forward ( FM_PlayerPreThink, "ShowSalamanderIcon" );
- register_forward ( FM_SetModel, "fwd_setmodel" );
- register_forward ( FM_Think, "fwd_think" );
- register_forward ( FM_PlayerPreThink, "ForcePlayerSpeed" );
- register_forward ( FM_CmdStart, "CmdStart" );
- register_forward ( FM_Touch, "Touch" );
- register_forward ( FM_Touch, "Touch_Yellow" );
- register_forward ( FM_GetGameDescription, "GameDesc" );
- register_logevent ( "round_end", 2, "1=Round_End" );
- register_logevent ( "round_start", 2, "1=Round_Start" );
- RegisterHam ( Ham_Spawn, "player", "cmdClassMenu", 1 );
- RegisterHam ( Ham_Spawn, "player", "RefreshWeapons", 1 );
- RegisterHam ( Ham_TakeDamage, "player", "FurienAndAntiFurienDamage" );
- RegisterHam ( Ham_Killed, "player", "ham_player_kill" );
- RegisterHam ( Ham_Weapon_PrimaryAttack, "weapon_hegrenade", "ham_PrimaryAttack_He" );
- KillXp = register_cvar ( "xm_xp_pr_kill", "25" );
- HsXp = register_cvar ( "xm_xp_pr_hs", "55" );
- HeXp = register_cvar ( "xm_xp_pr_nade", "80" );
- KnifeXp = register_cvar ( "xm_xp_pr_knife", "75" );
- gFurienXP = nvault_open ( "FurienXPMod" );
- g_MaxPlayers = get_maxplayers ( );
- g_ScoreAttrib = get_user_msgid("ScoreAttrib");
- maxplayers = get_maxplayers()
- gmsgSayText = get_user_msgid("SayText")
- register_clcmd("say", "handle_say")
- register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)
- SymbolsName = register_cvar ( "fr_name_symbols", "~`" ); //| Symbols Name Restricted |//
- CvarFurienSpeed = register_cvar("amx_bonusbox_furien_speed", "1000");
- CvarAntiFurienSpeed = register_cvar("amx_bonusbox_anitfurien_speed", "750");
- gMsgScreenShake = get_user_msgid("ScreenShake");
- amx_gamename = register_cvar( "amx_gamename", "XP Mod by Hades" );
- set_task ( 30.0, "GiveBonus", 38427236, _, _, "b" );
- set_task( 1.0, "ShowHud", _, _, _, "b" );
- set_task( 120.0, "ShowMessages", _, _, _, "b" );
- //set_task( 10.0, "UpdateHudScore", _, _, _, "b" );
- //set_task( 60.0, "CheckTime", _, _, _, "b", 0 );
- // POWERS ------------------------------------
- register_event("DeathMsg", "Death", "a");
- RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
- register_forward(FM_PlayerPreThink, "PlayerPreThink");
- new weapon_name[24];
- for (new i = 1; i <= 30; i++) {
- if (!(WEAPONS_BITSUM & 1 << i) && get_weaponname(i, weapon_name, 23)) {
- RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "Weapon_PrimaryAttack_Pre");
- RegisterHam(Ham_Weapon_PrimaryAttack, weapon_name, "Weapon_PrimaryAttack_Post", 1);
- }
- }
- CvarDropDistance = register_cvar ("vip_drop_distance", "5000"); // Distanta maxima la care poate ajunge puterea
- CvarDropCooldown = register_cvar ("vip_drop_cooldown" , "30.0"); // Drop Enemy WPN Cooldown
- CvarFreezeDuration = register_cvar("vip_freeze_duration", "3.0"); // Freeze Duration
- CvarFreezeCooldown = register_cvar("vip_freeze_cooldown", "30.0"); // Freeze Cooldown
- CvarFreezeDistance = register_cvar ("vip_freeze_distance", "5000"); // Distanta maxima la care poate ajunge puterea
- CvarDragSpeed = register_cvar("vip_drag_speed", "500"); // Drag Speed
- CvarDragCooldown = register_cvar("vip_drag_cooldown", "15.0"); // Drag Cooldown
- CvarDragDmg2Stop = register_cvar("vip_drag_dmg2stop", "50"); // Drag Damage to stop
- CvarDragUnb2Move = register_cvar("vip_drag_unable_move", "1"); // Drag Unable to move
- CvarTeleportCooldown = register_cvar("vip_teleport_cooldown", "20.0"); // Teleport Cooldown
- CvarTeleportRange = register_cvar("vip_teleport_range", "12345"); // Teleport Range
- // POWERS ------------------------------------
- // SALAMANDER ------------------------------------
- register_event("CurWeapon", "event_curweapon", "be", "1=1");
- register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post", 1);
- RegisterHam(Ham_Spawn, "player", "fw_spawn", 1);
- RegisterHam(Ham_Weapon_Reload, "weapon_m249", "fw_weapon_reload", 1);
- RegisterHam(Ham_Item_Deploy, "weapon_m249", "fw_weapon_deploy", 1);
- RegisterHam(Ham_Item_PostFrame, "weapon_m249", "fw_item_postframe", 1);
- RegisterHam(Ham_Item_AddToPlayer, "weapon_m249", "fw_item_addtoplayer", 1);
- register_forward(FM_CmdStart, "fw_cmdstart");
- register_touch(fire_classname, "*", "fw_touch");
- register_think(fire_classname, "fw_think");
- register_forward(FM_SetModel, "fw_SetModel");
- register_clcmd("lastinv", "check_lastinv");
- cvar_dmgrd_start = register_cvar("zp_salamander_dmgrandom_start", "65.0");
- cvar_dmgrd_end = register_cvar("zp_salamander_dmgrandom_end", "90.0");
- cvar_fire_delay = register_cvar("zp_salamander_fire_delay", "0.1");
- cvar_max_clip = register_cvar("zp_salamander_max_clip", "100");
- // SALAMANDER ------------------------------------
- // K1ASUS ----------------------------------------------
- register_message(get_user_msgid("DeathMsg"), "message_DeathMsg")
- register_event("CurWeapon","CurrentWeapon","be","1=1")
- RegisterHam(Ham_Item_AddToPlayer, "weapon_mp5navy", "fw_k1ases_AddToPlayer")
- RegisterHam(Ham_Use, "func_tank", "fw_UseStationary_Post", 1)
- RegisterHam(Ham_Use, "func_tankmortar", "fw_UseStationary_Post", 1)
- RegisterHam(Ham_Use, "func_tankrocket", "fw_UseStationary_Post", 1)
- RegisterHam(Ham_Use, "func_tanklaser", "fw_UseStationary_Post", 1)
- for (new i = 1; i < sizeof WEAPONENTNAMES; i++)
- if (WEAPONENTNAMES[i][0]) RegisterHam(Ham_Item_Deploy, WEAPONENTNAMES[i], "fw_Item_Deploy_Post", 1)
- RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_mp5navy", "fw_k1ases_PrimaryAttack")
- RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_mp5navy", "fw_k1ases_PrimaryAttack_Post", 1)
- RegisterHam(Ham_Item_PostFrame, "weapon_mp5navy", "k1ases__ItemPostFrame");
- RegisterHam(Ham_Weapon_Reload, "weapon_mp5navy", "k1ases__Reload");
- RegisterHam(Ham_Weapon_Reload, "weapon_mp5navy", "k1ases__Reload_Post", 1);
- RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
- register_forward(FM_SetModel, "fw_SetModel_k1asus")
- register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post_k1asus", 1)
- register_forward(FM_PlaybackEvent, "fwPlaybackEvent")
- register_forward(FM_CmdStart, "fw_CmdStart")
- RegisterHam(Ham_TraceAttack, "worldspawn", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_breakable", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_wall", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_door", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_door_rotating", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_plat", "fw_TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "func_rotating", "fw_TraceAttack", 1)
- cvar_dmg_k1ases = register_cvar("zp_k1ases_dmg", "1.5")
- cvar_recoil_k1ases = register_cvar("zp_k1ases_recoil", "0.5")
- cvar_clip_k1ases = register_cvar("zp_k1ases_clip", "30")
- cvar_k1ases_ammo = register_cvar("zp_k1ases_ammo", "50")
- cvar_k1asesammo = register_cvar("zp_k1ases_clawammo", "3")
- cvar_k1ases_delay = register_cvar("zp_k1ases_delay", "5")
- cvar_k1ases_claw = register_cvar("zp_k1ases_clawdmg", "500")
- cvar_rad = register_cvar("zp_k1ases_clawrad", "100.0")
- cvar_k1ases_fire = register_cvar("zp_k1ases_speedfire", "0.4")
- // K1ASUS ----------------------------------------------
- // QUAD BARREL ----------------------------------------------
- register_forward(FM_CmdStart, "fm_cmdstart")
- register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post_qb", 1)
- register_forward(FM_SetModel, "fw_SetModel_qb")
- RegisterHam(Ham_TakeDamage, "player", "fw_takedmg")
- RegisterHam(Ham_TraceAttack, "worldspawn", "TraceAttack", 1)
- RegisterHam(Ham_TraceAttack, "player", "TraceAttack", 1)
- RegisterHam(Ham_Weapon_Reload, "weapon_xm1014", "ham_reload", 1)
- RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_xm1014", "ham_priattack", 1)
- RegisterHam(Ham_Item_PostFrame, "weapon_xm1014", "ham_postframe")
- RegisterHam(Ham_Item_AddToPlayer, "weapon_xm1014", "fw_item_addtoplayer_qb", 1)
- register_clcmd("lastinv", "check_draw_weapon")
- register_clcmd("slot1", "check_draw_weapon")
- cvar_default_clip = register_cvar("zp_qbarrel_default_clip", "4")
- cvar_delayattack = register_cvar("zp_qbarrel_delay_attack", "0.35")
- cvar_reloadtime = register_cvar("zp_qbarrel_reload_time", "3.0")
- cvar_randmg_start = register_cvar("zp_qbarrel_randomdmg_start", "400.0")
- cvar_randmg_end = register_cvar("zp_qbarrel_randomdmg_end", "600.0")
- register_event("CurWeapon", "event_curweapon_quad", "be", "1=1")
- // QUAD BARREL ----------------------------------------------
- // DRAGON CANNON ----------------------------------------------
- register_event("CurWeapon", "event_CurWeapon_dragon", "be", "1=1")
- register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post_dc", 1)
- register_forward(FM_CmdStart, "fw_CmdStart_dc")
- register_forward(FM_SetModel, "fw_SetModel_dc")
- register_think(CANNONFIRE_CLASSNAME, "fw_Cannon_Think")
- register_touch(CANNONFIRE_CLASSNAME, "*", "fw_Cannon_Touch")
- RegisterHam(Ham_Spawn, "player", "fw_Spawn_Post", 1)
- RegisterHam(Ham_Item_AddToPlayer, weapon_cannon, "fw_AddToPlayer_Post", 1)
- g_cvar_defaultammo = register_cvar("cannon_default_ammo", "5")
- g_cvar_reloadtime = register_cvar("cannon_reload_time", "4.0")
- g_cvar_firespeed = register_cvar("cannon_fire_speed", "200.0")
- g_cvar_radiusdamage = register_cvar("cannon_radius_damage", "200.0")
- g_cvar_damage = register_cvar("cannon_damage", "700.0")
- register_clcmd("amx_get_dragoncannon", "get_dragoncannon", ADMIN_RCON)
- register_clcmd("weapon_cannon", "hook_weapon")
- // DRAGON CANNON ----------------------------------------------
- // M79 WEAPON ----------------------------------------------
- // Register new extra item
- cvar_granade_damage_radius = register_cvar("granade_damage_radius","400",FCVAR_UNLOGGED)
- cvar_granade_max_damage = register_cvar("granade_max_damage","700",FCVAR_UNLOGGED)
- // Events
- register_event("CurWeapon", "Event_CurrentWeapon_m79", "be", "1=1")
- register_logevent("event_start_m79", 2, "1=Round_Start")
- // Forwards
- RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_m79")
- register_forward(FM_CmdStart, "fw_CmdStart_m79")
- register_forward(FM_PlayerPostThink, "fw_PlayerPostThink_m79")
- register_forward(FM_UpdateClientData, "fw_UpdateClientData_Post_m79", 1)
- register_clcmd("drop","dropcmd")
- // Messages
- g_msgScreenShake = get_user_msgid("ScreenShake")
- g_msgStatusText = get_user_msgid("StatusText")
- gmsgDeathMsg = get_user_msgid("DeathMsg")
- gmsgScoreInfo = get_user_msgid("ScoreInfo")
- // Sprites
- RegisterHam( Ham_Item_AddToPlayer, "weapon_p228", "fw_AddToPlayer_m79" );
- gmsgWeaponList = get_user_msgid("WeaponList")
- // M79 WEAPON ----------------------------------------------
- server_print( "[%s] Felicitari! Detii o licenta valida, iar pluginul functioneaza perfect!", PLUGIN );
- server_print( "[%s] Pentru mai multe detalii y/m: acs.jocker@yahoo.com !", PLUGIN );
- server_print( "[%s] Ip-ul Licentiat: %s, Ip-ul Serverului: %s", PLUGIN, szIp, ServerLicensedIp );
- set_task( 0.1, "SqlInit" )
- }
- else
- {
- new szPluginName[ 32 ];
- formatex( szPluginName, sizeof( szPluginName ) -1, "[IP Nelicentiat] %s", PLUGIN );
- register_plugin( szPluginName, VERSION, "hadesownage" );
- server_print( "[%s] Nu detii o licenta valabila ! Plugin-ul nu va functiona corespunzator !", PLUGIN );
- server_print( "[%s] Pentru mai multe detalii y/m: acs.jocker@yahoo.com !", PLUGIN );
- server_print( "[%s] Ip-ul Licentiat: %s, Ip-ul Serverului: %s", PLUGIN, szIp, ServerLicensedIp );
- pause( "ade" );
- }
- }
- public plugin_end( )
- nvault_close ( gFurienXP );
- stock fm_set_rendering2(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16)
- {
- static Float:color[3]; color[2] = float(b), color[0] = float(r), color[1] = float(g);
- set_pev(entity, pev_renderfx, fx);
- set_pev(entity, pev_rendercolor, color);
- set_pev(entity, pev_rendermode, render);
- set_pev(entity, pev_renderamt, float(amount));
- return true;
- }
- stock set_user_scoreattrib(id,
- attrib = 0)
- {
- message_begin(MSG_BROADCAST, g_ScoreAttrib, _, 0);
- write_byte(id);
- write_byte(attrib);
- message_end( );
- }
- stock Drop(id) {
- new wpn, wpnname[32];
- wpn = get_user_weapon(id);
- if(!(WPN_NOT_DROP & (1<<wpn)) && get_weaponname(wpn, wpnname, charsmax(wpnname))) {
- engclient_cmd(id, "drop", wpnname);
- }
- }
- stock set_weapon_anim(id, anim)
- {
- set_pev(id, pev_weaponanim, anim)
- message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, {0, 0, 0}, id)
- write_byte(anim)
- write_byte(pev(id, pev_body))
- message_end()
- }
- stock drop_weapons(id, dropwhat)
- {
- static weapons[32], num, i, weaponid
- num = 0
- get_user_weapons(id, weapons, num)
- const PRIMARY_WEAPONS_BIT_SUM2 = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_MAC10)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_MAC10)|(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)
- for (i = 0; i < num; i++)
- {
- weaponid = weapons[i]
- if (dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM2))
- {
- static wname[32]
- get_weaponname(weaponid, wname, sizeof wname - 1)
- engclient_cmd(id, "drop", wname)
- }
- }
- }
- stock get_position(id,Float:forw, Float:right, Float:up, Float:vStart[])
- {
- new Float:vOrigin[3], Float:vAngle[3], Float:vForward[3], Float:vRight[3], Float:vUp[3]
- pev(id, pev_origin, vOrigin)
- pev(id, pev_view_ofs,vUp) //for player
- xs_vec_add(vOrigin,vUp,vOrigin)
- pev(id, pev_v_angle, vAngle) // if normal entity ,use pev_angles
- angle_vector(vAngle,ANGLEVECTOR_FORWARD,vForward) //or use EngFunc_AngleVectors
- angle_vector(vAngle,ANGLEVECTOR_RIGHT,vRight)
- angle_vector(vAngle,ANGLEVECTOR_UP,vUp)
- vStart[0] = vOrigin[0] + vForward[0] * forw + vRight[0] * right + vUp[0] * up
- vStart[1] = vOrigin[1] + vForward[1] * forw + vRight[1] * right + vUp[1] * up
- vStart[2] = vOrigin[2] + vForward[2] * forw + vRight[2] * right + vUp[2] * up
- }
- stock get_speed_vector(const Float:origin1[3],const Float:origin2[3],Float:speed, Float:new_velocity[3])
- {
- new_velocity[0] = origin2[0] - origin1[0]
- new_velocity[1] = origin2[1] - origin1[1]
- new_velocity[2] = origin2[2] - origin1[2]
- new Float:num = floatsqroot(speed*speed / (new_velocity[0]*new_velocity[0] + new_velocity[1]*new_velocity[1] + new_velocity[2]*new_velocity[2]))
- new_velocity[0] *= num
- new_velocity[1] *= num
- new_velocity[2] *= num
- return 1;
- }
- stock is_player_stuck(id, Float:originF[3]) {
- engfunc(EngFunc_TraceHull, originF, originF, 0, (pev(id, pev_flags) & FL_DUCKING) ? HULL_HEAD : HULL_HUMAN, id, 0);
- if (get_tr2(0, TR_StartSolid) || get_tr2(0, TR_AllSolid) || !get_tr2(0, TR_InOpen))
- return true;
- return false;
- }
- stock tele_effect(const Float:torigin[3]) {
- new origin[3];
- origin[0] = floatround(torigin[0]);
- origin[1] = floatround(torigin[1]);
- origin[2] = floatround(torigin[2]);
- message_begin(MSG_PAS, SVC_TEMPENTITY, origin);
- write_byte(TE_BEAMCYLINDER);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]+10);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]+60);
- write_short(TeleportSprite);
- write_byte(0);
- write_byte(0);
- write_byte(3);
- write_byte(60);
- write_byte(0);
- write_byte(255);
- write_byte(255);
- write_byte(255);
- write_byte(255);
- write_byte(0);
- message_end();
- }
- stock tele_effect2(const Float:torigin[3]) {
- new origin[3];
- origin[0] = floatround(torigin[0]);
- origin[1] = floatround(torigin[1]);
- origin[2] = floatround(torigin[2]);
- message_begin(MSG_PAS, SVC_TEMPENTITY, origin);
- write_byte(TE_BEAMCYLINDER);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]+10);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]+60);
- write_short(TeleportSprite);
- write_byte(0);
- write_byte(0);
- write_byte(3);
- write_byte(60);
- write_byte(0);
- write_byte(255);
- write_byte(255);
- write_byte(255);
- write_byte(255);
- write_byte(0);
- message_end();
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_SPRITETRAIL);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]+40);
- write_coord(origin[0]);
- write_coord(origin[1]);
- write_coord(origin[2]);
- write_short(TeleportSprite2);
- write_byte(30);
- write_byte(10);
- write_byte(1);
- write_byte(50);
- write_byte(10);
- message_end();
- }
- stock UTIL_CreateBeamCylinder( origin[ 3 ], addrad, sprite, startfrate, framerate, life, width, amplitude, red, green, blue, brightness, speed )
- {
- message_begin( MSG_PVS, SVC_TEMPENTITY, origin );
- write_byte( TE_BEAMCYLINDER );
- write_coord( origin[ 0 ] );
- write_coord( origin[ 1 ] );
- write_coord( origin[ 2 ] );
- write_coord( origin[ 0 ] );
- write_coord( origin[ 1 ] );
- write_coord( origin[ 2 ] + addrad );
- write_short( sprite );
- write_byte( startfrate );
- write_byte( framerate );
- write_byte(life );
- write_byte( width );
- write_byte( amplitude );
- write_byte( red );
- write_byte( green );
- write_byte( blue );
- write_byte( brightness );
- write_byte( speed );
- message_end();
- }
- stock Create_TE_SPRITETRAIL3(start[3], end[3], iSprite, count, life, scale, velocity, random ){
- message_begin( MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte( TE_SPRITETRAIL )
- write_coord( start[0] ) // start position (X)
- write_coord( start[1] ) // start position (Y)
- write_coord( start[2] + 40 ) // start position (Z)
- write_coord( end[0] ) // end position (X)
- write_coord( end[1] ) // end position (Y)
- write_coord( end[2] ) // end position (Z)
- write_short( iSprite ) // sprite index
- write_byte( count ) // count
- write_byte( life) // life in 0.1's
- write_byte( scale) // scale in 0.1's
- write_byte( velocity ) // velocity along vector in 10's
- write_byte( random ) // randomness of velocity in 10's
- message_end()
- }
- stock fm_cs_get_current_weapon_ent(id)
- {
- return get_pdata_cbase(id, OFFSET_ACTIVE_ITEM, OFFSET_LINUX);
- }
- stock fm_cs_get_weapon_ent_owner(ent)
- {
- return get_pdata_cbase(ent, OFFSET_WEAPONOWNER, OFFSET_LINUX_WEAPONS);
- }
- stock UTIL_PlayWeaponAnimation(const Player, const Sequence)
- {
- set_pev(Player, pev_weaponanim, Sequence)
- message_begin(MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, .player = Player)
- write_byte(Sequence)
- write_byte(pev(Player, pev_body))
- message_end()
- }
- stock play_weapon_anim(player, anim)
- {
- set_pev(player, pev_weaponanim, anim)
- message_begin(MSG_ONE, SVC_WEAPONANIM, {0, 0, 0}, player)
- write_byte(anim)
- write_byte(pev(player, pev_body))
- message_end()
- }
- stock get_weapon_attackment(id, Float:output[3], Float:fDis = 40.0)
- {
- new Float:vfEnd[3], viEnd[3]
- get_user_origin(id, viEnd, 3)
- IVecFVec(viEnd, vfEnd)
- new Float:fOrigin[3], Float:fAngle[3]
- pev(id, pev_origin, fOrigin)
- pev(id, pev_view_ofs, fAngle)
- xs_vec_add(fOrigin, fAngle, fOrigin)
- new Float:fAttack[3]
- xs_vec_sub(vfEnd, fOrigin, fAttack)
- xs_vec_sub(vfEnd, fOrigin, fAttack)
- new Float:fRate
- fRate = fDis / vector_length(fAttack)
- xs_vec_mul_scalar(fAttack, fRate, fAttack)
- xs_vec_add(fOrigin, fAttack, output)
- }
- //------| Save Credits |------//
- public SaveCredits(id) {
- Vault = nvault_open("DepozitCredits");
- new data_credits[256], key_credits[64];
- new name[33];
- get_user_name(id,name,32);
- format(key_credits, 63, "%s-/", name);
- format(data_credits, 255, "%i#", PlayerCredits[id]);
- nvault_set(Vault, key_credits, data_credits);
- return PLUGIN_CONTINUE;
- }
- //------| Loading Credits |------//
- public LoadCredits(id) {
- Vault = nvault_open("DepozitCredits");
- new data_credits[256], key_credits[64];
- new name[33];
- get_user_name(id,name,32);
- format(key_credits, 63, "%s-/", name);
- format(data_credits, 255, "%i#", PlayerCredits[id]);
- nvault_get(Vault, key_credits, data_credits, 255);
- replace_all(data_credits, 255, "#", " ");
- new Credits[32];
- parse(data_credits, Credits, 31);
- PlayerCredits[id] = str_to_num(Credits);
- return PLUGIN_CONTINUE;
- }
- public SaveData ( id ) {
- new szName [ 32 ];
- get_user_name ( id, szName, charsmax ( szName ) );
- new vaultkey [ 64 ], vaultdata [ 256 ];
- format ( vaultkey, 63,"%s-Mod", szName );
- format ( vaultdata, 255,"%i#%i#",eXP [ id ],Level [ id ] );
- nvault_set ( gFurienXP, vaultkey, vaultdata );
- return 1;
- }
- public LoadData ( id ) {
- new szName [ 32 ];
- get_user_name ( id, szName, charsmax ( szName ) );
- new vaultkey [ 64 ],vaultdata [ 256 ];
- format ( vaultkey,63,"%s-Mod", szName );
- format ( vaultdata,255,"%i#%i#", eXP [ id ], Level [ id ] );
- nvault_get ( gFurienXP, vaultkey, vaultdata, 255 );
- replace_all ( vaultdata, 255, "#", " " );
- new playerxp [ 32 ], playerlevel [ 32 ];
- parse ( vaultdata, playerxp, 31, playerlevel, 31 );
- eXP [ id ] = str_to_num ( playerxp );
- Level [ id ] = str_to_num ( playerlevel );
- return 1;
- }
- public ShowHud ( id ) {
- if ( is_user_alive ( id ) && get_user_team ( id ) == 1 ) {
- if ( trainer [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Trainer", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( infinity_knife [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Agnos", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( super_knife [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: XFother", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( katana_knife [ id ] && HasPower [ id ] == 4 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Samurai | Putere: Drop Enemy Weapon", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( double_katana_knife [ id ] && HasPower [ id ] == 4 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Extra Samurai | Putere: Drop Enemy Weapon", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( ignes_knife [ id ] && HasPower [ id ] == 5 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Ignes | Putere: Freeze Enemy", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( elf_knife [ id ] && HasPower [ id ] == 5 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Elf | Putere: Freeze Enemy", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( vip_axe_knife [ id ] && HasPower [ id ] == 7 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.1 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Alcadeias | Putere: Teleport", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- }
- else if ( is_user_alive ( id ) && get_user_team ( id ) == 2 ) {
- if ( druid [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Druid", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( hunter [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Hunter", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( mage [ id ] ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Mage", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( rogue [ id ] && HasPower [ id ] == 6 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Rogue | Putere: Drag Enemy", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( shaman [ id ] && HasPower [ id ] == 6 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Shaman | Putere: Drag Enemy", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( thompson [ id ] && HasPower [ id ] == 8 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Warlock | Putere: Norecoil", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( warrior [ id ] && HasPower [ id ] == 8 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Warrior | Putere: Norecoil", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- if ( deklowaz [ id ] && HasPower [ id ] == 7 ) {
- set_hudmessage ( 255, 255, 0, -1.0, 0.80, 0, 6.0, 1.0 );
- show_hudmessage ( id, "Viata: %d | Armura: %d | Level: %s | XP: %d | Clasa: Deklowaz | Putere: Teleport", get_user_health ( id ), get_user_armor ( id ), Prefix [ Level [ id ] ], eXP [ id ] );
- }
- }
- }
- public RemoveStuff ( id ) {
- remove_dragoncannon ( id );
- g_had_qb [ id ] = 0;
- dual_mp5 [ id ] = false;
- k1ases_weapon [ id ] = false;
- salamander [ id ] = false;
- SalamanderLimit [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- elf_knife [ id ] = false;
- ignes_knife [ id ] = false;
- trainer [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- UserHaveM79 [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- flare [ id ] = true;
- druid [ id ] = false;
- strike_grenade [ id ] = false;
- strike_grenade2 [ id ] = false;
- strike_grenade3 [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- UserHaveQuad [ id ] = false;
- UserHaveDragon [ id ] = false;
- HasChose[id] = false;
- HasPower[id] = 0;
- HE_Cooldown[id] = 0;
- GodMode_Cooldown[id] = 0;
- GodMode_DurationCooldown[id] = 0;
- Drop_Cooldown[id] = 0;
- Freeze_Cooldown[id] = 0;
- Drag_Cooldown[id] = 0;
- Not_Cooldown[id] = false;
- Teleport_Cooldown[id] = 0;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHaveDualMp5 [ id ] = false;
- UserHasChoosed [ id ] = false;
- }
- public client_putinserver ( id ) {
- LoadData ( id );
- LoadCredits ( id );
- RemoveStuff ( id );
- set_task ( 3.0, "ShowHud", id, _, _, "b" );
- client_cmd ( id, "cl_forwardspeed 9999" );
- client_cmd ( id, "cl_backspeed 9999" );
- client_cmd ( id, "cl_sidespeed 9999" );
- }
- public client_disconnect ( id ) {
- SaveData ( id );
- SaveCredits ( id );
- RemoveStuff ( id );
- g_has_k1ases[id] = false
- g_delay[id] = 0
- g_ammoclaw[id] = 0
- }
- public client_connect(id) {
- g_has_k1ases[id] = false
- g_delay[id] = 0
- g_ammoclaw[id] = 0
- static sName[32];
- get_user_name(id, sName, sizeof sName - 1);
- static sChars[32];
- get_pcvar_string(SymbolsName, sChars, sizeof sChars - 1);
- for(new i = 0 ; i < strlen(sName) ; i++) {
- for(new j = 0 ; j < strlen(sChars) ; j++) {
- if(sName[i] == sChars[j]) {
- server_cmd("kick #%d ^"Numele tau contine caractere nepermise.^"", get_user_userid(id));
- break;
- }
- else {
- LoadData ( id );
- }
- }
- }
- g_hasM79[id] = false
- g_canShoot[id] = false
- g_last_shot_time[id] = 0.0
- grenade_count[id] = 0
- hasOnHandM79[id] = false
- remove_icon(id)
- }
- public plugin_cfg ( ) {
- server_cmd("sv_maxspeed 99999999.0");
- server_cmd("sv_airaccelerate 99999999.0");
- }
- public plugin_natives ( ) {
- register_native ( "set_user_credits", "set_user_credits", 1 );
- register_native ( "get_user_credits", "get_user_credits", 1 );
- register_native ( "set_user_xp", "set_user_xp", 1 );
- register_native ( "set_user_level", "set_user_level", 1 );
- register_native ( "get_user_xp", "get_user_xp", 1 );
- register_native ( "set_user_xp", "get_user_xp", 1 );
- register_native("give_weapon_k1ases", "native_give_weapon_add", 1)
- }
- public plugin_precache ( ) {
- precache_model(v_model); // salamander
- precache_model(p_model); // salamander
- precache_model(w_model); // salamander
- precache_model(fire_spr_name); // salamander
- precache_sound(fire_sound); // salamander
- precache_sound("weapons/flamegun-1.wav"); // salamander
- precache_sound("weapons/flamegun_clipin1.wav"); // salamander
- precache_sound("weapons/flamegun_clipout1.wav"); // salamander
- precache_sound("weapons/flamegun_clipout2.wav"); // salamander
- precache_sound("weapons/flamegun_draw.wav"); // salamander
- precache_model ( katana_knife_v_model );
- precache_model ( double_katana_v_knife_model );
- precache_model ( super_knife_v_model );
- precache_model ( infinity_knife_v_model );
- precache_model ( axe_knife_v_model );
- precache_model ( ignes_knife_model );
- precache_model ( elf_knife_model );
- precache_model ( thompson_v_model );
- precache_model ( uspx_v_model );
- precache_model ( hunter_v_model );
- precache_model ( mage_v_model );
- precache_model ( rogue_v_model );
- precache_model ( shaman_v_model );
- precache_model ( warrior_v_model );
- precache_model ( deklowaz_v_model );
- precache_model ( trainer_v_model );
- precache_model ( flare_v_model );
- precache_model ( strike_grenade_v_model );
- precache_model ( super_knife_shop_v_model );
- precache_model ( super_knife_shop_v_model2 );
- precache_model ( katana_knife_p_model );
- precache_model ( double_katana_p_knife_model );
- precache_model ( super_knife_p_model );
- precache_model ( infinity_knife_p_model );
- precache_model ( axe_knife_p_model );
- precache_model ( strike_grenade_p_model );
- precache_model ( super_knife_shop_p_model2 );
- precache_model ( thompson_p_model );
- precache_model ( uspx_p_model );
- precache_model ( hunter_p_model );
- precache_model ( mage_p_model );
- precache_model ( rogue_p_model );
- precache_model ( shaman_p_model );
- precache_model ( warrior_p_model );
- precache_model ( deklowaz_p_model );
- precache_model ( trainer_p_model );
- precache_model ( flare_w_model );
- precache_model ( "models/player/furienxp/furienxp.mdl" );
- precache_model ( "models/player/furienxp2/furienxp2.mdl" );
- g_trail = precache_model ( "sprites/smoke.spr" );
- g_FurienHealth = precache_model("sprites/exhealth/health_zombie.spr")
- g_AntiFurienHealth = precache_model("sprites/exhealth/health_human.spr")
- precache_sound(buy_FurienHealth)
- precache_sound(buy_AntiFurienHealth)
- // POWERS
- precache_sound(DROP_HIT_SND);
- DropSprite = precache_model("sprites/lgtning.spr");
- DropSprite2 = precache_model("sprites/dropwpnexp.spr");
- precache_sound(DRAG_HIT_SND);
- precache_sound(DRAG_MISS_SND);
- DragSprite = precache_model("sprites/zbeam4.spr");
- new i;
- for (i = 0; i < sizeof FROSTBREAK_SND; i++)
- engfunc(EngFunc_PrecacheSound, FROSTBREAK_SND[i]);
- for (i = 0; i < sizeof FROSTPLAYER_SND; i++)
- engfunc(EngFunc_PrecacheSound, FROSTPLAYER_SND[i]);
- FreezeSprite = engfunc(EngFunc_PrecacheModel, FreezeSprite2);
- FreezeSprite3 = precache_model("sprites/laserbeam.spr");
- TeleportSprite = precache_model( "sprites/shockwave.spr");
- TeleportSprite2 = precache_model( "sprites/blueflare2.spr");
- TeleportSprite3 = precache_model( "sprites/teleport_start.spr");
- for (new i = 0; i < sizeof Model; i++)
- precache_model(Model[i])
- for (new i = 0; i < sizeof Model_Yellow; i++)
- precache_model(Model_Yellow[i])
- precache_model ( dual_mp5_v_model );
- precache_model ( dual_mp5_p_model );
- precache_model(k1ases_V_MODEL)
- precache_model(k1ases_P_MODEL)
- precache_model(k1ases_W_MODEL)
- precache_sound("weapons/k1ar-1.wav")
- precache_sound("weapons/k1a_clipin.wav")
- precache_sound("weapons/k1a_clipout.wav")
- precache_sound("weapons/k1a_draw.wav")
- precache_sound(explode_sound)
- m_iBlood[0] = precache_model("sprites/blood.spr")
- m_iBlood[1] = precache_model("sprites/bloodspray.spr")
- sprites_exp_index = precache_model(sprites_exp)
- precache_model("sprites/640hud5.spr")
- register_forward(FM_PrecacheEvent, "fwPrecacheEvent_Post", 1)
- g_damage = precache_model("sprites/furien/icon_supplybox2.spr")
- g_damages = precache_model("sprites/furien/zp_zbrespawn.spr")
- g_blood = precache_model("sprites/blood.spr")
- g_bloodspray = precache_model("sprites/bloodspray.spr")
- precache_model(qb_v_model)
- precache_model(qb_p_model)
- precache_model(qb_w_model)
- for(new i = 0; i < sizeof(qb_sound); i++)
- precache_sound(qb_sound[i])
- new hades
- for(hades = 0; hades < sizeof(WeaponModel); hades++)
- engfunc(EngFunc_PrecacheModel, WeaponModel[hades])
- new ownage
- for(ownage = 0; ownage < sizeof(WeaponSound); ownage++)
- engfunc(EngFunc_PrecacheSound, WeaponSound[ownage])
- engfunc(EngFunc_PrecacheModel, WeaponResource[0])
- engfunc(EngFunc_PrecacheGeneric, WeaponResource[1])
- engfunc(EngFunc_PrecacheModel, WeaponResource[2])
- engfunc(EngFunc_PrecacheModel, WeaponResource[3])
- g_smokepuff_id = engfunc(EngFunc_PrecacheModel, WeaponResource[4])
- // Models
- precache_model(m79_P_MODEL)
- precache_model(m79_V_MODEL)
- precache_model(m79_W_MODEL)
- precache_model(m79_GRENADE_MODEL)
- // Sounds
- precache_sound(m79_GRENADE_SHOOT)
- precache_sound(m79_GRENADE_CLIPIN)
- precache_sound(m79_GRENADE_CLIPOUT)
- precache_sound(m79_GRENADE_CLIPON)
- precache_sound(m79_GRENADE_DRAW)
- precache_sound("weapons/357_cock1.wav")
- // Sprites
- sTrail = precache_model(m79_GRENADE_TRAIL)
- sExplo = precache_model(m79_GRENADE_EXPLOSION)
- sSmoke = precache_model(m79_GRENADE_SMOKE)
- // Bodyparts and blood
- blood_drop = precache_model("sprites/blood.spr")
- blood_spray = precache_model("sprites/bloodspray.spr")
- mdl_gib_flesh = precache_model("models/Fleshgibs.mdl")
- mdl_gib_head = precache_model("models/GIB_Skull.mdl")
- mdl_gib_lung = precache_model("models/GIB_Lung.mdl")
- mdl_gib_spine = precache_model("models/GIB_B_Bone.mdl")
- // Sprites
- precache_generic( "sprites/weapon_m79_sisa.txt" );
- precache_generic( "sprites/640hud42.spr" );
- precache_generic( "sprites/640hud42.spr" );
- precache_generic( "sprites/640hud7x.spr" );
- register_clcmd("weapon_m79_sisa", "Hook_Select")
- }
- public GameDesc( ) {
- static gamename[32];
- get_pcvar_string( amx_gamename, gamename, 31 );
- forward_return( FMV_STRING, gamename );
- return FMRES_SUPERCEDE;
- }
- public cmdHelp ( id ) {
- show_motd ( id, "/addons/amxmodx/configs/ajutor.html" );
- }
- public cmdShowVipDetails ( id ) {
- show_motd ( id, "/addons/amxmodx/configs/vip.html" );
- }
- public ShowMessages ( ) {
- switch (random_num(1,6))
- {
- case 1:
- {
- ColorChat ( 0, GREEN, "%s Pentru detalii despre joc, scrieti in chat^4 /detalii^3 .^4", szPrefix );
- }
- case 2:
- {
- ColorChat ( 0, GREEN, "%s Daca nu va functioneaza puterea, scrieti in consola^4 bind v power^3 .^4", szPrefix );
- }
- case 3:
- {
- ColorChat ( 0, GREEN, "%s Pentru detalii despre VIP, scrieti in chat^4 /vip^3 .^4", szPrefix );
- }
- case 4:
- {
- ColorChat ( 0, GREEN, "%s Pentru a vedea vipii online, scrieti in chat^4 /vips^3 .^4", szPrefix );
- }
- case 5:
- {
- ColorChat ( 0, GREEN, "%s Va asteptam si pe forumul nostru,^4 www.alphacs.ro^3 .^4", szPrefix );
- }
- case 6:
- {
- ColorChat ( 0, GREEN, "%s Daca descoperiti o eroare sau un bug, va rugam sa ne contactati .^4", szPrefix );
- }
- }
- }
- public set_user_credits ( id, credits ) {
- PlayerCredits [ id ] = credits;
- }
- public get_user_credits ( id ) {
- return PlayerCredits [ id ];
- }
- public set_user_level ( id, user_level ) {
- Level [ id ] = user_level;
- }
- public get_user_level ( id ) {
- return Level [ id ];
- }
- public set_user_xp ( id, xp ) {
- eXP [ id ] = xp;
- cmdRefreshXP2 ( id );
- }
- public get_user_xp ( id ) {
- return eXP [ id ];
- }
- public round_end ( id ) {
- remove_dragoncannon ( id );
- dual_mp5 [ id ] = false;
- k1ases_weapon [ id ] = false;
- salamander [ id ] = false;
- SalamanderLimit [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- vip_axe_knife [ id ] = false;
- elf_knife [ id ] = false;
- ignes_knife [ id ] = false;
- trainer [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- druid [ id ] = false;
- strike_grenade [ id ] = false;
- strike_grenade2 [ id ] = false;
- strike_grenade3 [ id ] = false;
- HasPower[id] = 0;
- Drop_Cooldown[id] = 0;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- new g_iMaxPlayers = get_maxplayers ( );
- static Players;
- for ( Players = 1 ; Players <= g_iMaxPlayers ; Players++ )
- {
- if (!is_user_alive ( Players ) )
- continue;
- strip_user_weapons ( Players );
- set_pdata_int ( Players, 116, 0 );
- give_item ( Players, "weapon_knife" );
- }
- }
- public GiveBonus ( id ) {
- new a [ 6 ];
- get_time ( "%H:%M", a, 5 );
- if ( equal ( a, "10:00" ) || equal ( a, "12:00" ) || equal ( a, "16:00" ) || equal ( a, "20:00" ) || equal ( a, "23:00" ) ) {
- ColorChat ( 0, GREEN, "%s Este ora^4 bonusului^3, toti jucatorii au primit^4 5^5credite .", szPrefix );
- set_user_credits ( id, get_user_credits ( id ) + 5 );
- }
- }
- public round_start ( id ) {
- new iPlayers [ 32 ];
- new iNum;
- get_players ( iPlayers, iNum );
- for ( new i = 0; i < iNum; i++ )
- {
- g_iCount [ iPlayers [ i ] ] = 0;
- g_Menu [ iPlayers [ i ] ] = 0;
- g_had_qb [ iPlayers [ i ]] = 0;
- g_CanUseHe[iPlayers[i]] = false;
- }
- dual_mp5 [ id ] = false;
- k1ases_weapon [ id ] = false;
- salamander [ id ] = false;
- SalamanderLimit [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- elf_knife [ id ] = false;
- ignes_knife [ id ] = false;
- vip_axe_knife [ id ] = false;
- trainer [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- druid [ id ] = false;
- strike_grenade [ id ] = false;
- strike_grenade2 [ id ] = false;
- strike_grenade3 [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- HasPower[id] = 0;
- Drop_Cooldown[id] = 0;
- if ( get_user_team ( id ) == 2 ) {
- give_item ( id, "weapon_smokegrenade" );
- cs_set_user_bpammo ( id, CSW_SMOKEGRENADE, 2 );
- flare [ id ] = true;
- }
- new ent = FM_NULLENT
- static string_class[] = "classname"
- while ((ent = engfunc(EngFunc_FindEntityByString, ent, string_class, ClassName)))
- set_pev(ent, pev_flags, FL_KILLME)
- for(new id = 1; id < get_maxplayers();id++) {
- HasSpeed[id] = false
- HasTeleport[id] = false
- }
- }
- public ham_PrimaryAttack_He ( iEnt ) {
- new id = pev( iEnt, pev_owner );
- if( g_CanUseHe [ id ] )
- {
- set_hudmessage( 0, 100, 200, -1.0, 0.35, 1, 0.01, 3.0, 1.0, 1.0 );
- show_hudmessage( id, "Bomba a fost plantata, nu mai poti folosi HE-urile" );
- return HAM_SUPERCEDE;
- }
- return HAM_IGNORED;
- }
- public EventHLTV ( ) {
- set_task ( 0.1, "GiveBonus" );
- }
- public native_give_weapon_add(id)
- {
- give_k1ases(id)
- }
- public fwPrecacheEvent_Post(type, const name[])
- {
- if (equal("events/mp5n.sc", name))
- {
- g_orig_event_k1ases = get_orig_retval()
- return FMRES_HANDLED
- }
- return FMRES_IGNORED
- }
- public fw_TraceAttack(iEnt, iAttacker, Float:flDamage, Float:fDir[3], ptr, iDamageType)
- {
- if(!is_user_alive(iAttacker))
- return;
- new g_currentweapon = get_user_weapon(iAttacker)
- if(g_currentweapon != CSW_MP5NAVY) return
- if((g_currentweapon == CSW_MP5NAVY && !g_has_k1ases[iAttacker])) return
- static Float:flEnd[3]
- get_tr2(ptr, TR_vecEndPos, flEnd)
- if(iEnt)
- {
- // Put decal on an entity
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_DECAL)
- write_coord_f(flEnd[0])
- write_coord_f(flEnd[1])
- write_coord_f(flEnd[2])
- write_byte(GUNSHOT_DECALS[random_num ( 0, sizeof GUNSHOT_DECALS -1 ) ] )
- write_short(iEnt)
- message_end()
- }
- else
- {
- // Put decal on "world" (a wall)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_WORLDDECAL)
- write_coord_f(flEnd[0])
- write_coord_f(flEnd[1])
- write_coord_f(flEnd[2])
- write_byte(GUNSHOT_DECALS[random_num ( 0, sizeof GUNSHOT_DECALS -1 ) ] )
- message_end()
- }
- // Show sparcles
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_GUNSHOTDECAL)
- write_coord_f(flEnd[0])
- write_coord_f(flEnd[1])
- write_coord_f(flEnd[2])
- write_short(iAttacker)
- write_byte(GUNSHOT_DECALS[random_num ( 0, sizeof GUNSHOT_DECALS -1 ) ] )
- message_end()
- }
- public fwClientUserInfoChanged(id, buffer)
- {
- if (!is_user_connected(id))
- return FMRES_IGNORED;
- static name[32], val[32]
- get_user_name(id, name, sizeof name - 1)
- engfunc(EngFunc_InfoKeyValue, buffer, g_name, val, sizeof val - 1)
- if (equal(val, name))
- return FMRES_IGNORED;
- engfunc(EngFunc_SetClientKeyValue, id, buffer, g_name, name)
- console_print ( id, "%s", g_reason );
- return FMRES_SUPERCEDE;
- }
- public SalamanderGiveItem(id, itemid)
- {
- if(itemid == g_salamander)
- {
- g_had_salamander[id] = true
- is_reloading[id] = false
- is_firing[id] = false
- can_fire[id] = true
- fm_give_item(id, "weapon_m249")
- g_ammo[id] = 30
- cs_set_user_bpammo ( id, CSW_M249, 20 );
- }
- }
- public get_dragoncannon(id)
- {
- if(!is_user_alive(id))
- return
- drop_weapons(id, 1)
- g_had_cannon[id] = 1
- g_cannon_ammo[id] = get_pcvar_num(g_cvar_defaultammo)
- fm_give_item(id, weapon_cannon)
- }
- public remove_dragoncannon(id)
- {
- if(!is_user_connected(id))
- return
- g_had_cannon[id] = 0
- g_got_firsttime[id] = 0
- g_cannon_ammo[id] = 0
- remove_task(id+TASK_RESET_AMMO)
- }
- public hook_weapon(id) engclient_cmd(id, weapon_cannon)
- public event_CurWeapon_dragon(id)
- {
- if(!is_user_alive(id))
- return
- if(get_user_weapon(id) == CSW_CANNON && g_had_cannon[id])
- {
- if(!g_got_firsttime[id])
- {
- static cannon_weapon
- cannon_weapon = fm_find_ent_by_owner(-1, weapon_cannon, id)
- if(pev_valid(cannon_weapon)) cs_set_weapon_ammo(cannon_weapon, 25)
- g_got_firsttime[id] = 1
- }
- set_pev(id, pev_viewmodel2, WeaponModel[MODEL_V])
- set_pev(id, pev_weaponmodel2, WeaponModel[MODEL_P])
- if(g_old_weapon[id] != CSW_CANNON)
- {
- g_temp_reloadtime = get_pcvar_float(g_cvar_reloadtime)
- set_weapon_anim(id, CANNON_ANIM_DRAW)
- }
- update_ammo(id)
- }
- g_old_weapon[id] = get_user_weapon(id)
- }
- public dragoncannon_shoothandle(id)
- {
- if(pev(id, pev_weaponanim) != CANNON_ANIM_IDLE)
- return
- if(get_gametime() - g_temp_reloadtime > g_lastshot[id])
- {
- dragoncannon_shootnow(id)
- g_lastshot[id] = get_gametime()
- }
- }
- public dragoncannon_shootnow(id)
- {
- if(g_cannon_ammo[id] == 1)
- {
- set_task(0.5, "set_weapon_outofammo", id+TASK_RESET_AMMO)
- }
- if(g_cannon_ammo[id] <= 0)
- {
- return
- }
- create_fake_attack(id)
- g_cannon_ammo[id]--
- set_weapon_anim(id, random_num(CANNON_ANIM_SHOOT1, CANNON_ANIM_SHOOT2))
- emit_sound(id, CHAN_WEAPON, WeaponSound[0], 1.0, ATTN_NORM, 0, PITCH_NORM)
- set_player_nextattack(id, CSW_CANNON, g_temp_reloadtime)
- update_ammo(id)
- make_fire_effect(id)
- make_fire_smoke(id)
- check_radius_damage(id)
- }
- public create_fake_attack(id)
- {
- static cannon_weapon
- cannon_weapon = fm_find_ent_by_owner(-1, "weapon_knife", id)
- if(pev_valid(cannon_weapon)) ExecuteHam(Ham_Weapon_PrimaryAttack, cannon_weapon)
- }
- public set_weapon_outofammo(id)
- {
- id -= TASK_RESET_AMMO
- if(!is_user_alive(id))
- return
- if(get_user_weapon(id) != CSW_CANNON || !g_had_cannon[id])
- return
- set_weapon_anim(id, CANNON_ANIM_IDLE)
- }
- public make_fire_effect(id)
- {
- const MAX_FIRE = 10
- static Float:Origin[MAX_FIRE][3]
- // Stage 1
- get_position(id, 30.0, 50.0, WEAPON_ATTACH_U, Origin[0])
- get_position(id, 30.0, 40.0, WEAPON_ATTACH_U, Origin[1])
- get_position(id, 30.0, -40.0, WEAPON_ATTACH_U, Origin[2])
- get_position(id, 30.0, -50.0, WEAPON_ATTACH_U, Origin[2])
- // Stage 2
- get_position(id, 50.0, 30.0, WEAPON_ATTACH_U, Origin[3])
- get_position(id, 50.0, 0.0, WEAPON_ATTACH_U, Origin[4])
- get_position(id, 50.0, -30.0, WEAPON_ATTACH_U, Origin[5])
- // Stage 3
- get_position(id, 70.0, 20.0, WEAPON_ATTACH_U, Origin[3])
- get_position(id, 70.0, -20.0, WEAPON_ATTACH_U, Origin[5])
- // Stage 4
- get_position(id, 90.0, 0.0, WEAPON_ATTACH_U, Origin[4])
- for(new i = 0; i < MAX_FIRE; i++)
- create_fire(id, Origin[i])
- }
- public create_fire(id, Float:Origin[3])
- {
- new iEnt = create_entity("env_sprite")
- static Float:vfAngle[3], Float:MyOrigin[3], Float:TargetOrigin[3], Float:Velocity[3]
- pev(id, pev_angles, vfAngle)
- pev(id, pev_origin, MyOrigin)
- vfAngle[2] = float(random(18) * 20)
- // set info for ent
- set_pev(iEnt, pev_movetype, MOVETYPE_PUSHSTEP)
- set_pev(iEnt, pev_rendermode, kRenderTransAdd)
- set_pev(iEnt, pev_renderamt, 250.0)
- set_pev(iEnt, pev_fuser1, get_gametime() + 2.5) // time remove
- set_pev(iEnt, pev_scale, 2.0)
- set_pev(iEnt, pev_nextthink, halflife_time() + 0.05)
- entity_set_string(iEnt, EV_SZ_classname, CANNONFIRE_CLASSNAME)
- engfunc(EngFunc_SetModel, iEnt, WeaponResource[0])
- set_pev(iEnt, pev_mins, Float:{-5.0, -5.0, -5.0})
- set_pev(iEnt, pev_maxs, Float:{5.0, 5.0, 5.0})
- set_pev(iEnt, pev_origin, Origin)
- set_pev(iEnt, pev_gravity, 0.01)
- set_pev(iEnt, pev_angles, vfAngle)
- set_pev(iEnt, pev_solid, 1)
- set_pev(iEnt, pev_owner, id)
- set_pev(iEnt, pev_frame, 0.0)
- // Set Velocity
- get_position(id, 100.0, 0.0, -5.0, TargetOrigin)
- get_speed_vector(MyOrigin, TargetOrigin, get_pcvar_float(g_cvar_firespeed), Velocity)
- set_pev(iEnt, pev_velocity, Velocity)
- }
- public fw_Cannon_Think(iEnt)
- {
- if(!pev_valid(iEnt))
- return
- new Float:fFrame, Float:fNextThink
- pev(iEnt, pev_frame, fFrame)
- // effect exp
- new iMoveType = pev(iEnt, pev_movetype)
- if (iMoveType == MOVETYPE_NONE)
- {
- fNextThink = 0.0015
- fFrame += 0.5
- if (fFrame > 21.0)
- {
- engfunc(EngFunc_RemoveEntity, iEnt)
- return
- }
- }
- // effect normal
- else
- {
- fNextThink = 0.045
- fFrame += 0.5
- fFrame = floatmin(21.0, fFrame)
- }
- set_pev(iEnt, pev_frame, fFrame)
- set_pev(iEnt, pev_nextthink, halflife_time() + fNextThink)
- // time remove
- new Float:fTimeRemove
- pev(iEnt, pev_fuser1, fTimeRemove)
- if (get_gametime() >= fTimeRemove)
- {
- engfunc(EngFunc_RemoveEntity, iEnt)
- return;
- }
- }
- public fw_Cannon_Touch(ent, id)
- {
- if(!pev_valid(ent))
- return
- set_pev(ent, pev_movetype, MOVETYPE_NONE)
- set_pev(ent, pev_solid, SOLID_NOT)
- }
- public make_fire_smoke(id)
- {
- static Float:Origin[3]
- get_position(id, WEAPON_ATTACH_F, WEAPON_ATTACH_R, WEAPON_ATTACH_U, Origin)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_EXPLOSION)
- engfunc(EngFunc_WriteCoord, Origin[0])
- engfunc(EngFunc_WriteCoord, Origin[1])
- engfunc(EngFunc_WriteCoord, Origin[2])
- write_short(g_smokepuff_id)
- write_byte(10)
- write_byte(30)
- write_byte(14)
- message_end()
- }
- public update_ammo(id)
- {
- if(!is_user_alive(id))
- return
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("CurWeapon"), _, id)
- write_byte(1)
- write_byte(CSW_CANNON)
- write_byte(-1)
- message_end()
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("AmmoX"), _, id)
- write_byte(6)
- write_byte(g_cannon_ammo[id])
- message_end()
- }
- public check_radius_damage(id)
- {
- static Float:Origin[3]
- for(new i = 0; i < get_maxplayers(); i++)
- {
- if(!is_user_alive(i))
- continue
- if(cs_get_user_team(id) == cs_get_user_team(i))
- continue
- if(id == i)
- continue
- pev(i, pev_origin, Origin)
- if(!is_in_viewcone(id, Origin, 1))
- continue
- if(entity_range(id, i) >= get_pcvar_float(g_cvar_radiusdamage))
- continue
- ExecuteHamB(Ham_TakeDamage, i, 0, id, get_pcvar_float(g_cvar_damage), DMG_BURN)
- }
- }
- public fw_UpdateClientData_Post_dc(id, sendweapons, cd_handle)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return FMRES_IGNORED
- if(get_user_weapon(id) != CSW_CANNON || !g_had_cannon[id])
- return FMRES_IGNORED
- set_cd(cd_handle, CD_flNextAttack, get_gametime() + 0.001)
- return FMRES_HANDLED
- }
- public fw_CmdStart_dc(id, uc_handle, seed)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return FMRES_IGNORED
- if(get_user_weapon(id) != CSW_CANNON || !g_had_cannon[id])
- return FMRES_IGNORED
- static CurButton
- CurButton = get_uc(uc_handle, UC_Buttons)
- if(CurButton & IN_ATTACK)
- {
- CurButton &= ~IN_ATTACK
- set_uc(uc_handle, UC_Buttons, CurButton)
- dragoncannon_shoothandle(id)
- }
- return FMRES_HANDLED
- }
- public fw_SetModel_dc(entity, model[])
- {
- if(!pev_valid(entity))
- return FMRES_IGNORED
- static szClassName[33]
- pev(entity, pev_classname, szClassName, charsmax(szClassName))
- if(!equal(szClassName, "weaponbox"))
- return FMRES_IGNORED
- static id
- id = pev(entity, pev_owner)
- if(equal(model, DEFAULT_W_MODEL))
- {
- static weapon
- weapon = fm_find_ent_by_owner(-1, weapon_cannon, entity)
- if(!pev_valid(weapon))
- return FMRES_IGNORED
- if(g_had_cannon[id])
- {
- set_pev(weapon, pev_impulse, WEAPON_SECRET_CODE)
- set_pev(weapon, pev_ammo, g_cannon_ammo[id])
- engfunc(EngFunc_SetModel, entity, WeaponModel[MODEL_W])
- remove_dragoncannon(id)
- return FMRES_SUPERCEDE
- }
- }
- return FMRES_IGNORED
- }
- public fw_Spawn_Post(id)
- {
- remove_dragoncannon(id)
- }
- public fw_AddToPlayer_Post(ent, id)
- {
- if(!pev_valid(ent))
- return HAM_IGNORED
- if(pev(ent, pev_impulse) == WEAPON_SECRET_CODE)
- {
- remove_dragoncannon(id)
- g_had_cannon[id] = 1
- g_got_firsttime[id] = 0
- g_cannon_ammo[id] = pev(ent, pev_ammo)
- }
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("WeaponList"), _, id)
- write_string(g_had_cannon[id] == 1 ? "weapon_cannon" : "weapon_ump45")
- write_byte(6)
- write_byte(20)
- write_byte(-1)
- write_byte(-1)
- write_byte(0)
- write_byte(15)
- write_byte(CSW_CANNON)
- write_byte(0)
- message_end()
- return HAM_HANDLED
- }
- public fw_item_postframe(ent)
- {
- if(!is_valid_ent(ent))
- return HAM_IGNORED
- static id
- id = pev(ent, pev_owner)
- if(!is_user_alive(id) || !is_user_connected(id))
- return HAM_IGNORED
- if(get_user_weapon(id) != CSW_SALAMANDER || !g_had_salamander[id])
- return HAM_IGNORED
- if(!is_reloading[id])
- {
- static iAnim
- iAnim = pev(id, pev_weaponanim)
- if(iAnim == RELOAD_ANIM)
- play_weapon_anim(id, IDLE_ANIM)
- }
- static salamander
- salamander = fm_find_ent_by_class(-1, "weapon_m249")
- set_pdata_int(salamander, 54, 0, 4)
- return HAM_HANDLED
- }
- public fw_item_addtoplayer(ent, id)
- {
- if(!is_valid_ent(ent))
- return HAM_IGNORED
- if(entity_get_int(ent, EV_INT_impulse) == 701)
- {
- g_had_salamander[id] = true
- g_ammo[id] = pev(ent, pev_iuser3)
- entity_set_int(id, EV_INT_impulse, 0)
- play_weapon_anim(id, DRAW_ANIM)
- set_task(1.0, "make_wpn_canfire", id)
- return HAM_HANDLED
- }
- return HAM_HANDLED
- }
- public Round_Restart ( ) {
- g_FuriensWin = 0;
- g_AntiFuriensWin = 0;
- }
- public UpdateHudScore ( ) {
- set_dhudmessage ( 0, 100, 200, -1.0, 0.04, 0, 6.0, 10.1 );
- show_dhudmessage ( 0, "[ FR ] - vs - [ AF ]" );
- set_hudmessage ( 213, 0, 0, -1.0, 0.07, 0, 6.0, 10.1 );
- show_hudmessage ( 0, "%d - %d", g_FuriensWin, g_AntiFuriensWin );
- }
- public check_lastinv(id)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return PLUGIN_HANDLED
- if(get_user_weapon(id) == CSW_SALAMANDER && g_had_salamander[id])
- {
- set_task(0.5, "start_check_draw", id)
- }
- return PLUGIN_CONTINUE
- }
- public start_check_draw(id)
- {
- if(can_fire[id])
- can_fire[id] = false
- }
- public event_curweapon(id)
- {
- if(is_user_alive(id) && get_user_weapon(id) == CSW_SALAMANDER && g_had_salamander[id] )
- {
- set_pev(id, pev_viewmodel2, v_model)
- set_pev(id, pev_weaponmodel2, p_model)
- }
- }
- public fw_weapon_deploy(ent)
- {
- static id
- id = pev(ent, pev_owner)
- if(!is_user_alive(id) || !is_user_connected(id) )
- return HAM_IGNORED
- if(!g_had_salamander[id])
- return HAM_IGNORED
- can_fire[id] = false
- play_weapon_anim(id, DRAW_ANIM)
- set_task(1.0, "make_wpn_canfire", id)
- return HAM_HANDLED
- }
- public make_wpn_canfire(id)
- {
- can_fire[id] = true
- }
- public fw_weapon_reload(ent)
- {
- static id
- id = pev(ent, pev_owner)
- if(!is_user_alive(id) || !is_user_connected(id) )
- return HAM_IGNORED
- if(get_user_weapon(id) != CSW_SALAMANDER && !g_had_salamander[id])
- return HAM_IGNORED
- return HAM_SUPERCEDE
- }
- public client_PostThink(id)
- {
- if(is_user_alive(id) && is_user_connected(id))
- {
- if(g_had_salamander[id] && get_user_weapon(id) != CSW_SALAMANDER)
- {
- if(can_fire[id])
- can_fire[id] = false
- if(is_reloading[id])
- {
- is_reloading[id] = false
- if(task_exists(id+TASK_RELOAD)) remove_task(id+TASK_RELOAD)
- }
- } else if(g_had_salamander[id] && get_user_weapon(id) == CSW_SALAMANDER) {
- static salamander
- salamander = fm_get_user_weapon_entity(id, CSW_M249)
- cs_set_weapon_ammo(salamander, g_ammo[id])
- }
- }
- }
- public fw_SetModel(entity, model[])
- {
- if(!is_valid_ent(entity))
- return FMRES_IGNORED;
- static szClassName[33]
- entity_get_string(entity, EV_SZ_classname, szClassName, charsmax(szClassName))
- if(!equal(szClassName, "weaponbox"))
- return FMRES_IGNORED;
- static iOwner
- iOwner = entity_get_edict(entity, EV_ENT_owner)
- if(equal(model, "models/w_m249.mdl"))
- {
- static iStoredAugID
- iStoredAugID = find_ent_by_owner(-1, "weapon_m249", entity)
- if(!is_valid_ent(iStoredAugID))
- return FMRES_IGNORED;
- if(g_had_salamander[iOwner])
- {
- entity_set_int(iStoredAugID, EV_INT_impulse, 701)
- g_had_salamander[iOwner] = false
- set_pev(iStoredAugID, pev_iuser3, g_ammo[iOwner])
- entity_set_model(entity, w_model)
- return FMRES_SUPERCEDE;
- }
- }
- return FMRES_IGNORED;
- }
- public fw_UpdateClientData_Post(id, sendweapons, cd_handle)
- {
- if(!is_user_alive(id) || !is_user_connected(id) )
- return FMRES_IGNORED
- if(get_user_weapon(id) != CSW_SALAMANDER || !g_had_salamander[id])
- return FMRES_IGNORED
- set_cd(cd_handle, CD_flNextAttack, halflife_time() + 0.001)
- return FMRES_HANDLED
- }
- public fw_cmdstart(id, uc_handle, seed)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return FMRES_IGNORED
- if(get_user_weapon(id) != CSW_SALAMANDER || !g_had_salamander[id])
- return FMRES_IGNORED
- static Button
- Button = get_uc(uc_handle, UC_Buttons)
- if(Button & IN_ATTACK)
- {
- if((get_gametime() - get_pcvar_float(cvar_fire_delay) > g_last_fire[id]))
- {
- if(can_fire[id] && !is_reloading[id])
- {
- if(g_ammo[id] > 0)
- {
- if(pev(id, pev_weaponanim) != SHOOT_ANIM)
- play_weapon_anim(id, SHOOT_ANIM)
- if(task_exists(id+TASK_FIRE)) remove_task(id+TASK_FIRE)
- is_firing[id] = true
- throw_fire(id)
- emit_sound(id, CHAN_WEAPON, "weapons/flamegun-2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
- g_ammo[id]--
- }
- }
- g_last_fire[id] = get_gametime()
- }
- } else {
- if(is_firing[id])
- {
- if(!task_exists(id+TASK_FIRE))
- {
- set_task(0.1, "stop_fire", id+TASK_FIRE)
- emit_sound(id, CHAN_WEAPON, "weapons/flamegun-2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
- }
- }
- }
- if(Button & IN_RELOAD)
- {
- if(!is_reloading[id] && !is_firing[id])
- {
- static curammo, require_ammo, bpammo
- curammo = g_ammo[id]
- bpammo = cs_get_user_bpammo(id, CSW_SALAMANDER)
- require_ammo = get_pcvar_num(cvar_max_clip) - curammo
- if(bpammo > require_ammo)
- {
- g_reload_ammo[id] = require_ammo
- } else {
- g_reload_ammo[id] = bpammo
- }
- if(g_ammo[id] < get_pcvar_num(cvar_max_clip) && bpammo > 0)
- {
- is_reloading[id] = true
- play_weapon_anim(id, RELOAD_ANIM)
- set_task(5.0, "finish_reload", id+TASK_RELOAD)
- }
- }
- }
- Button &= ~IN_ATTACK
- set_uc(uc_handle, UC_Buttons, Button)
- Button &= ~IN_RELOAD
- set_uc(uc_handle, UC_Buttons, Button)
- return FMRES_HANDLED
- }
- public ham_player_kill(victim, attacker, corpse, args[])
- {
- if ( get_user_team ( victim ) == 1 ) {
- new vVictimOrigin[3], vAttackerorigin[3];
- get_user_origin( victim, vVictimOrigin );
- get_user_origin( attacker, vAttackerorigin );
- switch (random_num(0, 2))
- {
- case 0:
- {
- message_begin(MSG_ONE,SVC_TEMPENTITY,{0,0,0},attacker)
- write_byte(TE_SPRITETRAIL)
- write_coord(vAttackerorigin[0])
- write_coord(vAttackerorigin[1])
- write_coord(vAttackerorigin[2])
- write_coord(vVictimOrigin[0])
- write_coord(vVictimOrigin[1])
- write_coord(vVictimOrigin[2])
- write_short(g_damage)
- write_byte(5)
- write_byte(15)
- write_byte(3)
- write_byte(2)
- write_byte(6)
- message_end()
- }
- case 1:
- {
- message_begin(MSG_ONE,SVC_TEMPENTITY,{0,0,0},attacker)
- write_byte(TE_SPRITETRAIL)
- write_coord(vAttackerorigin[0])
- write_coord(vAttackerorigin[1])
- write_coord(vAttackerorigin[2])
- write_coord(vVictimOrigin[0])
- write_coord(vVictimOrigin[1])
- write_coord(vVictimOrigin[2])
- write_short(g_damages)
- write_byte(5)
- write_byte(15)
- write_byte(3)
- write_byte(2)
- write_byte(6)
- message_end()
- }
- }
- }
- }
- public fw_CmdStart(id, uc_handle, seed)
- {
- if(id > 32)
- return PLUGIN_HANDLED
- if(!is_user_alive(id) )
- return PLUGIN_HANDLED
- if((get_uc(uc_handle, UC_Buttons) & IN_ATTACK2) && !(pev(id, pev_oldbuttons) & IN_ATTACK2))
- {
- new szClip, szAmmo
- new szWeapID = get_user_weapon(id, szClip, szAmmo)
- if(szWeapID == CSW_MP5NAVY && g_has_k1ases[id])
- {
- weapon_ability(id)
- }
- }
- return PLUGIN_HANDLED
- }
- public weapon_ability(id)
- {
- if(!is_user_alive(id) || g_ammoclaw[id] <= 0 || g_delay[id])
- return;
- set_pdata_float(id, m_flNextAttack, 1.0, PLAYER_LINUX_XTRA_OFF)
- UTIL_PlayWeaponAnimation(id, 6)
- new aimOrigin[3]
- get_user_origin(id, aimOrigin, 3)
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
- write_byte(TE_EXPLOSION); // TE_EXPLOSION
- write_coord(aimOrigin[0]); // origin x
- write_coord(aimOrigin[1]); // origin y
- write_coord(aimOrigin[2]); // origin z
- write_short(sprites_exp_index); // sprites
- write_byte(40); // scale in 0.1's
- write_byte(30); // framerate
- write_byte(14); // flags
- message_end(); // message end
- new Float:aimOrigin2[3]
- static iVictim
- iVictim = -1
- aimOrigin2[0] = float(aimOrigin[0])
- aimOrigin2[1] = float(aimOrigin[1])
- aimOrigin2[2] = float(aimOrigin[2])
- while((iVictim = find_ent_in_sphere(iVictim, aimOrigin2, get_pcvar_float(cvar_rad))) != 0)
- {
- // Non-player entity
- if(is_user_connected(iVictim))
- {
- if(is_user_alive(iVictim)) radius_damage1(id,iVictim)
- }
- }
- g_ammoclaw[id] -= 1
- g_delay[id] = 1
- set_task(float(get_pcvar_num(cvar_k1ases_delay)),"can_use",id)
- client_print(id,print_center,"[Claw Ammo: %d]",g_ammoclaw[id])
- emit_sound(id, CHAN_WEAPON,explode_sound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- }
- public radius_damage1(iAttacker, iVictim)
- {
- ExecuteHamB(Ham_TakeDamage, iVictim , iAttacker , iAttacker, get_pcvar_float(cvar_k1ases_claw), DMG_BULLET);
- }
- public can_use(id)
- {
- g_delay[id] = 0
- }
- public fw_SetModel_k1asus(entity, model[])
- {
- if(!is_valid_ent(entity))
- return FMRES_IGNORED;
- static szClassName[33]
- entity_get_string(entity, EV_SZ_classname, szClassName, charsmax(szClassName))
- if(!equal(szClassName, "weaponbox"))
- return FMRES_IGNORED;
- static iOwner
- iOwner = entity_get_edict(entity, EV_ENT_owner)
- if(equal(model, "models/w_mp5.mdl"))
- {
- static iStoredSVDID
- iStoredSVDID = find_ent_by_owner(ENG_NULLENT, "weapon_mp5navy", entity)
- if(!is_valid_ent(iStoredSVDID))
- return FMRES_IGNORED;
- if(g_has_k1ases[iOwner])
- {
- entity_set_int(iStoredSVDID, EV_INT_WEAPONKEY, k1ases_WEAPONKEY)
- g_has_k1ases[iOwner] = false
- g_delay[iOwner] = 0
- entity_set_model(entity, k1ases_W_MODEL)
- return FMRES_SUPERCEDE;
- }
- }
- return FMRES_IGNORED;
- }
- public give_k1ases(id)
- {
- drop_weapons(id, 1);
- oldweap[id] = CSW_KNIFE
- new iWep2 = give_item(id,"weapon_mp5navy")
- if( iWep2 > 0 )
- {
- cs_set_weapon_ammo(iWep2, get_pcvar_num(cvar_clip_k1ases))
- cs_set_user_bpammo (id, CSW_MP5NAVY, get_pcvar_num(cvar_k1ases_ammo))
- }
- UTIL_PlayWeaponAnimation(id, 2)
- set_pdata_float(id, m_flNextAttack, 1.5, PLAYER_LINUX_XTRA_OFF)
- g_has_k1ases[id] = true;
- g_ammoclaw[id] = get_pcvar_num(cvar_k1asesammo )
- client_print(id,print_center,"[Claw Ammo: %d]",g_ammoclaw[id])
- }
- public fw_k1ases_AddToPlayer(k1ases, id)
- {
- if(!is_valid_ent(k1ases) || !is_user_connected(id))
- return HAM_IGNORED;
- if(entity_get_int(k1ases, EV_INT_WEAPONKEY) == k1ases_WEAPONKEY)
- {
- g_has_k1ases[id] = true
- entity_set_int(k1ases, EV_INT_WEAPONKEY, 0)
- return HAM_HANDLED;
- }
- return HAM_IGNORED;
- }
- public fw_UseStationary_Post(entity, caller, activator, use_type)
- {
- if (use_type == USE_STOPPED && is_user_connected(caller))
- replace_weapon_models(caller, get_user_weapon(caller))
- }
- public fw_Item_Deploy_Post(weapon_ent)
- {
- static owner
- owner = fm_cs_get_weapon_ent_owner(weapon_ent)
- static weaponid
- weaponid = cs_get_weapon_id(weapon_ent)
- replace_weapon_models(owner, weaponid)
- }
- public CurrentWeapon(id)
- {
- replace_weapon_models(id, read_data(2))
- }
- replace_weapon_models(id, weaponid) {
- switch (weaponid)
- {
- case CSW_MP5NAVY:
- {
- if(g_has_k1ases[id])
- {
- set_pev(id, pev_viewmodel2, k1ases_V_MODEL)
- set_pev(id, pev_weaponmodel2, k1ases_P_MODEL)
- if(oldweap[id] != CSW_MP5NAVY)
- {
- UTIL_PlayWeaponAnimation(id, 2)
- set_pdata_float(id, m_flNextAttack, 1.5, PLAYER_LINUX_XTRA_OFF)
- }
- }
- }
- }
- oldweap[id] = weaponid
- }
- public fw_UpdateClientData_Post_k1asus(Player, SendWeapons, CD_Handle) {
- if(!is_user_alive(Player) || (get_user_weapon(Player) != CSW_MP5NAVY) || !g_has_k1ases[Player])
- return FMRES_IGNORED
- set_cd(CD_Handle, CD_flNextAttack, halflife_time () + 0.001)
- return FMRES_HANDLED
- }
- public fw_k1ases_PrimaryAttack(Weapon)
- {
- new Player = get_pdata_cbase(Weapon, 41, 4)
- if (!g_has_k1ases[Player])
- return;
- pev(Player,pev_punchangle,cl_pushangle_k1asus[Player])
- g_clip_ammo[Player] = cs_get_weapon_ammo(Weapon)
- }
- public fwPlaybackEvent(flags, invoker, eventid, Float:delay, Float:origin[3], Float:angles[3], Float:fparam1, Float:fparam2, iParam1, iParam2, bParam1, bParam2)
- {
- if ((eventid != g_orig_event_k1ases))
- return FMRES_IGNORED
- if (!(1 <= invoker <= g_MaxPlayers))
- return FMRES_IGNORED
- playback_event(flags | FEV_HOSTONLY, invoker, eventid, delay, origin, angles, fparam1, fparam2, iParam1, iParam2, bParam1, bParam2)
- return FMRES_SUPERCEDE
- }
- public fw_k1ases_PrimaryAttack_Post(Weapon)
- {
- new Player = get_pdata_cbase(Weapon, 41, 4)
- new szClip, szAmmo
- get_user_weapon(Player, szClip, szAmmo)
- if(Player > 0 && Player < 33)
- {
- //if(!g_has_k1ases[Player])
- //{
- //if(szClip > 0) emit_sound(Player, CHAN_WEAPON, "weapons/famas-1.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- //}
- if(g_has_k1ases[Player])
- {
- new Float:push[3]
- pev(Player,pev_punchangle,push)
- xs_vec_sub(push,cl_pushangle_k1asus[Player],push)
- xs_vec_mul_scalar(push,get_pcvar_float(cvar_recoil_k1ases),push)
- xs_vec_add(push,cl_pushangle_k1asus[Player],push)
- set_pev(Player,pev_punchangle,push)
- if (!g_clip_ammo[Player])
- return
- emit_sound(Player, CHAN_WEAPON, Fire_Sounds[0], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- UTIL_PlayWeaponAnimation(Player, 3)
- set_pdata_float(Player, m_flNextAttack, get_pcvar_float(cvar_k1ases_fire), PLAYER_LINUX_XTRA_OFF)
- }
- }
- }
- public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
- {
- if (victim != attacker && is_user_connected(attacker))
- {
- if(get_user_weapon(attacker) == CSW_MP5NAVY)
- {
- if(g_has_k1ases[attacker])
- SetHamParamFloat(4, damage * get_pcvar_float(cvar_dmg_k1ases))
- }
- }
- }
- public message_DeathMsg(msg_id, msg_dest, id)
- {
- static szTruncatedWeapon[33], iAttacker, iVictim
- get_msg_arg_string(4, szTruncatedWeapon, charsmax(szTruncatedWeapon))
- iAttacker = get_msg_arg_int(1)
- iVictim = get_msg_arg_int(2)
- if(!is_user_connected(iAttacker) || iAttacker == iVictim)
- return PLUGIN_CONTINUE
- if(equal(szTruncatedWeapon, "famas") && get_user_weapon(iAttacker) == CSW_MP5NAVY)
- {
- if(g_has_k1ases[iAttacker])
- set_msg_arg_string(4, "famas")
- }
- return PLUGIN_CONTINUE
- }
- public k1ases__ItemPostFrame(weapon_entity) {
- new id = pev(weapon_entity, pev_owner)
- if (!is_user_connected(id))
- return HAM_IGNORED;
- if (!g_has_k1ases[id])
- return HAM_IGNORED;
- new Float:flNextAttack = get_pdata_float(id, m_flNextAttack, PLAYER_LINUX_XTRA_OFF)
- new iBpAmmo = cs_get_user_bpammo(id, CSW_MP5NAVY);
- new iClip = get_pdata_int(weapon_entity, m_iClip, WEAP_LINUX_XTRA_OFF)
- new fInReload = get_pdata_int(weapon_entity, m_fInReload, WEAP_LINUX_XTRA_OFF)
- if( fInReload && flNextAttack <= 0.0 )
- {
- new j = min(get_pcvar_num(cvar_clip_k1ases) - iClip, iBpAmmo)
- set_pdata_int(weapon_entity, m_iClip, iClip + j, WEAP_LINUX_XTRA_OFF)
- cs_set_user_bpammo(id, CSW_MP5NAVY, iBpAmmo-j);
- set_pdata_int(weapon_entity, m_fInReload, 0, WEAP_LINUX_XTRA_OFF)
- fInReload = 0
- }
- return HAM_IGNORED;
- }
- public k1ases__Reload(weapon_entity) {
- new id = pev(weapon_entity, pev_owner)
- if (!is_user_connected(id))
- return HAM_IGNORED;
- if (!g_has_k1ases[id])
- return HAM_IGNORED;
- g_k1ases_TmpClip[id] = -1;
- new iBpAmmo = cs_get_user_bpammo(id, CSW_MP5NAVY);
- new iClip = get_pdata_int(weapon_entity, m_iClip, WEAP_LINUX_XTRA_OFF)
- if (iBpAmmo <= 0)
- return HAM_SUPERCEDE;
- if (iClip >= get_pcvar_num(cvar_clip_k1ases))
- return HAM_SUPERCEDE;
- g_k1ases_TmpClip[id] = iClip;
- return HAM_IGNORED;
- }
- public k1ases__Reload_Post(weapon_entity) {
- new id = pev(weapon_entity, pev_owner)
- if (!is_user_connected(id))
- return HAM_IGNORED;
- if (!g_has_k1ases[id])
- return HAM_IGNORED;
- if (g_k1ases_TmpClip[id] == -1)
- return HAM_IGNORED;
- set_pdata_int(weapon_entity, m_iClip, g_k1ases_TmpClip[id], WEAP_LINUX_XTRA_OFF)
- set_pdata_float(weapon_entity, m_flTimeWeaponIdle, k1ases_RELOAD_TIME, WEAP_LINUX_XTRA_OFF)
- set_pdata_float(id, m_flNextAttack, k1ases_RELOAD_TIME, PLAYER_LINUX_XTRA_OFF)
- set_pdata_int(weapon_entity, m_fInReload, 1, WEAP_LINUX_XTRA_OFF)
- // relaod animation
- UTIL_PlayWeaponAnimation(id, 1)
- return HAM_IGNORED;
- }
- public finish_reload(id)
- {
- id -= TASK_RELOAD
- g_ammo[id] += g_reload_ammo[id]
- cs_set_user_bpammo(id, CSW_SALAMANDER, cs_get_user_bpammo(id, CSW_SALAMANDER) - g_reload_ammo[id])
- is_reloading[id] = false
- }
- public stop_fire(id)
- {
- id -= TASK_FIRE
- is_firing[id] = false
- if(pev(id, pev_weaponanim) != SHOOT_END_ANIM)
- play_weapon_anim(id, SHOOT_END_ANIM)
- }
- public throw_fire(id)
- {
- new iEnt = create_entity("env_sprite")
- new Float:vfVelocity[3]
- velocity_by_aim(id, 500, vfVelocity)
- xs_vec_mul_scalar(vfVelocity, 0.4, vfVelocity)
- // add velocity of Owner for ent
- new Float:fOwnerVel[3], Float:vfAttack[3], Float:vfAngle[3]
- pev(id, pev_angles, vfAngle)
- //pev(id, pev_origin, vfAttack)
- get_weapon_attackment(id, vfAttack, 20.0)
- vfAttack[2] -= 7.0
- //vfAttack[1] += 7.0
- pev(id, pev_velocity, fOwnerVel)
- fOwnerVel[2] = 0.0
- xs_vec_add(vfVelocity, fOwnerVel, vfVelocity)
- // set info for ent
- set_pev(iEnt, pev_movetype, MOVETYPE_FLY)
- set_pev(iEnt, pev_rendermode, kRenderTransAdd)
- set_pev(iEnt, pev_renderamt, 150.0)
- set_pev(iEnt, PEV_ENT_TIME, get_gametime() + 1.5) // time remove
- set_pev(iEnt, pev_scale, 0.2)
- set_pev(iEnt, pev_nextthink, halflife_time() + 0.05)
- set_pev(iEnt, pev_classname, fire_classname)
- engfunc(EngFunc_SetModel, iEnt, fire_spr_name)
- set_pev(iEnt, pev_mins, Float:{-1.0, -1.0, -1.0})
- set_pev(iEnt, pev_maxs, Float:{1.0, 1.0, 1.0})
- set_pev(iEnt, pev_origin, vfAttack)
- set_pev(iEnt, pev_gravity, 0.01)
- set_pev(iEnt, pev_velocity, vfVelocity)
- vfAngle[1] += 30.0
- set_pev(iEnt, pev_angles, vfAngle)
- set_pev(iEnt, pev_solid, SOLID_BBOX)
- set_pev(iEnt, pev_owner, id)
- set_pev(iEnt, pev_iuser2, 1)
- }
- public fw_think(iEnt)
- {
- if ( !pev_valid(iEnt) ) return;
- new Float:fFrame, Float:fScale, Float:fNextThink
- pev(iEnt, pev_frame, fFrame)
- pev(iEnt, pev_scale, fScale)
- // effect exp
- new iMoveType = pev(iEnt, pev_movetype)
- if (iMoveType == MOVETYPE_NONE)
- {
- fNextThink = 0.015
- fFrame += 1.0
- if (fFrame > 21.0)
- {
- engfunc(EngFunc_RemoveEntity, iEnt)
- return
- }
- }
- // effect normal
- else
- {
- fNextThink = 0.045
- fFrame += 1.0
- fFrame = floatmin(21.0, fFrame)
- }
- fScale = (entity_range(iEnt, pev(iEnt, pev_owner)) / 500) * 3.0
- set_pev(iEnt, pev_frame, fFrame)
- set_pev(iEnt, pev_scale, fScale)
- set_pev(iEnt, pev_nextthink, halflife_time() + fNextThink)
- // time remove
- new Float:fTimeRemove
- pev(iEnt, PEV_ENT_TIME, fTimeRemove)
- if (get_gametime() >= fTimeRemove)
- {
- engfunc(EngFunc_RemoveEntity, iEnt)
- return;
- }
- }
- public fw_touch(ent, id)
- {
- set_pev(ent, pev_movetype, MOVETYPE_NONE)
- set_pev(ent, pev_solid, SOLID_NOT)
- if(!is_valid_ent(id))
- return FMRES_IGNORED
- if(!is_user_alive(id) || !is_user_connected(id))
- return FMRES_IGNORED
- if(pev(ent, pev_iuser2) == 1)
- {
- set_pev(ent, pev_iuser2, 0)
- static attacker, ent_kill
- attacker = pev(ent, pev_owner)
- ent_kill = fm_get_user_weapon_entity(id, CSW_KNIFE)
- ExecuteHam(Ham_TakeDamage, id, ent_kill, attacker, random_float(get_pcvar_float(cvar_dmgrd_start), get_pcvar_float(cvar_dmgrd_end)), DMG_BULLET)
- }
- return FMRES_HANDLED
- }
- public Hook_Select(id)
- {
- engclient_cmd(id, "weapon_p228")
- return PLUGIN_HANDLED
- }
- public dropcmd(id) {
- if(g_hasM79[id] && hasOnHandM79[id]) {
- new Float:Aim[3],Float:origin[3]
- VelocityByAim(id, 64, Aim)
- entity_get_vector(id,EV_VEC_origin,origin)
- origin[0] += Aim[0]
- origin[1] += Aim[1]
- new m79 = create_entity("info_target")
- entity_set_string(m79,EV_SZ_classname,"m79")
- entity_set_model(m79,m79_W_MODEL)
- entity_set_size(m79,Float:{-2.0,-2.0,-2.0},Float:{5.0,5.0,5.0})
- entity_set_int(m79,EV_INT_solid,1)
- entity_set_int(m79,EV_INT_movetype,6)
- entity_set_int(m79, EV_INT_iuser1, grenade_count[id])
- entity_set_vector(m79,EV_VEC_origin,origin)
- g_hasM79[id] = false
- g_canShoot[id] = false
- grenade_count[id] = false
- hasOnHandM79[id] = false
- remowegun(id)
- remove_icon(id)
- set_task(0.15,"hud_clear",id)
- return PLUGIN_HANDLED
- }
- return PLUGIN_CONTINUE
- }
- // remove gun and save all guns
- public remowegun(id) {
- new wpnList[32]
- new number
- get_user_weapons(id,wpnList,number)
- for (new i = 0;i < number ;i++) {
- if (wpnList[i] == CSW_P228) {
- fm_strip_user_gun(id, wpnList[i])
- }
- }
- }
- //play anim
- public playanim(player,anim)
- {
- set_pev(player, pev_weaponanim, anim)
- message_begin(MSG_ONE, SVC_WEAPONANIM, {0, 0, 0}, player)
- write_byte(anim)
- write_byte(pev(player, pev_body))
- message_end()
- }
- // Current weapon player is holding
- public Event_CurrentWeapon_m79(id)
- {
- if(!is_user_connected(id))
- return
- // Read weapon ID
- new weaponID = read_data(2)
- if (weaponID == CSW_P228)
- {
- if (g_hasM79[id])
- {
- message_begin(MSG_ONE, get_user_msgid("CurWeapon"), {0,0,0}, id)
- write_byte(1)
- write_byte(CSW_KNIFE)
- write_byte(0)
- message_end()
- hasOnHandM79[id] = true
- remove_task(id+TASK_FRSTSHT)
- message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id);
- write_byte(1); // status (0=hide, 1=show, 2=flash)
- write_string("item_battery"); // sprite name
- write_byte(210)
- write_byte(105)
- write_byte(30)
- message_end()
- set_task(0.1, "hud_init", id+TASK_HUDAMMO)
- if(!draw_wpn[id])
- {
- playanim(id, anim_draw)
- emit_sound(id, CHAN_WEAPON, m79_GRENADE_DRAW, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- // View model
- entity_set_string(id, EV_SZ_viewmodel, m79_V_MODEL)
- // Player model
- entity_set_string(id, EV_SZ_weaponmodel, m79_P_MODEL)
- canfire[id] = false
- draw_wpn[id] = true
- set_task(1.6,"delayshottsk", id+TASK_FRSTSHT)
- }
- else if(get_gametime() - g_last_shot_time[id] > delayshot) playanim(id, anim_idle)
- }
- else
- {
- // View model
- entity_set_string(id, EV_SZ_viewmodel, "models/v_p228.mdl")
- // Player model
- entity_set_string(id, EV_SZ_weaponmodel, "models/p_p228.mdl")
- hasOnHandM79[id] = false
- remove_icon(id)
- set_task(0.15,"hud_clear",id)
- }
- }
- else
- {
- draw_wpn[id] = false
- hasOnHandM79[id] = false
- remove_icon(id)
- set_task(0.15,"hud_clear",id)
- }
- }
- public fw_AddToPlayer_m79( iEnt, Player )
- {
- if( pev_valid( iEnt ) && is_user_connected( Player ) )
- {
- if(g_hasM79[Player])
- Sprite(Player)
- }
- }
- public remove_icon(id)
- {
- if(!is_user_connected(id))
- return
- message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id)
- write_byte(0)
- write_string("item_battery") // sprite name
- message_end()
- return
- }
- public delayshottsk(taskid){
- canfire[ID_SHT] = true
- }
- // New round started
- public Event_NewRound(id) {
- for (new i = 0; i < get_maxplayers(); i++) {
- g_hasM79[i] = false
- }
- m79 = 0
- draw_wpn[id] = false
- Event_CurrentWeapon_m79(id)
- }
- public Sprite(id) {
- message_begin(MSG_ONE, gmsgWeaponList, {0,0,0}, id)
- write_string("weapon_m79_sisa")
- write_byte(9)
- write_byte(52)
- write_byte(-1)
- write_byte(-1)
- write_byte(1)
- write_byte(3)
- write_byte(1)
- write_byte(0)
- message_end()
- }
- public event_start_m79()
- {
- m79 = 0
- remove_m79()
- }
- public remove_m79() {
- new nextitem = find_ent_by_class(-1, "m79")
- while ((nextitem = find_ent_by_class(-1, "m79")) != 0) {
- remove_entity(nextitem)
- }
- return PLUGIN_CONTINUE
- }
- // Player killed
- public fw_PlayerKilled_m79(victim, attacker, shouldgib) {
- if (g_hasM79[victim])
- {
- // Reset all
- g_hasM79[victim] = false
- g_canShoot[victim] = false
- g_FireM79[victim] = false
- grenade_count[victim] = 0
- // Remove HUD
- remove_task(victim+TASK_HUDAMMO)
- remowegun(victim)
- remove_icon(victim)
- }
- }
- //give wpn
- public give_weapon(id, ammo){
- g_hasM79[id] = true
- g_canShoot[id] = true
- g_FireM79[id] = false
- give_item(id,"weapon_p228")
- if(ammo == -1) grenade_count[id] = 10
- else grenade_count[id] = ammo
- set_task(0.1, "hud_init", id+TASK_HUDAMMO)
- }
- // Command start
- public fw_CmdStart_m79(id, uc_handle, seed) {
- // Don't have our weapon
- if (!hasOnHandM79[id] || !is_user_alive(id)){
- g_FireM79[id] = false
- return FMRES_IGNORED
- }
- // Get buttons
- new buttons = get_uc(uc_handle, UC_Buttons)
- // Attack1 button pressed
- if(buttons & IN_ATTACK)
- {
- g_FireM79[id] = true
- // Remove attack button from their button mask
- buttons &= ~IN_ATTACK
- set_uc(uc_handle, UC_Buttons, buttons)
- }
- else
- g_FireM79[id] = false
- return FMRES_HANDLED
- }
- // Player think after
- public fw_PlayerPostThink_m79(id)
- {
- // Don't have our weapon
- if (!g_hasM79[id])
- return FMRES_IGNORED
- // ignore dead
- if (!is_user_alive(id))
- return FMRES_IGNORED
- // Ignore zombies/nemesis
- // If player is firing
- if (g_FireM79[id] && hasOnHandM79[id])
- {
- // Grenades are more or equal to 1
- if (grenade_count[id] >= 1)
- {
- // Player can shoot
- if (get_gametime() - g_last_shot_time[id] > delayshot && canfire[id])
- {
- // Fire!!!
- FireGrenade(id)
- // Decrease nade count
- grenade_count[id]--
- // Without this HUD is not updating correctly
- set_task(0.1, "hud_init", id+TASK_HUDAMMO)
- // Remember last shot time
- g_last_shot_time[id] = get_gametime()
- }
- }
- else
- {
- // Don't have nades
- client_print(id, print_center, "У вас больше нет гранат!")
- }
- }
- return FMRES_IGNORED
- }
- //block anim standart wpn
- public fw_UpdateClientData_Post_m79(id, sendweapons, cd_handle) {
- // Don't have our weapon
- if (!hasOnHandM79[id] || !is_user_alive(id)) return FMRES_IGNORED
- // Block default sounds
- if (hasOnHandM79[id] && g_hasM79[id] && g_canShoot[id]) set_cd(cd_handle, CD_flNextAttack, halflife_time() + 0.001 );
- return FMRES_HANDLED
- }
- // Fire gremade
- public FireGrenade(id) {
- // Set animation
- if(grenade_count[id]>1){
- playanim(id, anim_shot1)
- set_task(0.4,"reloadsnd",id)
- set_task(1.6,"reloadin",id)
- set_task(2.3,"reloadon",id)
- } else {
- playanim(id, anim_shot2)
- }
- // Get origin. angle and velocity
- new Float:fAngle[3], Float:fVelocity[3]
- pev(id, pev_v_angle, fAngle)
- // Create ent
- new grenade = create_entity("info_target")
- // Not grenade
- if (!grenade) return PLUGIN_HANDLED
- // Classname
- entity_set_string(grenade, EV_SZ_classname, "m79_grenade")
- // Model
- entity_set_model(grenade, m79_GRENADE_MODEL)
- new Float:vOrigin[3],Float:vUp[3]
- pev(id, pev_origin, vOrigin)
- global_get(glb_v_up, vUp)
- new up = 17
- vOrigin[0] = vOrigin[0] + vUp[0] * up
- vOrigin[1] = vOrigin[1] + vUp[1] * up
- vOrigin[2] = vOrigin[2] + vUp[2] * up
- // Origin
- entity_set_origin(grenade, vOrigin)
- // Angles
- entity_set_vector(grenade, EV_VEC_angles, fAngle)
- // Size
- new Float:MinBox[3] = {-1.0, -1.0, -1.0}
- new Float:MaxBox[3] = {1.0, 1.0, 1.0}
- entity_set_vector(grenade, EV_VEC_mins, MinBox)
- entity_set_vector(grenade, EV_VEC_maxs, MaxBox)
- // Interaction
- entity_set_int(grenade, EV_INT_solid, SOLID_SLIDEBOX)
- // Movetype
- entity_set_int(grenade, EV_INT_movetype, MOVETYPE_TOSS)
- // Owner
- entity_set_edict(grenade, EV_ENT_owner, id)
- // Effects
- entity_set_int(grenade, EV_INT_effects, EF_BRIGHTLIGHT)
- // Velocity
- VelocityByAim(id, 1500, fVelocity)
- entity_set_vector(grenade, EV_VEC_velocity, fVelocity)
- // Launch sound
- emit_sound(grenade, CHAN_WEAPON, m79_GRENADE_SHOOT, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_BEAMFOLLOW) // Temporary entity ID
- write_short(grenade) // Entity
- write_short(sTrail) // Sprite index
- write_byte(3) // Life
- write_byte(1) // Line width
- write_byte(255) // Red
- write_byte(255) // Green
- write_byte(255) // Blue
- write_byte(255) // Alpha
- message_end()
- return PLUGIN_CONTINUE
- }
- public reloadsnd(id){
- emit_sound(id, CHAN_WEAPON, m79_GRENADE_CLIPOUT, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- }
- public reloadin(id){
- emit_sound(id, CHAN_WEAPON, m79_GRENADE_CLIPIN, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- }
- public reloadon(id){
- emit_sound(id, CHAN_WEAPON, m79_GRENADE_CLIPON, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- }
- // We hit something!!!
- public pfn_touch(ptr, ptd) {
- // If ent is valid
- if (pev_valid(ptr))
- {
- // Get classnames
- static classname[32], classnameptd[32]
- pev(ptr, pev_classname, classname, 31)
- // Our ent
- if(equal(classname, "m79_grenade"))
- {
- // Get it's origin
- new Float:originF[3]
- pev(ptr, pev_origin, originF)
- // Draw explosion
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_EXPLOSION) // Temporary entity ID
- engfunc(EngFunc_WriteCoord, originF[0]) // engfunc because float
- engfunc(EngFunc_WriteCoord, originF[1])
- engfunc(EngFunc_WriteCoord, originF[2])
- write_short(sExplo) // Sprite index
- write_byte(50) // Scale
- write_byte(15) // Framerate
- write_byte(0) // Flags
- message_end()
- // Draw smoke
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_SMOKE) // Temporary entity IF
- engfunc(EngFunc_WriteCoord, originF[0]) // Pos X
- engfunc(EngFunc_WriteCoord, originF[1]) // Pos Y
- engfunc(EngFunc_WriteCoord, originF[2]) // Pos Z
- write_short(sSmoke) // Sprite index
- write_byte(75) // Scale
- write_byte(15) // Framerate
- message_end()
- // Get owner
- new owner = pev(ptr, pev_owner)
- new Max_Damage = get_pcvar_num(cvar_granade_max_damage)
- new Damage_Radius = get_pcvar_num(cvar_granade_damage_radius)
- // Loop through all players
- for(new i = 1; i < get_maxplayers(); i++)
- {
- // Alive...
- if (is_user_alive(i) == 1 && is_user_connected(owner))
- {
- // A zombie/nemesis
- if (get_user_team ( i ) == 1)
- {
- // Get victims origin and distance
- new VictimOrigin[3], Distance , origin[3]
- get_user_origin(i, VictimOrigin)
- // Get distance between victim and epicenter
- origin[0] = floatround(originF[0])
- origin[1] = floatround(originF[1])
- origin[2] = floatround(originF[2])
- Distance = get_distance(VictimOrigin, origin)
- if (Distance <= Damage_Radius)
- {
- // Start screen shake
- message_begin(MSG_ONE, g_msgScreenShake, {0,0,0}, i)
- write_short(1<<14) // Amount
- write_short(1<<14) // Duration
- write_short(1<<14) // Frequency
- message_end()
- new Damage
- Damage = Max_Damage - floatround(floatmul(float(Max_Damage), floatdiv(float(Distance), float(Damage_Radius))))
- make_knockback(i, originF, 1.5*float(Damage))
- do_victim(i,owner,Damage)
- }
- }
- }
- // Destroy ent
- set_pev(ptr, pev_flags, FL_KILLME)
- }
- // We hit breakable
- if(pev_valid(ptd)){
- pev(ptd, pev_classname, classnameptd, 31)
- if (equali(classnameptd, "func_breakable"))
- {
- // Destroy it
- force_use(ptr,ptd)
- }
- } }
- }
- if(is_valid_ent(ptr)) {
- new classname[32]
- entity_get_string(ptr,EV_SZ_classname,classname,31)
- if(equal(classname, "m79")) {
- if(is_valid_ent(ptd)) {
- new id = ptd
- if(id > 0 && id < 34) {
- // Pick up weapon
- give_weapon(id,entity_get_int(ptr, EV_INT_iuser1))
- remove_entity(ptr)
- }
- }
- }
- }
- }
- public do_victim (victim,attacker,Damage) {
- new namek[32],namev[32],authida[35],authidv[35],teama[32],teamv[32]
- get_user_name(victim,namev,31)
- get_user_name(attacker,namek,31)
- get_user_authid(victim,authidv,34)
- get_user_authid(attacker,authida,34)
- get_user_team(victim,teamv,31)
- get_user_team(attacker,teama,31)
- static DamageTake[33]
- if(Damage >= get_user_health(victim)) {
- if(get_cvar_num("mp_logdetail") == 3) {
- log_message("^"%s<%d><%s><%s>^" attacked ^"%s<%d><%s><%s>^" with ^"grenade^" (hit ^"chest^") (Damage ^"%d^") (health ^"0^")",
- namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv,Damage)
- }
- set_user_frags(attacker,get_user_frags(attacker) + 1 )
- set_msg_block(gmsgDeathMsg,BLOCK_ONCE)
- set_msg_block(gmsgScoreInfo,BLOCK_ONCE)
- ExecuteHamB(Ham_Killed, victim, attacker, 0)
- replace_dm(attacker,victim,0)
- log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"grenade^"",
- namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv)
- }
- else {
- set_user_health(victim,get_user_health(victim) - Damage )
- if(get_cvar_num("mp_logdetail") == 3) {
- log_message("^"%s<%d><%s><%s>^" attacked ^"%s<%d><%s><%s>^" with ^"missile^" (hit ^"chest^") (Damage ^"%d^") (health ^"%d^")",
- namek,get_user_userid(attacker),authida,teama,namev,get_user_userid(victim),authidv,teamv,Damage,get_user_health(victim))
- }
- }
- if(DamageTake[attacker] >= 5000){
- DamageTake[attacker] -= 5000
- } else DamageTake[attacker] += Damage
- }
- public replace_dm (id,tid,tbody) {
- //Update killers scorboard with new info
- message_begin(MSG_ALL,gmsgScoreInfo)
- write_byte(id)
- write_short(get_user_frags(id))
- write_short(get_user_deaths(id))
- write_short(0)
- write_short(get_user_team(id))
- message_end()
- //Update victims scoreboard with correct info
- message_begin(MSG_ALL,gmsgScoreInfo)
- write_byte(tid)
- write_short(get_user_frags(tid))
- write_short(get_user_deaths(tid))
- write_short(0)
- write_short(get_user_team(tid))
- message_end()
- //Headshot Kill
- if (tbody == 1) {
- message_begin( MSG_ALL, gmsgDeathMsg,{0,0,0},0)
- write_byte(id)
- write_byte(tid)
- write_string("grenade")
- message_end()
- }
- //Normal Kill
- else {
- message_begin( MSG_ALL, gmsgDeathMsg,{0,0,0},0)
- write_byte(id)
- write_byte(tid)
- write_byte(0)
- write_string("grenade")
- message_end()
- }
- return PLUGIN_CONTINUE
- }
- // HUD init
- public hud_init(taskid) {
- new HudAmmo[65]
- format(HudAmmo, 64, "Grenades Left: [%d]", grenade_count[ID_HUDAMMO])
- message_begin(MSG_ONE, g_msgStatusText, {0,0,0}, ID_HUDAMMO)
- write_byte(0)
- write_string(HudAmmo) // Text
- message_end()
- }
- public hud_clear(id) {
- message_begin(MSG_ONE, g_msgStatusText, {0,0,0}, id)
- write_byte(0)
- write_string("") // Text
- message_end()
- }
- public FurienCurrentWeapon ( id ) {
- new szKnife = get_user_weapon ( id );
- if ( szKnife == CSW_KNIFE ) {
- if ( katana_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, katana_knife_v_model );
- set_pev ( id, pev_weaponmodel2, katana_knife_p_model );
- //set_task ( 0.1, "Katana_Damage", id );
- }
- if ( double_katana_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, double_katana_v_knife_model );
- set_pev ( id, pev_weaponmodel2, double_katana_p_knife_model );
- //set_task ( 0.1, "Double_Katana_Damage", id );
- }
- if ( super_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, super_knife_v_model );
- set_pev ( id, pev_weaponmodel2, super_knife_p_model );
- //set_task ( 0.1, "Super_Knife_Damage", id );
- }
- if ( infinity_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, infinity_knife_v_model );
- set_pev ( id, pev_weaponmodel2, infinity_knife_p_model );
- //set_task ( 0.1, "Infinity_Knife_Damage", id );
- }
- if ( vip_axe_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, axe_knife_v_model );
- set_pev ( id, pev_weaponmodel2, axe_knife_p_model );
- //set_task ( 0.1, "VIP_Axe_Knife_Damage", id );
- }
- if ( elf_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, elf_knife_model );
- //set_task ( 0.1, "Elf_Knife_Damage", id );
- }
- if ( ignes_knife [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, ignes_knife_model );
- //set_task ( 0.1, "Ignes_Knife_Damage", id );
- }
- if ( trainer [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, trainer_v_model );
- set_pev ( id, pev_weaponmodel2, trainer_p_model );
- //set_task ( 0.1, "Trainer_Knife_Damage", id );
- }
- if ( super_knife_shop [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model );
- //set_task ( 0.1, "SK_Knife_Damage", id );
- }
- if ( super_knife_shop2 [ id ] && szKnife == CSW_KNIFE ) {
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model2 );
- set_pev ( id, pev_weaponmodel2, super_knife_shop_p_model2 );
- //set_task ( 0.1, "SK2_Knife_Damage", id );
- }
- }
- if ( strike_grenade [ id ] && szKnife == CSW_HEGRENADE && get_user_team ( id ) == 1 ) {
- set_pev ( id, pev_viewmodel2, strike_grenade_v_model );
- set_pev ( id, pev_weaponmodel2, strike_grenade_p_model );
- }
- if ( strike_grenade2 [ id ] && szKnife == CSW_HEGRENADE && get_user_team ( id ) == 1 ) {
- set_pev ( id, pev_viewmodel2, strike_grenade_v_model );
- set_pev ( id, pev_weaponmodel2, strike_grenade_p_model );
- }
- if ( strike_grenade3 [ id ] && szKnife == CSW_HEGRENADE && get_user_team ( id ) == 1 ) {
- set_pev ( id, pev_viewmodel2, strike_grenade_v_model );
- set_pev ( id, pev_weaponmodel2, strike_grenade_p_model );
- }
- else if ( !user_has_weapon ( id, CSW_KNIFE ) || ( !katana_knife [ id ] || !double_katana_knife || !super_knife || !infinity_knife || !vip_axe_knife || !ignes_knife || !elf_knife || !trainer ) )
- {
- give_item ( id, "weapon_knife" );
- return 1;
- }
- return 1;
- }
- public AntiFurienCurrentWeapon ( id ) {
- new szWeapon = get_user_weapon ( id );
- if ( szWeapon == CSW_MP5NAVY ) {
- if ( dual_mp5 [ id ] && szWeapon == CSW_MP5NAVY ) {
- set_pev ( id, pev_viewmodel2, dual_mp5_v_model );
- set_pev ( id, pev_weaponmodel2, dual_mp5_p_model );
- }
- }
- if ( szWeapon == CSW_P90 ) {
- if ( hunter [ id ] && szWeapon == CSW_P90 ) {
- set_pev ( id, pev_viewmodel2, hunter_v_model );
- set_pev ( id, pev_weaponmodel2, hunter_p_model );
- //set_task ( 0.1, "Hunter_Damage", id );
- }
- if ( thompson [ id ] && szWeapon == CSW_P90 ) {
- set_pev ( id, pev_viewmodel2, thompson_v_model );
- set_pev ( id, pev_weaponmodel2, thompson_p_model );
- //set_task ( 0.1, "Thompson_Damage", id );
- }
- if ( warrior [ id ] && szWeapon == CSW_P90 ) {
- set_pev ( id, pev_viewmodel2, warrior_v_model );
- set_pev ( id, pev_weaponmodel2, warrior_p_model );
- //set_task ( 0.1, "Warrior_Damage", id );
- }
- if ( deklowaz [ id ] && szWeapon == CSW_P90 ) {
- set_pev ( id, pev_viewmodel2, deklowaz_v_model );
- set_pev ( id, pev_weaponmodel2, deklowaz_p_model );
- //set_task ( 0.1, "Deklowaz_Damage", id );
- }
- }
- if ( szWeapon == CSW_GALIL ) {
- if ( mage [ id ] && szWeapon == CSW_GALIL ) {
- set_pev ( id, pev_viewmodel2, mage_v_model );
- set_pev ( id, pev_weaponmodel2, mage_p_model );
- //set_task ( 0.1, "Mage_Damage", id );
- }
- }
- if ( szWeapon == CSW_FAMAS ) {
- if ( rogue [ id ] && szWeapon == CSW_FAMAS ) {
- set_pev ( id, pev_viewmodel2, rogue_v_model );
- set_pev ( id, pev_weaponmodel2, rogue_p_model );
- //set_task ( 0.1, "Rogue_Damage", id );
- }
- }
- if ( szWeapon == CSW_SG552 ) {
- if ( shaman [ id ] && szWeapon == CSW_SG552 ) {
- set_pev ( id, pev_viewmodel2, shaman_v_model );
- set_pev ( id, pev_weaponmodel2, shaman_p_model );
- //set_task ( 0.1, "Shaman_Damage", id );
- }
- }
- if ( szWeapon == CSW_USP ) {
- if ( uspx [ id ] && szWeapon == CSW_USP ) {
- set_pev ( id, pev_viewmodel2, uspx_v_model );
- set_pev ( id, pev_weaponmodel2, uspx_p_model );
- }
- }
- if ( szWeapon == CSW_SMOKEGRENADE ) {
- if ( flare [ id ] && szWeapon == CSW_SMOKEGRENADE && get_user_team ( id ) == 2 ) {
- set_pev ( id, pev_viewmodel2, flare_v_model );
- }
- }
- return 1;
- }
- public Spawn(id) {
- remove_task(id);
- HasChose[id] = false;
- HE_Cooldown[id] = 0;
- GodMode_Cooldown[id] = 0;
- GodMode_DurationCooldown[id] = 0;
- Drop_Cooldown[id] = 0;
- Freeze_Cooldown[id] = 0;
- remove_freeze ( id );
- DragEnd ( id );
- Drag_Cooldown[id] = 0;
- Not_Cooldown[id] = false;
- Teleport_Cooldown[id] = 0;
- }
- public remove_freeze(id) {
- if (!Frozen[id] || !is_user_alive(id)) return;
- Frozen[id] = false;
- set_task(0.2, "set_normal", id);
- engfunc(EngFunc_EmitSound, id, CHAN_BODY, FROSTBREAK_SND[random_num(0, sizeof FROSTBREAK_SND - 1)], 1.0, ATTN_NORM, 0, PITCH_NORM);
- fm_set_rendering(id);
- static Float:origin2F[3];
- pev(id, pev_origin, origin2F);
- engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin2F, 0);
- write_byte(TE_BREAKMODEL);
- engfunc(EngFunc_WriteCoord, origin2F[0]);
- engfunc(EngFunc_WriteCoord, origin2F[1]);
- engfunc(EngFunc_WriteCoord, origin2F[2]+24.0);
- write_coord(16);
- write_coord(16);
- write_coord(16);
- write_coord(random_num(-50, 50));
- write_coord(random_num(-50, 50));
- write_coord(25);
- write_byte(10);
- write_short(FreezeSprite);
- write_byte(10);
- write_byte(25);
- write_byte(BREAK_GLASS);
- message_end();
- }
- public DragEnd(id) { // drags end function
- LastHook[id] = get_gametime();
- Hooked[id] = 0;
- BeamRemove(id);
- Drag_I[id] = false;
- Unable2move[id] = false;
- if(!Not_Cooldown[id] && HasPower[id] == 6) {
- Drag_Cooldown[id] = get_pcvar_num(CvarDragCooldown);
- set_task(1.0, "DragShowHUD", id, _, _, "b");
- Not_Cooldown[id] = true;
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(get_pcvar_num(CvarDragCooldown) != 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",get_pcvar_num(CvarDragCooldown));
- }
- if(get_pcvar_num(CvarDragCooldown) == 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",get_pcvar_num(CvarDragCooldown));
- }
- }
- }
- public BeamRemove(id) { // remove beam
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(99); //TE_KILLBEAM
- write_short(id); //entity
- message_end();
- }
- //------| Client Death |------//
- public Death() {
- new i = read_data ( 2 )
- remove_task(read_data(2));
- HE_Cooldown[read_data(2)] = 0;
- GodMode_Cooldown[read_data(2)] = 0;
- GodMode_DurationCooldown[read_data(2)] = 0;
- Drop_Cooldown[read_data(2)] = 0;
- Freeze_Cooldown[read_data(2)] = 0;
- Freeze_Cooldown[read_data(2)] = 0;
- remove_freeze ( i );
- BeamRemove ( i );
- Drag_Cooldown[read_data(2)] = 0;
- if (Hooked[read_data(2)])
- DragEnd ( i );
- Not_Cooldown[read_data(2)] = false;
- Teleport_Cooldown[read_data(2)] = 0;
- }
- //------| Client Power |------//
- public Power(id) {
- new target, body;
- static Float:start[3];
- static Float:aim[3];
- pev(id, pev_origin, start);
- fm_get_aim_origin(id, aim);
- start[2] += 16.0; // raise
- aim[2] += 16.0; // raise
- if ( is_user_alive(id) && HasPower[id] == 4) {
- if (Drop_Cooldown[id]) {
- ColorChat(id, GREEN, "%s Puterea iti va reveni in^4 %d^3 secunde .^4", szPrefix, Drop_Cooldown[id]);
- return PLUGIN_CONTINUE;
- }
- get_user_aiming (id, target, body, CvarDropDistance);
- if(is_user_alive(target) && get_user_team(id) != get_user_team(target)) {
- message_begin(MSG_BROADCAST ,SVC_TEMPENTITY);
- write_byte(TE_EXPLOSION);
- engfunc(EngFunc_WriteCoord, aim[0]);
- engfunc(EngFunc_WriteCoord, aim[1]);
- engfunc(EngFunc_WriteCoord, aim[2]);
- write_short(DropSprite2);
- write_byte(10);
- write_byte(30);
- write_byte(4);
- message_end();
- emit_sound(id, CHAN_WEAPON, DROP_HIT_SND, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
- set_task ( 0.1, "Drop", target );
- message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id);
- write_short(1<<10);
- write_short(1<<10);
- write_short(0x0000);
- write_byte(230);
- write_byte(0);
- write_byte(0);
- write_byte(50);
- message_end();
- message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, target);
- write_short(1<<10);
- write_short(1<<10);
- write_short(0x0000);
- write_byte(230);
- write_byte(0);
- write_byte(0);
- write_byte(50);
- message_end();
- }
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
- write_byte(0);
- engfunc(EngFunc_WriteCoord,start[0]);
- engfunc(EngFunc_WriteCoord,start[1]);
- engfunc(EngFunc_WriteCoord,start[2]);
- engfunc(EngFunc_WriteCoord,aim[0]);
- engfunc(EngFunc_WriteCoord,aim[1]);
- engfunc(EngFunc_WriteCoord,aim[2]);
- write_short(DropSprite); // sprite index
- write_byte(0); // start frame
- write_byte(30); // frame rate in 0.1's
- write_byte(20); // life in 0.1's
- write_byte(50); // line width in 0.1's
- write_byte(50); // noise amplititude in 0.01's
- write_byte(0); // red
- write_byte(100); // green
- write_byte(0); // blue
- write_byte(100); // brightness
- write_byte(50); // scroll speed in 0.1's
- message_end();
- Drop_Cooldown[id] = get_pcvar_num(CvarDropCooldown);
- set_task(1.0, "DropShowHUD", id, _, _, "b");
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(get_pcvar_num(CvarDropCooldown) != 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",get_pcvar_num(CvarDropCooldown));
- }
- if(get_pcvar_num(CvarDropCooldown) == 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",get_pcvar_num(CvarDropCooldown));
- }
- return PLUGIN_HANDLED;
- }
- else if (is_user_alive(id) && HasPower[id] == 5) {
- if (Freeze_Cooldown[id]) {
- ColorChat(id, GREEN, "%s Puterea iti va reveni in^4 %d^3 secunde .^4", szPrefix,Freeze_Cooldown[id]);
- return PLUGIN_CONTINUE;
- }
- get_user_aiming (id, target, body, CvarFreezeDistance);
- if(is_user_alive(target) && get_user_team(id) != get_user_team(target)) {
- set_task ( 0.1, "Freeze", target );
- message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id);
- write_short(1<<10);
- write_short(1<<10);
- write_short(0x0000);
- write_byte(0);
- write_byte(100);
- write_byte(200);
- write_byte(50);
- message_end();
- message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, target);
- write_short(1<<10);
- write_short(1<<10);
- write_short(0x0000);
- write_byte(0);
- write_byte(100);
- write_byte(200);
- write_byte(50);
- message_end();
- }
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
- write_byte(0);
- engfunc(EngFunc_WriteCoord,start[0]);
- engfunc(EngFunc_WriteCoord,start[1]);
- engfunc(EngFunc_WriteCoord,start[2]);
- engfunc(EngFunc_WriteCoord,aim[0]);
- engfunc(EngFunc_WriteCoord,aim[1]);
- engfunc(EngFunc_WriteCoord,aim[2]);
- write_short(FreezeSprite3); // sprite index
- write_byte(0); // start frame
- write_byte(30); // frame rate in 0.1's
- write_byte(20); // life in 0.1's
- write_byte(50); // line width in 0.1's
- write_byte(50); // noise amplititude in 0.01's
- write_byte(0); // red
- write_byte(100); // green
- write_byte(200); // blue
- write_byte(100); // brightness
- write_byte(50); // scroll speed in 0.1's
- message_end();
- set_user_health ( target, get_user_health ( target ) - 5 );
- set_dhudmessage ( 255, 0, 0, 0.02, 0.90, 0, 6.0, 1.0 );
- show_dhudmessage ( id, "-5 HP" );
- Freeze_Cooldown[id] = get_pcvar_num(CvarFreezeCooldown);
- set_task(1.0, "FreezeShowHUD", id, _, _, "b");
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(get_pcvar_num(CvarFreezeCooldown) != 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",get_pcvar_num(CvarFreezeCooldown));
- }
- if(get_pcvar_num(CvarFreezeCooldown) == 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",get_pcvar_num(CvarFreezeCooldown));
- }
- return PLUGIN_HANDLED;
- }
- else if (is_user_alive(id) && HasPower[id] == 7) {
- if (Teleport_Cooldown[id]) {
- ColorChat(id, GREEN, "%s Puterea iti va reveni in^4 %d^3 secunde .^4", szPrefix, Teleport_Cooldown[id]);
- return PLUGIN_CONTINUE;
- }
- if (teleport(id)) {
- emit_sound(id, CHAN_STATIC, SOUND_BLINK, 1.0, ATTN_NORM, 0, PITCH_NORM);
- remove_task(id);
- Teleport_Cooldown[id] = get_pcvar_num(CvarTeleportCooldown);
- set_task(1.0, "TeleportShowHUD", id, _, _, "b");
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(get_pcvar_num(CvarTeleportCooldown) != 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",get_pcvar_num(CvarTeleportCooldown));
- }
- if(get_pcvar_num(CvarTeleportCooldown) == 1) {
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",get_pcvar_num(CvarTeleportCooldown));
- }
- return PLUGIN_HANDLED;
- }
- else {
- Teleport_Cooldown[id] = 0;
- ColorChat(id, GREEN, "%s Pozitia de teleportare este invalida .", szPrefix);
- return PLUGIN_HANDLED;
- }
- return PLUGIN_HANDLED;
- }
- return PLUGIN_CONTINUE;
- }
- bool:teleport(id) {
- new Float:vOrigin[3], Float:vNewOrigin[3],
- Float:vNormal[3], Float:vTraceDirection[3],
- Float:vTraceEnd[3];
- pev(id, pev_origin, vOrigin);
- velocity_by_aim(id, get_pcvar_num(CvarTeleportRange), vTraceDirection);
- xs_vec_add(vTraceDirection, vOrigin, vTraceEnd);
- engfunc(EngFunc_TraceLine, vOrigin, vTraceEnd, DONT_IGNORE_MONSTERS, id, 0);
- new Float:flFraction;
- get_tr2(0, TR_flFraction, flFraction);
- if (flFraction < 1.0) {
- get_tr2(0, TR_vecEndPos, vTraceEnd);
- get_tr2(0, TR_vecPlaneNormal, vNormal);
- }
- xs_vec_mul_scalar(vNormal, 40.0, vNormal); // do not decrease the 40.0
- xs_vec_add(vTraceEnd, vNormal, vNewOrigin);
- if (is_player_stuck(id, vNewOrigin))
- return false;
- emit_sound(id, CHAN_STATIC, SOUND_BLINK, 1.0, ATTN_NORM, 0, PITCH_NORM);
- tele_effect(vOrigin);
- engfunc(EngFunc_SetOrigin, id, vNewOrigin);
- tele_effect2(vNewOrigin);
- return true;
- }
- public cmdShowXp ( id ) {
- ColorChat ( id, GREEN, "%s Ai ^4%d^3 XP, iar levelul tau este ^4%s^3 .", szPrefix, eXP [ id ], Prefix [ Level [ id ] ] );
- ShowHud ( id );
- }
- public cmdSaveXp ( id ) {
- ColorChat ( id, GREEN, "%s Ti-ai salvat XP-ul cu succes .", szPrefix );
- ShowHud ( id );
- }
- public cmdShowLevel ( id ) {
- ColorChat ( id, GREEN, "%s Levelul tau este ^4%s^3 .", szPrefix, Prefix [ Level [ id ] ] );
- }
- public cmdShowLevels ( id ) {
- ColorChat ( id, GREEN, "%s In total sunt^4 30^3 levele .", szPrefix );
- }
- public cmdClearXp ( id ) {
- ColorChat ( id, GREEN, "%s Ti-ai sters XP-ul cu succes .", szPrefix );
- eXP [ id ] -= eXP [ id ];
- Level [ id ] -= Level [ id ];
- }
- public cmdRefreshXP ( id ) {
- Level [ id ] -= Level [ id ];
- ColorChat ( id, GREEN, "%s Ti-ai reimprospatat Xp-ul cu succes !", szPrefix );
- if ( !is_user_bot ( id ) && ( Level [ id ] < 30) && ( eXP [ id ] >= Levels [ Level [ id ] ] ) )
- {
- while ( eXP [ id ] >= Levels [ Level [ id ] ] )
- {
- Level [ id ] += 1;
- }
- }
- }
- public cmdRefreshXP2 ( id ) {
- Level [ id ] -= Level [ id ];
- // ColorChat ( id, GREEN, "%s Ti-ai reimprospatat Xp-ul cu succes !", szPrefix );
- if ( !is_user_bot ( id ) && ( Level [ id ] < 30) && ( eXP [ id ] >= Levels [ Level [ id ] ] ) )
- {
- while ( eXP [ id ] >= Levels [ Level [ id ] ] )
- {
- Level [ id ] += 1;
- }
- }
- }
- public cmdXpTop15 ( id ) {
- new i, count;
- static sort [ 33 ] [ 2 ], maxPlayers;
- if ( !maxPlayers ) maxPlayers = get_maxplayers ( );
- for ( i= 1; i <= maxPlayers; i++ )
- {
- sort [ count ][ 0 ] = i;
- sort [ count ][ 1 ] = Level [ i ];
- count++;
- }
- SortCustom2D ( sort,count, "stats_custom_compare" );
- new motd [ 1024 ], len;
- len = format ( motd, 1023, "<body bgcolor=#000000><center><font color=#FFB000><pre>" );
- len += format ( motd [ len ], 1023-len,"%s %-22.22s %3s^n", "#", "Name", "Level" );
- new players [ 32 ], num;
- get_players ( players, num );
- new b = clamp ( count,0,15 );
- new name [ 32 ], player;
- for ( new a = 0; a < b; a++ )
- {
- player = sort [ a ] [ 0 ];
- get_user_name ( player, name, 31 );
- len += format ( motd [ len ], 1023-len,"%d %-22.22s %d^n", a+1, name, sort [ a ] [ 1 ] );
- }
- len += format ( motd [ len ], 1023-len,"</body></font></pre></center>" );
- show_motd( id, motd, "Level Top 15" );
- return PLUGIN_CONTINUE;
- }
- public stats_custom_compare ( elem1 [ ], elem2 [ ] ) {
- if ( elem1 [ 1 ] > elem2 [ 1 ] ) return -1;
- else if ( elem1 [ 1 ] < elem2 [ 1 ] ) return 1;
- return 0;
- }
- public cmdGiveXp ( id, level, cid ) {
- if(!cmd_access(id, level, cid, 3))
- return PLUGIN_HANDLED;
- new target[32], amount[21], reason[21], gplayers[32], players, num, i;
- read_argv(1, target, 31);
- read_argv(2, amount, 20);
- read_argv(3, reason, 20);
- new player = cmd_target(id, target, 8);
- if(!player)
- return PLUGIN_HANDLED;
- new admin_name[32], player_name[32];
- get_user_name(id, admin_name, 31);
- get_user_name(player, player_name, 31);
- new expnum = str_to_num(amount);
- ColorChat ( 0, GREEN, "^4ADMIN ^3%s^1: ^1give ^4%s ^1xp to ^3%s ^1%s", admin_name, amount, player_name, reason );
- eXP [ player ] += expnum;
- cmdRefreshXP2 ( player );
- SaveData ( player );
- if(equali(target, "@All") || equali ( target, "all" ) ) {
- get_players(gplayers, num, "a");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- eXP [ players ] += expnum;
- SaveData(players);
- ColorChat ( 0, GREEN, "^4ADMIN ^3%s^1: ^1give ^4%s ^1xp to ^3All Players ^1%s", admin_name, amount, reason );
- }
- }
- return PLUGIN_CONTINUE;
- }
- public cmdSetXp ( id, level, cid ) {
- if(!cmd_access(id, level, cid, 3))
- return PLUGIN_HANDLED;
- new target[32], amount[21], reason[21];
- read_argv(1, target, 31);
- read_argv(2, amount, 20);
- read_argv(3, reason, 20);
- new player = cmd_target(id, target, 8);
- if(!player)
- return PLUGIN_HANDLED;
- new admin_name[32], player_name[32];
- get_user_name(id, admin_name, 31);
- get_user_name(player, player_name, 31);
- new expnum = str_to_num(amount);
- ColorChat ( 0, GREEN, "^4ADMIN ^3%s^1: ^1set ^4%s ^1xp to ^3%s ^1%s", admin_name, amount, player_name, reason );
- eXP [ player ] = expnum;
- cmdRefreshXP2 ( player );
- SaveData ( player );
- return PLUGIN_CONTINUE;
- }
- public fwd_setmodel(ent, const model[]) {
- if(!pev_valid(ent) || !equal(model[9], "smokegrenade.mdl"))
- return FMRES_IGNORED;
- static classname[32]; pev(ent, pev_classname, classname, 31);
- if(equal(classname, "grenade") && 1)
- {
- engfunc(EngFunc_SetModel, ent, flare_w_model);
- set_pev(ent, pev_effects, EF_BRIGHTLIGHT);
- set_pev(ent, pev_iuser4, 1337);
- set_pev(ent, pev_nextthink, get_gametime() + 999.9);
- fm_set_rendering2(ent, kRenderFxGlowShell, 150, 150, 250, kRenderNormal, 16);
- return FMRES_SUPERCEDE;
- }
- return FMRES_IGNORED;
- }
- public fwd_think(ent) if(pev_valid(ent) && is_ent_flare(ent))
- engfunc(EngFunc_RemoveEntity, ent);
- public GetRandomPlayer ( ) {
- new players[32], count;
- get_players(players, count, "a");
- if(count)
- {
- new iPlayer = players[random(count)];
- new Name[32];
- get_user_name(iPlayer, Name, charsmax(Name));
- set_user_credits ( iPlayer, get_user_credits ( iPlayer ) + 1 );
- ColorChat ( iPlayer, GREEN, "%s Felicitari ! Ai primit^4 1^3 credit .^4", szPrefix );
- ColorChat ( 0, GREEN, "%s^4 %s^3 a primit^4 1^3 credit .^4", szPrefix, Name );
- }
- }
- public GiveQuadBarrel(id, itemid)
- {
- if(itemid != g_quad_barrel)
- return PLUGIN_HANDLED
- g_had_qb[id] = 1
- new ent = give_item(id, "weapon_xm1014")
- cs_set_weapon_ammo(ent, get_pcvar_num(cvar_default_clip))
- cs_set_user_bpammo(id, CSW_QB, 10)
- set_pdata_float(id, 83, 1.0, 4)
- set_weapon_anim(id, 4)
- return PLUGIN_CONTINUE
- }
- public check_draw_weapon(id)
- {
- set_task(0.001, "do_check", id)
- }
- public do_check(id)
- {
- if(get_user_weapon(id) == CSW_QB && g_had_qb[id])
- {
- set_weapon_anim(id, 4)
- }
- }
- public event_curweapon_quad(id)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return
- if(get_user_weapon(id) != CSW_QB || !g_had_qb[id])
- return
- set_pev(id, pev_viewmodel2, qb_v_model)
- set_pev(id, pev_weaponmodel2, qb_p_model)
- return
- }
- public fw_UpdateClientData_Post_qb(id, sendweapons, cd_handle)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return FMRES_IGNORED
- if(get_user_weapon(id) != CSW_QB || !g_had_qb[id])
- return FMRES_IGNORED
- set_cd(cd_handle, CD_flNextAttack, halflife_time() + 0.001)
- return FMRES_HANDLED
- }
- public TraceAttack(iEnt, iAttacker, Float:flDamage, Float:fDir[3], ptr, iDamageType)
- {
- if(!is_user_alive(iAttacker) || !is_user_connected(iAttacker))
- return HAM_IGNORED
- if(get_user_weapon(iAttacker) != CSW_QB || !g_had_qb[iAttacker])
- return HAM_IGNORED
- static Float:flEnd[3]
- get_tr2(ptr, TR_vecEndPos, flEnd)
- make_bullet(iAttacker, flEnd)
- return HAM_HANDLED
- }
- public fw_takedmg(victim, inflictor, attacker, Float:damage, damagebits)
- {
- if(!is_user_alive(victim) || !is_user_alive(attacker))
- return HAM_IGNORED
- if(get_user_weapon(attacker) == CSW_QB && g_had_qb[attacker])
- {
- static Float:random_start, Float:random_end
- random_start = get_pcvar_float(cvar_randmg_start)
- random_end = get_pcvar_float(cvar_randmg_end)
- SetHamParamFloat(4, random_float(random_start, random_end))
- }
- return HAM_HANDLED
- }
- public make_bullet(id, Float:Origin[3])
- {
- // Find target
- new target, body
- get_user_aiming(id, target, body, 999999)
- if(target > 0 && target <= get_maxplayers())
- {
- new Float:fStart[3], Float:fEnd[3], Float:fRes[3], Float:fVel[3]
- pev(id, pev_origin, fStart)
- // Get ids view direction
- velocity_by_aim(id, 64, fVel)
- // Calculate position where blood should be displayed
- fStart[0] = Origin[0]
- fStart[1] = Origin[1]
- fStart[2] = Origin[2]
- fEnd[0] = fStart[0]+fVel[0]
- fEnd[1] = fStart[1]+fVel[1]
- fEnd[2] = fStart[2]+fVel[2]
- // Draw traceline from victims origin into ids view direction to find
- // the location on the wall to put some blood on there
- new res
- engfunc(EngFunc_TraceLine, fStart, fEnd, 0, target, res)
- get_tr2(res, TR_vecEndPos, fRes)
- // Show some blood :)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_BLOODSPRITE)
- write_coord(floatround(fStart[0]))
- write_coord(floatround(fStart[1]))
- write_coord(floatround(fStart[2]))
- write_short(g_bloodspray)
- write_short(g_blood)
- write_byte(70)
- write_byte(random_num(1,2))
- message_end()
- } else {
- new decal = 41
- // Check if the wall hit is an entity
- if(target)
- {
- // Put decal on an entity
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_DECAL)
- write_coord(floatround(Origin[0]))
- write_coord(floatround(Origin[1]))
- write_coord(floatround(Origin[2]))
- write_byte(decal)
- write_short(target)
- message_end()
- } else {
- // Put decal on "world" (a wall)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_WORLDDECAL)
- write_coord(floatround(Origin[0]))
- write_coord(floatround(Origin[1]))
- write_coord(floatround(Origin[2]))
- write_byte(decal)
- message_end()
- }
- // Show sparcles
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
- write_byte(TE_GUNSHOTDECAL)
- write_coord(floatround(Origin[0]))
- write_coord(floatround(Origin[1]))
- write_coord(floatround(Origin[2]))
- write_short(id)
- write_byte(decal)
- message_end()
- }
- }
- public fm_cmdstart(id, uc_handle, seed)
- {
- if(!is_user_alive(id) || !is_user_connected(id))
- return
- if(get_user_weapon(id) != CSW_QB || !g_had_qb[id])
- return
- new CurButton
- CurButton = get_uc(uc_handle, UC_Buttons)
- if(CurButton & IN_RELOAD)
- {
- CurButton &= ~IN_RELOAD
- set_uc(uc_handle, UC_Buttons, CurButton)
- new ent = find_ent_by_owner(-1, "weapon_xm1014", id)
- if (!ent)
- return
- new fInReload = get_pdata_int(ent, m_fInReload, 4)
- new Float:flNextAttack ; flNextAttack = get_pdata_float(id, m_flNextAttack, 5)
- if (flNextAttack > 0.0)
- return
- if (fInReload)
- {
- set_weapon_anim(id, 0)
- return
- }
- if(cs_get_weapon_ammo(ent) >= get_pcvar_num(cvar_default_clip))
- {
- set_weapon_anim(id, 0)
- return
- }
- ham_reload(ent)
- }
- if(CurButton & IN_ATTACK2)
- {
- static Float:CurTime
- CurTime = get_gametime()
- if(CurTime - 4.0 > g_last_fire_qb[id])
- {
- static ent, ammo
- ent = find_ent_by_owner(-1, "weapon_xm1014", id)
- ammo = cs_get_weapon_ammo(ent)
- if(cs_get_weapon_ammo(ent) <= 0)
- return
- for(new i = 0; i < ammo; i++)
- {
- ExecuteHamB(Ham_Weapon_PrimaryAttack, ent)
- }
- emit_sound(id, CHAN_WEAPON, qb_sound[4], 1.0, ATTN_NORM, 0, PITCH_NORM)
- set_weapon_anim(id, random_num(1, 2))
- g_last_fire_qb[id] = CurTime
- }
- }
- if(CurButton & IN_ATTACK)
- {
- static Float:CurTime
- CurTime = get_gametime()
- CurButton &= ~IN_ATTACK
- set_uc(uc_handle, UC_Buttons, CurButton)
- static ent
- ent = find_ent_by_owner(-1, "weapon_xm1014", id)
- if(cs_get_weapon_ammo(ent) <= 0 || get_pdata_int(ent, m_fInReload, XTRA_OFS_WEAPON))
- return
- if(CurTime - get_pcvar_float(cvar_delayattack) > g_last_fire2[id])
- {
- emit_sound(id, CHAN_WEAPON, qb_sound[4], 1.0, ATTN_NORM, 0, PITCH_NORM)
- ExecuteHamB(Ham_Weapon_PrimaryAttack, ent)
- set_weapon_anim(id, random_num(1, 2))
- g_last_fire2[id] = CurTime
- }
- }
- return
- }
- public ham_reload(iEnt)
- {
- new id = pev(iEnt, pev_owner)
- if( g_had_qb[id])
- {
- static Cur_BpAmmo
- Cur_BpAmmo = cs_get_user_bpammo(id, CSW_QB)
- if(Cur_BpAmmo > 0)
- {
- set_pdata_int(iEnt, 55, 0, 4)
- set_pdata_float(id, 83, get_pcvar_float(cvar_reloadtime), 4)
- set_pdata_float(iEnt, 48, get_pcvar_float(cvar_reloadtime) + 0.5, 4)
- set_pdata_float(iEnt, 46, get_pcvar_float(cvar_reloadtime) + 0.25, 4)
- set_pdata_float(iEnt, 47, get_pcvar_float(cvar_reloadtime) + 0.25, 4)
- set_pdata_int(iEnt, 54, 1, 4)
- set_weapon_anim(id, 3)
- }
- return HAM_HANDLED
- }
- return HAM_IGNORED
- }
- public fw_SetModel_qb(entity, model[])
- {
- if(!is_valid_ent(entity))
- return FMRES_IGNORED;
- static szClassName[33]
- entity_get_string(entity, EV_SZ_classname, szClassName, charsmax(szClassName))
- if(!equal(szClassName, "weaponbox"))
- return FMRES_IGNORED;
- static iOwner
- iOwner = entity_get_edict(entity, EV_ENT_owner)
- if(equal(model, "models/w_xm1014.mdl"))
- {
- static weapon
- weapon = find_ent_by_owner(-1, "weapon_xm1014", entity)
- if(!is_valid_ent(weapon))
- return FMRES_IGNORED;
- if(g_had_qb[iOwner])
- {
- entity_set_int(weapon, EV_INT_impulse, 120)
- g_had_qb[iOwner] = 0
- set_pev(weapon, pev_iuser3, cs_get_weapon_ammo(weapon))
- entity_set_model(entity, qb_w_model)
- return FMRES_SUPERCEDE
- }
- }
- return FMRES_IGNORED;
- }
- public fw_item_addtoplayer_qb(ent, id)
- {
- if(!is_valid_ent(ent))
- return HAM_IGNORED
- if(entity_get_int(ent, EV_INT_impulse) == 120)
- {
- g_had_qb[id] = 1
- cs_set_weapon_ammo(ent, pev(ent, pev_iuser3))
- entity_set_int(id, EV_INT_impulse, 0)
- check_draw_weapon(id)
- return HAM_HANDLED
- }
- return HAM_HANDLED
- }
- public ham_priattack(ent)
- {
- static id
- id = pev(ent, pev_owner)
- if(g_had_qb[id])
- {
- if(cs_get_weapon_ammo(ent) > 0)
- {
- emit_sound(id, CHAN_WEAPON, qb_sound[4], 1.0, ATTN_NORM, 0, PITCH_NORM)
- }
- set_pdata_float(id, 83, 0.3, 4)
- }
- }
- public ham_postframe(iEnt)
- {
- new id = pev(iEnt, pev_owner)
- if(g_had_qb[id])
- {
- static iBpAmmo ; iBpAmmo = get_pdata_int(id, 381, XTRA_OFS_PLAYER)
- static iClip ; iClip = get_pdata_int(iEnt, m_iClip, XTRA_OFS_WEAPON)
- static iMaxClip ; iMaxClip = get_pcvar_num(cvar_default_clip)
- if(get_pdata_int(iEnt, m_fInReload, XTRA_OFS_WEAPON) && get_pdata_float(id, m_flNextAttack, 5) <= 0.0 )
- {
- new j = min(iMaxClip - iClip, iBpAmmo)
- set_pdata_int(iEnt, m_iClip, iClip + j, XTRA_OFS_WEAPON)
- set_pdata_int(id, 381, iBpAmmo-j, XTRA_OFS_PLAYER)
- set_pdata_int(iEnt, m_fInReload, 0, XTRA_OFS_WEAPON)
- cs_set_weapon_ammo(iEnt, get_pcvar_num(cvar_default_clip))
- return
- }
- }
- }
- public ShowSalamanderIcon ( id ) {
- if ( user_has_weapon ( id, CSW_M249 ) && ( salamander [ id ] ) ) {
- new iconstatus;
- iconstatus = get_user_msgid ( "StatusIcon" );
- if ( ! ( pev ( id,pev_button ) & FL_ONGROUND ) )
- {
- message_begin ( MSG_ONE,iconstatus,{ 0,0,0 },id );
- write_byte ( 1 ); // status (0=hide, 1=show, 2=flash)
- write_string ( "dmg_heat" ); // sprite name
- write_byte ( 255 ); // red
- write_byte ( 0 ); // green
- write_byte ( 0 ); // blue
- message_end ( );
- }
- }
- if ( get_user_weapon ( id ) == CSW_M249 && ( salamander [ id ] ) ) {
- new iconstatus;
- iconstatus = get_user_msgid ( "StatusIcon" );
- if ( ! ( pev ( id,pev_button ) & FL_ONGROUND ) )
- {
- message_begin ( MSG_ONE,iconstatus,{ 0,0,0 },id );
- write_byte ( 2 ); // status (0=hide, 1=show, 2=flash)
- write_string ( "dmg_heat" ); // sprite name
- write_byte ( 255 ); // red
- write_byte ( 0 ); // green
- write_byte ( 0 ); // blue
- message_end ( );
- }
- }
- if ( !salamander [ id ] || !user_has_weapon ( id, CSW_M249 ) ) {
- new iconstatus;
- iconstatus = get_user_msgid ( "StatusIcon" );
- if ( ! ( pev ( id,pev_button ) & FL_ONGROUND ) )
- {
- message_begin ( MSG_ONE,iconstatus,{ 0,0,0 },id );
- write_byte ( 0 ); // status (0=hide, 1=show, 2=flash)
- write_string ( "dmg_heat" ); // sprite name
- write_byte ( 255 ); // red
- write_byte ( 0 ); // green
- write_byte ( 0 ); // blue
- message_end ( );
- }
- }
- }
- public fw_spawn ( id ) {
- if(g_had_salamander[id])
- g_had_salamander[id] = false
- if(task_exists(id+TASK_FIRE)) remove_task(id+TASK_FIRE)
- if(task_exists(id+TASK_RELOAD)) remove_task(id+TASK_RELOAD)
- remove_entity_name(fire_classname)
- }
- stock make_blood(const Float:vTraceEnd[3], Float:Damage, hitEnt) {
- new bloodColor = ExecuteHam(Ham_BloodColor, hitEnt);
- if(bloodColor == -1)
- return;
- new amount = floatround(Damage);
- amount *= 2; //according to HLSDK
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_BLOODSPRITE);
- write_coord(floatround(vTraceEnd[0]));
- write_coord(floatround(vTraceEnd[1]));
- write_coord(floatround(vTraceEnd[2]));
- write_short(BloodSpray);
- write_short(BloodDrop);
- write_byte(bloodColor);
- write_byte(min(max(3, amount/10), 16));
- message_end();
- }
- // Make knockback
- public make_knockback(Victim, Float:origin[3], Float:maxspeed) {
- // Get and set velocity
- new Float:fVelocity[3];
- kickback(Victim, origin, maxspeed, fVelocity);
- entity_set_vector(Victim, EV_VEC_velocity, fVelocity);
- return(1);
- }
- // Extra calulation for knockback
- stock kickback(ent, Float:fOrigin[3], Float:fSpeed, Float:fVelocity[3]) {
- // Find origin
- new Float:fEntOrigin[3];
- entity_get_vector(ent, EV_VEC_origin, fEntOrigin);
- // Do some calculations
- new Float:fDistance[3];
- fDistance[0] = fEntOrigin[0] - fOrigin[0];
- fDistance[1] = fEntOrigin[1] - fOrigin[1];
- fDistance[2] = fEntOrigin[2] - fOrigin[2];
- new Float:fTime =(vector_distance(fEntOrigin,fOrigin) / fSpeed);
- fVelocity[0] = fDistance[0] / fTime;
- fVelocity[1] = fDistance[1] / fTime;
- fVelocity[2] = fDistance[2] / fTime;
- return(fVelocity[0] && fVelocity[1] && fVelocity[2]);
- }
- stock death_message(Killer, Victim, ScoreBoard, const Weapon[]) {
- // Block death msg
- set_msg_block(get_user_msgid("DeathMsg"), BLOCK_SET);
- ExecuteHamB(Ham_Killed, Victim, Killer, 2);
- set_msg_block(get_user_msgid("DeathMsg"), BLOCK_NOT);
- // Death
- make_deathmsg(Killer, Victim, 0, Weapon);
- cs_set_user_money(Killer, cs_get_user_money(Killer) + 300);
- // Update score board
- if(ScoreBoard) {
- message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo"));
- write_byte(Killer); // id
- write_short(pev(Killer, pev_frags)); // frags
- write_short(cs_get_user_deaths(Killer)); // deaths
- write_short(0); // class?
- write_short(get_user_team(Killer)); // team
- message_end();
- message_begin(MSG_BROADCAST, get_user_msgid("ScoreInfo"));
- write_byte(Victim); // id
- write_short(pev(Victim, pev_frags)); // frags
- write_short(cs_get_user_deaths(Victim)); // deaths
- write_short(0); // class?
- write_short(get_user_team(Victim)); // team
- message_end();
- }
- }
- stock get_damage_body(body, Float:damage) {
- switch(body) {
- case HIT_HEAD: damage *= 4.0;
- case HIT_STOMACH: damage *= 1.1;
- case HIT_CHEST: damage *= 1.5;
- case HIT_LEFTARM: damage *= 0.77;
- case HIT_RIGHTARM: damage *= 0.77;
- case HIT_LEFTLEG: damage *= 0.75;
- case HIT_RIGHTLEG: damage *= 0.75;
- default: damage *= 1.0;
- }
- return floatround(damage);
- }
- stock fm_get_user_bpammo(index, weapon) {
- static offset
- switch(weapon) {
- case CSW_AWP: offset = OFFSET_AMMO_338MAGNUM
- case CSW_SCOUT, CSW_AK47, CSW_G3SG1: offset = OFFSET_AMMO_762NATO
- case CSW_M249: offset = OFFSET_AMMO_556NATOBOX
- case CSW_FAMAS, CSW_M4A1, CSW_AUG,
- CSW_SG550, CSW_GALI, CSW_SG552: offset = OFFSET_AMMO_556NATO
- case CSW_M3, CSW_XM1014: offset = OFFSET_AMMO_BUCKSHOT
- case CSW_USP, CSW_UMP45, CSW_MAC10: offset = OFFSET_AMMO_45ACP
- case CSW_FIVESEVEN, CSW_P90: offset = OFFSET_AMMO_57MM
- case CSW_DEAGLE: offset = OFFSET_AMMO_50AE
- case CSW_P228: offset = OFFSET_AMMO_357SIG
- case CSW_GLOCK18, CSW_TMP, CSW_ELITE,
- CSW_MP5NAVY: offset = OFFSET_AMMO_9MM
- default: offset = 0
- }
- return offset ? get_pdata_int(index, offset) : 0
- }
- stock fm_set_user_bpammo(index, weapon, amount) {
- static offset
- switch(weapon) {
- case CSW_AWP: offset = OFFSET_AMMO_338MAGNUM
- case CSW_SCOUT, CSW_AK47, CSW_G3SG1: offset = OFFSET_AMMO_762NATO
- case CSW_M249: offset = OFFSET_AMMO_556NATOBOX
- case CSW_FAMAS, CSW_M4A1, CSW_AUG,
- CSW_SG550, CSW_GALI, CSW_SG552: offset = OFFSET_AMMO_556NATO
- case CSW_M3, CSW_XM1014: offset = OFFSET_AMMO_BUCKSHOT
- case CSW_USP, CSW_UMP45, CSW_MAC10: offset = OFFSET_AMMO_45ACP
- case CSW_FIVESEVEN, CSW_P90: offset = OFFSET_AMMO_57MM
- case CSW_DEAGLE: offset = OFFSET_AMMO_50AE
- case CSW_P228: offset = OFFSET_AMMO_357SIG
- case CSW_GLOCK18, CSW_TMP, CSW_ELITE,
- CSW_MP5NAVY: offset = OFFSET_AMMO_9MM
- default: offset = 0
- }
- if(offset)
- set_pdata_int(index, offset, amount)
- return 1
- }
- // Get Weapon Entity's CSW_ ID
- stock fm_get_weapon_ent_id(ent) {
- return get_pdata_int(ent, OFFSET_WEAPONID, 4);
- }
- // Get Weapon Entity's Owner
- stock fm_get_weapon_ent_owner(ent) {
- return get_pdata_cbase(ent, 41, 4);
- }
- // Drop all primary guns
- stock drop_primary_weapons(Player) {
- // Get user weapons
- static weapons[32], num, i, weaponid;
- num = 0; // reset passed weapons count(bugfix)
- get_user_weapons(Player, weapons, num);
- // Loop through them and drop primaries
- for(i = 0; i < num; i++) {
- // Prevent re-indexing the array
- weaponid = weapons [i];
- // We definetely are holding primary gun
- if(((1<<weaponid) & PRIMARY_WEAPONS_BITSUM)) {
- // Get weapon entity
- static wname[32];
- get_weaponname(weaponid, wname, charsmax(wname));
- // Player drops the weapon and looses his bpammo
- engclient_cmd(Player, "drop", wname);
- }
- }
- }
- public RefreshWeapons ( id ) {
- strip_user_weapons ( id );
- give_item ( id, "weapon_knife" );
- remove_dragoncannon ( id );
- g_had_qb [ id ] = 0;
- dual_mp5 [ id ] = false;
- k1ases_weapon [ id ] = false;
- salamander [ id ] = false;
- SalamanderLimit [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- elf_knife [ id ] = false;
- ignes_knife [ id ] = false;
- vip_axe_knife [ id ] = false;
- trainer [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- druid [ id ] = false;
- deklowaz [ id ] = false;
- strike_grenade [ id ] = false;
- HasPower[id] = 0;
- Drop_Cooldown[id] = 0;
- UserHaveQuad [ id ] = false;
- UserHaveDragon [ id ] = false;
- g_hasM79[id] = false
- g_canShoot[id] = false
- g_last_shot_time[id] = 0.0
- grenade_count[id] = 0
- hasOnHandM79[id] = false
- remove_icon(id );
- UserHaveM79 [ id ] = false;
- HasSpeed[id] = false;
- HasTeleport[id] = false;
- UserHasChoosed [ id ] = false;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHaveDualMp5 [ id ] = false;
- if( get_user_flags(id) & VIP_ACCESS )
- {
- set_user_scoreattrib(id, 4);
- }
- VipBonus ( id );
- if ( get_user_team ( id ) == 2 ) {
- give_item ( id, "weapon_smokegrenade" );
- flare [ id ] = true;
- }
- ShowHud ( id );
- remove_task(id);
- HE_Cooldown[id] = 0;
- GodMode_Cooldown[id] = 0;
- GodMode_DurationCooldown[id] = 0;
- Drop_Cooldown[id] = 0;
- Freeze_Cooldown[id] = 0;
- Freeze_Cooldown[id] = 0;
- remove_freeze ( id );
- BeamRemove ( id );
- Drag_Cooldown[id] = 0;
- if (Hooked[id]) {
- DragEnd ( id );
- }
- Not_Cooldown[id] = false;
- Teleport_Cooldown[id] = 0;
- }
- public cmdCheckVIP ( id ) {
- if ( get_user_team ( id ) == 1 && is_user_alive ( id ) ) {
- if ( UserHasChoosed [ id ] ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales runda aceasta puterea .", szPrefix );
- return 1;
- }
- else if ( !UserHasChoosed [ id ] ) {
- set_task ( 0.1, "cmdShowTVIPMenu", id );
- }
- }
- if ( get_user_team ( id ) == 2 && is_user_alive ( id ) ) {
- if ( UserHasChoosed [ id ] ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales runda aceasta puterea .", szPrefix );
- return 1;
- }
- else if ( !UserHasChoosed [ id ] ) {
- set_task ( 0.1, "cmdShowCTVIPMenu", id );
- }
- }
- return 1
- }
- public cmdClassMenu ( id, level, cid ) {
- ShowHud ( id );
- if ( get_user_team ( id ) == 1 ) {
- new menu = menu_create ( "\rFurien Class \yMenu", "Class_Giver" );
- if ( Level [ id ] >= 0 || Level [ id ] >= 1 || Level [ id ] >= 2 || Level [ id ] >= 3 || Level [ id ] >= 4 ) {
- menu_additem ( menu, "\yTrainer", "1", 0 );
- }
- else if ( Level [ id ] <= 0 || Level [ id ] <= 1 || Level [ id ] <= 2 || Level [ id ] <= 3 || Level [ id ] <= 4 ) {
- menu_additem ( menu, "\yTrainer \y[ \rLOCKED \y]", "1", ADMIN_RCON );
- }
- if ( Level [ id ] >= 5 || Level [ id ] >= 6 || Level [ id ] >= 7 || Level [ id ] >= 8 ) {
- menu_additem ( menu, "\yAgnos", "2", 0 );
- }
- else if ( Level [ id ] <= 5 || Level [ id ] <= 6 || Level [ id ] <= 7 || Level [ id ] <= 8 ) {
- menu_additem ( menu, "\yAgnos \y[ \rLOCKED \y]", "2", ADMIN_RCON );
- }
- if ( Level [ id ] >= 9 || Level [ id ] >= 10 || Level [ id ] >= 11 || Level [ id ] >= 12 ) {
- menu_additem ( menu, "\yXFother", "3", 0 );
- }
- else if ( Level [ id ] <= 9 || Level [ id ] <= 10 || Level [ id ] <= 11 || Level [ id ] <= 12 ) {
- menu_additem ( menu, "\yXFother \y[ \rLOCKED \y]", "3", ADMIN_RCON );
- }
- if ( Level [ id ] >= 13 || Level [ id ] >= 14 || Level [ id ] >= 15 || Level [ id ] >= 16 ) {
- menu_additem ( menu, "\ySamurai", "4", 0 );
- }
- else if ( Level [ id ] <= 13 || Level [ id ] <= 14 || Level [ id ] <= 15 || Level [ id ] <= 16 ) {
- menu_additem ( menu, "\ySamurai \y[ \rLOCKED \y]", "4", ADMIN_RCON );
- }
- if ( Level [ id ] >= 17 || Level [ id ] >= 18 || Level [ id ] >= 19 || Level [ id ] >= 20 ) {
- menu_additem ( menu, "\yExtra Samurai", "5", 0 );
- }
- else if ( Level [ id ] <= 17 || Level [ id ] <= 18 || Level [ id ] <= 19 || Level [ id ] <= 20 ) {
- menu_additem ( menu, "\yExtra Samurai \y[ \rLOCKED \y]", "5", ADMIN_RCON );
- }
- if ( Level [ id ] >= 21 || Level [ id ] >= 22 || Level [ id ] >= 23 || Level [ id ] >= 24 ) {
- menu_additem ( menu, "\yIgnes", "6", 0 );
- }
- else if ( Level [ id ] <= 21 || Level [ id ] <= 22 || Level [ id ] <= 23 || Level [ id ] <= 24 ) {
- menu_additem ( menu, "\yIgnes \y[ \rLOCKED \y]", "6", ADMIN_RCON );
- }
- if ( Level [ id ] >= 25 || Level [ id ] >= 26 || Level [ id ] >= 27 || Level [ id ] >= 28 ) {
- menu_additem ( menu, "\yElf", "7", 0 );
- }
- else if ( Level [ id ] <= 25 || Level [ id ] <= 26 || Level [ id ] <= 27 || Level [ id ] <= 28 ) {
- menu_additem ( menu, "\yElf \y[ \rLOCKED \y]", "7", ADMIN_RCON );
- }
- if ( Level [ id ] >= 29 || Level [ id ] >= 30 ) {
- menu_additem ( menu, "\yAlcadeias", "8", 0 );
- }
- else if ( Level [ id ] <= 29 || Level [ id ] <= 30 ) {
- menu_additem ( menu, "\yAlcadeias \y[ \rLOCKED \y]", "8", ADMIN_RCON );
- }
- menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
- menu_display ( id, menu, 0 );
- return 1;
- }
- else if ( get_user_team ( id ) == 2 ) {
- new menu = menu_create ( "\rAntiFurien Class \yMenu", "Class_Giver" );
- if ( Level [ id ] >= 0 || Level [ id ] >= 1 || Level [ id ] >= 2 || Level [ id ] >= 3 || Level [ id ] >= 4 ) {
- menu_additem ( menu, "\yDruid", "1", 0 );
- }
- else if ( Level [ id ] <= 0 || Level [ id ] <= 1 || Level [ id ] <= 2 || Level [ id ] <= 3 || Level [ id ] <= 4 ) {
- menu_additem ( menu, "\yDruid \y[ \rLOCKED \y]", "1", ADMIN_RCON );
- }
- if ( Level [ id ] >= 5 || Level [ id ] >= 6 || Level [ id ] >= 7 || Level [ id ] >= 8 ) {
- menu_additem ( menu, "\yHunter", "2", 0 );
- }
- else if ( Level [ id ] <= 5 || Level [ id ] <= 6 || Level [ id ] <= 7 || Level [ id ] <= 8 ) {
- menu_additem ( menu, "\yHunter \y[ \rLOCKED \y]", "2", ADMIN_RCON );
- }
- if ( Level [ id ] >= 9 || Level [ id ] >= 10 || Level [ id ] >= 11 || Level [ id ] >= 12 ) {
- menu_additem ( menu, "\yMage", "3", 0 );
- }
- else if ( Level [ id ] <= 9 || Level [ id ] <= 10 || Level [ id ] <= 11 || Level [ id ] <= 12 ) {
- menu_additem ( menu, "\yMage \y[ \rLOCKED \y]", "3", ADMIN_RCON );
- }
- if ( Level [ id ] >= 13 || Level [ id ] >= 14 || Level [ id ] >= 15 || Level [ id ] >= 16 ) {
- menu_additem ( menu, "\yRogue", "4", 0 );
- }
- else if ( Level [ id ] <= 13 || Level [ id ] <= 14 || Level [ id ] <= 15 || Level [ id ] <= 16 ) {
- menu_additem ( menu, "\yRogue \y[ \rLOCKED \y]", "4", ADMIN_RCON );
- }
- if ( Level [ id ] >= 17 || Level [ id ] >= 18 || Level [ id ] >= 19 || Level [ id ] >= 20 ) {
- menu_additem ( menu, "\yShaman", "5", 0 );
- }
- else if ( Level [ id ] <= 17 || Level [ id ] <= 18 || Level [ id ] <= 19 || Level [ id ] <= 20 ) {
- menu_additem ( menu, "\yShaman \y[ \rLOCKED \y]", "5", ADMIN_RCON );
- }
- if ( Level [ id ] >= 21 || Level [ id ] >= 22 || Level [ id ] >= 23 || Level [ id ] >= 24 ) {
- menu_additem ( menu, "\yWarlock", "6", 0 );
- }
- else if ( Level [ id ] <= 21 || Level [ id ] <= 22 || Level [ id ] <= 23 || Level [ id ] <= 24 ) {
- menu_additem ( menu, "\yWarlock \y[ \rLOCKED \y]", "6", ADMIN_RCON );
- }
- if ( Level [ id ] >= 25 || Level [ id ] >= 26 || Level [ id ] >= 27 || Level [ id ] >= 28 ) {
- menu_additem ( menu, "\yWarrior", "7", 0 );
- }
- else if ( Level [ id ] <= 25 || Level [ id ] <= 26 || Level [ id ] <= 27 || Level [ id ] <= 28 ) {
- menu_additem ( menu, "\yWarrior \y[ \rLOCKED \y]", "7", ADMIN_RCON );
- }
- if ( Level [ id ] >= 29 || Level [ id ] >= 30 ) {
- menu_additem ( menu, "\yDeklowaz", "8", 0 );
- }
- else if ( Level [ id ] <= 29 || Level [ id ] <= 30 ) {
- menu_additem ( menu, "yDeklowaz \y[ \rLOCKED \y]", "8", ADMIN_RCON );
- }
- menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
- menu_display ( id, menu, 0 );
- return 1;
- }
- return 1;
- }
- public Class_Giver ( id, menu, item ) {
- if( item == MENU_EXIT )
- {
- return 1;
- }
- new data [ 6 ], szName [ 64 ];
- new access, callback;
- menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback );
- new key = str_to_num ( data );
- switch(key)
- {
- case 1:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Trainer^3 .", szPrefix );
- trainer [ id ] = true;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- druid [ id ] = false;
- strike_grenade [ id ] = false;
- strike_grenade2 [ id ] = false;
- strike_grenade3 [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.7 );
- give_item ( id, "weapon_flashbang" );
- //set_pev ( id, pev_viewmodel2, trainer_v_model );
- //set_pev ( id, pev_weaponmodel2, trainer_p_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Druid^3 .", szPrefix );
- give_item ( id, "weapon_xm1014" );
- give_item ( id, "weapon_usp" );
- set_user_health ( id, 105 );
- set_user_armor ( id, 30 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_XM1014, 100 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- druid [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- }
- case 2:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Agnos^3 .", szPrefix );
- katana_knife [ id ] = false;
- trainer [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = true;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- strike_grenade [ id ] = false;
- strike_grenade2 [ id ] = false;
- strike_grenade3 [ id ] = false;
- druid [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 120 );
- set_user_armor ( id, 60 );
- give_item ( id, "weapon_flashbang" );
- //set_pev ( id, pev_viewmodel2, infinity_knife_v_model );
- //set_pev ( id, pev_weaponmodel2, infinity_knife_p_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Hunter^3 .", szPrefix );
- give_item ( id, "weapon_p90" );
- give_item ( id, "weapon_usp" );
- set_user_health ( id, 120 );
- set_user_armor ( id, 60 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_P90, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = true;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- druid [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- }
- case 3:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 XFother^3.^4", szPrefix );
- super_knife [ id ] = true;
- katana_knife [ id ] = false;
- trainer [ id ] = false;
- double_katana_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- elf_knife [ id ] = false;
- druid [ id ] = false;
- strike_grenade [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 120 );
- set_user_armor ( id, 60 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- //set_pev ( id, pev_viewmodel2, super_knife_v_model );
- //set_pev ( id, pev_weaponmodel2, super_knife_p_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Mage^3 .", szPrefix );
- give_item ( id, "weapon_galil" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.7 );
- set_user_health ( id, 120 );
- set_user_armor ( id, 60 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_GALIL, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- druid [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = true;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- }
- case 4:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Samurai^3 + puterea de a arunca armele inamicului .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- katana_knife [ id ] = true;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- trainer [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- druid [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- strike_grenade2 [ id ] = true;
- deklowaz [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 135 );
- set_user_armor ( id, 90 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- client_cmd(id, "bind v power");
- remove_task(id);
- if ( Drop_Cooldown [ id ] ) {
- set_task ( 0.1, "DropShowHUD", id );
- }
- HasPower [ id ] = 4;
- //set_pev ( id, pev_viewmodel2, katana_knife_v_model );
- //set_pev ( id, pev_weaponmodel2, katana_knife_p_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Rogue^3 + puterea de a trage inamicul^4 [ drag ]^3 .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- give_item ( id, "weapon_famas" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.7 );
- set_user_health ( id, 130 );
- set_user_armor ( id, 80 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_FAMAS, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = true;
- druid [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- client_cmd(id, "bind v +drag");
- remove_task(id);
- if(Drag_Cooldown[id]) {
- set_task ( 0.1, "DragShowHUD", id );
- }
- HasPower[id] = 6;
- }
- }
- }
- case 5:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Extra Samurai^3 + puterea de a arunca armele inamicului .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- double_katana_knife [ id ] = true;
- katana_knife [ id ] = false;
- trainer [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- druid [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- strike_grenade2 [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.5 );
- set_user_health ( id, 145 );
- set_user_armor ( id, 105 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_flashbang" );
- client_cmd(id, "bind v power");
- remove_task(id);
- if ( Drop_Cooldown [ id ] ) {
- set_task ( 0.1, "DropShowHUD", id );
- }
- HasPower [ id ] = 4;
- //set_pev ( id, pev_viewmodel2, double_katana_v_knife_model );
- //set_pev ( id, pev_weaponmodel2, double_katana_p_knife_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Shaman^3 + puterea de a trage inamicul^4 [ drag ]^3 .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- give_item ( id, "weapon_sg552" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.7 );
- set_user_health ( id, 145 );
- set_user_armor ( id, 90 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_SG552, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = true;
- mage [ id ] = false;
- rogue [ id ] = false;
- druid [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- client_cmd(id, "bind v +drag");
- remove_task(id);
- if(Drag_Cooldown[id]) {
- set_task ( 0.1, "DragShowHUD", id );
- }
- HasPower[id] = 6;
- }
- }
- }
- case 6:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Ignes^3 + puterea de a ingheta inamicul .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- trainer [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- ignes_knife [ id ] = true;
- elf_knife [ id ] = false;
- vip_axe_knife [ id ] = false;
- druid [ id ] = false;
- strike_grenade2 [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.5 );
- set_user_health ( id, 185 );
- set_user_armor ( id, 150 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_flashbang" );
- client_cmd(id, "bind v power");
- remove_task(id);
- if(Freeze_Cooldown[id]) {
- set_task ( 0.1, "FreezeShowHUD", id );
- }
- HasPower[id] = 5;
- //set_pev ( id, pev_viewmodel2, ignes_knife_model );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Warlock^3 + puterea de a trage perfect^4 [ norecoil ]^3 .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Puterea se activeaza automat .^4", szPrefix );
- give_item ( id, "weapon_p90" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 165 );
- set_user_armor ( id, 105 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_P90, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = true;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- druid [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- vip_axe_knife [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- remove_task(id);
- HasPower[id] = 8;
- }
- }
- }
- case 7:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Elf^3 + puterea de a ingheta inamicul .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- trainer [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = true;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- druid [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- strike_grenade3 [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- set_user_gravity ( id, 0.4 );
- set_user_health ( id, 185 );
- set_user_armor ( id, 160 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_flashbang" );
- client_cmd(id, "bind v power");
- remove_task(id);
- if(Freeze_Cooldown[id]) {
- set_task ( 0.1, "FreezeShowHUD", id );
- }
- HasPower[id] = 5;
- //set_pev ( id, pev_viewmodel2, elf_knife_model );
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Warrior^3 + puterea de a trage perfect^4 [ norecoil ]^3 .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Puterea se activeaza automat .^4", szPrefix );
- give_item ( id, "weapon_p90" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 180 );
- set_user_armor ( id, 115 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_P90, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- druid [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = true;
- vip_axe_knife [ id ] = false;
- deklowaz [ id ] = false;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- remove_task(id);
- HasPower[id] = 8;
- }
- }
- }
- case 8:
- {
- if ( get_user_team ( id ) == 1 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Alcadeias^3 + puterea de a te teleporta .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- vip_axe_knife [ id ] = true;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- thompson [ id ] = false;
- uspx [ id ] = false;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- druid [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- trainer [ id ] = false;
- elf_knife [ id ] = false;
- strike_grenade3 [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- set_user_gravity ( id, 0.4 );
- set_user_health ( id, 200 );
- set_user_armor ( id, 200 );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_flashbang" );
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- client_cmd(id, "bind v power");
- remove_task(id);
- if(Teleport_Cooldown[id]) {
- set_task ( 0.1, "TeleportShowHUD", id );
- }
- HasPower[id] = 7;
- }
- }
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ti-ai ales odata clasa runda aceasta .", szPrefix );
- }
- else {
- ColorChat ( id, GREEN, "%s Clasa ta este acum^4 Deklowaz^3 + puterea de a te teleporta .^4", szPrefix );
- ColorChat ( id, GREEN, "%s Pentru activare apasa tasta^4 V^3 .^4", szPrefix );
- give_item ( id, "weapon_p90" );
- give_item ( id, "weapon_usp" );
- set_user_gravity ( id, 0.6 );
- set_user_health ( id, 200 );
- set_user_armor ( id, 130 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- cs_set_user_bpammo ( id, CSW_P90, 200 );
- trainer [ id ] = false;
- katana_knife [ id ] = false;
- double_katana_knife [ id ] = false;
- super_knife [ id ] = false;
- infinity_knife [ id ] = false;
- ignes_knife [ id ] = false;
- elf_knife [ id ] = false;
- thompson [ id ] = false;
- druid [ id ] = false;
- uspx [ id ] = true;
- hunter [ id ] = false;
- shaman [ id ] = false;
- mage [ id ] = false;
- rogue [ id ] = false;
- warrior [ id ] = false;
- deklowaz [ id ] = true;
- super_knife_shop [ id ] = false;
- super_knife_shop2 [ id ] = false;
- ++g_Menu [ id ];
- ++g_Menu [ id ];
- client_cmd(id, "bind v power");
- remove_task(id);
- if(Teleport_Cooldown[id]) {
- set_task ( 0.1, "TeleportShowHUD", id );
- }
- HasPower[id] = 7;
- }
- }
- }
- }
- ShowHud ( id );
- if ( get_user_team ( id ) == 1 ) {
- cs_set_user_model(id, "furienxp")
- }
- if ( get_user_team ( id ) == 2 ) {
- cs_set_user_model(id, "furienxp2")
- }
- menu_destroy ( menu );
- return 1;
- }
- public cmdShop ( id, level, cid ) {
- if ( is_user_alive ( id ) ) {
- new menu = menu_create( "Shop Menu", "MenuShopGiver");
- if ( get_user_team ( id ) == 1 ) {
- menu_additem ( menu, "\ySuper Knife \y[ \r8000 $\y ]", "1", 0 );
- }
- menu_additem ( menu, "\yHE Grenade \y[ \r2500 $\y ]", "2", 0 );
- if ( get_user_team ( id ) == 2 ) {
- menu_additem ( menu, "\yDefuse Kit \y[ \r300 $\y ]", "3", 0 );
- }
- menu_additem ( menu, "\r+\y50 HP \y[ \r3000 $\y ]", "4", 0 );
- menu_additem ( menu, "\r+\y50 AP\r + \yHelmet \y[ \r2000 $\y ]", "5", 0 );
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, menu, 0);
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu poti folosi shop-ul cand esti mort.^4", szPrefix );
- }
- return 1;
- }
- public MenuShopGiver ( id, menu, item ) {
- if( item == MENU_EXIT )
- {
- return 1;
- }
- new data[6], szName[64];
- new access, callback;
- menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
- new key = str_to_num(data);
- switch(key)
- {
- case 1:
- {
- new iPret = cs_get_user_money ( id ) - 8000;
- if( iPret < 0 )
- {
- client_print( id, print_center, "Nu ai destui bani !" );
- return 1;
- }
- else
- {
- if ( Level [ id ] < 15 ) {
- super_knife_shop [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model );
- cs_set_user_money ( id, iPret );
- }
- else if ( Level [ id ] >= 15 ) {
- super_knife_shop2 [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model2 );
- set_pev ( id, pev_weaponmodel2, super_knife_shop_p_model2 );
- cs_set_user_money ( id, iPret );
- }
- return 1;
- }
- return 1
- }
- case 2:
- {
- new iPret = cs_get_user_money ( id ) - 2500;
- if( iPret < 0 )
- {
- client_print( id, print_center, "Nu ai destui bani !" );
- return 1;
- }
- else
- {
- give_item ( id, "weapon_hegrenade" );
- cs_set_user_money ( id, iPret );
- return 1;
- }
- return 1
- }
- case 3:
- {
- new iPret = cs_get_user_money ( id ) - 300;
- if( iPret < 0 )
- {
- client_print( id, print_center, "Nu ai destui bani !" );
- return 1;
- }
- else
- {
- give_item ( id, "item_thighpack" );
- cs_set_user_money ( id, iPret );
- return 1;
- }
- return 1
- }
- case 4:
- {
- new iPret = cs_get_user_money ( id ) - 3000;
- if( iPret < 0 )
- {
- client_print( id, print_center, "Nu ai destui bani !" );
- return 1;
- }
- else
- {
- set_dhudmessage ( 31, 201, 31, 0.02, 0.90, 0, 6.0, 1.0 );
- show_dhudmessage ( id, "+50 HP" );
- set_user_health ( id, get_user_health ( id ) + 50 );
- cs_set_user_money ( id, iPret );
- if ( get_user_team ( id ) == 2 && Level [ id ] < 20 ) {
- emit_sound(id, CHAN_ITEM, buy_AntiFurienHealth, 0.6, ATTN_NORM, 0, PITCH_NORM)
- af ( id );
- }
- if ( get_user_team ( id ) == 2 && Level [ id ] >= 20 ) {
- emit_sound(id, CHAN_ITEM, buy_FurienHealth, 0.6, ATTN_NORM, 0, PITCH_NORM)
- fr ( id );
- }
- return 1;
- }
- return 1
- }
- case 5:
- {
- new iPret = cs_get_user_money ( id ) - 2000;
- if( iPret < 0 )
- {
- client_print( id, print_center, "Nu ai destui bani !" );
- return 1;
- }
- else
- {
- set_dhudmessage ( 31, 201, 31, 0.20, 0.90, 0, 6.0, 1.0 );
- show_dhudmessage ( id, "+50 AP" );
- set_user_armor ( id, get_user_armor ( id ) + 50 );
- cs_set_user_money ( id, iPret );
- return 1;
- }
- return 1
- }
- }
- menu_destroy(menu);
- return 1
- }
- furien(origin[3]) {
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_SPRITE)
- write_coord(origin[0])
- write_coord(origin[1])
- write_coord(origin[2]+=30)
- write_short(g_FurienHealth)
- write_byte(8)
- write_byte(255)
- message_end()
- }
- antifurien(origin[3]) {
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_SPRITE)
- write_coord(origin[0])
- write_coord(origin[1])
- write_coord(origin[2]+=30)
- write_short(g_AntiFurienHealth)
- write_byte(8)
- write_byte(255)
- message_end()
- }
- public fr(victim)
- {
- new origin[3]
- get_user_origin(victim,origin)
- furien(origin)
- }
- public af(victim)
- {
- new origin[3]
- get_user_origin(victim,origin)
- antifurien(origin)
- }
- public cmdShowTVIPMenu ( id, level, cid ) {
- new menu = menu_create ( "FurienVIP Menu", "MenuTVIPGiver" )
- if ( !UserHaveHpAndAp [ id ] ) {
- menu_additem ( menu, "\y225 HP\w &\y 225 AP", "1", VIP_ACCESS );
- }
- else if ( UserHaveHpAndAp [ id ] ) {
- menu_additem ( menu, "\w225 HP\y &\w 225 AP", "1", VIP_ACCESS );
- }
- if ( !UserHaveHeGrenade [ id ] ) {
- menu_additem ( menu, "\yHE GRENADE", "2", VIP_ACCESS );
- }
- else if ( UserHaveHeGrenade [ id ] ) {
- menu_additem ( menu, "\wHE GRENADE", "2", VIP_ACCESS );
- }
- if ( !UserHaveGodMode [ id ] ) {
- menu_additem ( menu, "\yGOD MODE", "3", VIP_ACCESS );
- }
- else if ( UserHaveGodMode [ id ] ) {
- menu_additem ( menu, "\wGOD MODE", "3", VIP_ACCESS );
- }
- if ( !UserHaveNoClip [ id ] ) {
- menu_additem ( menu, "\yNOCLIP", "4", VIP_ACCESS );
- }
- else if ( UserHaveNoClip [ id ] ) {
- menu_additem ( menu, "\wNOCLIP", "4", VIP_ACCESS );
- }
- if ( !UserHaveTeleport [ id ] ) {
- menu_additem ( menu, "\yTELEPORT", "5", VIP_ACCESS );
- }
- else if ( UserHaveTeleport [ id ] ) {
- menu_additem ( menu, "\wTELEPORT", "5", VIP_ACCESS );
- }
- if ( !UserHaveSuperKnife [ id ] ) {
- menu_additem ( menu, "\ySUPER KNIFE", "6", VIP_ACCESS );
- }
- else if ( UserHaveSuperKnife [ id ] ) {
- menu_additem ( menu, "\wSUPER KNIFE", "6", VIP_ACCESS );
- }
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, menu, 0);
- return 1
- }
- public cmdShowCTVIPMenu ( id, level, cid ) {
- new menu = menu_create ( "FurienVIP Menu", "MenuCTVIPGiver" )
- if ( !UserHaveHpAndAp [ id ] ) {
- menu_additem ( menu, "\y225 HP\w &\y 225 AP", "1", VIP_ACCESS );
- }
- else if ( UserHaveHpAndAp [ id ] ) {
- menu_additem ( menu, "\w225 HP\y &\w 225 AP", "1", VIP_ACCESS );
- }
- if ( !UserHaveHeGrenade [ id ] ) {
- menu_additem ( menu, "\yHE GRENADE", "2", VIP_ACCESS );
- }
- else if ( UserHaveHeGrenade [ id ] ) {
- menu_additem ( menu, "\wHE GRENADE", "2", VIP_ACCESS );
- }
- if ( !UserHaveGodMode [ id ] ) {
- menu_additem ( menu, "\yGOD MODE", "3", VIP_ACCESS );
- }
- else if ( UserHaveGodMode [ id ] ) {
- menu_additem ( menu, "\wGOD MODE", "3", VIP_ACCESS );
- }
- if ( !UserHaveNoClip [ id ] ) {
- menu_additem ( menu, "\yNOCLIP", "4", VIP_ACCESS );
- }
- else if ( UserHaveNoClip [ id ] ) {
- menu_additem ( menu, "\wNOCLIP", "4", VIP_ACCESS );
- }
- if ( !UserHaveTeleport [ id ] ) {
- menu_additem ( menu, "\yTELEPORT", "5", VIP_ACCESS );
- }
- else if ( UserHaveTeleport [ id ] ) {
- menu_additem ( menu, "\wTELEPORT", "5", VIP_ACCESS );
- }
- if ( !UserHaveSuperKnife [ id ] ) {
- menu_additem ( menu, "\yDUAL MP5", "6", VIP_ACCESS );
- }
- else if ( UserHaveSuperKnife [ id ] ) {
- menu_additem ( menu, "\wDUAL MP5", "6", VIP_ACCESS );
- }
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, menu, 0);
- return 1
- }
- public MenuCTVIPGiver ( id, menu, item )
- {
- if( item == MENU_EXIT )
- {
- return 1
- }
- new data[6], szName[64];
- new access, callback;
- menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
- new key = str_to_num(data);
- switch(key)
- {
- case 1:
- {
- if ( UserHaveHpAndAp [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .^4", szPrefix );
- return 1;
- }
- else if ( !UserHaveHpAndAp [ id ] ) {
- set_user_health ( id, 225 );
- set_user_armor ( id, 225 );
- ColorChat ( id, GREEN, "%s Ai primit^4 225 HP^3 &^4 225 AP^3 .^4", szPrefix );
- UserHaveHpAndAp [ id ] = true;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 2:
- {
- if ( UserHaveHeGrenade [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveHeGrenade [ id ] ) {
- give_item ( id, "weapon_hegrenade" );
- ColorChat ( id, GREEN, "%s Vei primi o grenada^4 HE^3 odata la^4 15^3 secunde .^4", szPrefix );
- UserHaveHeGrenade [ id ] = true;
- set_task(15.0, "GiveMeAHeGrenade", id, _, _, "b");
- UserHaveGodMode [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 3:
- {
- if ( UserHaveGodMode [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveGodMode [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai primit^4 GodMode^3, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveGodMode [ id ] = true;
- client_cmd ( id, "bind z vippower" );
- UserHaveHeGrenade [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 4:
- {
- if ( UserHaveNoClip [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveNoClip [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai primit^4 NoClip^3, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveNoClip [ id ] = true;
- client_cmd ( id, "bind z vippower" );
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 5:
- {
- if ( UserHaveTeleport [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveTeleport [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai primit puterea de a te^4 Teleporta^3, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveTeleport [ id ] = true;
- client_cmd ( id, "bind z power" );
- remove_task(id);
- if(Teleport_Cooldown[id]) {
- set_task ( 0.1, "TeleportShowHUD", id );
- }
- HasPower[id] = 7;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 6:
- {
- if ( UserHaveDualMp5 [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveDualMp5 [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai primit^4 Dual Mp5^3 . ^4", szPrefix );
- strip_user_weapons ( id );
- give_item ( id, "weapon_knife" );
- give_item ( id, "weapon_mp5navy" );
- give_item ( id, "weapon_hegrenade" );
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_smokegrenade" );
- give_item ( id, "weapon_usp" );
- cs_set_user_bpammo ( id, CSW_MP5NAVY, 200 );
- cs_set_user_bpammo ( id, CSW_USP, 100 );
- dual_mp5 [ id ] = true;
- uspx [ id ] = true;
- flare [ id ] = true;
- UserHaveDualMp5 [ id ] = true;
- g_has_k1ases[id] = false
- g_delay[id] = 0
- g_ammoclaw[id] = 0
- UserHaveTeleport [ id ] = false;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- }
- menu_destroy(menu);
- return 1
- }
- public MenuTVIPGiver ( id, menu, item )
- {
- if( item == MENU_EXIT )
- {
- return 1
- }
- new data[6], szName[64];
- new access, callback;
- menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
- new key = str_to_num(data);
- switch(key)
- {
- case 1:
- {
- if ( UserHaveHpAndAp [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .^4", szPrefix );
- return 1;
- }
- else if ( !UserHaveHpAndAp [ id ] ) {
- set_user_health ( id, 225 );
- set_user_armor ( id, 225 );
- ColorChat ( id, GREEN, "%s Vei primi^4 225 HP^3 &^4 225 AP^3 in fiecare runda .^4", szPrefix );
- UserHaveHpAndAp [ id ] = true;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 2:
- {
- if ( UserHaveHeGrenade [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveHeGrenade [ id ] ) {
- give_item ( id, "weapon_hegrenade" );
- ColorChat ( id, GREEN, "%s Vei primi o grenada^4 HE^3 odata la^4 15^3 secunde .^4", szPrefix );
- UserHaveHeGrenade [ id ] = true;
- set_task(15.0, "GiveMeAHeGrenade", id, _, _, "b");
- UserHaveGodMode [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 3:
- {
- if ( UserHaveGodMode [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveGodMode [ id ] ) {
- ColorChat ( id, GREEN, "%s Vei primi^4 GodMode^3 in fiecare runda, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveGodMode [ id ] = true;
- client_cmd ( id, "bind z vippower" );
- UserHaveHeGrenade [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 4:
- {
- if ( UserHaveNoClip [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveNoClip [ id ] ) {
- ColorChat ( id, GREEN, "%s Vei primi^4 NoClip^3 in fiecare runda, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveNoClip [ id ] = true;
- client_cmd ( id, "bind z vippower" );
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveTeleport [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 5:
- {
- if ( UserHaveTeleport [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveTeleport [ id ] ) {
- ColorChat ( id, GREEN, "%s Vei primi puterea de a te^4 Teleporta^3 in fiecare runda, apasa tasta^4 Z^3 pentru activare. ^4", szPrefix );
- UserHaveTeleport [ id ] = true;
- client_cmd ( id, "bind z power" );
- remove_task(id);
- if(Teleport_Cooldown[id]) {
- set_task ( 0.1, "TeleportShowHUD", id );
- }
- HasPower[id] = 7;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- case 6:
- {
- if ( UserHaveSuperKnife [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai deja aceasta putere .", szPrefix );
- return 1;
- }
- else if ( !UserHaveSuperKnife [ id ] ) {
- ColorChat ( id, GREEN, "%s Vei primi^4 SuperKnife^3 in fiecare runda. ^4", szPrefix );
- if ( Level [ id ] < 15 ) {
- super_knife_shop [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model );
- }
- else if ( Level [ id ] >= 15 ) {
- super_knife_shop2 [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model2 );
- set_pev ( id, pev_weaponmodel2, super_knife_shop_p_model2 );
- }
- UserHaveSuperKnife [ id ] = true;
- UserHaveTeleport [ id ] = false;
- UserHaveHeGrenade [ id ] = false;
- UserHaveGodMode [ id ] = false;
- UserHaveSuperKnife [ id ] = false;
- UserHaveNoClip [ id ] = false;
- UserHaveHpAndAp [ id ] = false;
- UserHasChoosed [ id ] = true;
- }
- }
- }
- menu_destroy(menu);
- return 1
- }
- public GiveMeAHeGrenade ( id ) {
- if ( UserHaveHeGrenade [ id ] ) {
- give_item ( id, "weapon_hegrenade" );
- set_hudmessage(0, 100, 225, 0.05, 0.60, 0, 6.0, 1.0)
- show_hudmessage ( id, "Ai primit o grenada HE" );
- }
- }
- public StopGodMode ( id ) {
- if ( UserHaveGodMode [ id ] ) {
- set_user_godmode ( id, 0 );
- }
- }
- public StopNoClip ( id ) {
- if ( UserHaveNoClip [ id ] ) {
- set_user_noclip ( id, 0 );
- }
- }
- public VIPpower ( id ) {
- if ( UserHaveGodMode [ id ] ) {
- set_user_godmode ( id, 1 );
- set_task(3.0, "StopGodMode", id );
- client_print ( id, print_center, "Ai GodMode penbtru 3 secunde" );
- }
- if ( UserHaveNoClip [ id ] ) {
- set_user_noclip ( id, 1 );
- set_task ( 4.0, "StopNoClip", id );
- client_print ( id, print_center, "Ai NoClip penbtru 4 secunde" );
- }
- }
- public VipBonus ( id ) {
- if ( UserHaveHpAndAp [ id ] ) {
- set_user_health ( id, 225 );
- set_user_armor ( id, 225 );
- }
- if ( UserHaveHeGrenade [ id ] ) {
- give_item ( id, "weapon_hegrenade" );
- set_task(15.0, "GiveMeAHeGrenade", id, _, _, "b");
- }
- if ( UserHaveGodMode [ id ] ) {
- client_cmd ( id, "bind z vippower" );
- }
- if ( UserHaveNoClip [ id ] ) {
- client_cmd ( id, "bind z vippower" );
- }
- if ( UserHaveTeleport [ id ] ) {
- client_cmd ( id, "bind z power" );
- }
- if ( UserHaveSuperKnife [ id ] ) {
- if ( Level [ id ] < 15 ) {
- super_knife_shop [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model );
- }
- else if ( Level [ id ] >= 15 ) {
- super_knife_shop2 [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model2 );
- set_pev ( id, pev_weaponmodel2, super_knife_shop_p_model2 );
- }
- }
- }
- public ForcePlayerSpeed ( id ) {
- if ( get_user_team ( id ) == 1 ) {
- if ( trainer [ id ] )
- {
- set_pev ( id, pev_maxspeed, 900.0 );
- }
- if ( infinity_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 930.0 );
- }
- if ( super_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 950.0 );
- }
- if ( katana_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 1000.0 );
- }
- if ( double_katana_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 1050.0 );
- }
- if ( ignes_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 1100.0 );
- }
- if ( elf_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 1150.0 );
- }
- if ( vip_axe_knife [ id ] )
- {
- set_pev ( id, pev_maxspeed, 1200.0 );
- }
- }
- }
- public bomb_planted ( planter ) {
- eXP [ planter ] += 35;
- ColorChat ( planter, GREEN, "%s Ai primit^4 35^3 XP pentru plantarea bombei .^4", szPrefix );
- new originnn[3];
- get_user_origin ( planter, originnn, 0 );
- message_begin(MSG_PAS, SVC_TEMPENTITY, originnn);
- write_byte(TE_BEAMCYLINDER);
- write_coord(originnn[0]);
- write_coord(originnn[1]);
- write_coord(originnn[2]+10);
- write_coord(originnn[0]);
- write_coord(originnn[1]);
- write_coord(originnn[2]+60);
- write_short(TeleportSprite);
- write_byte(0);
- write_byte(0);
- write_byte(3);
- write_byte(60);
- write_byte(0);
- write_byte(255); //255
- write_byte(0); //255
- write_byte(0); //255
- write_byte(255); //255 //RED
- write_byte(0);
- message_end();
- UTIL_CreateBeamCylinder( originnn, 120, TeleportSprite, 0, 0, 6, 16, 0, 255, 0, 0, 255, 0 );
- UTIL_CreateBeamCylinder( originnn, 320, TeleportSprite, 0, 0, 6, 16, 0, 255, 51, 51, 255, 0 );
- UTIL_CreateBeamCylinder( originnn, 500, TeleportSprite, 0, 0, 6, 16, 0, 255, 102, 102, 255, 0 );
- new iPlayers[32]
- new iNum
- get_players( iPlayers, iNum, "e", "TERRORIST" )
- for( new i = 0; i < iNum; i++ )
- {
- g_CanUseHe[iPlayers[i]] = true;
- }
- }
- public bomb_defused ( defuser ) {
- eXP [ defuser ] += 35;
- ColorChat ( defuser, GREEN, "%s Ai primit^4 35^3 XP pentru defusarea bombei .^4", szPrefix );
- new originnn[3];
- get_user_origin ( defuser, originnn, 0 );
- message_begin(MSG_PAS, SVC_TEMPENTITY, originnn);
- write_byte(TE_BEAMCYLINDER);
- write_coord(originnn[0]);
- write_coord(originnn[1]);
- write_coord(originnn[2]+10);
- write_coord(originnn[0]);
- write_coord(originnn[1]);
- write_coord(originnn[2]+60);
- write_short(TeleportSprite);
- write_byte(0);
- write_byte(0);
- write_byte(3);
- write_byte(60);
- write_byte(0);
- write_byte(0); //255
- write_byte(0); //255
- write_byte(255); //255 //BLUE
- write_byte(255); //255
- write_byte(0);
- message_end();
- Create_TE_SPRITETRAIL3( originnn, originnn, TeleportSprite3, 50, 10, 2, 50, 10 );
- /*---ScreenShake---*/
- message_begin(MSG_ONE , gMsgScreenShake , {0,0,0} ,defuser)
- write_short( 1<<14 );
- write_short( 1<<14 );
- write_short( 1<<14 );
- message_end();
- }
- public bomb_explode ( planter ) {
- eXP [ planter ] += 25;
- ColorChat ( planter, GREEN, "%s Ai primit^4 25^3 XP pentru explodarea bombei .^4", szPrefix );
- }
- public handle_say(id) {
- new said[192]
- read_args(said,192)
- if( ( containi(said, "who") != -1 && containi(said, "vips") != -1 ) || contain(said, "/vips") != -1 )
- set_task(0.1,"print_adminlist",id)
- return PLUGIN_CONTINUE
- }
- public print_adminlist(user)
- {
- new adminnames[33][32]
- new message[256]
- new contactinfo[256], contact[112]
- new id, count, x, len
- for(id = 1 ; id <= maxplayers ; id++)
- if(is_user_connected(id))
- if( get_user_flags(id) & VIP_ACCESS )
- get_user_name(id, adminnames[count++], 31)
- len = format(message, 255, "%s VIPS ONLINE: ",COLOR)
- if(count > 0) {
- for(x = 0 ; x < count ; x++) {
- len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
- if(len > 96 ) {
- print_message(user, message)
- len = format(message, 255, "%s ",COLOR)
- }
- }
- print_message(user, message)
- }
- else {
- len += format(message[len], 255-len, "Nici un VIP online.")
- print_message(user, message)
- }
- get_cvar_string("amx_contactinfo", contact, 63)
- if(contact[0]) {
- format(contactinfo, 111, "%s Cumpara VIP -- %s", COLOR, contact)
- print_message(user, contactinfo)
- }
- }
- print_message(id, msg[]) {
- message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
- write_byte(id)
- write_string(msg)
- message_end()
- }
- public eDeath ( ) {
- new iKiller = read_data ( 1 );
- new iVictim = read_data ( 2 );
- new Headshot = read_data ( 3 );
- new weapon [ 32 ];
- read_data ( 4, weapon, sizeof ( weapon ) -1 );
- if ( iKiller == iVictim )
- {
- return 1;
- }
- new name [ 32 ];
- get_user_name ( iVictim, name, sizeof ( name ) -1 );
- if ( Headshot && get_user_team ( iKiller ) == 2 )
- {
- eXP [ iKiller ] += get_pcvar_num ( HsXp );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ HeadShot ]^3", szPrefix, get_pcvar_num ( HsXp ) + get_pcvar_num ( KillXp ) );
- }
- else if ( Headshot && get_user_team ( iKiller ) == 2 && get_user_flags ( iKiller ) & VIP_ACCESS )
- {
- eXP [ iKiller ] += get_pcvar_num ( HsXp ) + 10;
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ HeadShot ]^3", szPrefix, get_pcvar_num ( HsXp ) + get_pcvar_num ( KillXp ) );
- }
- else if ( Headshot && get_user_team ( iKiller ) == 1 && get_user_weapon ( iKiller ) == CSW_KNIFE && get_user_flags ( iKiller ) & VIP_ACCESS )
- {
- eXP [ iKiller ] += get_pcvar_num ( HsXp ) + 10;
- set_user_health ( iKiller, get_user_health ( iKiller ) + 35 );
- set_dhudmessage ( 31, 201, 31, 0.02, 0.90, 0, 6.0, 1.0 );
- show_dhudmessage ( iKiller, "+35 HP" );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP +^4 35^3 HP^4 [ HeadShot ]^3", szPrefix, get_pcvar_num ( HsXp ) + get_pcvar_num ( KillXp ) + 10 );
- }
- else if ( Headshot && get_user_team ( iKiller ) == 1 && get_user_weapon ( iKiller ) == CSW_KNIFE )
- {
- eXP [ iKiller ] += get_pcvar_num ( HsXp );
- set_user_health ( iKiller, get_user_health ( iKiller ) + 25 );
- set_dhudmessage ( 31, 201, 31, 0.02, 0.90, 0, 6.0, 1.0 );
- show_dhudmessage ( iKiller, "+25 HP" );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP +^4 25^3 HP^4 [ HeadShot ]^3", szPrefix, get_pcvar_num ( HsXp ) + get_pcvar_num ( KillXp ) );
- }
- else if ( equali ( weapon, "grenade" ) && Level [ iKiller ] == 0 || Level [ iKiller ] == 1 || Level [ iKiller ] == 2 || Level [ iKiller ] == 3 || Level [ iKiller ] == 4 || Level [ iKiller ] == 5 && get_user_flags ( iKiller ) & VIP_ACCESS )
- {
- eXP [ iKiller ] += get_pcvar_num ( HeXp ) + 5;
- set_user_credits ( iKiller, get_user_credits ( iKiller ) + 2 );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP +^4 2^3 credite^4 [ He Grenade ]^3", szPrefix, get_pcvar_num(HeXp) + get_pcvar_num(KillXp) + 5);
- }
- else if ( equali ( weapon, "grenade" ) && Level [ iKiller ] == 0 || Level [ iKiller ] == 1 || Level [ iKiller ] == 2 || Level [ iKiller ] == 3 || Level [ iKiller ] == 4 || Level [ iKiller ] == 5 )
- {
- eXP [ iKiller ] += get_pcvar_num ( HeXp );
- set_user_credits ( iKiller, get_user_credits ( iKiller ) + 1 );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP +^4 1^3 credit^4 [ He Grenade ]^3", szPrefix, get_pcvar_num(HeXp) + get_pcvar_num(KillXp) );
- }
- else if ( equali ( weapon, "grenade" ) && get_user_flags ( iKiller ) & VIP_ACCESS )
- {
- eXP [ iKiller ] += get_pcvar_num ( HeXp ) + 10;
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ He Grenade ]^3", szPrefix, get_pcvar_num(HeXp) + get_pcvar_num(KillXp) + 10 );
- }
- else if ( equali ( weapon, "grenade" ) )
- {
- eXP [ iKiller ] += get_pcvar_num ( HeXp );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ He Grenade ]^3", szPrefix, get_pcvar_num(HeXp) + get_pcvar_num(KillXp) );
- }
- else if ( equali ( weapon, "knife" ) && get_user_team ( iKiller ) == 2 && !salamander [ iKiller ] && get_user_flags ( iKiller ) & VIP_ACCESS )
- {
- eXP [ iKiller ] += get_pcvar_num ( KnifeXp ) + 10;
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ Knife ]^3", szPrefix, get_pcvar_num(KnifeXp) + get_pcvar_num(KillXp) + 10 );
- }
- else if ( equali ( weapon, "knife" ) && get_user_team ( iKiller ) == 2 && !salamander [ iKiller ] )
- {
- eXP [ iKiller ] += get_pcvar_num ( HeXp );
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ Knife ]^3", szPrefix, get_pcvar_num(KnifeXp) + get_pcvar_num(KillXp) );
- }
- else
- {
- ColorChat ( iKiller, GREEN, "%s Ai primit^4 %i^3 XP^4 [ Kill ]^3", szPrefix, get_pcvar_num ( KillXp ) );
- }
- if ( Level [ iVictim ] >= 25 ) {
- AddYellowBonusBox ( iVictim );
- }
- else if ( Level [ iVictim ] < 25 ) {
- AddBonusBox ( iVictim );
- }
- if ( get_user_team ( iKiller ) == 2 && get_user_team ( iVictim ) == 1 ) {
- cs_set_user_money ( iKiller, cs_get_user_money ( iKiller ) + 600 );
- eXP [ iKiller ] += get_pcvar_num ( KillXp );
- }
- if ( get_user_team ( iKiller ) == 1 && get_user_team ( iVictim ) == 2 ) {
- cs_set_user_money ( iKiller, cs_get_user_money ( iKiller ) + 500 );
- eXP [ iKiller ] += get_pcvar_num ( KillXp );
- }
- if ( Level [ iKiller ] <= 30 ) {
- ShowHud ( iKiller );
- return 1;
- }
- while ( eXP [ iKiller ] >= Levels [ Level [ iKiller ] ] ) {
- ColorChat ( iKiller, GREEN, "%s Felicitari ! Acum ai levelul ^4%s^3, cu ^4%i^3 XP.", szPrefix, Prefix [ Level [ iKiller ] ], eXP [ iKiller ] );
- Level [ iKiller ] ++;
- }
- SaveData ( iKiller );
- if ( !is_user_alive ( iVictim ) && get_user_team ( iVictim ) == 1 ) {
- new gMsgScreenFade = get_user_msgid ( "ScreenFade" );
- message_begin ( MSG_ONE_UNRELIABLE , gMsgScreenFade , {0,0,0} , iVictim );
- write_short ( (6<<10) ); // duration
- write_short ( (5<<10) ); // hold time
- write_short ( (1<<12) ); // fade type
- write_byte ( 255 );
- write_byte ( 0 );
- write_byte ( 0 );
- write_byte ( 170 );
- message_end ( );
- }
- else if ( !is_user_alive ( iVictim ) && get_user_team ( iVictim ) == 2 ) {
- new gMsgScreenFade = get_user_msgid ( "ScreenFade" );
- message_begin ( MSG_ONE_UNRELIABLE , gMsgScreenFade , {0,0,0} , iVictim );
- write_short ( (6<<10) ); // duration
- write_short ( (5<<10) ); // hold time
- write_short ( (1<<12) ); // fade type
- write_byte ( 0 );
- write_byte ( 0 );
- write_byte ( 255 );
- write_byte ( 170 );
- message_end ( );
- }
- return 1;
- }
- public CmdStart(id, uc_handle, seed) {
- new ent = fm_find_ent_by_class(id, ClassName)
- if(is_valid_ent(ent)) {
- new classname[32]
- pev(ent, pev_classname, classname, 31)
- if (equal(classname, ClassName)) {
- if (pev(ent, pev_frame) >= 120)
- set_pev(ent, pev_frame, 0.0)
- else
- set_pev(ent, pev_frame, pev(ent, pev_frame) + 1.0)
- switch(pev(ent, pev_team))
- {
- case 1:
- {
- }
- case 2:
- {
- }
- }
- }
- }
- }
- public AddBonusBox(id) {
- if(is_user_connected(id) && cs_get_user_team(id) != CS_TEAM_SPECTATOR) {
- new ent = fm_create_entity("info_target")
- new origin[3]
- get_user_origin(id, origin, 0)
- set_pev(ent,pev_classname, ClassName)
- switch(cs_get_user_team(id))
- {
- case CS_TEAM_T: {
- engfunc(EngFunc_SetModel,ent, Model[1])
- set_pev(ent,pev_team, 2)
- }
- case CS_TEAM_CT: {
- engfunc(EngFunc_SetModel,ent, Model[0])
- set_pev(ent,pev_team, 1)
- }
- }
- set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0})
- set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0})
- set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0})
- engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0})
- set_pev(ent,pev_solid,SOLID_BBOX)
- set_pev(ent,pev_movetype,MOVETYPE_TOSS)
- new Float:fOrigin[3]
- IVecFVec(origin, fOrigin)
- set_pev(ent, pev_origin, fOrigin)
- }
- }
- public AddYellowBonusBox(id)
- {
- if(is_user_connected(id) && cs_get_user_team(id) != CS_TEAM_SPECTATOR) {
- new ent = fm_create_entity("info_target")
- new origin[3]
- get_user_origin(id, origin, 0)
- set_pev(ent,pev_classname, ClassName)
- switch(cs_get_user_team(id))
- {
- case CS_TEAM_T: {
- engfunc(EngFunc_SetModel,ent, Model_Yellow[1])
- set_pev(ent,pev_team, 2)
- }
- case CS_TEAM_CT: {
- engfunc(EngFunc_SetModel,ent, Model_Yellow[0])
- set_pev(ent,pev_team, 1)
- }
- }
- set_pev(ent,pev_mins,Float:{-10.0,-10.0,0.0})
- set_pev(ent,pev_maxs,Float:{10.0,10.0,25.0})
- set_pev(ent,pev_size,Float:{-10.0,-10.0,0.0,10.0,10.0,25.0})
- engfunc(EngFunc_SetSize,ent,Float:{-10.0,-10.0,0.0},Float:{10.0,10.0,25.0})
- set_pev(ent,pev_solid,SOLID_BBOX)
- set_pev(ent,pev_movetype,MOVETYPE_TOSS)
- new Float:fOrigin[3]
- IVecFVec(origin, fOrigin)
- set_pev(ent, pev_origin, fOrigin)
- }
- }
- public Touch(toucher, touched)
- {
- if (!is_user_alive(toucher) || !pev_valid(touched))
- return FMRES_IGNORED
- new classname[32]
- pev(touched, pev_classname, classname, 31)
- if (!equal(classname, ClassName))
- return FMRES_IGNORED
- if(get_user_team(toucher) == pev(touched, pev_team) )
- {
- GiveBonusBox(toucher)
- set_pev(touched, pev_effects, EF_NODRAW)
- set_pev(touched, pev_solid, SOLID_NOT)
- remove_entity(touched);
- }
- return FMRES_IGNORED
- }
- public Touch_Yellow ( toucher, touched ) {
- if (!is_user_alive(toucher) || !pev_valid(touched))
- return FMRES_IGNORED
- new classname[32]
- pev(touched, pev_classname, classname, 31)
- if (!equal(classname, ClassName))
- return FMRES_IGNORED
- if(get_user_team(toucher) == pev(touched, pev_team) )
- {
- GiveYellowBonusBox(toucher)
- set_pev(touched, pev_effects, EF_NODRAW)
- set_pev(touched, pev_solid, SOLID_NOT)
- remove_entity(touched);
- }
- return FMRES_IGNORED
- }
- public event_cur_weapon(id) {
- if(HasSpeed[id] && cs_get_user_team(id) == CS_TEAM_T && get_user_maxspeed(id) < get_pcvar_float(CvarFurienSpeed)) {
- set_user_maxspeed(id, get_pcvar_float(CvarFurienSpeed));
- }
- if(HasSpeed[id] && cs_get_user_team(id) == CS_TEAM_CT && get_user_maxspeed(id) < get_pcvar_float(CvarAntiFurienSpeed)) {
- set_user_maxspeed(id, get_pcvar_float(CvarAntiFurienSpeed));
- }
- if ( LowSpeed [ id ] && cs_get_user_team ( id ) == CS_TEAM_T ) {
- set_user_maxspeed ( id, get_user_maxspeed ( id ) - 250 );
- }
- if ( LowSpeed [ id ] && cs_get_user_team ( id ) == CS_TEAM_CT ) {
- set_user_maxspeed ( id, get_user_maxspeed ( id ) - 70 );
- }
- }
- public wrongeffect ( id ) {
- new gMsgScreenFade = get_user_msgid ( "ScreenFade" );
- message_begin ( MSG_ONE_UNRELIABLE , gMsgScreenFade , {0,0,0} , id );
- write_short ( (6<<10) ); // duration
- write_short ( (5<<10) ); // hold time
- write_short ( (1<<12) ); // fade type
- write_byte ( 255 );
- write_byte ( 0 );
- write_byte ( 0 );
- write_byte ( 170 );
- message_end ( );
- }
- public goodeffect ( id ) {
- new gMsgScreenFade = get_user_msgid ( "ScreenFade" );
- message_begin ( MSG_ONE_UNRELIABLE , gMsgScreenFade , {0,0,0} , id );
- write_short ( (6<<10) ); // duration
- write_short ( (5<<10) ); // hold time
- write_short ( (1<<12) ); // fade type
- write_byte ( 0 );
- write_byte ( 0 );
- write_byte ( 255 );
- write_byte ( 170 );
- message_end ( );
- }
- public GiveYellowBonusBox ( id ) {
- switch (random_num(1,5))
- {
- case 1:
- {
- goodeffect ( id );
- set_user_health ( id, get_user_health ( id ) + 150 );
- ColorChat ( id, GREEN, "%s Ai primit^4 150^3 HP .^4", szPrefix );
- }
- case 2:
- {
- goodeffect ( id );
- set_user_armor ( id, get_user_armor ( id ) + 200 );
- ColorChat ( id, GREEN, "%s Ai Primit^4 200^3 AP .^4", szPrefix );
- }
- case 3:
- {
- if ( get_user_team ( id ) == 2 ) {
- dual_mp5 [ id ] = true;
- k1ases_weapon [ id ] = false;
- remove_dragoncannon ( id );
- give_item ( id, "weapon_mp5navy" );
- cs_set_user_bpammo ( id, CSW_MP5NAVY, 200 );
- ColorChat ( id, GREEN, "%s Ai primit^4 Dual Mp5^3 .^4", szPrefix );
- }
- else if ( get_user_team ( id ) == 1 ) {
- give_item ( id, "weapon_flashbang" );
- cs_set_user_bpammo ( id, CSW_FLASHBANG, 5 );
- ColorChat ( id, GREEN, "%s Ai primit^4 5^3 grenazi^4 FLASH^3 .^4", szPrefix );
- }
- }
- case 4:
- {
- give_item ( id, "weapon_hegrenade" );
- cs_set_user_bpammo ( id, CSW_HEGRENADE, 3 );
- ColorChat ( id, GREEN, "%s Ai primit^4 3^3 grenazi^4 HE^3 .^4", szPrefix );
- }
- case 5:
- {
- set_user_credits ( id, get_user_credits ( id ) + 5 );
- ColorChat ( id, GREEN, "%s Ai primit^4 5^3 credite .^4", szPrefix );
- }
- }
- }
- public GiveBonusBox(id) {
- if ( get_user_team ( id ) == 1 ) {
- switch (random_num(1,20))
- {
- case 1:
- {
- goodeffect ( id );
- set_user_health ( id, get_user_health ( id ) + 50 );
- ColorChat ( id, GREEN, "%s Ai primit^4 50^3 HP .^4", szPrefix );
- }
- case 2:
- {
- goodeffect ( id );
- set_user_armor ( id, get_user_armor ( id ) + 100 );
- ColorChat ( id, GREEN, "%s Ai primit^4 100^3 AP .^4", szPrefix );
- }
- case 3:
- {
- goodeffect ( id );
- set_user_health ( id, get_user_health ( id ) - 20 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 20^3 HP .^4", szPrefix );
- }
- case 4:
- {
- goodeffect ( id );
- set_user_armor ( id, get_user_armor ( id ) - 50 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 50^3 AP .^4", szPrefix );
- }
- case 5:
- {
- goodeffect ( id );
- cs_set_user_money ( id, cs_get_user_money ( id ) + 3000 );
- ColorChat ( id, GREEN, "%s Ai primit^4 3000^3 $ .^4", szPrefix );
- }
- case 6:
- {
- cs_set_user_money ( id, cs_get_user_money ( id ) - 2000 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 2000^3 $ .^4", szPrefix );
- }
- case 7:
- {
- goodeffect ( id );
- set_user_gravity ( id, 0.4 );
- ColorChat ( id, GREEN, "%s Ai primit^4 400^3 Gravity .^4", szPrefix );
- }
- case 8:
- {
- goodeffect ( id );
- HasSpeed[id] = true;
- ColorChat ( id, GREEN, "%s Ai primit^4 1000^3 Speed .^4", szPrefix );
- }
- case 9:
- {
- LowSpeed [ id ] = true;
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut din viteza .^4", szPrefix );
- }
- case 10:
- {
- set_user_health ( id, 225 );
- set_user_armor ( id, 225 );
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Acum ai^4 225^3 HP si^4 225^3 AP^4 .^4", szPrefix );
- }
- case 11:
- {
- cs_set_user_money ( id, 0 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut toti banii !^4", szPrefix );
- }
- case 12:
- {
- if ( !super_knife_shop [ id ] || !super_knife_shop2 [ id ] ) {
- goodeffect ( id );
- if ( Level [ id ] < 15 ) {
- super_knife_shop [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model );
- }
- else if ( Level [ id ] >= 15 ) {
- super_knife_shop2 [ id ] = true;
- set_pev ( id, pev_viewmodel2, super_knife_shop_v_model2 );
- set_pev ( id, pev_weaponmodel2, super_knife_shop_p_model2 );
- }
- ColorChat ( id, GREEN, "%s Ai primit^4 Super Knife^4 .^4", szPrefix );
- }
- else if ( super_knife_shop [ id ] || super_knife_shop2 [ id ] ) {
- goodeffect ( id );
- fm_set_user_health ( id, get_user_health ( id ) + 70 );
- ColorChat ( id, GREEN, "%s Ai primit^4 70^3 HP .^4", szPrefix );
- }
- }
- case 13:
- {
- goodeffect ( id );
- set_user_xp ( id, get_user_xp ( id ) + 100 );
- ColorChat ( id, GREEN, "%s Ai primit^4 100^3 XP .^4", szPrefix );
- }
- case 14:
- {
- wrongeffect ( id );
- set_user_xp ( id, get_user_xp ( id ) - 50 );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 50^3 XP .^4", szPrefix );
- }
- case 15:
- {
- ColorChat ( id, GREEN, "%s A trecut mosul pe la tine, ai primit^4 16000^3 $ .^4", szPrefix );
- goodeffect ( id );
- }
- case 16:
- {
- if ( !vip_axe_knife [ id ] || !deklowaz [ id ] ) {
- HasTeleport[id] = true;
- client_cmd(id, "bind x power2");
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit puterea de a te teleporta, apasa tasta^4 X^3 pentru a te teleporta .^4", szPrefix );
- }
- else {
- set_user_credits ( id, get_user_credits ( id ) + 2 );
- ColorChat ( id, GREEN, "%s Ai primit^4 2^3 credite .", szPrefix );
- }
- }
- case 17:
- {
- HasSpeed[id] = true;
- client_cmd(id, "cl_sidespeed %d",get_pcvar_float(CvarFurienSpeed))
- client_cmd(id, "cl_forwardspeed %d",get_pcvar_float(CvarFurienSpeed))
- client_cmd(id, "cl_backspeed %d",get_pcvar_float(CvarFurienSpeed))
- set_user_maxspeed(id, get_pcvar_float(CvarFurienSpeed));
- }
- case 18:
- {
- fm_set_user_health ( id, get_user_health ( id ) + 80 );
- ColorChat ( id, GREEN, "%s Ai primit^4 80^3 HP .^4", szPrefix );
- }
- case 19:
- {
- give_item ( id, "weapon_hegrenade" );
- ColorChat ( id, GREEN, "%s Ai primit o grenada^4 HE^3 .", szPrefix );
- }
- case 20:
- {
- give_item ( id, "weapon_flashbang" );
- ColorChat ( id, GREEN, "%s Ai primit o grenada^4 FLASH^3 .", szPrefix );
- }
- }
- }
- else if ( get_user_team ( id ) == 2 ) {
- switch (random_num(1,23))
- {
- case 1:
- {
- goodeffect ( id );
- set_user_health ( id, get_user_health ( id ) + 50 );
- ColorChat ( id, GREEN, "%s Ai primit^4 50^3 HP .^4", szPrefix );
- }
- case 2:
- {
- goodeffect ( id );
- set_user_armor ( id, get_user_armor ( id ) + 100 );
- ColorChat ( id, GREEN, "%s Ai primit^4 100^3 AP .^4", szPrefix );
- }
- case 3:
- {
- goodeffect ( id );
- set_user_health ( id, get_user_health ( id ) - 20 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 20^3 HP .^4", szPrefix );
- }
- case 4:
- {
- goodeffect ( id );
- set_user_armor ( id, get_user_armor ( id ) - 50 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 50^3 AP .^4", szPrefix );
- }
- case 5:
- {
- goodeffect ( id );
- cs_set_user_money ( id, cs_get_user_money ( id ) + 3000 );
- ColorChat ( id, GREEN, "%s Ai primit^4 3000^3 $ .^4", szPrefix );
- }
- case 6:
- {
- cs_set_user_money ( id, cs_get_user_money ( id ) - 2000 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 2000^3 $ .^4", szPrefix );
- }
- case 7:
- {
- goodeffect ( id );
- set_user_gravity ( id, 0.4 );
- ColorChat ( id, GREEN, "%s Ai primit^4 400^3 Gravity .^4", szPrefix );
- }
- case 8:
- {
- goodeffect ( id );
- HasSpeed[id] = true;
- ColorChat ( id, GREEN, "%s Ai primit^4 750^3 Speed .^4", szPrefix );
- }
- case 9:
- {
- entity_set_float ( id, EV_FL_maxspeed, 250.0 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut din viteza .^4", szPrefix );
- }
- case 10:
- {
- set_user_health ( id, 10 );
- set_user_armor ( id, 20 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Acum ai^4 10^3 HP si^4 20^3 AP^4 .^4", szPrefix );
- }
- case 11:
- {
- cs_set_user_money ( id, 0 );
- wrongeffect ( id );
- ColorChat ( id, GREEN, "%s Ai pierdut toti banii !^4", szPrefix );
- }
- case 12:
- {
- if ( !salamander [ id ] ) {
- goodeffect ( id );
- salamander [ id ] = true;
- set_task ( 0.1, "SalamanderGiveItem", id );
- set_task ( 30.0, "reverse_salamander", id );
- ColorChat ( id, GREEN, "%s Ai primit^4 Salamander^3 pentru^4 30^3 secunde .", szPrefix );
- }
- else if ( salamander [ id ] ) {
- goodeffect ( id );
- fm_set_user_health ( id, get_user_health ( id ) + 100 );
- ColorChat ( id, GREEN, "%s Ai primit^4 100^3 HP .^4", szPrefix );
- }
- }
- case 13:
- {
- goodeffect ( id );
- set_user_xp ( id, get_user_xp ( id ) + 100 );
- ColorChat ( id, GREEN, "%s Ai primit^4 100^3 XP .^4", szPrefix );
- }
- case 14:
- {
- wrongeffect ( id );
- set_user_xp ( id, get_user_xp ( id ) - 20 );
- ColorChat ( id, GREEN, "%s Ai pierdut^4 20^3 XP .^4", szPrefix );
- }
- case 15:
- {
- ColorChat ( id, GREEN, "%s A trecut mosul pe la tine, ai primit^4 16000^3 $ .^4", szPrefix );
- goodeffect ( id );
- }
- case 16:
- {
- if ( !vip_axe_knife [ id ] || !deklowaz [ id ] ) {
- HasTeleport[id] = true;
- client_cmd(id, "bind x power2");
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit puterea de a te teleporta, apasa tasta^4 X^3 pentru a te teleporta .^4", szPrefix );
- }
- else {
- goodeffect ( id );
- set_user_credits ( id, get_user_credits ( id ) + 2 );
- ColorChat ( id, GREEN, "%s Ai primit^4 2^3 credite .", szPrefix );
- }
- }
- case 17:
- {
- goodeffect ( id );
- HasSpeed[id] = true;
- client_cmd(id, "cl_sidespeed %d",get_pcvar_float(CvarAntiFurienSpeed))
- client_cmd(id, "cl_forwardspeed %d",get_pcvar_float(CvarAntiFurienSpeed))
- client_cmd(id, "cl_backspeed %d",get_pcvar_float(CvarAntiFurienSpeed))
- set_user_maxspeed(id, get_pcvar_float(CvarAntiFurienSpeed));
- }
- case 18:
- {
- if ( !k1ases_weapon [ id ] ) {
- goodeffect ( id );
- k1ases_weapon [ id ] = true;
- dual_mp5 [ id ] = false;
- remove_dragoncannon ( id );
- give_k1ases ( id );
- ColorChat ( id, GREEN, "%s Ai primit^4 K1ASUS^3 .^4", szPrefix );
- }
- else if ( k1ases_weapon [ id ] ) {
- goodeffect ( id );
- fm_set_user_health ( id, get_user_health ( id ) + 70 );
- ColorChat ( id, GREEN, "%s Ai primit^4 70^3 HP .^4", szPrefix );
- }
- }
- case 19:
- {
- goodeffect ( id );
- give_item ( id, "weapon_hegrenade" );
- ColorChat ( id, GREEN, "%s Ai primit o grenada^4 HE^3 .", szPrefix );
- }
- case 20:
- {
- goodeffect ( id );
- give_item ( id, "weapon_flashbang" );
- ColorChat ( id, GREEN, "%s Ai primit o grenada^4 FLASH^3 .", szPrefix );
- }
- case 21:
- {
- if ( UserHaveQuad [ id ] ) {
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit^4 5^3 gloante pentru^4 Quad-Barrel^3 .^4", szPrefix );
- cs_set_user_bpammo ( id, CSW_QB, cs_get_user_bpammo ( id, CSW_QB ) + 5 );
- }
- else {
- goodeffect ( id );
- set_task ( 0.1, "GiveQuadBarrel", id );
- ColorChat ( id, GREEN, "%s Ai primit^4 Quad-Barrel^3 .", szPrefix );
- UserHaveQuad [ id ] = true;
- }
- }
- case 22:
- {
- if ( UserHaveDragon [ id ] ) {
- goodeffect ( id );
- g_cannon_ammo [ id ] += 3;
- ColorChat ( id, GREEN, "%s Ai primit^4 3^3 gloante pentru^4 Dragon Cannon^3 .^4", szPrefix );
- }
- else {
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit^4 Dragon Cannon^3 .", szPrefix );
- set_task ( 0.1, "get_dragoncannon", id );
- UserHaveDragon [ id ] = true;
- }
- }
- case 23:
- {
- if ( UserHaveM79 [ id ] ) {
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit^4 2^3 grenazi pentru lansator. ^4", szPrefix );
- grenade_count [ id ] += 2;
- }
- else {
- goodeffect ( id );
- ColorChat ( id, GREEN, "%s Ai primit un^4 Lansator de Grenazi^3 .^4", szPrefix );
- give_weapon ( id, 2 );
- m79++;
- UserHaveM79 [ id ] = true;
- }
- }
- }
- }
- }
- public CmdTeleport(id) {
- if (!is_user_alive(id) || !HasTeleport[id]) return PLUGIN_CONTINUE
- if (Teleport_Cooldown[id]) {
- ColorChat ( id, GREEN, "%s Puterea iti va reveni in^4 %d^3 secunde .", Teleport_Cooldown [ id ] );
- return PLUGIN_CONTINUE
- }
- else if (teleport(id)) {
- emit_sound(id, CHAN_STATIC, SOUND_BLINK, 1.0, ATTN_NORM, 0, PITCH_NORM)
- remove_task(id)
- Teleport_Cooldown[id] = get_pcvar_num(CvarTeleportCooldown);
- set_task(1.0, "TeleportShowHUD", id, _, _, "b");
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(get_pcvar_num(CvarTeleportCooldown) != 1) {
- show_hudmessage(id, "Puterea iti va reveni in^4 %d^3 secunde",get_pcvar_num(CvarTeleportCooldown));
- }
- if(get_pcvar_num(CvarTeleportCooldown) == 1) {
- show_hudmessage(id, "Puterea iti va reveni in^4 %d^3 secunda",get_pcvar_num(CvarTeleportCooldown));
- }
- }
- else {
- ColorChat ( id, GREEN, "%s Pozitia de teleportare este invalida .^4", szPrefix );
- }
- return PLUGIN_CONTINUE
- }
- public Light(entity, red, green, blue)
- {
- if(is_valid_ent(entity)) {
- static Float:origin[3]
- pev(entity, pev_origin, origin)
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY, _, entity);
- write_byte(TE_DLIGHT) // TE id
- engfunc(EngFunc_WriteCoord, origin[0])
- engfunc(EngFunc_WriteCoord, origin[1])
- engfunc(EngFunc_WriteCoord, origin[2])
- write_byte(7)
- write_byte(red)
- write_byte(green)
- write_byte(blue)
- write_byte(2)
- write_byte(0)
- message_end();
- }
- }
- public cmdVipWeaponsMenu ( id, level, cid ) {
- new menu = menu_create ( "\rFurien XP \yMenu", "VIPWeapons_Giver" );
- if ( get_user_team ( id ) == 2 ) {
- menu_additem ( menu, "\ySCORPION MP5 [ \r3 CREDITE \y]", "1", VIP_ACCESS );
- menu_additem ( menu, "\yQUAD BARREL [ \r3 CREDITE \y]", "2", VIP_ACCESS );
- menu_additem ( menu, "\yDRAGON CANNON [ \r4 CREDITE \y]", "3", VIP_ACCESS );
- menu_additem ( menu, "\yM79 LAUNCHER [ \r4 CREDITE \y]", "4", VIP_ACCESS );
- menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
- menu_display ( id, menu, 0 );
- }
- return 1;
- }
- public VIPWeapons_Giver ( id, menu, item ) {
- if( item == MENU_EXIT )
- {
- return 1;
- }
- new data [ 6 ], szName [ 64 ];
- new access, callback;
- menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback );
- new key = str_to_num ( data );
- switch(key)
- {
- case 1:
- {
- new iCredits = get_user_credits(id) - 3;
- if( iCredits < 0 )
- {
- ColorChat ( id, GREEN, "%s Nu ai destule credite !", szPrefix );
- return 1;
- }
- else
- {
- ColorChat ( id, GREEN, "%s Ai cumparat^4 Scorpion Mp5^3 .^4", szPrefix );
- give_k1ases ( id );
- set_user_credits ( id, iCredits );
- return 1;
- }
- }
- case 2:
- {
- new iCredits = get_user_credits(id) - 3;
- if( iCredits < 0 )
- {
- ColorChat ( id, GREEN, "%s Nu ai destule credite !", szPrefix );
- return 1;
- }
- else
- {
- ColorChat ( id, GREEN, "%s Ai cumparat^4 Quad-Barrel^3 .^4", szPrefix );
- set_task ( 0.1, "GiveQuadBarrel", id );
- set_user_credits ( id, iCredits );
- return 1;
- }
- }
- case 3:
- {
- new iCredits = get_user_credits(id) - 4;
- if( iCredits < 0 )
- {
- ColorChat ( id, GREEN, "%s Nu ai destule credite !", szPrefix );
- return 1;
- }
- else
- {
- ColorChat ( id, GREEN, "%s Ai cumparat^4 Dragon Cannon^3 .^4", szPrefix );
- set_task ( 0.1, "get_dragoncannon", id );
- set_user_credits ( id, iCredits );
- return 1;
- }
- }
- case 4:
- {
- new iCredits = get_user_credits(id) - 4;
- if( iCredits < 0 )
- {
- ColorChat ( id, GREEN, "%s Nu ai destule credite !", szPrefix );
- return 1;
- }
- else
- {
- ColorChat ( id, GREEN, "%s Ai cumparat^4 M79 Launcher^3 .^4", szPrefix );
- give_weapon ( id, 2 );
- m79++;
- UserHaveM79 [ id ] = true;
- set_user_credits ( id, iCredits );
- return 1;
- }
- }
- }
- menu_destroy ( menu );
- return 1;
- }
- public cmdXpMenu ( id, level, cid ) {
- new menu = menu_create ( "\rFurien XP \yMenu", "Menu_Giver" );
- menu_additem ( menu, "\y3 HE \y[ \rLvL. 3 - 1 Credit\y ]", "1", 0 );
- menu_additem ( menu, "\y5 FB & 2 SMK \y[ \rLvL. 5 - 1 Credit \y ]", "2", 0 );
- menu_additem ( menu, "\y6 HE \y[ \rLvL. 8 - 2 Credite\y ]", "3", 0 );
- menu_additem ( menu, "\ySPEED \y[ \rLvL. 10 - 2 Credite \y ]", "4", 0 );
- menu_additem ( menu, "\yGRAVITY \y[ \rLvL. 13 - 2 Credite\y ]", "5", 0 );
- menu_additem ( menu, "\yGODMODE \y[ \rLvL. 16 - 3 Credite\y ]", "6", 0 );
- menu_additem ( menu, "\yNOCLIP \y[ \rLvL. 18 - 3 Credite\y ]", "7", 0 );
- menu_additem ( menu, "\yCHAMELEON \y[ \rLvL. 22 - 4 Credite \y ]", "8", 0 );
- menu_additem ( menu, "\yRESPAWN \y[ \rLvL. 25 - 5 Credite \y ]", "9", 0 );
- if ( get_user_team ( id ) == 2 ) {
- menu_additem ( menu, "\ySALAMANDER \y[ \rLvL. 28 - 5 Credite \y ]", "10", 0 );
- }
- menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
- menu_display ( id, menu, 0 );
- return 1;
- }
- public Menu_Giver ( id, menu, item ) {
- if( item == MENU_EXIT )
- {
- return 1;
- }
- if ( g_iCount [ id ] >= 1 ) {
- ColorChat ( id, GREEN, "%s Ai folosit odata aceasta optiune .", szPrefix );
- }
- new data [ 6 ], szName [ 64 ];
- new access, callback;
- menu_item_getinfo ( menu, item, access, data,charsmax ( data ), szName,charsmax ( szName ), callback );
- new key = str_to_num ( data );
- switch(key)
- {
- case 1:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 3 ) {
- give_item ( id, "weapon_hegrenade" );
- cs_set_user_bpammo ( id, CSW_HEGRENADE, 3 );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 1 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 3 .", szPrefix );
- return 1;
- }
- }
- }
- case 2:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 5 ) {
- give_item ( id, "weapon_flashbang" );
- give_item ( id, "weapon_smokegrenade" );
- cs_set_user_bpammo ( id, CSW_FLASHBANG, 5 );
- cs_set_user_bpammo ( id, CSW_SMOKEGRENADE, 2 );
- set_user_credits ( id, get_user_credits ( id ) - 1 );
- ++g_Menu [ id ];
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 5 .", szPrefix );
- return 1;
- }
- }
- }
- case 3:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 8 ) {
- give_item ( id, "weapon_hegrenade" );
- cs_set_user_bpammo ( id, CSW_HEGRENADE, 6 );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 2 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 8 .", szPrefix );
- return 1;
- }
- }
- }
- case 4:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 10 ) {
- entity_set_float ( id, EV_FL_maxspeed, 450.0 );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 2 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 10 .", szPrefix );
- return 1;
- }
- }
- }
- case 5:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 13 ) {
- set_user_gravity ( id, 0.5 );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 2 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 13 .", szPrefix );
- return 1;
- }
- }
- }
- case 6:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 16 ) {
- set_user_godmode ( id, 1 );
- ColorChat ( id, GREEN, "%s Ai primit God pentru^4 8^4 secunde .", szPrefix );
- set_task ( 8.0, "reverse_godmode", id );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 3 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 16 .", szPrefix );
- return 1;
- }
- }
- }
- case 7:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 18 ) {
- set_user_noclip ( id, 1 );
- ColorChat ( id, GREEN, "%s Ai primit Noclip pentru^4 5^4 secunde .", szPrefix );
- set_task ( 5.0, "reverse_noclip", id );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 3 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 18 .", szPrefix );
- return 1;
- }
- }
- }
- case 8:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 22 ) {
- chameleon ( id );
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 4 );
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 22 .", szPrefix );
- return 1;
- }
- }
- }
- case 9:
- {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- }
- else {
- if ( Level [ id ] >= 25 ) {
- if(is_user_alive(id))
- {
- ColorChat ( id, GREEN, "%s Esti deja in viata .", szPrefix );
- return 1;
- }
- if ( get_user_team ( id ) == 3) {
- ColorChat ( id, GREEN, "%s Esti spectator .", szPrefix );
- if(!is_user_alive(id))
- {
- ExecuteHamB ( Ham_CS_RoundRespawn, id );
- set_task(0.5, "SetUserWeapons", id + 12345);
- ++g_Menu [ id ];
- set_user_credits ( id, get_user_credits ( id ) - 5 );
- return 1;
- }
- return 1;
- }
- else {
- ColorChat ( id, GREEN, "%s Nu ai level 25 .", szPrefix );
- return 1;
- }
- }
- }
- }
- case 10:
- {
- if ( get_user_team ( id ) == 2 ) {
- if ( g_Menu [ id ] >= 3 ) {
- ColorChat ( id, GREEN, "%s Ai folosit deja meniul de^4 3^3 ori .", szPrefix );
- return 1;
- }
- else {
- if ( Level [ id ] >= 28 && !SalamanderLimit [ id ] ) {
- salamander [ id ] = true;
- ColorChat ( id, GREEN, "%s Ai primit aceasta arma pentru^4 1^4 minut .", szPrefix );
- set_task ( 0.1, "SalamanderGiveItem", id );
- set_task ( 60.0, "reverse_salamander", id );
- ++g_Menu [ id ];
- SalamanderLimit [ id ] = true;
- set_user_credits ( id, get_user_credits ( id ) - 5 );
- return 1;
- }
- else if ( SalamanderLimit [ id ] ) {
- ColorChat ( id, GREEN, "%s Ai mai folosit odata aceasta optiune .", szPrefix );
- return 1;
- }
- else if ( Level [ id ] < 28 ) {
- ColorChat ( id, GREEN, "%s Nu ai level 30 .", szPrefix );
- return 1;
- }
- }
- }
- }
- }
- menu_destroy ( menu );
- return 1;
- }
- public SetUserWeapons(id) {
- id -= 12345;
- if( !is_user_connected(id) ) return PLUGIN_HANDLED;
- strip_user_weapons(id);
- give_item(id, "weapon_knife");
- set_task ( 0.1, "cmdClassMenu", id );
- return PLUGIN_CONTINUE;
- }
- public reverse_godmode ( id ) {
- set_user_godmode ( id , 0 );
- }
- public reverse_noclip ( id ) {
- set_user_noclip ( id, 0 );
- }
- public reverse_invis ( id ) {
- set_user_rendering( id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255 );
- ColorChat ( id, GREEN, "%s Timpul a expirat ! Acum esti din nou^4 vizibil^3 .", szPrefix );
- }
- public reverse_salamander ( id ) {
- strip_user_weapons ( id );
- give_item ( id, "weapon_knife" );
- salamander [ id ] = false;
- set_task ( 0.1, "cmdClassMenu", id );
- ColorChat ( id, GREEN, "%s Timpul a expirat ! Nu mai ai arma^4 salamander^3 .", szPrefix );
- }
- public show_salamander_icon ( id ) {
- if ( salamander [ id ] ) {
- if (!(pev(id,pev_button) & FL_ONGROUND))
- {
- new iconstatus;
- iconstatus = get_user_msgid("StatusIcon");
- message_begin(MSG_ONE,iconstatus,{0,0,0},id);
- write_byte(1); // status (0=hide, 1=show, 2=flash)
- write_string("dmg_heat"); // sprite name
- write_byte(255); // red
- write_byte(0); // green
- write_byte(0); // blue
- message_end();
- }
- }
- else {
- if (!(pev(id,pev_button) & FL_ONGROUND))
- {
- new iconstatus;
- iconstatus = get_user_msgid("StatusIcon");
- message_begin(MSG_ONE,iconstatus,{0,0,0},id);
- write_byte(0); // status (0=hide, 1=show, 2=flash)
- write_string("dmg_heat"); // sprite name
- write_byte(255); // red
- write_byte(0); // green
- write_byte(0); // blue
- message_end();
- }
- }
- }
- public reverse_model ( id ) {
- if ( get_user_team ( id ) == 1 ) {
- cs_set_user_model ( id, "guerilla" );
- ColorChat ( id, GREEN, "%s Timpul a expirat ! Acum arati din nou ca un^4 Furien^3 .", szPrefix );
- }
- else if ( get_user_team ( id ) == 2 ) {
- cs_set_user_model ( id, "gign" );
- ColorChat ( id, GREEN, "%s Timpul a expirat ! Acum arati din nou ca un^4 AntiFurien^3 .", szPrefix );
- }
- }
- public chameleon ( id ) {
- if ( get_user_team ( id ) == 1 ) {
- cs_set_user_model ( id, "gign" );
- ColorChat ( id, GREEN, "%s Acum arati ca un^4 AntiFurien^3 pentru^4 60^3 secunde .", szPrefix );
- set_task ( 60.0, "reverse_model", id );
- }
- else if ( get_user_team ( id ) == 2 ) {
- cs_set_user_model ( id, "guerilla" );
- ColorChat ( id, GREEN, "%s Acum arati ca un^4 Furien^3 pentru^4 60^3 secunde .", szPrefix );
- set_task ( 60.0, "reverse_model", id );
- }
- }
- public grenade_throw ( id, gid, wid ) {
- if ( strike_grenade [ id ] || strike_grenade2 [ id ] || strike_grenade3 [ id ] && get_user_weapon ( id ) == CSW_HEGRENADE && get_user_team ( id ) == 1 ) {
- new gtm = 1;
- if(!gtm) return;
- new r, g, b;
- switch(gtm)
- {
- case 1:
- {
- r = 255;
- g = 0;
- b = 0;
- }
- }
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_BEAMFOLLOW);
- write_short(gid);
- write_short(g_trail);
- write_byte(10);
- write_byte(5);
- write_byte(r);
- write_byte(g);
- write_byte(b);
- write_byte(192);
- message_end();
- }
- }
- // POWERS -------------------------------------
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // Drop Enemy Weapon |
- //==========================================================================================================
- public DropShowHUD(id) {
- if (!is_user_alive(id) || HasPower[id] != 4) {
- remove_task(id);
- Drop_Cooldown[id] = 0;
- return PLUGIN_HANDLED;
- }
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(is_user_alive(id) && Drop_Cooldown[id] == 1) {
- Drop_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",Drop_Cooldown[id]);
- }
- if(is_user_alive(id) && Drop_Cooldown[id] > 1) {
- Drop_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",Drop_Cooldown[id]);
- }
- if(Drop_Cooldown[id] <= 0) {
- show_hudmessage(id, "Ti-a revenit puterea");
- ColorChat(id, GREEN,"%s Iti poti folosi din nou puterea .", szPrefix);
- remove_task(id);
- Drop_Cooldown[id] = 0;
- }
- return PLUGIN_HANDLED;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // Freeze |
- //==========================================================================================================
- public Freeze(id) {
- if (!is_user_alive(id) || Frozen[id]) return;
- pev(id, pev_maxspeed, TempSpeed[id]); //get temp speed
- pev(id, pev_gravity, TempGravity[id]); //get temp speed
- fm_set_rendering(id, kRenderFxGlowShell, 0, 100, 200, kRenderNormal, 25);
- engfunc(EngFunc_EmitSound, id, CHAN_BODY, FROSTPLAYER_SND[random_num(0, sizeof FROSTPLAYER_SND - 1)], 1.0, ATTN_NORM, 0, PITCH_NORM);
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenFade"), _, id);
- write_short(UNIT_SECOND*1);
- write_short(floatround(UNIT_SECOND*get_pcvar_float(CvarFreezeDuration)));
- write_short(FFADE_IN);
- write_byte(0);
- write_byte(50);
- write_byte(200);
- write_byte(100);
- message_end();
- if (pev(id, pev_flags) & FL_ONGROUND)
- set_pev(id, pev_gravity, 999999.9);
- else
- set_pev(id, pev_gravity, 0.000001);
- Frozen[id] = true;
- set_task(get_pcvar_float(CvarFreezeDuration), "remove_freeze", id);
- }
- public set_normal(id) {
- set_pev(id, pev_gravity, TempGravity[id]);
- set_pev(id, pev_maxspeed, TempSpeed[id]);
- }
- public FreezeShowHUD(id) {
- if (!is_user_alive(id) || HasPower[id] != 5) {
- remove_task(id);
- Freeze_Cooldown[id] = 0;
- return PLUGIN_HANDLED;
- }
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(is_user_alive(id) && Freeze_Cooldown[id] == 1) {
- Freeze_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",Freeze_Cooldown[id]);
- }
- if(is_user_alive(id) && Freeze_Cooldown[id] > 1) {
- Freeze_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",Freeze_Cooldown[id]);
- }
- if(Freeze_Cooldown[id] <= 0) {
- show_hudmessage(id, "Ti-a revenit puterea");
- ColorChat(id, GREEN, "%s Iti poti folosi din nou puterea .", szPrefix);
- remove_task(id);
- Freeze_Cooldown[id] = 0;
- }
- return PLUGIN_HANDLED;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // Drag |
- //==========================================================================================================
- public DragStart(id) {
- if (HasPower[id] == 6 && !Drag_I[id]) {
- if (!is_user_alive(id)) {
- return PLUGIN_HANDLED;
- }
- if (Drag_Cooldown[id]) {
- ColorChat(id, GREEN,"%s Puterea iti va reveni in^4 %d^3 secunde .^4", szPrefix, Drag_Cooldown[id]);
- return PLUGIN_HANDLED;
- }
- new hooktarget, body;
- get_user_aiming(id, hooktarget, body);
- if (is_user_alive(hooktarget)) {
- if (get_user_team(id) != get_user_team(hooktarget)) {
- Hooked[id] = hooktarget;
- emit_sound(hooktarget, CHAN_BODY, DRAG_HIT_SND, 1.0, ATTN_NORM, 0, PITCH_HIGH);
- }
- else {
- return PLUGIN_HANDLED;
- }
- if (get_pcvar_float(CvarDragSpeed) <= 0.0)
- CvarDragSpeed = 1;
- new parm[2];
- parm[0] = id;
- parm[1] = hooktarget;
- set_task(0.1, "DragReelin", id, parm, 2, "b");
- HarpoonTarget(parm);
- Drag_I[id] = true;
- Not_Cooldown[id] = false;
- if(get_pcvar_num(CvarDragUnb2Move) == 1)
- Unable2move[hooktarget] = true;
- if(get_pcvar_num(CvarDragUnb2Move) == 2)
- Unable2move[id] = true;
- if(get_pcvar_num(CvarDragUnb2Move) == 3) {
- Unable2move[hooktarget] = true;
- Unable2move[id] = true;
- }
- }
- else {
- Hooked[id] = 33;
- NoTarget(id);
- Not_Cooldown[id] = false;
- set_task(1.0,"DragEnd",id);
- emit_sound(id, CHAN_BODY, DRAG_MISS_SND, 1.0, ATTN_NORM, 0, PITCH_HIGH);
- Drag_I[id] = true;
- }
- }
- else
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public DragShowHUD(id) {
- if (!is_user_alive(id) || HasPower[id] != 6) {
- remove_task(id);
- Drag_Cooldown[id] = 0;
- Not_Cooldown[id] = true;
- return PLUGIN_HANDLED;
- }
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(is_user_alive(id) && Drag_Cooldown[id] == 1) {
- Drag_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",Drag_Cooldown[id]);
- }
- if(is_user_alive(id) && Drag_Cooldown[id] > 1) {
- Drag_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",Drag_Cooldown[id]);
- }
- if(Drag_Cooldown[id] <= 0) {
- show_hudmessage(id, "Ti-a revenit puterea");
- ColorChat(id, GREEN, "%s Iti poti folosi din nou puterea .", szPrefix);
- remove_task(id);
- Drag_Cooldown[id] = 0;
- Not_Cooldown[id] = true;
- }
- return PLUGIN_HANDLED;
- }
- public DragReelin(parm[]) {
- new id = parm[0];
- new victim = parm[1];
- if (!Hooked[id] || !is_user_alive(victim)) {
- DragEnd(id);
- return;
- }
- new Float:fl_Velocity[3];
- new idOrigin[3], vicOrigin[3];
- get_user_origin(victim, vicOrigin);
- get_user_origin(id, idOrigin);
- new distance = get_distance(idOrigin, vicOrigin);
- if (distance > 1) {
- new Float:fl_Time = distance / get_pcvar_float(CvarDragSpeed);
- fl_Velocity[0] = (idOrigin[0] - vicOrigin[0]) / fl_Time;
- fl_Velocity[1] = (idOrigin[1] - vicOrigin[1]) / fl_Time;
- fl_Velocity[2] = (idOrigin[2] - vicOrigin[2]) / fl_Time;
- }
- else {
- fl_Velocity[0] = 0.0;
- fl_Velocity[1] = 0.0;
- fl_Velocity[2] = 0.0;
- }
- entity_set_vector(victim, EV_VEC_velocity, fl_Velocity); //<- rewritten. now uses engine
- }
- public TakeDamage(victim, inflictor, attacker, Float:damage) { // if take damage drag off
- if (is_user_alive(attacker) && (get_pcvar_num(CvarDragDmg2Stop) > 0)) {
- OvrDmg[victim] = OvrDmg[victim] + floatround(damage);
- if (OvrDmg[victim] >= get_pcvar_num(CvarDragDmg2Stop)) {
- OvrDmg[victim] = 0;
- DragEnd(victim);
- return HAM_IGNORED;
- }
- }
- return HAM_IGNORED;
- }
- public HarpoonTarget(parm[]) { // set beam (ex. tongue:) if target is player
- new id = parm[0];
- new hooktarget = parm[1];
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(8); // TE_BEAMENTS
- write_short(id);
- write_short(hooktarget);
- write_short(DragSprite); // sprite index
- write_byte(0); // start frame
- write_byte(0); // framerate
- write_byte(200); // life
- write_byte(8); // width
- write_byte(1); // noise
- write_byte(155); // r, g, b
- write_byte(155); // r, g, b
- write_byte(55); // r, g, b
- write_byte(90); // brightness
- write_byte(10); // speed
- message_end();
- }
- public NoTarget(id) { // set beam if target isn't player
- new endorigin[3];
- get_user_origin(id, endorigin, 3);
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_BEAMENTPOINT); // TE_BEAMENTPOINT
- write_short(id);
- write_coord(endorigin[0]);
- write_coord(endorigin[1]);
- write_coord(endorigin[2]);
- write_short(DragSprite); // sprite index
- write_byte(0); // start frame
- write_byte(0); // framerate
- write_byte(200); // life
- write_byte(8); // width
- write_byte(1); // noise
- write_byte(155); // r, g, b
- write_byte(155); // r, g, b
- write_byte(55); // r, g, b
- write_byte(75); // brightness
- write_byte(0); // speed
- message_end();
- }
- public PlayerPreThink(id) {
- new button = get_user_button(id);
- new oldbutton = get_user_oldbutton(id);
- if (!is_user_alive(id)) {
- return FMRES_IGNORED;
- }
- if (Frozen[id]) {
- set_pev(id, pev_velocity, Float:{0.0,0.0,0.0});
- set_pev(id, pev_maxspeed, 1.0) ;
- }
- if(HasPower[id] == 6 ) {
- if (BindUse[id]) {
- if (!(oldbutton & IN_USE) && (button & IN_USE))
- DragStart(id);
- if ((oldbutton & IN_USE) && !(button & IN_USE))
- DragEnd(id);
- }
- if (!Drag_I[id]) {
- Unable2move[id] = false;
- }
- if (Unable2move[id] && get_pcvar_num(CvarDragUnb2Move) > 0) {
- set_pev(id, pev_maxspeed, 1.0);
- }
- }
- return PLUGIN_CONTINUE;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // Teleport |
- //==========================================================================================================
- public TeleportShowHUD(id) {
- if (!is_user_alive(id) || HasPower[id] != 7) {
- remove_task(id);
- Teleport_Cooldown[id] = 0;
- return PLUGIN_HANDLED;
- }
- set_hudmessage(0, 100, 200, 0.05, 0.60, 0, 1.0, 1.1, 0.0, 0.0, -11);
- if(is_user_alive(id) && Teleport_Cooldown[id] == 1) {
- Teleport_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunda",Teleport_Cooldown[id]);
- }
- if(is_user_alive(id) && Teleport_Cooldown[id] > 1) {
- Teleport_Cooldown[id] --;
- show_hudmessage(id, "Puterea iti va reveni in: %d secunde",Teleport_Cooldown[id]);
- }
- if(Teleport_Cooldown[id] <= 0) {
- show_hudmessage(id, "Ti-a revenit puterea");
- ColorChat(id, GREEN, "%s Iti poti folosi din nou puterea. ", szPrefix);
- remove_task(id);
- Teleport_Cooldown[id] = 0;
- }
- return PLUGIN_HANDLED;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // NoRecoil |
- //==========================================================================================================
- public Weapon_PrimaryAttack_Pre(entity) {
- new id = pev(entity, pev_owner);
- if (HasPower[id] == 8) {
- pev(id, pev_punchangle, cl_pushangle[id]);
- return HAM_IGNORED;
- }
- return HAM_IGNORED;
- }
- public Weapon_PrimaryAttack_Post(entity) {
- new id = pev(entity, pev_owner);
- if ( HasPower[id] == 8) {
- new Float: push[3];
- pev(id, pev_punchangle, push);
- xs_vec_sub(push, cl_pushangle[id], push);
- xs_vec_mul_scalar(push, 0.0, push);
- xs_vec_add(push, cl_pushangle[id], push);
- set_pev(id, pev_punchangle, push);
- return HAM_IGNORED;
- }
- return HAM_IGNORED;
- }
- // POWERS -------------------------------------------------
- public FurienAndAntiFurienDamage ( iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
- {
- if( iInflictor == iAttacker && vip_axe_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 5.3);
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && katana_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 2.8);
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && double_katana_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 3.3);
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && super_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 2.0);
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && infinity_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 1.5 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && super_knife_shop [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 6.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && super_knife_shop2 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 10.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && ignes_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 4.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && elf_knife [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_KNIFE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 4.5 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && hunter [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 1.5 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && mage [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_GALIL && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 2.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && rogue [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_FAMAS && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 2.5 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && shaman [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_SG552 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 2.5 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && thompson [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 3.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && warrior [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 2.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && deklowaz [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_P90 && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 3.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && dual_mp5 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_MP5NAVY && cs_get_user_team( iAttacker ) == CS_TEAM_CT )
- {
- SetHamParamFloat( 4, fDamage * 2.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && strike_grenade [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_HEGRENADE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 4.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && strike_grenade2 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_HEGRENADE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 5.0 );
- return HAM_HANDLED;
- }
- if( iInflictor == iAttacker && strike_grenade3 [ iAttacker ] && is_user_alive( iAttacker ) && get_user_weapon( iAttacker ) == CSW_HEGRENADE && cs_get_user_team( iAttacker ) == CS_TEAM_T )
- {
- SetHamParamFloat( 4, fDamage * 6.0 );
- return HAM_HANDLED;
- }
- return HAM_IGNORED;
- }
- public Depozit(id) {
- if(cs_get_user_money(id) >= 16000) {
- ColorChat ( id, GREEN, "%s Ai depozitat^4 16000^3 si ai primit^4 1^3 credit .^4", szPrefix );
- set_user_credits(id, get_user_credits(id) + 1);
- cs_set_user_money(id, cs_get_user_money(id) - 16000);
- }
- else {
- ColorChat ( id, GREEN, "%s Ai nevoie de ^4 16000 $^3 pentru a depozita .^4", szPrefix );
- }
- return PLUGIN_HANDLED;
- }
- public Retrage(id) {
- if(cs_get_user_money(id) >= 16000) {
- ColorChat ( id, GREEN, "%s Detii deja^4 16000 $^3", szPrefix );
- }
- else if(PlayerCredits[id]) {
- ColorChat ( id, GREEN, "%s Ai retras^4 1^3 credit, mai ai^4 %d^3 credite .", szPrefix, PlayerCredits [ id ] - 1 );
- set_user_credits(id, get_user_credits(id) - 1);
- cs_set_user_money(id, cs_get_user_money(id) + 16000);
- }
- else {
- ColorChat ( id, GREEN, "%s Ai nevoie de^4 1^3 credti pentru a putea retrage .^4", szPrefix );
- }
- return PLUGIN_HANDLED;
- }
- public Show_Credits(id) {
- set_hudmessage(0, 128, 0, 0.03, 0.86, 2, 6.0, 5.0);
- show_hudmessage(id, "Ai %d Credite.", PlayerCredits[id]);
- ColorChat ( id, GREEN, "%s Detii^4 %d^3 credite .^4", szPrefix, PlayerCredits [ id ] );
- return PLUGIN_HANDLED;
- }
- public Give_Credits(id, level, cid) {
- if(!cmd_access(id, level, cid, 2)) {
- return PLUGIN_HANDLED;
- }
- new arg[23], gplayers[32], num, i, players, name[32];
- get_user_name(id, name, 31);
- read_argv(1, arg, 23);
- new give_credits[5];
- read_argv(2, give_credits, charsmax(give_credits));
- new Credits = str_to_num(give_credits);
- if(equali(arg, "@T") || equali ( arg, "t" ) ) {
- get_players(gplayers, num, "e", "TERRORIST");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- set_user_credits(players, get_user_credits(players) + Credits);
- SaveData(id);
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 give^x03 %i Credits^x04 to all^x03 Ts.", Credits);
- case 2: ColorChat(0, GREEN, "^x03%s^x04 give^x03 %i Credits^x04 to all^x03 Ts.", name, Credits);
- }
- }
- else if(equali(arg, "@CT") || equali ( arg, "ct" ) ) {
- get_players(gplayers, num, "e", "CT");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- set_user_credits(players, get_user_credits(players) + Credits);
- SaveData(id);
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 give^x03 %i Credits^x04 to all^x03 CTs.", Credits);
- case 2: ColorChat(0, GREEN, "^x03%s^x04 give^x03 %i Credits^x04 to all^x03 CTs.", name, Credits);
- }
- }
- if(equali(arg, "@All") || equali ( arg, "all" ) ) {
- get_players(gplayers, num, "a");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- set_user_credits(players, get_user_credits(players) + Credits);
- SaveData(id);
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 give^x03 %i Credits^x04 to all^x03 Players.", Credits);
- case 2: ColorChat(0, GREEN, "^x03%s^x04 give^x03 %i Credits^x04 to all^x03 Players.", name, Credits);
- }
- }
- new player = cmd_target(id, arg, 11);
- if(!player) {
- return PLUGIN_HANDLED;
- }
- set_user_credits(player, get_user_credits(player) + Credits);
- SaveData(id);
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(player, GREEN, "^x03ADMIN^x04 give your^x03 %i Credits.", Credits);
- case 2: ColorChat(player, GREEN, "^x03%s^x04 give your^x03 %i Credits.", name, Credits);
- }
- return PLUGIN_HANDLED;
- }
- public Reset_Credits(id, level, cid) {
- if(!cmd_access(id, level, cid, 2)) {
- return PLUGIN_HANDLED;
- }
- new arg[23], gplayers[32], num, i, players, name[32];
- get_user_name(id, name, 31);
- read_argv(1, arg, 23);
- if(equali(arg, "@T")) {
- get_players(gplayers, num, "e", "TERRORIST");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- PlayerCredits [ players ] = 0;
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 reset^x03 Credits^x04 to all^x03 Ts.");
- case 2: ColorChat(0, GREEN, "^x03%s^x04 reset^x03 Credits^x04 to all^x03 Ts.", name);
- }
- }
- else if(equali(arg, "@CT")) {
- get_players(gplayers, num, "e", "CT");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- PlayerCredits [ players ] = 0;
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 reset^x03 %i Credits^x04 to all^x03 CTs.");
- case 2: ColorChat(0, GREEN, "^x03%s^x04 reset^x03 %i Credits^x04 to all^x03 CTs.", name);
- }
- }
- if(equali(arg, "@All")) {
- get_players(gplayers, num, "a");
- for(i = 0; i < num; i++) {
- players = gplayers[i];
- if(!is_user_connected(players))
- continue;
- PlayerCredits [ players ] = 0;
- }
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(0, GREEN, "^x03ADMIN^x04 reset^x03 Credits^x04 to all^x03 Players.");
- case 2: ColorChat(0, GREEN, "^x03%s^x04 resetx03 Credits^x04 to all^x03 Players.", name);
- }
- }
- new player = cmd_target(id, arg, 11);
- if(!player) {
- return PLUGIN_HANDLED;
- }
- PlayerCredits [ player ] = 0;
- switch(get_cvar_num("amx_show_activity")) {
- case 1: ColorChat(player, GREEN, "^x03ADMIN^x04 reset your^x03 Credits.");
- case 2: ColorChat(player, GREEN, "^x03%s^x04 reset your^x03 Credits.", name);
- }
- return PLUGIN_HANDLED;
- }
- stock set_player_nextattack(player, weapon_id, Float:NextTime)
- {
- const m_flNextPrimaryAttack_dc = 46
- const m_flNextSecondaryAttack_dc = 47
- const m_flTimeWeaponIdle_dc = 48
- const m_flNextAttack_dc = 83
- static weapon
- weapon = fm_get_user_weapon_entity(player, weapon_id)
- set_pdata_float(player, m_flNextAttack_dc, NextTime, 5)
- if(pev_valid(weapon))
- {
- set_pdata_float(weapon, m_flNextPrimaryAttack_dc , NextTime, 4)
- set_pdata_float(weapon, m_flNextSecondaryAttack_dc, NextTime, 4)
- set_pdata_float(weapon, m_flTimeWeaponIdle_dc, NextTime, 4)
- }
- }
- //get weapon id
- stock get_weapon_ent(id,wpnid=0,wpnName[]="") {
- // who knows what wpnName will be
- static newName[24];
- // need to find the name
- if(wpnid) get_weaponname(wpnid,newName,23);
- // go with what we were told
- else formatex(newName,23,"%s",wpnName);
- // prefix it if we need to
- if(!equal(newName,"weapon_",7))
- format(newName,23,"weapon_%s",newName);
- return fm_find_ent_by_owner(get_maxplayers(),newName,id);
- }
- // Blood and bodyparts
- stock create_blood(const Float:origin[3]) {
- // Head
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_MODEL)
- engfunc(EngFunc_WriteCoord, origin[0])
- engfunc(EngFunc_WriteCoord, origin[1])
- engfunc(EngFunc_WriteCoord, origin[2])
- write_coord(random_num(-100,100))
- write_coord(random_num(-100,100))
- write_coord(random_num(100,200))
- write_angle(random_num(0,360))
- write_short(mdl_gib_head) // Sprite index
- write_byte(0) // bounce
- write_byte(500) // life
- message_end()
- // Spine
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_MODEL)
- engfunc(EngFunc_WriteCoord, origin[0])
- engfunc(EngFunc_WriteCoord, origin[1])
- engfunc(EngFunc_WriteCoord, origin[2])
- write_coord(random_num(-100,100))
- write_coord(random_num(-100,100))
- write_coord(random_num(100,200))
- write_angle(random_num(0,360))
- write_short(mdl_gib_spine)
- write_byte(0) // bounce
- write_byte(500) // life
- message_end()
- // Lung
- for(new i = 0; i < random_num(1,2); i++)
- {
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_MODEL)
- engfunc(EngFunc_WriteCoord, origin[0])
- engfunc(EngFunc_WriteCoord, origin[1])
- engfunc(EngFunc_WriteCoord, origin[2])
- write_coord(random_num(-100,100))
- write_coord(random_num(-100,100))
- write_coord(random_num(100,200))
- write_angle(random_num(0,360))
- write_short(mdl_gib_lung)
- write_byte(0) // bounce
- write_byte(500) // life
- message_end()
- }
- // Parts, 10 times
- for(new i = 0; i < 10; i++)
- {
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_MODEL)
- engfunc(EngFunc_WriteCoord, origin[0])
- engfunc(EngFunc_WriteCoord, origin[1])
- engfunc(EngFunc_WriteCoord, origin[2])
- write_coord(random_num(-100,100))
- write_coord(random_num(-100,100))
- write_coord(random_num(100,200))
- write_angle(random_num(0,360))
- write_short(mdl_gib_flesh)
- write_byte(0) // bounce
- write_byte(500) // life
- message_end()
- }
- // Blood
- for(new i = 0; i < 3; i++)
- {
- new x,y,z
- x = random_num(-100,100)
- y = random_num(-100,100)
- z = random_num(0,100)
- for(new j = 0; j < 3; j++)
- {
- message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
- write_byte(TE_BLOODSPRITE)
- engfunc(EngFunc_WriteCoord, origin[0]+(x*j))
- engfunc(EngFunc_WriteCoord, origin[1]+(y*j))
- engfunc(EngFunc_WriteCoord, origin[2]+(z*j))
- write_short(blood_spray)
- write_short(blood_drop)
- write_byte(229) // color index
- write_byte(15) // size
- message_end()
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement