| Anggara_nothing |
04-13-2009 08:52 |
Re: Add HUD that shows the level...
PHP Code:
#include <amxmodx> #include <hamsandwich>
enum Level { Level0, Level1, Level2, Level3 }
new g_enabled, money, Level:PlayerLevels[33], g_MsgSync2; new Float:LevelDamageMultiplier[Level] = {_:1.0,_:1.5,_:2.0,_:2.5}
public plugin_init() { register_plugin("Damage by the amount of money", "1.3", "alan_el_more") RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage") register_event("Money", "Event_Money", "b") g_enabled = register_cvar("amx_dmg_money", "1", FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_UNLOGGED|FCVAR_SPONLY) g_MsgSync2 = CreateHudSyncObj() }
public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { SetHamParamFloat(4, damage * LevelDamageMultiplier[PlayerLevels[attacker]]) }
public Event_Money(id) { if(get_pcvar_num(g_enabled)) { new money = read_data(1); if(money < 5000) { PlayerLevels[id] = Level0; } else if(money <= 10000) { PlayerLevels[id] = Level1; } else if(money <= 14000) { PlayerLevels[id] = Level2; } else { PlayerLevels[id] = Level3; } } else { PlayerLevels[id] = Level0; } }
// Client joins the game public client_putinserver(id) { if(!is_user_alive(id)) return; set_task(1.0, "ShowHUD", id, _, _, "b") }
// Show HUD Task public ShowHUD(taskid) { if(PlayerLevels[taskid] = Level1) { set_hudmessage(255, 0, 0, 0.02, 0.9, 0, 6.0, 1.1, 0.0, 0.0, -1) ShowSyncHudMsg(taskid, g_MsgSync2, "Your level is : 1") } else if(PlayerLevels[taskid] = Level2) { set_hudmessage(255, 0, 0, 0.02, 0.9, 0, 6.0, 1.1, 0.0, 0.0, -1) ShowSyncHudMsg(taskid, g_MsgSync2, "Your level is : 2") } else if(PlayerLevels[taskid] = Level3) { set_hudmessage(255, 0, 0, 0.02, 0.9, 0, 6.0, 1.1, 0.0, 0.0, -1) ShowSyncHudMsg(taskid, g_MsgSync2, "Your level is : 3") } else { set_hudmessage(255, 0, 0, 0.02, 0.9, 0, 6.0, 1.1, 0.0, 0.0, -1) ShowSyncHudMsg(taskid, g_MsgSync2, "Your level is : 0") } set_task(0.1, "ShowHUD", taskid, _, _, "b") }
|