I have been trying to edit this plugin to make it so ONLY admins can glow but so far no luck...
Code:
// AMX Mod script - Advanced Glow by Shawn
#include <amxmod>
#include <amxmisc>
new MenuPage[33]
public plugin_init()
{
register_plugin("Advanced_Glow","0.6","Shawn")
//register_concmd("say","handle_say",ADMIN_KICK)
register_clcmd("say glow", "handle_say", ADMIN_LEVEL_H, "- say glow and select an option")
register_menucmd(register_menuid("Glow Menu"),(1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9),"glow_menu")
register_logevent("glowing_bots",2,"0=World triggered","1=Round_Start")
register_logevent("glowing_humans",2,"0=World triggered","1=Round_Start")
register_clcmd("amx_glowx", "menu_aglowing", ADMIN_MENU, "- Admin Menu: Configuration Menu")
register_menucmd(register_menuid("Admin Menu"), (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<9), "aglow_menu")
register_cvar("amx_gbots", "1")
register_cvar("amx_ghumans", "1")
register_cvar("amx_gteams", "1")
register_cvar("amx_gsfx", "1")
register_cvar("amx_gchat", "1")
register_cvar("amx_gghost", "1")
loadini("addons/amxmodx/glow.ini")
server_cmd("exec addons/amxmodx/glow.ini")
}
public plugin_precache()
{
precache_sound("tentacle/te_alert1.wav")
precache_sound("turret/tu_die.wav")
}
public handle_say(id,key)
{
if(get_cvar_num("amx_ghumans") == 0){
new said[31]
new cmd[9]
read_args(said,30)
replace(said,30,"^"","")
parse(said,cmd,8,key,21)
if (equal(cmd,"glow",8)){
if (is_user_alive(id) == 1){
menu_glowing(id)
}
else
client_print(id,print_chat,"[AMX] You Can't Glow when you are dead.")
}
return PLUGIN_CONTINUE
}
return PLUGIN_HANDLED
}
public glow_menu(id,key)
{
new name[32]
get_user_name(id,name,31)
switch(key){
case 0:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,255,0,0,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,255,0,0,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing red",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12) // fade lasts this long duration
write_short(1<<8) // fade lasts this long hold time
write_short(1<<1) // fade type OUT
write_byte(255) // fade red
write_byte(0) // fade green
write_byte(0) // fade blue
write_byte(200) // fade alpha
message_end()
}
}
case 1:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,0,0,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,0,0,255,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing blue",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(0)
write_byte(0)
write_byte(255)
write_byte(200)
message_end()
}
}
case 2:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,0,255,0,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,0,255,0,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing green",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(0)
write_byte(255)
write_byte(0)
write_byte(200)
message_end()
}
}
case 3:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,128,255,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,128,255,255,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing like ice",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(128)
write_byte(255)
write_byte(255)
write_byte(200)
message_end()
}
}
case 4:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,255,255,0,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,255,255,0,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing yellow",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(255)
write_byte(255)
write_byte(0)
write_byte(200)
message_end()
}
}
case 5:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,255,128,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,255,128,255,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing pink",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(255)
write_byte(128)
write_byte(255)
write_byte(200)
message_end()
}
}
case 6:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,128,0,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,128,0,255,kRenderTransAdd,16)
}
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing purple",name)
}
if(get_cvar_num("amx_gsfx") == 1){
message_begin(MSG_ONE,get_user_msgid("ScreenFade"),{0,0,0},id)
write_short(1<<12)
write_short(1<<8)
write_short(1<<1)
write_byte(128)
write_byte(0)
write_byte(255)
write_byte(200)
message_end()
}
}
case 7:
{
remove_task(id)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderTransAdd,16)
}
set_task(5.0,"irandom",id,"",0,"b")
emit_sound(id,CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is glowing a random color",name)
}
}
case 8:
{
remove_task(id)
set_user_rendering(id,kRenderFxNone,0,0,0,kRenderNormal,16)
emit_sound(id,CHAN_ITEM,"turret/tu_die.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] %s is not glowing anymore",name)
}
}
}
return PLUGIN_HANDLED
}
public menu_glowing(id)
{
new menu_body[512]
copy(menu_body,511,"Glow Menu^n^n1. Glow Red^n2. Glow Blue^n3. Glow Green^n4. Glow Ice^n5. Gow Yellow^n6. Glow Pink^n7. Glow Purple^n8. Glow Random^n9. Glow Off^n^n0. Exit")
show_menu(id,(1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9),menu_body)
return PLUGIN_HANDLED
}
public irandom(id)
{
if (is_user_alive(id) == 1){
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(id,kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(id,kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderTransAdd,16)
}
}
else if (is_user_alive(id) == 0){
remove_task(id)
}
return PLUGIN_CONTINUE
}
public glowing_bots()
{
if(get_cvar_num("amx_gbots") == 1){
new players[32], inum
new tplayers[32], tinum
if(get_cvar_num("amx_gteams") == 1){
get_players(players,inum,"dae","CT")
for(new a=0;a<inum;++a)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(players[a],kRenderFxGlowShell,0,0,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(players[a],kRenderFxGlowShell,0,0,255,kRenderTransAdd,16)
}
get_players(tplayers,tinum,"dae","TERRORIST")
for(new i=0;i<tinum;++i)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(tplayers[i],kRenderFxGlowShell,255,0,0,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(tplayers[i],kRenderFxGlowShell,255,0,0,kRenderTransAdd,16)
}
if(get_cvar_num("amx_gchat") == 1){
if(inum>0 && tinum>0){
client_print(0,print_chat,"[AMX] All bots are glowing according to there colors teams")
}
}
}
if(get_cvar_num("amx_gteams") == 0){
get_players(players,inum,"da")
for(new a=0;a<inum;++a)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(players[a],kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(players[a],kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderTransAdd,16)
}
if(get_cvar_num("amx_gchat") == 1){
if(inum>0){
client_print(0,print_chat,"[AMX] All bots are glowing a random color")
}
}
}
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public glowing_humans()
{
if(get_cvar_num("amx_ghumans") == 1){
new players[32], inum
new tplayers[32], tinum
if(get_cvar_num("amx_gteams") == 1){
get_players(players,inum,"cae","CT")
for(new a=0;a<inum;++a)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(players[a],kRenderFxGlowShell,0,0,255,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(players[a],kRenderFxGlowShell,0,0,255,kRenderTransAdd,16)
}
get_players(players,inum,"cae","CT")
for(new s=0;s<inum;++s)
emit_sound(players[s],CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
get_players(tplayers,tinum,"cae","TERRORIST")
for(new i=0;i<tinum;++i)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(tplayers[i],kRenderFxGlowShell,255,0,0,kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(tplayers[i],kRenderFxGlowShell,255,0,0,kRenderTransAdd,16)
}
get_players(tplayers,tinum,"cae","TERRORIST")
for(new s=0;s<tinum;++s)
emit_sound(tplayers[s],CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
if(inum>0 && tinum>0){
client_print(0,print_chat,"[AMX] All humans are glowing according to there colors teams")
}
}
}
if(get_cvar_num("amx_gteams") == 0){
get_players(players,inum,"ca")
for(new a=0;a<inum;++a)
if(get_cvar_num("amx_gghost") == 0){
set_user_rendering(players[a],kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderNormal,16)
}
else if(get_cvar_num("amx_gghost") == 1){
set_user_rendering(players[a],kRenderFxGlowShell,random_num(0,255),random_num(0,255),random_num(0,255),kRenderTransAdd,16)
}
get_players(players,inum,"ca")
for(new s=0;s<inum;++s)
emit_sound(players[s],CHAN_ITEM,"tentacle/te_alert1.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM)
if(get_cvar_num("amx_gchat") == 1){
if(inum>0){
client_print(0,print_chat,"[AMX] All humans are glowing a random color")
}
}
}
return PLUGIN_HANDLED
}
return PLUGIN_HANDLED
}
public menu_aglowing(id, level, cid)
{
if(!cmd_access(id, level, cid, 1))
return PLUGIN_HANDLED
MenuPage[id] = 1
show_menu_set(id)
return PLUGIN_HANDLED
}
show_menu_set(id)
{
new menuoption[10][64], smenu[64], menubody[512]
new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<9)
for(new z = 0; z < 10; ++z) menuoption[z][0] = 0 // clear string
switch(MenuPage[id])
{
case 1:
{
format(smenu, 63, "")
format(menuoption[0], 63, "1. Auto-Bots Glow %s^n", get_cvar_num("amx_gbots") ? "ON" : "OFF")
format(menuoption[1], 63, "2. Auto-Humans Glow %s^n", get_cvar_num("amx_ghumans") ? "ON" : "OFF")
format(menuoption[2], 63, "3. Teams Color Glow %s^n", get_cvar_num("amx_gteams") ? "ON" : "OFF")
format(menuoption[3], 63, "4. Specials Effects %s^n", get_cvar_num("amx_gsfx") ? "ON" : "OFF")
format(menuoption[4], 63, "5. Chat Events %s^n", get_cvar_num("amx_gchat") ? "ON" : "OFF")
format(menuoption[5], 63, "6. Ghost Mode %s^n", get_cvar_num("amx_gghost") ? "ON" : "OFF")
format(menuoption[9], 63, "0. Exit")
}
}
format(menubody, 511, "Admin Menu %s:^n^n%s%s%s%s%s%s%s", smenu,
menuoption[0], menuoption[1], menuoption[2], menuoption[3], menuoption[4], menuoption[5], menuoption[9])
show_menu(id, keys, menubody)
return PLUGIN_HANDLED
}
public aglow_menu(id, key)
{
if(MenuPage[id] == 1)
{
switch(key)
{
case 0:
{
get_cvar_num("amx_gbots") ? set_cvar_num("amx_gbots", 0) : set_cvar_num("amx_gbots", 1)
if(get_cvar_num("amx_gbots") == 1){
client_print(0,print_chat,"[AMX] Bots are glowing")
write_file("addons/amxmodx/glow.ini","amx_gbots 1",1)
}
else if(get_cvar_num("amx_gbots") == 0){
client_print(0,print_chat,"[AMX] Bots aren't glowing anymore")
write_file("addons/amxmodx/glow.ini","amx_gbots 0",1)
}
}
case 1:
{
get_cvar_num("amx_ghumans") ? set_cvar_num("amx_ghumans", 0) : set_cvar_num("amx_ghumans", 1)
if(get_cvar_num("amx_ghumans") == 1){
client_print(0,print_chat,"[AMX] Humans are glowing")
write_file("addons/amxmodx/glow.ini","amx_ghumans 1",2)
}
else if(get_cvar_num("amx_ghumans") == 0){
client_print(0,print_chat,"[AMX] Humans aren't glowing anymore")
write_file("addons/amxmodx/glow.ini","amx_ghumans 0",2)
}
}
case 2:
{
get_cvar_num("amx_gteams") ? set_cvar_num("amx_gteams", 0) : set_cvar_num("amx_gteams", 1)
if(get_cvar_num("amx_gteams") == 1){
client_print(0,print_chat,"[AMX] The glow are now set according to teams colors")
write_file("addons/amxmodx/glow.ini","amx_gteams 1",3)
}
else if(get_cvar_num("amx_gteams") == 0){
client_print(0,print_chat,"[AMX] The glow are now set randomly")
write_file("addons/amxmodx/glow.ini","amx_gteams 0",3)
}
}
case 3:
{
get_cvar_num("amx_gsfx") ? set_cvar_num("amx_gsfx", 0) : set_cvar_num("amx_gsfx", 1)
if(get_cvar_num("amx_gsfx") == 1){
client_print(0,print_chat,"[AMX] Specials Glow Effects are ON")
write_file("addons/amxmodx/glow.ini","amx_gsfx 1",4)
}
else if(get_cvar_num("amx_gsfx") == 0){
client_print(0,print_chat,"[AMX] Specials Glow Effects are OFF")
write_file("addons/amxmodx/glow.ini","amx_gsfx 0",4)
}
}
case 4:
{
get_cvar_num("amx_gchat") ? set_cvar_num("amx_gchat", 0) : set_cvar_num("amx_gchat", 1)
if(get_cvar_num("amx_gchat") == 1){
client_print(0,print_chat,"[AMX] All glowing events will now be reported in the chat")
write_file("addons/amxmodx/glow.ini","amx_gchat 1",5)
}
else if(get_cvar_num("amx_gchat") == 0){
client_print(0,print_chat,"[AMX] All glowing events will not be reported anymore")
write_file("addons/amxmodx/glow.ini","amx_gchat 0",5)
}
}
case 5:
{
get_cvar_num("amx_gghost") ? set_cvar_num("amx_gghost", 0) : set_cvar_num("amx_gghost", 1)
if(get_cvar_num("amx_gghost") == 1){
client_print(0,print_chat,"[AMX] Ghost Mode is ON")
write_file("addons/amxmodx/glow.ini","amx_gghost 1",6)
}
else if(get_cvar_num("amx_gghost") == 0){
client_print(0,print_chat,"[AMX] Ghost Mode is OFF")
write_file("addons/amxmodx/glow.ini","amx_gghost 0",6)
}
}
case 9:
{
// Menu Fix (Popup)
MenuPage[id] = 0
return PLUGIN_HANDLED
}
}
// Bypass Update System
show_menu_set(id)
return PLUGIN_HANDLED
}
update_menu()
return PLUGIN_HANDLED
}
update_menu()
{
new admins[32], inum
get_players(admins, inum)
for(new i = 0; i < inum; ++i)
if(MenuPage[admins[i]] > 0)
show_menu_set(admins[i])
}
loadini(filename[])
{
if(file_exists(filename))
{
new readdata[64]
new set[16], val[16], len
for(new i = 0; i < 64 && read_file(filename, i, readdata, 63, len); ++i)
{
parse(readdata, set, 15, val, 15)
if(equal(set, "amx_gbots")) if(equal(val, "1")) set_cvar_num("amx_gbots", 1)
if(equal(set, "amx_ghumans")) if(equal(val, "1")) set_cvar_num("amx_ghumans", 1)
if(equal(set, "amx_gteams")) if(equal(val, "1")) set_cvar_num("amx_gteams", 1)
if(equal(set, "amx_gsfx")) if(equal(val, "1")) set_cvar_num("amx_gchat", 1)
if(equal(set, "amx_gchat")) if(equal(val, "1")) set_cvar_num("amx_gchat", 1)
if(equal(set, "amx_gghost")) if(equal(val, "1")) set_cvar_num("amx_gghost", 1)
if(equal(set, "amx_gbots")) if(!equal(val, "1")) set_cvar_num("amx_gbots", 0)
if(equal(set, "amx_ghumans")) if(!equal(val, "1")) set_cvar_num("amx_ghumans", 0)
if(equal(set, "amx_gteams")) if(!equal(val, "1")) set_cvar_num("amx_gteams", 0)
if(equal(set, "amx_gsfx")) if(!equal(val, "1")) set_cvar_num("amx_gchat", 0)
if(equal(set, "amx_gchat")) if(!equal(val, "1")) set_cvar_num("amx_gchat", 0)
if(equal(set, "amx_gghost")) if(!equal(val, "1")) set_cvar_num("amx_gghost", 0)
}
}
return PLUGIN_HANDLED
}