/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <hamsandwich>
native cso_cs_get_user_money(id)
native cso_cs_set_user_money(id,value)
#define PLUGIN "[ZP]Addon: HP&DMG System"
#define VERSION "0.7"
#define AUTHOR "heka"
#define MAX_HEALTH_LEVEL 10
#define MAX_DAMAGE_LEVEL 10
#define HEALTH_LEVEL_COST 3000
#define DAMAGE_LEVEL_COST 3000
new
g_Levels_Menu,
buffer[512],
g_Health_Level[33],
g_Damage_Level[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
RegisterHam(Ham_TakeDamage, "player", "CPlayer__TakeDamage")
register_clcmd("say /szint_menu","Level_Menu");
}
public client_putinserver(iPlayer){
g_Health_Level[iPlayer] = 0
}
public Level_Menu(iPlayer){
if(g_Health_Level[iPlayer] >= 10 && g_Damage_Level[iPlayer] >= 10){
formatex(buffer, charsmax(buffer), "Élet szint maximum^nSebzés szint maximum");
}else
if(g_Health_Level[iPlayer] >= 10 && g_Damage_Level[iPlayer] < 10){
formatex(buffer, charsmax(buffer), "Élet szint maximum^nSebzés szint: %d", g_Damage_Level[iPlayer]);
}else
if(g_Health_Level[iPlayer] < 10 && g_Damage_Level[iPlayer] >= 10){
formatex(buffer, charsmax(buffer), "Élet szint: %d^nSebzés szint maximum", g_Health_Level[iPlayer]);
}else{
formatex(buffer, charsmax(buffer), "Élet szint: %d^nSebzés szint: %d", g_Health_Level[iPlayer], g_Damage_Level[iPlayer]);
}
g_Levels_Menu = menu_create(buffer, "Level_Menu_Handler");
if(!is_user_alive(iPlayer)){
menu_additem(g_Levels_Menu, "\rÉlet szint fejlesztés \d[\yCSak élő játékosnak\d]", "1");
}
else if(g_Health_Level[iPlayer] >= MAX_HEALTH_LEVEL){
menu_additem(g_Levels_Menu, "\dÉlet szint fejlesztés \r[Élet szint maximumon]", "1");
}
else if(cso_cs_get_user_money(iPlayer) < HEALTH_LEVEL_COST){
menu_additem(g_Levels_Menu, "\dÉlet szint fejlesztés \r[Nincs elég pénted]", "2");
}else{
menu_additem(g_Levels_Menu, "\rÉlet szint fejlesztés \d[\y3000$\d]", "1");
}
if(!is_user_alive(iPlayer)){
menu_additem(g_Levels_Menu, "\rSebzés szint fejlesztés \d[\yCSak élő játékosnak\d]", "2");
}
else if(g_Damage_Level[iPlayer] >= MAX_DAMAGE_LEVEL){
menu_additem(g_Levels_Menu, "\dSebzés szint fejlesztés \r[Sebzés szint maximumon]", "2");
}
else if(cso_cs_get_user_money(iPlayer) < DAMAGE_LEVEL_COST){
menu_additem(g_Levels_Menu, "\dSebzés szint fejlesztés \r[Nincs elég pénted]", "2");
}else{
menu_additem(g_Levels_Menu, "\rSebzés szint fejlesztés \d[\y3000$\d]", "2");
}
menu_setprop(g_Levels_Menu, MPROP_EXIT, MEXIT_ALL);
menu_display(iPlayer, g_Levels_Menu, 0);
}
public Level_Menu_Handler(iPlayer, iMenu, iItem){
if(iItem == MENU_EXIT) menu_destroy(iMenu);
new data[6], iName[64], access, callback, iKey
menu_item_getinfo(iMenu, iItem, access, data, 5, iName, 63, callback)
iKey = str_to_num(data)
switch(iKey){
case 1:{
if(g_Health_Level[iPlayer] >= MAX_HEALTH_LEVEL){
client_print(iPlayer, print_center, "Élet szint maximumon")
return PLUGIN_HANDLED;
}else if(!is_user_alive(iPlayer)){
client_print(iPlayer, print_center, "Csak élő játékosoknak")
return PLUGIN_HANDLED;
}else if(cso_cs_get_user_money(iPlayer) < HEALTH_LEVEL_COST){
client_print(iPlayer, print_center, "Nincs elég pénzed")
return PLUGIN_HANDLED;
}else{
if (!cso_get_user_terrorist(iPlayer) && !cso_get_user_counter-terrorist(iPlayer)) set_user_health(iPlayer, get_user_health(iPlayer) + 20)
g_Health_Level[iPlayer]++
client_print(iPlayer, print_center, "Élet szint fejlesztés a következő: %d", g_Health_Level[iPlayer])
cso_cs_set_user_money(iPlayer, cso_cs_get_user_money(iPlayer) - HEALTH_LEVEL_COST)
}
}
case 2:{
if(g_Damage_Level[iPlayer] >= MAX_HEALTH_LEVEL){
client_print(iPlayer, print_center, "Sebzés szint a maximumon")
return PLUGIN_HANDLED;
}else if(!is_user_alive(iPlayer)){
client_print(iPlayer, print_center, "Csak élő játékosoknak")
return PLUGIN_HANDLED;
}else if(cso_cs_get_user_money(iPlayer) < DAMAGE_LEVEL_COST){
client_print(iPlayer, print_center, "Nincs elég pénzed")
return PLUGIN_HANDLED;
}else{
g_Damage_Level[iPlayer]++
client_print(iPlayer, print_center, "Sebzés szint fejlesztés a következő: %d", g_Damage_Level[iPlayer])
cso_cs_set_user_money(iPlayer, cso_cs_get_user_money(iPlayer) - DAMAGE_LEVEL_COST)
}
}
}
return PLUGIN_HANDLED;
}
public CPlayer__TakeDamage(iPlayer, iInflector, iAttacker, Float:iDamage, damagebits)
{
if (iPlayer == iAttacker) return;
if (!is_user_connected(iAttacker)) return;
if (cso_get_user_terrorist(iAttacker)) return;
if (!cso_get_user_counter-terrorist(iAttacker)) SetHamParamFloat(4, iDamage + g_Damage_Level[iAttacker] * 20.0);
}
public zp_user_humanized_post(iPlayer){
if (cso_get_user_counter-terrorist(iPlayer)) return;
set_user_health(iPlayer, get_user_health(iPlayer) + g_Health_Level[iPlayer] * 20)
}