An Original Post From http://ro-resources.net/topic/285-broadcast-depending-on-gm-level/
It Doesn't work for me, i dnt know what is the error. I'm using 3ceam revision 650.
/*==========================================
* @broadcast by [Valaris]
* Edited by Jake Red
*------------------------------------------*/
ACMD_FUNC(broadcast)
{
nullpo_retr(-1, sd);
memset(atcmd_output, '\0', sizeof(atcmd_output));
if(!message || !*message) {
clif_displaymessage(fd, "Please, enter a message (usage: @adm <message>).");
return -1;
}
if(gm_lvl >= 20 && gm_lvl <=40){
sprintf(atcmd_output, "[support and Order] %s : %s", sd->status.name, message);
intif_broadcast2(atcmd_output, strlen(atcmd_output) + 1, 0xFF0000, 0x190, 12, 0, 0);
}
else if(gm_lvl>=41 && gm_lvl<=60){
sprintf(atcmd_output, "[support and Order] %s : %s", sd->status.name, message);
intif_broadcast2(atcmd_output, strlen(atcmd_output) + 1, 0x800000, 0x190, 12, 0, 0);
}
else if (gm_lvl>=61 && gm_lvl<=80){
sprintf(atcmd_output, "[support and Order] %s : %s", sd->status.name, message);
intif_broadcast2(atcmd_output, strlen(atcmd_output) + 1, 0x4B0082, 0x190, 12, 0, 0);
}
else if (gm_lvl>=81 && gm_lvl<=98){
sprintf(atcmd_output, "[support and Order] %s : %s", sd->status.name, message);
intif_broadcast2(atcmd_output, strlen(atcmd_output) + 1, 0x0000FF, 0x190, 12, 0, 0);
}
else if(gm_lvl== 99){
sprintf(atcmd_output, "[Admin] %s : %s", sd->status.name, message);
intif_broadcast2(atcmd_output, strlen(atcmd_output) + 1, 0xFF0000, 0x190, 12, 0, 0);
}
return 0;
}