Well it was a good learning lesson. Time for me to start learning all this up again. I'll look around for guides. Anywho, i should have done this from the start!
I am just trying to modify this plugin (cs_OneHitKnifeKills) so that it only works with the secondary knife attack, not primary. So, any fixes you guys may have would help! Here is the code!
Code:
/************************************************
One Hit Knife Kills
Author: Rabid Baboon
Version: 1.3
Mod: Counter-Strike
Requires: AMX mod X v1.01
Required Modules: cstrike, fakemeta engine and csx
Description:
Kills a player in one hit from the knife.
Special Thanks:
FireStorm - For the sucide message block function.
Changelog:
v1.3
Fixed getting knife kills when another player takes fall damage.
v1.2
Blocked sucide message from knife kills.
v1.1
Self-kill from fall damage while knife is out fixed.
************************************************/
#include <amxmodx>
#include <cstrike>
#include <csx>
#include <fakemeta>
#include <engine>
#include <engine_stocks>
#include <fun>
/************************************************
Global Variables
************************************************/
new knifekill = 0
/************************************************
Main Functions
************************************************/
/************************************************
plugin_modules()
Required modules listed here. Plugin will not work if they are not loaded.
************************************************/
public plugin_modules()
{
require_module("cstrike");
require_module("csx");
require_module("fakemeta");
require_module("engine");
}
/************************************************
plugin_init()
Initializes the plugin.
************************************************/
public plugin_init()
{
register_plugin("One Hit Knife Kills", "1.3", "Rabid Baboon")
register_forward(FM_AlertMessage,"blocksuicide")
return PLUGIN_HANDLED
}
/************************************************
client_damage(attacker, victim, damage, wpnindex, hitplace, TA)
Kills a player if he was damaged by a knife.
Called when a player takes damage
************************************************/
public client_damage(attacker, victim, damage, wpnindex, hitplace, TA)
{
if(is_user_alive(victim))
{
if((attacker != victim)) //prevents killing self with knife from fall damage.
{
if(wpnindex == CSW_KNIFE && TA != 1)
{
if(damage != DMG_FALL)
{
knifekill = 1
if(hitplace == HIT_HEAD)
{
make_deathmsg(attacker, victim, 1, "knife")
}
else
{
make_deathmsg(attacker, victim, 0, "knife")
}
user_silentkill(victim)
set_user_frags(attacker, get_user_frags(attacker)+1)
}
}
}
}
return PLUGIN_HANDLED
}
/************************************************
blocksuicide(at_type, message[])
Blocks the sucide message caused user_silentkill
************************************************/
public blocksuicide(at_type, message[])
{
if(containi(message,"suicide") > -1 && containi(message,"world") > -1 && knifekill == 1)
{
knifekill = 0
return FMRES_SUPERCEDE
}
return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/