PHP Code:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#define VIP ADMIN_LEVEL_H //vip flag T
new ammo[33], nKiller, nKiller_hp, nHp_add, nHp_max, g_MsgSync
public plugin_init() {
register_plugin("GG VIP", "0.1", "naXe")
RegisterHam(Ham_Spawn,"player","resp",1)
register_event("CurWeapon","cur_weapon","be", "1=1")
register_event("DeathMsg", "hook_death", "a", "1>0")
g_MsgSync = CreateHudSyncObj()
}
public resp (id) {
if(get_user_flags(id) & VIP) {
ammo[id] = true
set_user_clip(id, 31)
}
}
public cur_weapon(id) {
if(ammo[id]) {
set_user_clip(id, 31)
}
}
public bullet(id) {
new attacker = get_user_attacker(id)
if (is_user_connected(id) && is_user_connected(attacker) && get_user_flags(attacker) & VIP) {
new damage = read_data(2)
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage)
}
}
public hook_death() {
nKiller = read_data(1)
if ((read_data(3) == 1) && (read_data(5) == 0)) {
nHp_add = 40
} else
nHp_add = 20
nHp_max = 150
if(!(get_user_flags(nKiller) & VIP))
return
nKiller_hp = get_user_health(nKiller)
nKiller_hp += nHp_add
if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
set_user_health(nKiller, nKiller_hp)
set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
show_hudmessage(nKiller, "Healed +%d hp", nHp_add)
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(0)
write_byte(0)
write_byte(200)
write_byte(75)
message_end()
}
stock set_user_clip(id, ammo) {
new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _)
get_weaponname(weapon, weaponname, 31)
while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
if (pev(weaponid, pev_owner) == id) {
set_pdata_int(weaponid, 51, ammo, 4)
return weaponid
}
return 0
}