Member
|
10-21-2013
, 02:05
Plugin vip . Bug speed, Kage vs Psycho
|
#1
|
When someone has to counter-strike vip team can go faster with a knife, and when you get to the Kage vs psycho, going very slowly .. please help me out from CT knife speed to go all within normal parameters.
Plugin >
Code:
/*
Credite:
hadesownage: Base code for regeneration from "Furien VIP".
Sophia - Dias: "Drop User Weapon".
*/
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fun>
#include <cstrike>
#include <hamsandwich>
#include <fakemeta>
#include <xs>
#include <colorchat>
//////////////////////////////////////////////////////
#define PLUGIN "Furien VIP"
#define VERSION "0.1"
#define AUTHOR "eNd."
///////////////////////////////////// /////////////////Pragma , only ;
#pragma semicolon 1
//////////////////////////////////////////////////////Acces LEVEL.
#define VIP_LEVEL ADMIN_IMMUNITY
//////////////////////////////////////////////////////Weapons
const WEAPONS_PISTOLS = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE);
const WEAPONS_SHOTGUNS = (1<<CSW_XM1014)|(1<<CSW_M3);
const WEAPONS_SUBMACHINEGUNS = (1<<CSW_MAC10)|(1<<CSW_UMP45)|(1<<CSW_MP5NAVY)|(1<<CSW_TMP)|(1<<CSW_P90);
const WEAPONS_RIFLES = (1<<CSW_SCOUT)|(1<<CSW_AUG)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_M4A1)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47);
const WEAPONS_MACHINEGUNS = (1<<CSW_M249);
const VALID_WEAPONS = WEAPONS_PISTOLS|WEAPONS_SHOTGUNS|WEAPONS_SUBMACHINEGUNS|WEAPONS_RIFLES|WEAPONS_MACHINEGUNS;
#define WEAPONS (WEAPONS_SHOTGUNS|WEAPONS_SUBMACHINEGUNS|WEAPONS_RIFLES|WEAPONS_MACHINEGUNS|WEAPONS_PISTOLS)
//////////////////////////////////////////////////////Prefix
new szPrefix[] = "[Furien VIP]";
//////////////////////////////////////////////////////Cvar1
new
furien_on, furien_bind, furien_message_connect, furien_scoreboard;
//////////////////////////////////////////////////////Cvar 2
new
furien_give_stuff, furien_give_ultimate;
//////////////////////////////////////////////////////Cvar 3
new
furien_health_on, furien_health_max, furien_health;
//////////////////////////////////////////////////////HUD
new
g_bHud;
//////////////////////////////////////////////////////Models
new Golden_Ak_V[64] = "models/furien_vip/v_golden_ak47.mdl";
new Golden_Ak_P[64] = "models/furien_vip/p_golden_ak47.mdl";
new Golden_Deagle_V[64] = "models/furien_vip/v_golden_deagle.mdl";
new Golden_Deagle_P[64] = "models/furien_vip/p_golden_deagle.mdl";
new Golden_M4a1_V[64] = "models/furien_vip/v_golden_m4a1.mdl";
new Golden_M4a1_P[64] = "models/furien_vip/p_golden_m4a1.mdl";
new Onion_V[64] = "models/furien_vip/v_onion.mdl";
new Knife_P[64] = "models/p_knife.mdl";
//////////////////////////////////////////////////////Texture
new Drop_Texture;
//////////////////////////////////////////////////////Bools
new
bool:g_bGoldenAk[33],bool:g_bGoldenM4a1[33],bool:g_bGoldenDeagle[33];
new
bool:g_bOnion[33];
new
bool:g_bLifeSteal[33],g_bDrop[33];
new
bool:g_bCoolDown[33];
new
bool:g_bUsed[33];
//////////////////////////////////////////////////////Init
public plugin_init() {
//////////////////////////////////////////////////////
register_plugin(PLUGIN, VERSION, AUTHOR);
//////////////////////////////////////////////////////Clcmd
register_clcmd("say", "hook_say");
register_clcmd("say_team", "hook_say");
//////////////////////////////////////////////////////Events
register_event("CurWeapon", "CurWeapon", "be", "1=1");
register_event("CurWeapon", "CurWeaponn", "be", "1=1");
//Ham
RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1);
RegisterHam(Ham_TakeDamage, "player", "PlayerDamage");
//Fw
register_forward(FM_EmitSound, "sound_emit");
//Concmd
register_concmd("+drop","Drop");
register_concmd("-drop","Drop");
//////////////////////////////////////////////////////
}
//////////////////////////////////////////////////////Precache
public plugin_precache()
{
//////////////////////////////////////////////////////HUD
g_bHud = CreateHudSyncObj();
//////////////////////////////////////////////////////Cvar 1
furien_on = register_cvar("furien_vip_on", "1"); //1 =On , 2 = Off
furien_bind = register_cvar("furien_bind", "1"); //1 =On , 2 = Off
furien_message_connect = register_cvar("furien_message_connect", "1"); //1 =On , 2 = Off
furien_scoreboard = register_cvar("furien_scoreboard", "1"); //1 =On , 2 = Off
//////////////////////////////////////////////////////Cvar 2
furien_give_stuff = register_cvar("furien_give_stuff", "1"); //1 =On , 2 = Off
furien_give_ultimate = register_cvar("furien_give_ultimate", "1"); //1 =On , 2 = Off
//////////////////////////////////////////////////////Cvar 3
furien_health_on = register_cvar("furien_regeneration_on", "1"); //1 =On , 2 = Off
furien_health = register_cvar("furien_health", "1"); //1 = 1hp , 2 = 2hp / per second, etc.
furien_health_max = register_cvar("furien_health_max", "100"); //100 = 100 hp, max n
//////////////////////////////////////////////////////Models
precache_model(Golden_Ak_V);
precache_model(Golden_Ak_P);
precache_model(Golden_Deagle_V);
precache_model(Golden_Deagle_P);
precache_model(Golden_M4a1_V);
precache_model(Golden_M4a1_P);
precache_model(Onion_V);
precache_model(Knife_P);
//////////////////////////////////////////////////////Sounds
precache_sound("weapons/cbar_hitbod2.wav");
precache_sound("weapons/cbar_hitbod1.wav");
precache_sound("weapons/bullet_hit1.wav");
precache_sound("weapons/bullet_hit2.wav");
//////////////////////////////////////////////////////Texture
Drop_Texture = precache_model("sprites/lgtning.spr");
}
//////////////////////////////////////////////////////Drop Spr
public Drop(id)
{
new szName[32];
get_user_name(id, szName, charsmax(szName));
if(!g_bDrop[id])
{
ColorChat(id, GREEN,"%s^x03 %s^x01 nu ai acces la^x03 drop weapons.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
else
{
if(g_bCoolDown[id])
{
ColorChat(id, GREEN,"%s^x03 CoolDown ON!^x01", szPrefix);
return PLUGIN_HANDLED;
}
else
{
g_bCoolDown[id] = true;
Drop_Now(id);
}
}
return PLUGIN_HANDLED;
}
public UnDropFalse(id)
{
g_bCoolDown[id] = false;
remove_task(id);
ColorChat(id, GREEN,"%s^x03 CoolDown Off!^x01", szPrefix);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Spawn
public PlayerSpawn(id)
{
new szFlags = get_user_flags(id);
new szScore = get_pcvar_num(furien_scoreboard);
new szWeapon = get_user_weapon(id);
if(szFlags & VIP_LEVEL)
{
if(!szScore)
return PLUGIN_HANDLED;
else
{
if (get_user_team(id) == 1)
if(szWeapon == CSW_C4)
set_task( 0.6, "Bomb", id + 6910 );
set_task( 0.5, "Scoare_Board", id + 6910 );
}
g_bGoldenAk[id] = false;
g_bGoldenM4a1[id] = false;
g_bGoldenDeagle[id] = false;
g_bOnion[id] = false;
g_bLifeSteal[id] = false;
g_bDrop[id] = false;
g_bUsed[id] = false;
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Take Damage
public PlayerDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
if(!is_user_alive(iAttacker)
|| is_user_bot(iAttacker))
return HAM_IGNORED;
if(iInflictor == iAttacker
&& get_user_weapon(iAttacker) == CSW_KNIFE
&& cs_get_user_team(iAttacker) == CS_TEAM_T)
{
if(g_bLifeSteal[iVictim])
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenFade"), {0, 0, 0}, iVictim);
write_short(3 << 12);
write_short(3 << 12);
write_short(0x0000);
write_byte(255);
write_byte(0);
write_byte(0);
write_byte(127);
message_end();
}
else if(g_bLifeSteal[iAttacker])
set_user_health(iAttacker, get_user_health(iAttacker) + 10);
if(g_bOnion[iAttacker])
SetHamParamFloat( 4, fDamage+35);
return HAM_HANDLED;
}
if(iInflictor == iAttacker
&& cs_get_user_team(iAttacker) == CS_TEAM_CT)
{
if(get_user_weapon(iAttacker) == CSW_DEAGLE && g_bGoldenDeagle[iAttacker])
SetHamParamFloat( 4, (fDamage+75)-fDamage);
if((get_user_weapon(iAttacker) == CSW_AK47
|| get_user_weapon(iAttacker) == CSW_M4A1)
&& (g_bGoldenM4a1[iAttacker] || g_bGoldenAk[iAttacker]))
SetHamParamFloat( 4, (fDamage+125)-fDamage);
return HAM_HANDLED;
}
return HAM_HANDLED;
}
//////////////////////////////////////////////////////Vip ScoreBoard
public Scoare_Board(TaskID, id)
{
new szFlags = get_user_flags(id);
new id = TaskID - 6910;
if(szFlags & VIP_LEVEL)
{
message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"));
write_byte(id);
write_byte(4);
message_end();
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Putinserver
public client_putinserver(id)
{
new szBind = get_pcvar_num(furien_bind);
new szMessage = get_pcvar_num(furien_message_connect);
if(!szBind)
return PLUGIN_HANDLED;
else set_task(1.0, "set_bind", id);
if(!szMessage)
return PLUGIN_HANDLED;
else set_task(1.5, "vip_connected", id);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Vip Connected
public vip_connected(id)
{
new szFlags = get_user_flags(id);
new szName[32],szHost[64];
get_user_name(id, szName, charsmax(szName));
get_cvar_string("hostname", szHost ,charsmax(szHost));
if(szFlags & VIP_LEVEL)
{
ColorChat(0, GREEN,"%s^x03 %s^x01 a intrat pe^x03 %s^x01", szPrefix, szName, szHost);
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Disconnect
public client_disconnect(id)
{
new szMessage = get_pcvar_num(furien_message_connect);
if(!szMessage)
return PLUGIN_HANDLED;
else set_task(1.5, "vip_disconnected", id);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Vip Disconnected
public vip_disconnected(id)
{
new szFlags = get_user_flags(id);
new szName[32],szHost[64];
get_user_name(id, szName, charsmax(szName));
get_cvar_string("hostname", szHost ,charsmax(szHost));
if(szFlags & VIP_LEVEL)
{
ColorChat(0, GREEN,"%s^x03 %s^x01 a iesit de pe^x03 %s^x01", szPrefix, szName, szHost);
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Set Bind
public set_bind(id)
{
new szFlags = get_user_flags(id);
new szName[32];
get_user_name(id, szName, charsmax(szName));
if(szFlags & VIP_LEVEL)
{
client_cmd(id, "bind p say /furienvip");
ColorChat(id, GREEN,"%s^x03 %s^x01 esti vip^x03 apasa p pentru meniu.^x01", szPrefix, szName);
}
else client_cmd(id, "unbind p");
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Hook Say
public hook_say(id) {
static Arg[192];
read_args(Arg, sizeof(Arg) - 1);
remove_quotes(Arg);
if(equal(Arg, "/vm", 5) || equal(Arg,"/furienvip",10)) {
replace(Arg, sizeof(Arg) - 1, "/", "");
set_task(0.1,"Furien_Menu",id);
}
if(equal(Arg, "/vip", 5) || equal(Arg,"/vipinfo",10)) {
replace(Arg, sizeof(Arg) - 1, "/", "");
show_motd(id,"/addons/amxmodx/data/lang/vip_info.txt");
}
return PLUGIN_CONTINUE;
}
//////////////////////////////////////////////////////Furien Menu
public Furien_Menu(id)
{
new szFlags = get_user_flags(id);
new szFurienOn = get_pcvar_num(furien_on);
new szName[32];
get_user_name(id, szName, charsmax(szName));
if(!is_user_alive(id) || is_user_bot(id))
{
ColorChat(id, GREEN,"%s^x03 %s^x01 poti folosi comanda doar cand esti^x03 viu.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
if(!szFurienOn){
ColorChat(id, GREEN,"%s^x03 %s^x01 pluginul VIP este^x03 dezactivat.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
else
{
if(szFlags & VIP_LEVEL)
{
if(g_bUsed[id])
{
ColorChat(id, GREEN,"%s^x03 %s^x01 tocmai ai folosit^x03 furien menu.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
else
{
new szVmenu = menu_create("\rVIP \dMenu:^n", "Show_Furien_Menu");
menu_additem(szVmenu, " \dStuff", "1", 0);
menu_additem(szVmenu, " \dUltimate", "2", 0);
menu_setprop(szVmenu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, szVmenu, 0);
}
}
else
{
ColorChat(id, GREEN,"%s^x03 %s^x01 nu esti^x03 vip.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Furien Sub Menu
public Show_Furien_Menu(id, szVmenu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(szVmenu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(szVmenu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1: GiveStuff(id);
case 2: GiveUltimate(id);
}
menu_destroy(szVmenu);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Give Stuff..
public GiveStuff(id)
{
new szStuffOn = get_pcvar_num(furien_give_stuff);
new szName[32];
get_user_name(id, szName, charsmax(szName));
if(!szStuffOn){
ColorChat(id, GREEN,"%s^x03 %s^x01 acest meniu este^x03 dezactivat.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
else
{
new szStuff = menu_create("\rVIP \dMenu:^n", "Show_Stuff_Menu");
menu_additem(szStuff, " \r255 \dAp+Hp", "1", 0);
menu_additem(szStuff, " \dGodmode", "2", 0);
menu_additem(szStuff, " \rNade \dPack", "3", 0);
menu_setprop(szStuff, MPROP_EXIT, MEXIT_ALL);
menu_display(id, szStuff, 0);
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Give Stuff SubMenu
public Show_Stuff_Menu(id, szStuff, item)
{
if( item == MENU_EXIT )
{
menu_destroy(szStuff);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new szName[32];
get_user_name(id, szName, charsmax(szName));
new access, callback;
menu_item_getinfo(szStuff, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
g_bUsed[id] = true;
set_user_health(id, 255);
set_user_armor(id, 255);
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit +155^x03 viata si armura.^x01", szPrefix, szName);
}
case 2:
{
g_bUsed[id] = true;
set_user_godmode(id, 1);
set_task(30.0, "Set_GodMode", id);
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit godmode pentru^x03 30^x01 secunde.^x03", szPrefix, szName);
}
case 3:
{
g_bUsed[id] = true;
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_smokegrenade");
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 nade pack.^x01", szPrefix, szName);
}
}
menu_destroy(szStuff);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Set GodMode..
public Set_GodMode(id)
{
ColorChat(id, GREEN,"%s^x03 nu mai ai^x03 godmode.^x01", szPrefix);
set_user_godmode(id, 0);
remove_task(id);
}
//////////////////////////////////////////////////////Give Ultimate...
public GiveUltimate(id)
{
new szUltimateOn = get_pcvar_num(furien_give_ultimate);
new szName[32];
get_user_name(id, szName, charsmax(szName));
if(!szUltimateOn){
ColorChat(id, GREEN,"%s^x03 %s^x01 acest meniu este^x03 dezactivat.^x01", szPrefix, szName);
return PLUGIN_HANDLED;
}
else
{
static CsTeams:szTeam;
szTeam = cs_get_user_team(id);
switch(szTeam)
{
case CS_TEAM_CT:
{
new szUlti = menu_create("\rUltimate \dMenu:^n", "Show_Ultimate_AntiFurien_Menu");
menu_additem(szUlti, " \dGolden Menu", "1", 0);
menu_setprop(szUlti, MPROP_EXIT, MEXIT_ALL);
menu_display(id, szUlti, 0);
}
case CS_TEAM_T:
{
new szUlti1 = menu_create("\rUltimate \dMenu:^n", "Show_Ultimate_Furien_Menu");
menu_additem(szUlti1, " \rOnion \dKnife", "1", 0);
menu_additem(szUlti1, " \rLife \dSteal", "2", 0);
menu_additem(szUlti1, " \rDrop \dWeapons", "3", 0);
menu_setprop(szUlti1, MPROP_EXIT, MEXIT_ALL);
menu_display(id, szUlti1, 0);
}
}
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Anti-Furien SubMenu
public Show_Ultimate_Furien_Menu(id, szUlti1, item)
{
if( item == MENU_EXIT )
{
menu_destroy(szUlti1);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new szName[32];
get_user_name(id, szName, charsmax(szName));
new access, callback;
menu_item_getinfo(szUlti1, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
new szHealth = get_user_health(id);
new szArmor = get_user_armor(id);
give_item(id, "weapon_knife");
set_user_health(id, szHealth + 100);
set_user_armor(id, szArmor + 100);
set_pev(id, pev_viewmodel2, Onion_V);
set_pev(id, pev_weaponmodel2, Knife_P);
g_bOnion[id] = true;
g_bUsed[id] = true;
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 onion knife.^x01", szPrefix, szName);
}
case 2:
{
give_item(id, "weapon_knife");
g_bLifeSteal[id] = true;
g_bUsed[id] = true;
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 life steal.^x01", szPrefix, szName);
}
case 3:
{
give_item(id, "weapon_knife");
g_bDrop[id] = true;
g_bUsed[id] = true;
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 drop enemy weapons.^x01", szPrefix, szName);
}
}
menu_destroy(szUlti1);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Furien SubMenu
public Show_Ultimate_AntiFurien_Menu(id, szUlti, item)
{
if( item == MENU_EXIT )
{
menu_destroy(szUlti);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new szName[32];
get_user_name(id, szName, charsmax(szName));
new access, callback;
menu_item_getinfo(szUlti, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1: GoldMenu(id);
}
menu_destroy(szUlti);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Gold Menu
public GoldMenu(id)
{
new szGold = menu_create("\rGold \dMenu:^n", "Show_Sub_GoldMenu");
menu_additem(szGold, "\yGold \dDeagle \r& \dM4A1", "1", 0);
menu_additem(szGold, "\yGold \dDeagle \r& \dAk47", "2", 0);
menu_setprop(szGold, MPROP_EXIT, MEXIT_ALL);
menu_display(id, szGold, 0);
}
//////////////////////////////////////////////////////Gold SubMenu
public Show_Sub_GoldMenu(id, szGold, item)
{
if( item == MENU_EXIT )
{
menu_destroy(szGold);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new szName[32];
get_user_name(id, szName, charsmax(szName));
new access, callback;
menu_item_getinfo(szGold, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
give_item(id, "weapon_m4a1");
give_item(id, "weapon_deagle");
cs_set_user_bpammo(id, CSW_AK47, 120);
cs_set_user_bpammo(id, CSW_DEAGLE, 70);
g_bGoldenM4a1[id] = true;
g_bGoldenDeagle[id] = true;
g_bUsed[id] = true;
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 golden m4a1&deagle.^x01", szPrefix, szName);
}
case 2:
{
give_item(id, "weapon_ak47");
give_item(id, "weapon_deagle");
cs_set_user_bpammo(id, CSW_AK47, 120);
cs_set_user_bpammo(id, CSW_DEAGLE, 70);
g_bGoldenAk[id] = true;
g_bGoldenDeagle[id] = true;
g_bUsed[id] = true;
ColorChat(id, GREEN,"%s^x03 %s^x01 ai primit^x03 golden ak47&deagle.^x01", szPrefix, szName);
}
}
menu_destroy(szGold);
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Current Weapon
public CurWeapon(id) {
new szWeapon = get_user_weapon(id);
new szHealth = get_user_health(id);
new szFlags = get_user_flags(id);
static CsTeams:szTeam;
szTeam = cs_get_user_team(id);
if(szFlags & VIP_LEVEL)
{
if(szWeapon == CSW_KNIFE)
{
if(szHealth < 25)
set_task(5.0, "Regeneration_HP",id, _, _, "b");
if(szTeam == CS_TEAM_CT)
{
set_pev(id, pev_maxspeed, 425.0);
set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 68);
}
}
else
{
if(szTeam == CS_TEAM_CT)
{
set_pev(id, pev_maxspeed, 250.0);
set_user_rendering(id, _, 0, 0, 0, _, 0);
}
remove_task(id);
}
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Current Weaponn
public CurWeaponn(id) {
new szWeapon = get_user_weapon(id);
if(szWeapon == CSW_KNIFE)
{
if(szWeapon == CSW_KNIFE && g_bOnion[id] == true)
{
set_pev(id, pev_viewmodel2, Onion_V);
set_pev(id, pev_weaponmodel2, Knife_P);
}
}
if(szWeapon == CSW_AK47)
{
if(szWeapon == CSW_AK47 && g_bGoldenAk[id] == true)
{
set_pev(id, pev_viewmodel2, Golden_Ak_V);
set_pev(id, pev_weaponmodel2, Golden_Ak_P);
}
}
if(szWeapon == CSW_M4A1)
{
if(szWeapon == CSW_M4A1 && g_bGoldenM4a1[id] == true)
{
set_pev(id, pev_viewmodel2, Golden_M4a1_V);
set_pev(id, pev_weaponmodel2, Golden_M4a1_P);
}
}
if(szWeapon == CSW_DEAGLE)
{
if(szWeapon == CSW_DEAGLE && g_bGoldenDeagle[id] == true)
{
set_pev(id, pev_viewmodel2, Golden_Deagle_V);
set_pev(id, pev_weaponmodel2, Golden_Deagle_P);
}
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Regeneration
public Regeneration_HP(id) {
if(!is_user_alive(id) || is_user_bot(id))
return PLUGIN_HANDLED;
new szHP_On = get_pcvar_num(furien_health_on);
new szAddHP = get_pcvar_num(furien_health);
new szHPMax = get_pcvar_num(furien_health_max);
new szHP = get_user_health(id);
new iRandom = random_num(0,255);
if(!szHP_On)
return PLUGIN_HANDLED;
else
{
if(szHP >= szHPMax)
{
emit_sound(id,CHAN_VOICE, "fvox/medical_repaired.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
remove_task(id);
}
else
{
set_user_health(id, szHP + szAddHP);
set_hudmessage(iRandom, iRandom, iRandom, -1.0, 0.25, 1, 1.0, 2.0, 0.1, 0.1, 4);
ShowSyncHudMsg(id, g_bHud, "%s^nViata ta se incarca pana la %d !", szPrefix, szHPMax);
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(191);
write_byte(255);
write_byte(75);
message_end();
}
}
return PLUGIN_HANDLED;
}
//////////////////////////////////////////////////////Sound Emit
public sound_emit(id, channel, sample[])
{
if(!is_user_alive(id) || is_user_bot(id))
return FMRES_SUPERCEDE;
if(g_bOnion[id] && equal(sample, "weapons/knife_", 14))
{
switch(sample[17])
{
case('b'):
{
emit_sound(id, CHAN_WEAPON, "weapons/cbar_hitbod2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
}
case('w'):
{
emit_sound(id, CHAN_WEAPON, "weapons/cbar_hitbod1.wav", 1.0, ATTN_NORM, 0, PITCH_LOW);
}
case('1', '2'):
{
emit_sound(id, CHAN_WEAPON, "weapons/bullet_hit2.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM);
}
}
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED;
}
//////////////////////////////////////////////////////Drop
public Drop_Now(id)
{
new szTarget, szBody;
new szNameId[32],szNameTrg[32];
get_user_name(id, szNameId, charsmax(szNameId));
get_user_name(szTarget, szNameTrg, charsmax(szNameTrg));
static Float:szStart[3];
static Float:szAim[3];
pev(id, pev_origin, szStart);
fm_get_aim_origin(id, szAim);
szStart[2] += 16.0; // raise
szAim[2] += 16.0; // raise
get_user_aiming ( id, szTarget, szBody, 5000 );
if(!is_user_alive(szTarget)
|| is_user_bot(szTarget) || get_user_team(szTarget) == 1)
return PLUGIN_HANDLED;
else
{
set_task(10.0, "UnDropFalse", id);
ColorChat(0, GREEN,"%s^x03 %s^x01 a primit drop weapons de la^x03 %s^x01", szPrefix, szNameTrg, szNameId);
drop(szTarget);
}
message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
write_byte(0);
engfunc(EngFunc_WriteCoord,szStart[0]);
engfunc(EngFunc_WriteCoord,szStart[1]);
engfunc(EngFunc_WriteCoord,szStart[2]);
engfunc(EngFunc_WriteCoord,szAim[0]);
engfunc(EngFunc_WriteCoord,szAim[1]);
engfunc(EngFunc_WriteCoord,szAim[2]);
write_short(Drop_Texture);
write_byte(0);
write_byte(30);
write_byte(20);
write_byte(50);
write_byte(50);
write_byte(100);
write_byte(100);
write_byte(100);
write_byte(100);
write_byte(50);
message_end();
return PLUGIN_HANDLED;
}
stock drop(id)
{
new szWeapons[32], iNum;
get_user_weapons(id, szWeapons, iNum);
for (new i = 0; i < iNum; i++) {
if (WEAPONS & (1<<szWeapons[i]))
{
static szWname[32];
get_weaponname(szWeapons[i], szWname, charsmax(szWeapons));
engclient_cmd(id, "drop", szWname);
}
}
}
stock fm_get_aim_origin(index, Float:origin[3])
{
new Float:szStart[3], Float:szView_Ofs[3];
pev(index, pev_origin, szStart);
pev(index, pev_view_ofs, szView_Ofs);
xs_vec_add(szStart, szView_Ofs, szStart);
new Float:szDest[3];
pev(index, pev_v_angle, szDest);
engfunc(EngFunc_MakeVectors, szDest);
global_get(glb_v_forward, szDest);
xs_vec_mul_scalar(szDest, 9999.0, szDest);
xs_vec_add(szStart, szDest, szDest);
engfunc(EngFunc_TraceLine, szStart, szDest, 0, index, 0);
get_tr2(0, TR_vecEndPos, origin);
return 1;
}
|
|