#include <amxmodx>
#include <engine>
#include <nvault>
#include <vault>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <colorchat>
#define PLUGIN "USP Menu"
#define VERSION "1.0"
#define AUTHOR "DeRoiD"
#define TASK_INTERVAL 4.0
new pont[33], usp[33], vault
public plugin_precache() {
precache_model("models/v_usp.mdl")
precache_model("models/bd_dr_usp/v_usp.mdl")
precache_model("models/bd_dr_usp/v_usp2.mdl")
precache_model("models/bd_dr_usp/v_usp3.mdl")
precache_model("models/bd_dr_usp/v_usp4.mdl")
precache_model("models/bd_dr_usp/v_usp5.mdl")
precache_model("models/bd_dr_usp/v_usp6.mdl")
precache_model("models/bd_dr_usp/v_usp7.mdl")
precache_model("models/bd_dr_usp/v_usp8.mdl")
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg","death","a")
register_clcmd("say /usp","menu")
register_clcmd("say /skin","menu")
vault = nvault_open("ment_nvault")
register_event("CurWeapon", "ecw", "be", "1=1")
}
public ecw(id) {
new fegyver = get_user_weapon(id)
if(usp[id] == 0 && fegyver == CSW_USP) {
set_pev(id, pev_viewmodel2, "models/v_usp.mdl")
}
if(usp[id] == 1 && fegyver == CSW_USP) {
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp.mdl")
}
if(usp[id] == 2 && fegyver == CSW_USP) {
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp2.mdl")
}
if(usp[id] == 3 && fegyver == CSW_USP) {
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp3.mdl")
}
if(usp[id] == 4 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp4.mdl")
}
if(usp[id] == 5 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp5.mdl")
}
if(usp[id] == 6 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp6.mdl")
}
if(usp[id] == 7 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp7.mdl")
}
if(usp[id] == 8 && fegyver == CSW_USP)
{
set_pev(id, pev_viewmodel2, "models/bd_dr_usp/v_usp8.mdl")
}
}
public death(){
new killer = read_data(1)
new victim = read_data(2)
if(killer == victim)
return PLUGIN_HANDLED
pont[killer]++
return PLUGIN_HANDLED
}
public menu(id) {
new cim[121]
format(cim, charsmax(cim), "\r[BadboYs] \wUSP Menu^n\rPontszam:\w[%d]",pont[id])
new menu = menu_create(cim, "menu_h" )
menu_additem(menu,"\r[BadboYs]: USP \w[1] \r| \y[Megszerezve]","1",0)
if(pont[id] >= 10) menu_additem(menu,"\r[BadboYs]: USP \w[2] \r| \y[Megszerezve] ","2",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[2] \w| \r[10 pont]-[Lezarva]","2",0)
if(pont[id] >= 15) menu_additem(menu,"\r[BadboYs]: USP \w[3] \r| \y[Megszerezve] \y","3",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[3] \w| \r[15 pont]-[Lezarva]","3",0)
if(pont[id] >= 20) menu_additem(menu,"\r[BadboYs]: USP \w[4] \r| \y[Megszerezve] \y","4",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[4] \w| \r[20 pont]-[Lezarva]","4",0)
if(pont[id] >= 25) menu_additem(menu,"\r[BadboYs]: USP \w[5] \r| \y[Megszerezve] ","5",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[5] \w| \r[25 pont]-[Lezarva]","5",0)
if(pont[id] >= 30) menu_additem(menu,"\r[BadboYs]: USP \w[6] \r| \y[Megszerezve] ","6",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[6] \w| \r[30 pont]-[Lezarva]","6",0)
if(pont[id] >= 35) menu_additem(menu,"\r[BadboYs]: USP \w[7] \r| \y[Megszerezve] ","7",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[7] \w| \r[35 pont]-[Lezarva]","7",0)
if(pont[id] >= 40) menu_additem(menu,"\r[BadboYs]: USP \w[8] \r| \y[Megszerezve] ","8",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[8] \w| \r[40 pont]-[Lezarva]","8",0)
if(pont[id] >= 50) menu_additem(menu,"\r[BadboYs]: USP \w[9] \r| \y[Megszerezve] ","9",0)
else menu_additem(menu,"\d[BadboYs]: USP \w[9] \w| \r[50 pont]-[Lezarva]","9",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:{
usp[id] = 0
}
case 2:{
if(pont[id] >= 10) {
usp[id] = 1
}
else ColorChat(id, RED, "^1[BadboYs]::Tul keves pontod van!")
}
case 3:{
if(pont[id] >= 15) {
usp[id] = 2
}
else ColorChat(id, RED, "^1[BadboYs]:Tul keves pontod van!")
}
case 4:{
if(pont[id] >= 20) {
usp[id] = 3
}
else ColorChat(id, RED, "^1[BadboYs]:Tul keves pontod van!")
}
case 5:{
if(pont[id] >= 25) {
usp[id] = 4
}
else ColorChat(id, RED, "^1[BadboYs]:Tul keves pontod van!")
}
case 6:{
if(pont[id] >= 30) {
usp[id] = 5
}
else ColorChat(id, RED, "^1[BadboYs]:Tul keves pontod van!")
}
case 7:{
if(pont[id] >= 35) {
usp[id] = 6
}
else ColorChat(id, RED, "^1|[BadboYs]:Tul keves pontod van!")
}
case 8:{
if(pont[id] >= 40) {
usp[id] = 7
}
else ColorChat(id, RED, "^1[BadboYs]::Tul keves pontod van!")
}
case 9:{
if(pont[id] >= 50) {
usp[id] = 8
}
else ColorChat(id, RED, "^1[BadboYs]:Tul keves pontod van!")
}
}
return PLUGIN_HANDLED
}
public mentes(id)
{
new vaultkey[64],vaultdata[256], name[32]
get_user_name(id, name, 31)
format(vaultkey,63,"%s-KES", name)
format(vaultdata,255,"%d", pont[id])
nvault_set(vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public betoltes(id)
{
new vaultkey[64],vaultdata[256], name[32]
get_user_name(id, name, 31)
format(vaultkey,63,"%s-KES", name)
nvault_get(vault,vaultkey,vaultdata,255)
pont[id] = str_to_num(vaultdata)
return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
mentes(id)
}
public client_connect(id)
{
betoltes(id)
}
public kijelzo(){
new players[32], szam, id
get_players(players, szam)
for(new i; i<szam; i++){
id = players[i]
}
}
stock print_color(const id, const input[], any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg, 190, input, 3)
replace_all(msg, 190, "!g", "^4")
replace_all(msg, 190, "!y", "^1")
replace_all(msg, 190, "!t", "^3")
replace_all(msg, 190, "á", "A?")
replace_all(msg, 190, "é", "A©")
replace_all(msg, 190, "í", "A")
replace_all(msg, 190, "ó", "Al")
replace_all(msg, 190, "ö", "A¶")
replace_all(msg, 190, "o", "L‘")
replace_all(msg, 190, "ú", "As")
replace_all(msg, 190, "ü", "AL")
replace_all(msg, 190, "u", "L±")
replace_all(msg, 190, "Á", "A")
replace_all(msg, 190, "É", "A‰")
replace_all(msg, 190, "Í", "AT")
replace_all(msg, 190, "Ó", "A“")
replace_all(msg, 190, "Ö", "A–")
replace_all(msg, 190, "O", "L")
replace_all(msg, 190, "Ú", "Aš")
replace_all(msg, 190, "Ü", "As")
replace_all(msg, 190, "U", "L°")
if (id) players[0] = id; else get_players(players, count, "ch")
{
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i])
write_string(msg)
message_end()
}
}
}
return PLUGIN_HANDLED
}