Raised This Month: $51 Target: $400
 12% 

VIP Knife for Deathrun.


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Bailqka
Junior Member
Join Date: Aug 2016
Old 09-23-2016 , 08:19   VIP Knife for Deathrun.
Reply With Quote #1

Here's the code:
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <engine> 
#include <vault>
#include <fun>

#define PLUGIN "Knife Mod"
#define VERSION "1.0" 
#define AUTHOR "spunko"

#define TASK_INTERVAL 4.0  
#define MAX_HEALTH 255  

new knife_model[33
new 
g_Menu

new CVAR_HIGHSPEED
new CVAR_LOWSPEED
new CVAR_LOWGRAV
new CVAR_NORMGRAV
new CVAR_HEALTH_ADD
new CVAR_HEALTH_MAX
new CVAR_DAMAGE 

public plugin_init() { 
   
   
register_plugin(PLUGINVERSIONAUTHOR
   
   
register_event"Damage""event_damage""be" )
   
register_event("CurWeapon","CurWeapon","be","1=1"
   
   
g_Menu register_menuid("Knife Mod")
   
register_menucmd(g_Menu1023"knifemenu")
   
   
register_clcmd("say /knife""display_knife")
   
   
CVAR_HIGHSPEED register_cvar("km_highspeed","340")
   
CVAR_LOWSPEED register_cvar("km_lowspeed","170")
   
CVAR_HEALTH_ADD register_cvar("km_addhealth""3")
   
CVAR_HEALTH_MAX register_cvar("km_maxhealth""75")
   
CVAR_DAMAGE register_cvar("km_damage""2")
   
CVAR_LOWGRAV register_cvar("km_lowgravity" "400")
   
CVAR_NORMGRAV get_cvar_pointer("sv_gravity")
   
   
set_task(480.0"kmodmsg"0__"b")
}

public 
plugin_precache() { 
   
precache_model("models/v_butcher.mdl"
   
precache_model("models/v_machete.mdl")
   
precache_model("models/v_bak.mdl")
   
precache_model("models/v_pocket.mdl")
   
precache_model("models/v_regeneration.mdl"
   
precache_model("models/v_vip.mdl")


public 
display_knife(id) {
   new 
menuBody[512]
   
add(menuBody511"\rKnife Menu\w^n^n")
   
add(menuBody511"1. FastKill Knife \y(More Damage/Low Speed)\w^n")
   
add(menuBody511"2. Ninja Knife \y(Silent Footsteps)\w^n")
   
add(menuBody511"3. Gepard Knife \y(High Speed)\w^n")
   
add(menuBody511"4. Matrix Knife \y(Low Gravity)\w^n")
   
add(menuBody511"5. Health Knife \y(Health Regeneration)\w^n^n")
   
add(menuBody511"0. Exit^n")
   
   new 
keys = ( 1<<1<<1<<1<<1<<1<<)
   
show_menu(idkeysmenuBody, -1"Knife Mod")
}

public 
knifemenu(idkey) {
   switch(
key
   {
      case 
0SetKnife(id 4)
      case 
1SetKnife(id 2)
      case 
2SetKnife(id 3)
      case 
3SetKnife(id 1)
      case 
4SetKnife(id 0)
      default: return 
PLUGIN_HANDLED
   
}
   
SaveData(id)
   return 
PLUGIN_HANDLED


public 
SetKnife(id Knife) {
   
knife_model[id] = Knife
   
   
new ClipAmmoWeapon get_user_weapon(idClipAmmo
   if ( 
Weapon != CSW_KNIFE )
      return 
PLUGIN_HANDLED
   
   
new vModel[56],pModel[56]
   
   switch(
Knife)
   {
      case 
0: {
         
format(vModel,55,"models/v_regeneration.mdl")
      }
      case 
1: {
         
format(vModel,55,"models/v_butcher.mdl")
      }
      case 
2: {
         
format(vModel,55,"models/v_bak.mdl")
      }
      case 
3: {
         
format(vModel,55,"models/v_pocket.mdl")
      }
      case 
4: {
         
format(vModel,55,"models/v_machete.mdl")
      }
   } 
   
   
entity_set_string(idEV_SZ_viewmodelvModel)
   
entity_set_string(idEV_SZ_weaponmodelpModel)
   
   return 
PLUGIN_HANDLED;  
}

public 
event_damageid ) {
   
   new 
victim_id id;
   if( !
is_user_connectedvictim_id ) ) return PLUGIN_CONTINUE
   
new dmg_take read_data);
   new 
dmgtype read_data);
   new 
Float:multiplier get_pcvar_float(CVAR_DAMAGE);
   new 
Float:damage dmg_take multiplier;
   new 
health get_user_healthvictim_id );
   
   new 
iWeapIDattacker_id get_user_attackervictim_idiWeapID );
   
   if( !
is_user_connectedattacker_id ) || !is_user_alivevictim_id ) ) {
      return 
PLUGIN_HANDLED
   
}
   
   if( 
iWeapID == CSW_KNIFE && knife_model[attacker_id] == ) {
      
      if( 
floatround(damage) >= health ) {
         if( 
victim_id == attacker_id ) {
            return 
PLUGIN_CONTINUE
            
}else{
            
log_killattacker_idvictim_id"knife");
         }
         
         return 
PLUGIN_CONTINUE
         
}else {
         if( 
victim_id == attacker_id ) return PLUGIN_CONTINUE
         
         fakedamage
victim_id"weapon_knife"damagedmgtype );
      }
   }
   return 
PLUGIN_CONTINUE
}

public 
CurWeapon(id)
   {
   new 
Weapon read_data(2)
   
   
// Set Knife Model
   
SetKnife(idknife_model[id])   
   
   
// Task Options
   
   
if(knife_model[id] == && !task_exists(id) && Weapon == CSW_KNIFE)
      
set_task(TASK_INTERVAL "task_healing",id,_,_,"b")
   else if(
task_exists(id))
      
remove_task(id)
   
   
// Abilities
   
set_user_footsteps(id , ( (knife_model[id] == && Weapon == CSW_KNIFE) ? 0) )
   
    new 
Float:Gravity = ((knife_model[id] == && Weapon ==  CSW_KNIFE)? get_pcvar_float(CVAR_LOWGRAV) :  get_pcvar_float(CVAR_NORMGRAV)) / 800.0
   set_user_gravity
(id Gravity)
   
   
// Speed
   
new Float:Speed
   
if(Weapon != CSW_KNIFE || knife_model[id] < 3)
      return 
PLUGIN_CONTINUE
   
else if(knife_model[id] == 3)
      
Speed get_pcvar_float(CVAR_HIGHSPEED)
   else if(
knife_model[id] == 4)
      
Speed get_pcvar_float(CVAR_LOWSPEED)
   
   
set_user_maxspeed(idSpeed)
   
   return 
PLUGIN_HANDLED   
   
}

stock log_kill(killervictimweapon[],headshot) {
   
user_silentkillvictim );
   
   
message_beginMSG_ALLget_user_msgid"DeathMsg" ), {0,0,0}, );
   
write_bytekiller );
   
write_bytevictim );
   
write_byteheadshot );
   
write_stringweapon );
   
message_end();
   
   new 
kfrags get_user_fragskiller );
   
set_user_fragskillerkfrags++ );
   new 
vfrags get_user_fragsvictim );
   
set_user_fragsvictimvfrags++ );
   
   return  
PLUGIN_CONTINUE



public 
task_healing(id) {  
   new 
addhealth get_pcvar_num(CVAR_HEALTH_ADD)  
   if (!
addhealth)
      return  
   
   new 
maxhealth get_pcvar_num(CVAR_HEALTH_MAX)  
   if (
maxhealth MAX_HEALTH) { 
      
set_pcvar_num(CVAR_HEALTH_MAXMAX_HEALTH)  
      
maxhealth MAX_HEALTH 
   
}  
   
   new 
health get_user_health(id)   
   
   if (
is_user_alive(id) && (health maxhealth)) { 
      
set_user_health(idhealth addhealth)
      
set_hudmessage(02550, -1.00.2501.02.00.10.14)
      
show_hudmessage(id,"<< !!HEAL IN PROGRESS!! >>")
      
message_begin(MSG_ONEget_user_msgid("ScreenFade"), {0,0,0}, id)
      
write_short(1<<10)
      
write_short(1<<10)
      
write_short(0x0000)
      
write_byte(0)
      
write_byte(200)
      
write_byte(0)
      
write_byte(75)
      
message_end()
   }
   
   else {
      if (
is_user_alive(id) && (health maxhealth))
         
remove_task(id)
   }
}  

public 
client_disconnect(id) {  
   if(
task_exists(id)) remove_task(id)  
}  


public 
kmodmsg() { 
   
   
client_print(0,print_chat,"[AMXX] Type /knife to change your knife skins")
}  

public 
client_authorized(id)
   {
   
LoadData(id)
}

SaveData(id)

   
   new 
authid[32]
   
get_user_authid(idauthid31)
   
   new 
vaultkey[64]
   new 
vaultdata[64]
   
   
format(vaultkey63"KMOD_%s"authid)
   
format(vaultdata63"%d"knife_model[id])
   
set_vaultdata(vaultkeyvaultdata)
}

LoadData(id

   new 
authid[32
   
get_user_authid(id,authid,31)
   
   new 
vaultkey[64], vaultdata[64]
   
   
format(vaultkey63"KMOD_%s"authid)
   
get_vaultdata(vaultkeyvaultdata63)
   
knife_model[id] = str_to_num(vaultdata)
   

Can someone add to this knife Knife VIP menu with that functions:
-Special skin http://cs-bg.info/skin/4085
-Gravity be as Matrix Knife
-Speed be as Gepard Knife
-When someone write /knife,VIP Knife dating as 6 and be colored in red.
-When someone who is not admin,select VIP Knife displayed "You must be admin"
-Mod is Deathrun
Thanks to everyone
Bailqka is offline
Bailqka
Junior Member
Join Date: Aug 2016
Old 09-23-2016 , 16:34   Re: VIP Knife for Deathrun.
Reply With Quote #2

Can someone help?
Bailqka is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 21:01.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode