1 //FEATURE: Custom default announcers on the server side, that clients can override if desired
4 REGISTER_MUTATOR(announcer, true);
9 AUTOCVAR(sv_announcer, string, "", "Force client announcer to this");
11 MUTATOR_HOOKFUNCTION(announcer, Ent_Init, CBC_ORDER_FIRST)
13 WriteString(MSG_ONE, autocvar_sv_announcer);
20 AUTOCVAR_SAVE(cl_announcer_force, bool, false, "Don't allow server to override default announcer");
22 void Announcer_Precache()
24 FOREACH(Notifications, it.nent_type == MSG_ANNCE, {
26 precache_sound(sprintf("announcer/%s/%s.wav", AnnouncerOption(), it.nent_snd));
30 MUTATOR_HOOKFUNCTION(announcer, AnnouncerOption)
32 if(autocvar_cl_announcer_force || sv_announcer == "" || !sv_announcer || autocvar_cl_announcer != "default")
35 M_ARGV(0, string) = sv_announcer;
38 MUTATOR_HOOKFUNCTION(announcer, Ent_Init, CBC_ORDER_FIRST)
40 sv_announcer = strzone(ReadString());
42 if(sv_announcer != "" && sv_announcer) { Announcer_Precache(); }