Hi, I need a /help plugin, what this plugin does ?
When a CT write /help a menu will appear for admins(only Terrorist) with the player/s name.
And if a admin will select the player he will be teleported to the player and the player will get 30 seconds godmode.
I need this plugin for a Basebuilder server so /help command should work only on Prep_time.
I have a similar plugin here but its not what I want, u can use it if its easier for u.
U can take the prep time from this plugin.
THank you
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <cstrike>
#include <basebuilder>
#define SPRITE "sprites/white.spr"
#define HELPSOUND "misc/bb_help.wav"
new bool:valuri
new sprite_white;
public plugin_init() {
register_plugin("Help System","1.0","MAGNET")
register_event("HLTV", "rundanoua", "a", "1=0", "2=0");
register_clcmd("say /ajutor", "ajutor")
register_clcmd("say /help", "ajutor")
}
public plugin_precache()
{
sprite_white = precache_model(SPRITE);
precache_sound(HELPSOUND)
}
public bb_prepphase_started()
{
valuri = true
}
public bb_round_started()
{
valuri = false;
}
public rundanoua()
{
valuri = false;
}
public ajutor(id)
{
new nick[33];
get_user_name(id, nick, charsmax(nick));
if(!is_user_alive(id))
return PLUGIN_HANDLED;
if(cs_get_user_team(id) != CS_TEAM_CT)
{
ColorChat(id,"^3Trebuie sa fii om, pentru a folosi aceasta comanda!")
return PLUGIN_HANDLED;
}
if(!valuri)
{
ColorChat(id,"^3Lipirea nu se poate inca realiza napule")
return PLUGIN_HANDLED;
}
for(new i = 0;i<32;i++)
{
if(!is_user_connected(i) || !(get_user_flags(i) & ADMIN_BAN)) continue;
ColorChat(i,"[Help System]^4 Jucatorul ^3 %s ^1 are nevoie de ajutor", nick[id])
client_cmd(i, "spk misc/bb_help.wav")
}
set_task(1.0, "Info", id+32, _, _, "b");
return PLUGIN_CONTINUE;
}
public Info(id)
{
id-=32;
if(!is_user_alive(id) || !valuri || cs_get_user_team(id) != CS_TEAM_CT)
{
remove_task(id+32);
return;
}
emit_sound(id, CHAN_AUTO, HELPSOUND, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
new Float:forigin[3];
entity_get_vector(id, EV_VEC_origin, forigin);
new iOrigin[3];
for(new i=0;i<3;i++)
iOrigin = floatround(forigin);
message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
write_byte( TE_BEAMCYLINDER );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] );
write_coord( iOrigin[2] );
write_coord( iOrigin[0] );
write_coord( iOrigin[1] + 300 );
write_coord( iOrigin[2] + 300 );
write_short( sprite_white );
write_byte( 0 ); // startframe
write_byte( 0 ); // framerate
write_byte( 10 ); // life
write_byte( 10 ); // width
write_byte( 255 ); // noise
write_byte( 255 ); // r, g, b
write_byte( 100 );// r, g, b
write_byte( 100 ); // r, g, b
write_byte( 128 ); // brightness
write_byte( 0 ); // speed
message_end();
}
stock ColorChat(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "^x04", "^4");
replace_all(msg, 190, "^x01", "^1");
replace_all(msg, 190, "^x03", "^3");
if(id) players[0] = id;
else get_players(players, count, "ch"); {
for(new i = 0; i < count; i++) {
if(is_user_connected(players)) {
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players);
write_byte(players);
write_string(msg);
message_end();
}
}
}
}