PHP- Kodu:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <jail>
#define PLUGIN "Revive a teammate"
#define AUTHOR "beast"
#define VERSION "1.0"
new g_msgMoney
new g_hudsyncm
new cvar_resprice, cvar_giveweaps
new g_iDeads
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar(PLUGIN, VERSION, FCVAR_SPONLY | FCVAR_SERVER)
register_dictionary("revive_teammate.txt")
register_clcmd("say /revtm", "revive_menu")
register_clcmd("say_team /revtm", "revive_menu")
cvar_resprice = register_cvar("rev_price", "5")
cvar_giveweaps = register_cvar("rev_give_weaps", "1")
g_msgMoney = get_user_msgid("Money")
g_hudsyncm = CreateHudSyncObj()
}
public revive_menu(id)
{
if(!is_user_alive(id))
{
client_print(id, print_chat, "%L", id, "DEAD_DENYED")
return PLUGIN_HANDLED
}
if(jb_get_user_packs(id) < get_pcvar_num(cvar_resprice))
{
client_print(id, print_chat, "%L", id, "MONEY_SHORT")
return PLUGIN_HANDLED
}
new menun[32]
formatex(menun, charsmax(menun), "%L", id, "MENU_NAME")
new menu = menu_create(menun, "menu_handler")
new players[32], pnum, tempid
new szName[32], szTempid[10]
static CsTeams: team1 ; team1 = cs_get_user_team(id)
get_players(players, pnum)
for(new i; i<pnum; i++)
{
static CsTeams: team2 ; team2 = cs_get_user_team(players[i])
tempid = players[i]
if(!is_user_alive(tempid) && team1 == team2)
{
g_iDeads++
get_user_name(tempid, szName, 31)
num_to_str(tempid, szTempid, 9)
menu_additem(menu, szName, szTempid, 0)
}
}
if(g_iDeads == 0)
{
client_print(id, print_chat, "%L", id, "ALL_TMMS_ALIVE")
return PLUGIN_HANDLED
}
menu_display(id, menu, 0)
return PLUGIN_HANDLED
}
public menu_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64], playername[33], playername2[33]
new access, callback
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
new tempid = str_to_num(data)
static CsTeams: team ; team = cs_get_user_team(tempid)
get_user_name(id, playername, 32)
get_user_name(tempid, playername2, 32)
if(!is_user_alive(tempid)) // just to make sure
{
g_iDeads = 0
ExecuteHamB(Ham_CS_RoundRespawn, tempid)
if(get_pcvar_num(cvar_giveweaps))
{
if(team == CS_TEAM_CT)
{
give_item(tempid, "weapon_m4a1")
give_item(tempid, "item_assaultsuit")
cs_set_user_bpammo(tempid, CSW_M4A1, 90)
cs_set_user_bpammo(tempid, CSW_USP, 100)
}
else
{
give_item(tempid, "weapon_ak47")
give_item(tempid, "item_assaultsuit")
cs_set_user_bpammo(tempid, CSW_AK47, 90)
cs_set_user_bpammo(tempid, CSW_GLOCK18, 120)
}
}
message_begin(MSG_ONE, g_msgMoney, _, id)
write_long(jb_get_user_packs(id)-get_pcvar_num(cvar_resprice))
write_byte(1)
message_end()
set_hudmessage(255, 85, 0, 0.01, 0.26, 0, 6.0, 5.0, 0.1, 0.2)
ShowSyncHudMsg(0, g_hudsyncm, "%L", LANG_PLAYER, "HAS_REVIVED", playername, playername2)
jb_set_user_packs(id, jb_get_user_packs(id)-get_pcvar_num(cvar_resprice))
}
menu_destroy(menu)
return PLUGIN_HANDLED
}