#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
new pont[33]
new knife[33]
new bool:b_sebzes[33]
#define PLUGIN "Bolt"
#define VERSION "1.0"
#define AUTHOR "Pista"
public plugin_precache(){
precache_model("models/kes/1.mdl")
}
public plugin_init() {
RegisterHam(Ham_TakeDamage, "player", "damagetake")
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /bolt","boltmenu")
register_event("DeathMsg","halal","a")
register_event("CurWeapon","ecw","be","1=1")
}
public ecw(id){
new fegyver = get_user_weapon(id)
if(knife[id] == 0 && fegyver == CSW_KNIFE)
{
b_sebzes[id] = true
set_pev(id, pev_viewmodel2, "models/kes/1.mdl")
}
}
public halal(){
new killer = read_data(1)
new victim = read_data(2)
if(killer != victim)
{
pont[killer]++
}
}
public boltmenu(id){
new cim[121]
format(cim, charsmax(cim),"Bolt")
new menu = menu_create(cim, "menu_h")
menu_additem(menu,"Bolt","1",0)
menu_additem(menu,"Kes","2",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0)
}
public menu_h(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
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:{
bolt(id)
}
case 2:{
kes(id)
}
}
return PLUGIN_HANDLED
}
public bolt(id){
new cim[121]
format(cim, charsmax(cim),"Bolt^nPontjaid: %d",pont[id])
new menu = menu_create(cim, "bolt_handler")
menu_additem(menu,"100HP","1",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
}
public bolt_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
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(pont[id] >= 10)
{
set_user_health(id, get_user_health(id)+100)
pont[id] -= 10
client_print(id, print_chat, "Meg vetted a 100HP-t!")
}
else {
client_print(id, print_chat, "Nincs eleg pontod!")
}
}
}
return PLUGIN_HANDLED
}
public kes(id){
new cim[121]
format(cim, charsmax(cim),"Kesek^nPontjaid: %d",pont[id])
new menu = menu_create(cim, "shop")
menu_additem(menu,"Kés","1",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
}
public shop(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
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(pont[id] >= 10)
{
knife[id] = 0
give_item(id, "weapon_knife")
pont[id] -= 10
client_print(id, print_chat, "Meg vetted az Kest!")
}
else {
client_print(id, print_chat, "Nincs eleg pontod!")
}
}
}
}
public damagetake(victim, inflictor, attacker, Float:damage) {
if(b_sebzes[attacker] && get_user_weapon(attacker) == CSW_KNIFE)
{
if(knife[attacker] == 0) {
SetHamParamFloat(4, damage * 1.3)
}
}
}