z gory dzięki.
Podeslalem wam ten plugin.
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <hamsandwich> #include <engine> #define ADMIN_VIP ADMIN_LEVEL_H #define SCOREATTRIB_DEAD (1 << 0) #define SCOREATTRIB_VIP (1 << 2) #define MODEL_VIPA #define MONEY_F 115 #define fm_get_user_money(%1) get_pdata_int(%1, MONEY_F) static const COLOR[] = "^x04" //green new g_MsgScoreAttrib = 0; new maxplayers new gmsgSayText public plugin_precache() { precache_model("models/player/wiezien/wiezien.mdl"); precache_model("models/player/jbemodel/jbemodel.mdl"); precache_model("models/vip/model_noza.mdl"); } public plugin_init() { g_MsgScoreAttrib = get_user_msgid("ScoreAttrib"); register_message(g_MsgScoreAttrib, "messageScoreAttrib"); RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1); register_clcmd("say /vip", "vip_bonusy") register_clcmd("say /vipy", "print_adminlist") register_event("CurWeapon","CurWeapon","be", "1=1"); RegisterHam(Ham_TakeDamage, "player", "TakeDamage"); } public fwHamPlayerSpawnPost(id){ if (is_user_connected(id) && is_user_alive(id) && get_user_flags(id) & ADMIN_VIP) { model_vip_change(id); set_hudmessage(255, 0, 0, 0.34, 0.81, 0, 6.0, 12.0) show_hudmessage(id, "Jestes VIP'em") set_user_health(id, 150) set_user_armor(id, 50) give_item(id, "weapon_flashbang") give_item(id, "weapon_smokegrenade") } } public vip_bonusy(id) { show_motd(id, "VIP MA 150 HP 50 ARMORA NAPIS VIP W STATYSTYKACH 'tab', MOZE UZYWAC CZRODZEJSKIEGO MAZAKA ", "DODATKI VIPOW") } public CurWeapon(id) { if (get_user_flags(id) & ADMIN_VIP) { new wepaon = get_user_weapon(id); if (wepaon == CSW_KNIFE) entity_set_string(id, EV_SZ_viewmodel, "models/vip/model_noza.mdl") } } public model_vip_change(id) { if(cs_get_user_team(id) == CS_TEAM_T) cs_set_user_model(id, "wiezien"); else cs_set_user_model(id, "jbemodel"); } public messageScoreAttrib(iMsgID, iDest, iReceiver) { new iPlayer = get_msg_arg_int(1); if(is_user_connected(iPlayer) && (get_user_flags(iPlayer) & ADMIN_VIP)) set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD); } public print_adminlist(user) { new adminnames[33][32] new message[256] new contactinfo[256], contact[112] new id, count, x, len for(id = 1 ; id <= maxplayers ; id++) if(is_user_connected(id)) if(get_user_flags(id) & ADMIN_VIP) get_user_name(id, adminnames[count++], 31) len = format(message, 255, "%s Vipy w grze: ",COLOR) if(count > 0) { for(x = 0 ; x < count ; x++) { len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"") if(len > 96 ) { print_message(user, message) len = format(message, 255, "%s ",COLOR) } } print_message(user, message) } else { len += format(message[len], 255-len, "Aktualnie zaden VIP nie gra.") print_message(user, message) } get_cvar_string("amx_contactinfo", contact, 63) if(contact[0]) { format(contactinfo, 111, "%s VIPY -- %s", COLOR, contact) print_message(user, contactinfo) } } print_message(id, msg[]) { message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id) write_byte(id) write_string(msg) message_end() } public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; new weapon = get_user_weapon(idattacker); if(damagebits & DMG_BULLET && get_user_flags(idattacker) & ADMIN_VIP && weapon == CSW_KNIFE && damage > 30.0) SetHamParamFloat(4, 100.0); return HAM_IGNORED; }