float CH_TRIGGER = 0; // only on players; compat: FALSELY CONTROLLED BY "Info"
float CH_WEAPON_A = 1; // only on players and entities
float CH_WEAPON_SINGLE = 1; // only on players and entities
-float CH_VOICE = 2; // only on players; compat: FALSELY CONTROLLED BY "BGM"
-float CH_BGM_SINGLE = 2; // only on csqc
-float CH_AMBIENT = 2; // only on csqc; compat: FALSELY CONTROLLED BY "BGM"
+float CH_VOICE = 2; // only on players
+float CH_BGM_SINGLE = 2; // only on csqc; compat: FALSELY CONTROLLED BY "Voice"
+float CH_AMBIENT = 2; // only on csqc; compat: FALSELY CONTROLLED BY "Voice"
float CH_TRIGGER_SINGLE = 3; // only on players, entities, csqc
float CH_SHOTS_SINGLE = 4; // only on players, entities, csqc
float CH_WEAPON_B = 5; // only on players and entities
float CH_PAIN_SINGLE = 6; // only on players and csqc
float CH_PLAYER = 7; // only on players and entities
#else
-float CH_INFO = 0; // only on world and csqc!
-float CH_TRIGGER = 256;
-float CH_WEAPON_A = 257;
-float CH_WEAPON_SINGLE = 1;
-float CH_VOICE = 258;
-float CH_BGM_SINGLE = 2;
-float CH_AMBIENT = 261;
-float CH_TRIGGER_SINGLE = 3;
-float CH_SHOTS_SINGLE = 4;
-float CH_WEAPON_B = 257;
-float CH_PAIN = 259;
-float CH_PAIN_SINGLE = 6;
-float CH_PLAYER = 260;
+#define CH_INFO (0)
+#define CH_TRIGGER (3 | CHANFLAG_FORCEAUTO)
+#define CH_WEAPON_A (1 | CHANFLAG_FORCEAUTO)
+#define CH_WEAPON_SINGLE (1)
+#define CH_VOICE (2 | CHANFLAG_FORCEAUTO)
+#define CH_BGM_SINGLE (0 | CHAN_EXTRA1)
+#define CH_AMBIENT (1 | CHAN_EXTRA1 | CHANFLAG_FORCEAUTO)
+#define CH_TRIGGER_SINGLE (3)
+#define CH_SHOTS_SINGLE (4)
+#define CH_WEAPON_B (1 | CHANFLAG_FORCEAUTO)
+#define CH_PAIN (6 | CHANFLAG_FORCEAUTO)
+#define CH_PAIN_SINGLE (6)
+#define CH_PLAYER (7 | CHANFLAG_FORCEAUTO)
#endif
float ATTN_NONE = 0;
me.TR(me);
me.TDempty(me, 0.2);
s = makeXonoticDecibelsSlider(-20, 0, 0.5, "bgmvolume");
- makeMulti(s, "snd_channel2volume");
+ makeMulti(s, "snd_channel0extra1volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Music:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_staticvolume");
+ makeMulti(s, "snd_channel1extra1volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, ZCTX(_("VOL^Ambient:"))));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel3volume");
- makeMulti(s, "snd_channel256volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Items:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel6volume");
- makeMulti(s, "snd_channel259volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Pain:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
setDependentStringNotEqual(s, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
- s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel260volume");
- makeMulti(s, "snd_channel7volume"); // legacy
+ s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel7volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Player:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
setDependentStringNotEqual(s, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
- s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel258volume");
+ s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel2volume");
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Voice:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");
setDependentStringNotEqual(s, "mastervolume", "0");
me.TR(me);
me.TDempty(me, 0.2);
- s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel257volume");
- //makeMulti(s, "snd_channel1volume");
- makeMulti(s, "snd_channel1volume snd_channel5volume"); // snd_channel5volume is legacy
+ s = makeXonoticDecibelsSlider(-20, 0, 0.5, "snd_channel1volume");
+ makeMulti(s, "snd_channel5volume"); // legacy
me.TD(me, 1, 0.8, e = makeXonoticSliderCheckBox(-1000000, 1, s, _("Weapons:")));
me.TD(me, 1, 2, s);
setDependentStringNotEqual(e, "mastervolume", "0");