#include <amxmodx>
#include <amxmisc>
#include <colorchat>
#include <engine>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <nvault>
#define PLUGIN "Kesmenu+usp"
#define VERSION "1.0.0"
#define AUTHOR "AUTHOR"
new v_alap[] = "models/insert/kes/v_bak.mdl" //modellek
new v_ugras[] = "models/insert/kes/INSERT.mdl" //modellek
new v_gyors[] = "models/insert/kes/InsertNeonKek.mdl" //modellek
new v_hp[] = "models/insert/kes/InsertPirosKes.mdl" //modellek
new v_sebzes[] = "models/insert/kes/v_machete.mdl" //modellek
new v_halado[] = "models/insert/kes/v_pocket.mdl" //modellek
new v_felisten[] = "models/insert/kes/INSERT2.mdl" //modellek
new v_halhatatlan[] = "models/insert/kes/INSERT3.mdl" //modellek
new bool:b_alap[33]
new bool:b_ugras[33]
new bool:b_gyorsasag[33]
new bool:b_hp[33]
new bool:b_sebzes[33]
new bool:b_halado[33]
new bool:b_felisten[33]
new bool:b_halhatatlan[33]
new olesek[33]
new usp[33]
new szorzo
new name[33][32]
new g_vault
public plugin_precache() {
precache_model("models/insert2015usp/ezust.mdl")
precache_model("models/insert2015usp/kek.mdl")
precache_model("models/insert2015usp/gold.mdl")
precache_model("models/insert2015usp/lezeres.mdl")
precache_model("models/insert2015usp/szines.mdl")
precache_model(v_alap)
precache_model(v_ugras)
precache_model(v_gyors)
precache_model(v_hp)
precache_model(v_sebzes)
precache_model(v_halado)
precache_model(v_felisten)
precache_model(v_halhatatlan)
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /kes","kesmenu")
register_clcmd("say /knife","kesmenu")
register_clcmd("team_say /kes","kesmenu")
register_clcmd("team_say /knife","kesmenu")
register_clcmd("say /usp","menu")
register_event("DeathMsg", "halal", "a")
register_event("CurWeapon", "curwep", "be", "1=1")
szorzo = register_cvar("sebzes_kes_szorzo", "2")
g_vault = nvault_open("Kesmenu_Olesek")
register_clcmd("say /adas","adas")
set_task(0.1, "kijelzo", 0, _, _, "b")
}
public ecw(id)
{
new fegyver = get_user_weapon(id)
if(usp[id] == 0 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/insert2015usp/ezust.mdl")
}
if(usp[id] == 1 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/insert2015usp/kek.mdl")
}
if(usp[id] == 2 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/insert2015usp/gold.mdl")
}
if(usp[id] == 3 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/insert2015usp/lezeres.mdl")
}
if(usp[id] == 4 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/insert2015usp/szines.mdl")
}
}
public menu(id) {
new menu = menu_create("\rINS3RT USP Menu", "menu_h")
if(olesek[id] >= 15)
menu_additem(menu,"\tEzust USP\r[Feloldva]","1",0)
else
menu_additem(menu,"\tEzust USP \r[15 Pont]","1",0)
if(olesek[id] >= 35)
menu_additem(menu,"\yKek USP \r[Feloldva]","2",0)
else
menu_additem(menu,"\dKek USP \r[35 Pont]","2",0)
if(olesek[id] >= 50)
menu_additem(menu,"\yArany USP \r[Feloldva]","3",0)
else
menu_additem(menu,"\dArany USP \r[50 Pont]","3",0)
if(olesek[id] >= 70)
menu_additem(menu,"\yLezeres USP \r[Feloldva]","4",0)
else
menu_additem(menu,"\dLezeres USP \r[70 Pont]","4",0)
if(olesek[id] >= 100)
menu_additem(menu,"\ySzines USP \r[Feloldva]","5",0)
else
menu_additem(menu,"\dSzines USP [100 Pont]","5",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[9], 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(olesek[id] >= 15)
usp[id] = 0
else
client_print(id,print_chat,"Tul keves pontod van")
}
case 2:{
if(olesek[id] >= 35)
usp[id] = 1
else
client_print(id,print_chat,"Tul keves pontod van")
}
case 3:{
if(olesek[id] >= 50)
usp[id] = 2
else
client_print(id,print_chat,"Tul keves pontod van")
}
case 4:{
if(olesek[id] >= 70)
usp[id] = 3
else
client_print(id,print_chat,"Tul keves pontod van")
}
case 5:{
if(olesek[id] >= 100)
usp[id] = 4
else
client_print(id,print_chat,"Tul keves pontod van")
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public damagetake(victim, inflictor, attacker, Float:damage)
{
if(b_sebzes[attacker] && get_user_weapon(attacker) == CSW_KNIFE)
{
SetHamParamFloat(4, damage * get_pcvar_float(szorzo))
}
}
public curwep(id) {
new weapon = get_user_weapon(id)
if(b_alap[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_alap)
}
if(b_ugras[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_ugras)
set_user_gravity(id, 0.6)
}
if(b_gyorsasag[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_gyors)
set_user_maxspeed(id, 450)
}
if(b_hp[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_hp)
set_task(3.5 , "task_healing",id,_,_,"b")
}
if(b_sebzes[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_sebzes)
}
if(b_halado[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_halado)
set_user_maxspeed(id, 450)
set_user_gravity(id, 0.6)
}
if(b_felisten[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_felisten)
set_user_maxspeed(id, 450)
set_user_gravity(id, 0.6)
set_task(3.5 , "task_healing",id,_,_,"b")
}
if(b_halhatatlan[id] && weapon == CSW_KNIFE) {
set_pev(id, pev_viewmodel2, v_halhatatlan)
set_user_maxspeed(id, 450)
set_user_gravity(id, 0.6)
set_task(3.5 , "task_healing",id,_,_,"b")
b_sebzes[id] = true
}
}
public task_healing(id) {
new addhealth = 5
if (!addhealth)
return
new maxhealth = 100
if (maxhealth > 255) {
set_pcvar_num(100, 255)
maxhealth = 255
}
new health = get_user_health(id)
if (is_user_alive(id) && (health < maxhealth)) {
set_user_health(id, health + addhealth)
set_hudmessage(0, 255, 0, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.1, 4)
show_hudmessage(id,"<< !!ELET TOLTODES!! >>")
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(200)
write_byte(0)
write_byte(75)
message_end()
}
else {
if (is_user_alive(id) && (health > maxhealth))
remove_task(id)
}
}
public halal()
{
if(read_data(1) != read_data(2))
if(get_user_weapon(read_data(1)) == CSW_KNIFE) {
{
olesek[read_data(1)] ++
}
}
}
public top(id) {
}
public kesmenu(id) {
new menu = menu_create("\r INS3RT Kesek:", "kesmenu_case");
new oles = olesek[id]
new szText[555 char]
menu_additem(menu, "Alap kes", "0", 0); //0
formatex( szText, charsmax( szText ), "Nagyugras kese(%d|30)", oles)
menu_additem(menu, szText, "1", 0) //1 30 �l�s
formatex( szText, charsmax( szText ), "Gyorsasag kese(%d|60)", oles)
menu_additem(menu, szText, "2", 0); //2 60 �l�s
formatex( szText, charsmax( szText ), "Hp tolto kes(%d|120)", oles)
menu_additem(menu, szText, "3", 0); //3 120 �l�s
formatex( szText, charsmax( szText ), "Nagy sebzes kese(%d|200)", oles)
menu_additem(menu, szText, "4", 0); //4 200 �l�s
formatex( szText, charsmax( szText ), "Halado kes(%d|450)", oles)
menu_additem(menu, szText, "5", 0); //5 450 �l�s
formatex( szText, charsmax( szText ), "Felisten kes(%d|700)", oles)
menu_additem(menu, szText, "6", 0); //6 700 �l�s
formatex( szText, charsmax( szText ), "Halhatatlan kes(%d|1000)", oles)
menu_additem(menu, szText, "7", 0); //7 1000 �l�s
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_setprop(menu, MPROP_PERPAGE, 7);
menu_setprop(menu, MPROP_BACKNAME, "Vissza");
menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo");
menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
menu_setprop(menu, MPROP_NOCOLORS, 1);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public kesmenu_case(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_cancel(id);
return PLUGIN_HANDLED;
}
new command[6], name[64], access, callback;
menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
switch(item)
{
case 0: //alap
{
alap(id)
}
case 1: //ugras
{
if(olesek[id] >= 30) {
ugras(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 2: //gyors
{
if(olesek[id] >= 60) {
gyors(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 3: //hp
{
if(olesek[id] >= 120) {
hp(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 4: //sebzes
{
if(olesek[id] >= 200) {
sebzes(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 5: //halado
{
if(olesek[id] >= 450) {
halado(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 6: //felisten
{
if(olesek[id] >= 700) {
felisten(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
case 7: //halhatatlan
{
if(olesek[id] >= 1000) {
halhatatlan(id)
}
else {
ColorChat(id, GREEN,"Nincs eleg pontod")
}
}
}
}
public alap(id) {
b_alap[id] = true
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public ugras(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = true
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public gyors(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = true
b_hp[id] = false
b_sebzes[id] = false
}
public hp(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = true
b_sebzes[id] = false
}
public sebzes(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = true
}
public halado(id) {
b_alap[id] = false
b_halado[id] = true
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public felisten(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = true
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public halhatatlan(id) {
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = true
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public client_putinserver(id) {
betoltes(id)
get_user_name(id, name[id], 31)
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
}
public client_disconnect(id) {
mentes(id)
b_alap[id] = false
b_halado[id] = false
b_felisten[id] = false
b_halhatatlan[id] = false
b_ugras[id] = false
b_gyorsasag[id] = false
b_hp[id] = false
b_sebzes[id] = false
remove_task(id)
}
public mentes(id)
{
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-OLESEK", name[id])
format(vaultdata,255,"%i#", olesek[id])
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public betoltes(id)
{
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-OLESEK", name[id])
nvault_get(g_vault,vaultkey,vaultdata,255)
olesek[id] = str_to_num(vaultdata)
return PLUGIN_CONTINUE;
}
public plugin_end()
{
nvault_close(g_vault);
}
public adas(id)
{
if (get_user_flags(id) & ADMIN_IMMUNITY)
{
new menu = menu_create("Kinek akarsz olest adni?(10)", "menu_handler")
new players[32], pnum, tempid
new szName[32], szTempid[10]
get_players(players, pnum)
for( new i; i<pnum; i++ )
{
tempid = players[i];
get_user_name(tempid, szName, charsmax(szName))
num_to_str(tempid, szTempid, charsmax(szTempid))
menu_additem(menu, szName, szTempid, 0)
}
menu_display(id, menu, 0)
}
else
{
ColorChat(id, GREEN, "Sajnos nincs jogod hasznalni ezt a parancsot!")
}
}
public menu_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 tempid = str_to_num(data);
olesek[tempid] += 10
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public kijelzo(){
new players[32], szam, id
get_players(players, szam)
for(new i; i<szam; i++){
id = players[i]
set_hudmessage(255, 0, 0, 0.02, 0.24, 0, 6.0, 12.0)
show_hudmessage(id, "Pont: [%d]", olesek[id])
}
}