Ez maga a plugin. ( Csupasz változat! Nincs benne semmi azok közül, amit leírtál Silent )
Kód:
#include <amxmodx>
#include <fun>
#include <amxmisc>
#include <cstrike>
new plugin_on
enum Color
{
NORMAL = 1, // kliens scr_concolor cvar szín
GREEN, // Zöld szín
TEAM_COLOR, // piros, szürke, kék
GREY, // szürke
RED, // piros
BLUE, // kék
}
new TeamName[][] =
{
"",
"TERRORIST",
"CT",
"SPECTATOR"
}
public plugin_init(){
register_plugin("VIP MENU", "1.1", "n0nam3")
register_menucmd(register_menuid("VIP MENU"), 1023, "setoption")
plugin_on = register_cvar("amx_vipmenu", "1")
register_clcmd("say vip","vip_menu",ADMIN_VOTE)
register_clcmd("say_team vip","vip_menu",ADMIN_VOTE)
register_clcmd("say vmenu","vip_menu",ADMIN_VOTE)
register_clcmd("say_team vmenu","vip_menu",ADMIN_VOTE)
}
public vip_menu(id,level,cid)
{
if ( !get_pcvar_num(plugin_on) )
{
ColorChat(id, GREY, "VIP Menu letiltva");
return PLUGIN_HANDLED;
}
if(!cmd_access(id,level,cid,2))
return PLUGIN_HANDLED
chooseoption(id)
return PLUGIN_HANDLED
}
public chooseoption(id)
{
new menu[192]
new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9
format(menu, 191, "\yVIP MENU^n^n\r1.\w Elet^n\r2.\w Pancel^n\r3.\w Vip Model^n\r4.\w Alap Model^n\r5.\w Gravitacio^n^n\yFegyverek:^n^n\r6.\w M4A1+Deagle(Ammo)^n\r7.\w Ak47+Deagle(Ammo)^n\r8.\w AWP+Deagle(Ammo)^n\r9.\w Granatok^n^n\r0.\w Kilepes")
show_menu(id, keys, menu)
return PLUGIN_CONTINUE
}
public setoption(id, key, menu)
{
if(key == 4) {
new name[17]
get_user_name(id, name, 18)
set_user_gravity(id,0.7)
return PLUGIN_HANDLED
}
if(key == 0) {
new name[17]
get_user_name(id, name, 18)
set_user_health(id, 120)
return PLUGIN_HANDLED
}
if(key == 2) {
new name[17]
get_user_name(id, name, 18)
cs_set_user_model(id, "vip")
return PLUGIN_HANDLED
}
if(key == 1) {
new name[17]
get_user_name(id, name, 18)
set_user_armor(id, 120)
return PLUGIN_HANDLED
}
if(key == 3) {
new name[17]
get_user_name(id, name, 18)
cs_reset_user_model (id)
return PLUGIN_HANDLED
}
if(key == 5)
new name[17]
get_user_name(id, name, 18)
give_item(id, "weapon_m4a1");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
return PLUGIN_HANDLED
}
if(key == 6) {
new name[17]
get_user_name(id, name, 18)
give_item(id, "weapon_ak47");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
return PLUGIN_HANDLED
}
if(key == 7) {
new name[17]
get_user_name(id, name, 18)
give_item(id, "weapon_awp");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
give_item(id, "weapon_deagle");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
give_item(id, "ammo_50ae");
return PLUGIN_HANDLED
}
if(key == 8) {
new name[17]
get_user_name(id, name, 18)
give_item(id, "weapon_hegrenade");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_flashbang");
give_item(id, "weapon_smokegrenade");
return PLUGIN_HANDLED
}
else {
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public plugin_precache()
{
precache_model("models/player/vip/vip.mdl")
return PLUGIN_CONTINUE
}
ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...)
{
new message[256];
switch(type)
{
case NORMAL: // kliens scr_concolor cvar szín
{
message[0] = 0x01;
}
case GREEN: // Zöld
{
message[0] = 0x04;
}
default: // Fehér, piros, kék
{
message[0] = 0x03;
}
}
vformat(message[1], 251, msg, 4);
// Az üzenet nem lehet 192 karakternél hosszabb.
message[192] = '^0';
new team, ColorChange, index, MSG_Type;
if(id)
{
MSG_Type = MSG_ONE;
index = id;
} else {
index = FindPlayer();
MSG_Type = MSG_ALL;
}
team = get_user_team(index);
ColorChange = ColorSelection(index, MSG_Type, type);
ShowColorMessage(index, MSG_Type, message);
if(ColorChange)
{
Team_Info(index, MSG_Type, TeamName[team]);
}
}
ShowColorMessage(id, type, message[])
{
static bool:saytext_used;
static get_user_msgid_saytext;
if(!saytext_used)
{
get_user_msgid_saytext = get_user_msgid("SayText");
saytext_used = true;
}
message_begin(type, get_user_msgid_saytext, _, id);
write_byte(id)
write_string(message);
message_end();
}
Team_Info(id, type, team[])
{
static bool:teaminfo_used;
static get_user_msgid_teaminfo;
if(!teaminfo_used)
{
get_user_msgid_teaminfo = get_user_msgid("TeamInfo");
teaminfo_used = true;
}
message_begin(type, get_user_msgid_teaminfo, _, id);
write_byte(id);
write_string(team);
message_end();
return 1;
}
ColorSelection(index, type, Color:Type)
{
switch(Type)
{
case RED:
{
return Team_Info(index, type, TeamName[1]);
}
case BLUE:
{
return Team_Info(index, type, TeamName[2]);
}
case GREY:
{
return Team_Info(index, type, TeamName[0]);
}
}
return 0;
}
FindPlayer()
{
new i = -1;
while(i <= get_maxplayers())
{
if(is_user_connected(++i))
return i;
}
return -1;
}