Code: Select all
#pragma tabsize 0
#include < amxmodx >
#include < amxmisc >
#include < cstrike >
#include < fun >
#include < fakemeta >
#include < nvault >
#include < fakemeta_util >
#include < hamsandwich >
#include < engine >
#define PLUGIN "VIP Classic"
#define VERSION "1.0"
#define AUTHOR "Binecuvantat aka KillerElite"
new cs_viptero[] = "models/player/cs_skinviptero/cs_skinviptero.mdl"
new cs_vipct[] = "models/player/cs_skinvipct/cs_skinvipct.mdl"
new eUsed[33];
public plugin_precache()
{
precache_model(cs_viptero)
precache_model(cs_vipct)
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /vmenu", "cmdMenuVIP");
RegisterHam ( Ham_Spawn, "player", "Respawnplayer", 1 );
}
public cmdMenuVIP (id)
{
if (eUsed[id] == 1)
{
client_print(id, print_chat, "[VIP]Ai ales deja un set de arme!")
return 1;
}
else if (get_user_flags(id) & ADMIN_LEVEL_H)
{
new menu = menu_create ( "\yVIP Pack:", "give_vipmenu" );
menu_additem ( menu, "M4A1 \y+ \wDeagle", "1", 0 );
menu_additem ( menu, "AK47 \y+ \wDeagle", "2", 0 );
menu_additem ( menu, "AWP \y+ \wDeagle", "3", 0 );
menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL );
menu_display ( id, menu, 0 );
return 1;
}
else
{
client_print(id, print_chat, "[VIP]Doar persoanele VIP pot folosi acest meniu!")
return 1;
}
return 1;
}
public give_vipmenu ( id, menu, item ) {
if( item == MENU_EXIT )
{
return 1;
}
new data [ 6 ], 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:
{
eUsed[id] = 1;
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 300);
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
give_item(id, "weapon_knife");
client_print(id, print_chat, "[VIP]Ai ales M4A1 + Deagle.")
menu_destroy ( menu );
return 1;
}
case 2:
{
eUsed[id] = 1;
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 300);
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
give_item(id, "weapon_knife");
client_print(id, print_chat, "[VIP]Ai ales AK47 + Deagle.")
menu_destroy ( menu );
return 1;
}
case 3:
{
eUsed[id] = 1;
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 300);
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 200);
give_item(id, "weapon_knife");
client_print(id, print_chat, "[VIP]Ai ales AWP + Deagle.")
menu_destroy ( menu );
return 1;
}
}
return 1;
}
public Respawnplayer(id)
{
if (get_user_flags(id) & ADMIN_LEVEL_H)
{
eUsed[id] = 0;
if (cs_get_user_team(id) == CS_TEAM_T)
{
cmdMenuVIP(id);
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
cs_set_user_model(id, "cs_viptero")
set_user_health(id, 200)
}
if (cs_get_user_team(id) == CS_TEAM_CT)
{
cmdMenuVIP(id);
give_item(id, "weapon_hegrenade")
give_item(id, "weapon_flashbang")
cs_set_user_model(id, "cs_vipct")
set_user_health(id, 200)
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1252\\ deff0\\ deflang1033{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Deci aici ai pluginul cerut. Ce are: VIP pe flag T (iti da 200HP la spawn, sansa de a alege o data din meniul de vip (ti-l activeaza automat la spawn, sau scrii /vmenu), iti da skin personificat (aici le alegi tu) si iti da un set de grenazi (1 he si un flash). )
MODELELE:
cstrike/models/player/cs_skinviptero/cs_skinviptero.mdl (aici pui cel de tero)
cstrike/models/player/cs_skinvipct/cs_skinvipct.mdl (aici pui cel de ct)
Pluginul de vip free:
Code: Select all
#include <amxmodx>
#include <amxmisc>
new start,
stop,
minutes,
h,
m
new bool: HaveVipBefore[33];
#define FLAGS "t"
public plugin_init()
{
register_plugin("VIP FREE", "4.0", "LOL")
start = register_cvar( "vip_start", "20" );
stop = register_cvar( "vip_end", "23" );
minutes = register_cvar( "vip_minutes", "00" ); // nu modificati
set_task( 60.0, "check", _, _, _, "b" );
}
public client_putinserver(id)
{
check(id)
}
public check(id)
{
time( h, m, _ );
new flags = read_flags(FLAGS)
if(h >= get_pcvar_num( start ) && h < get_pcvar_num( stop ))
{
if(!(get_user_flags(id) & flags ))
{
set_user_flags(id, flags)
server_cmd( "amx_reloadadmins" );
HaveVipBefore[id] = false;
}else{
HaveVipBefore[id] = true;
}
if(h == get_pcvar_num( start ) && m == get_pcvar_num( minutes ))
{
ColorChat(0, "!g***** !tFREE VIP EVENT STARTED !g*****")
log_amx("***** FREE VIP EVENT STARTED *****")
}
set_hudmessage(random(256), random(256), random(256),0.02, 0.2, 1, _, 59.0, _, _, -1)
show_hudmessage(0, "** FREE VIP EVENT ACTIVE **")
}
else if(h < get_pcvar_num( start ) || h >= get_pcvar_num( stop ))
{
if (!(HaveVipBefore[id]))
{
remove_user_flags(id, flags);
server_cmd( "amx_reloadadmins" );
}
if(h == get_pcvar_num( stop ) && m == get_pcvar_num( minutes ))
{
ColorChat(0, "!g***** !tFREE VIP EVENT ENDED !g*****")
log_amx("***** FREE VIP EVENT ENDED *****")
}
}
}
stock ColorChat(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, "!n", "^1");
replace_all(msg, 190, "!t", "^3");
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();
}
}
}
}