otta8634 [Tue, 25 Feb 2025 16:37:17 +0000 (00:37 +0800)]
Relocate guide descriptions for nades & buffs into their QC files
They were previously in their .qh files, which is inconsistent with mostly everything else in the guide.
Putting them in the .qc file can prevent circular includes, so the guide entries can reference each other.
otta8634 [Tue, 25 Feb 2025 15:50:46 +0000 (23:50 +0800)]
Make website links in the guide not translatable
Website links shouldn't be translatable, and removing them from the transifex string has the benefit that if the link ever needs to be updated, we won't need every single transifex string to be changed.
Also improved the XonStat guide section a bit, adding the stats.xonotic.org link, and some extra information.
otta8634 [Sat, 15 Feb 2025 11:06:24 +0000 (19:06 +0800)]
Make the guide dialog wider
It's now the same width as the Multiplayer dialog.
This makes some long entry names a bit easier to read, like now HLAC says "Heavy Laser Assault Ca...", which is better than what it said before.
otta8634 [Sat, 15 Feb 2025 10:45:18 +0000 (18:45 +0800)]
Improve Introduction and Movement guide text
Made the writing style more consistent with the rest of the guide.
Also moved the "Advanced Movement" section to the end.
Also fixed some whitespace issue in qcsrc/menu/xonotic/guide/pages.qh.
terencehill [Sun, 9 Feb 2025 00:26:28 +0000 (01:26 +0100)]
Menu: don't set focusedItem to values lower than -1
It fixes this subtle bug: QC crash by "dragging" any item in Settings > Game's ListBox (the thing with HUD,
Messages, etc.) above the top of the list (even though it's an immutable list, so dragging should do
nothing other than change the selection).
It was due to XonoticRegisteredSettingsList_focusedItemChangeNotify considering focusedItems < -1
as valid items.
For extra safety I made so that XonoticRegisteredSettingsList_focusedItemChangeNotify considers any
focusedItem < 0 invalid anyway (like XonoticGametypeList_focusedItemChangeNotify).
I also removed a duplicated focusedItemChangeNotify declaration.
It's written `wishvel * (1 / wishspeed)` because that's how Q3 does it.
The difference in the result is insignificant for normal gametypes but
might be significant for Q3 DeFRaG compatibility in extreme cases.
See https://gitlab.com/xonotic/xonotic-data.pk3dir/-/merge_requests/1438
for discussion.
otta8634 [Sun, 9 Feb 2025 06:57:14 +0000 (14:57 +0800)]
Trim announcer/default/headshot.ogg
Noticed while playing that there was an excessive delay before and after the sound, such that if there were multiple "headshot" sounds in the announcer queue it would take a while for them to finish, and there would be a noticeably long pause between each one.
Trimmed the start and end of the sound, using mp3splt-glk.
otta8634 [Tue, 4 Feb 2025 07:03:49 +0000 (15:03 +0800)]
Draw fixed keybinds darker in the menu
This makes it more obvious that they're immutable.
Did this by adding (COLOR|ALPHA)_KEYGRABBER_KEYS_IMMUTABLE to skinvalues.
- Used the same as the *_KEYGRABBER_KEYS values, with COLOR divided by 2 roughly.
otta8634 [Tue, 4 Feb 2025 06:27:05 +0000 (14:27 +0800)]
Allow binding weapons individually in the menu
Previously weapon-groups could only be bound via the menu, meaning a player can't set a separate bind for Crylink and HLAC (for example).
Added individual weapon bind keys under the group key in the menu.
- Binding a group key will unbind all the child weapon binds, so that the user doesn't end up with multiple binds set for the one weapon. This is of course a legitimate thing to do, but is likely too confusing for inexperienced players.
Added tree icons to make it more obvious which weapons are a part of the group.
- Currently there's no tree icons for wickedx or luminos.
Since this now shows weapon icons along with their names, this is enough to complete the menu-side of #2065.
otta8634 [Mon, 3 Feb 2025 11:26:09 +0000 (19:26 +0800)]
Remove some unnecessary changes
In all weapon files a newline was probably accidentally deleted by myself, re-added it so the diff is simplified.
Also removed one unnecessary include in common/gamemodes/gamemode/onslaught/onslaught.qc,
... and fixed the gametype description of CTS.
otta8634 [Tue, 28 Jan 2025 13:39:33 +0000 (21:39 +0800)]
Use hud_skin when fetching images from /gfx/hud/
Previously some display methods (of Weapon, GameItem, StatusEffects, and Nades) tried to access `/gfx/hud/{menu_skin}`, when they should be accessing `/gfx/hud/{hud_skin}`.
This was introduced by 51c7e0a875.
Until !1412 this didn't cause any visible bugs because the display methods were never called, and consequently (after !1412) on menu skins other than `luma`, some or all weapon icons wouldn't show in the list.
This change fixes that issue.
bones_was_here [Mon, 13 Jan 2025 08:27:37 +0000 (18:27 +1000)]
q3compat: check for a map-specific .arena file even when there's another one in the pk3
This allows the server admin to work around pk3s containing an .arena
file (or .defi file) that isn't valid for some map(s) in the pk3,
without modifying the pk3.
Or they could override the one in the pk3 (on a map-specific basis) to
change some value(s).
otta8634 [Sat, 25 Jan 2025 15:05:01 +0000 (23:05 +0800)]
Make filtering work for gamemodes and mutators
Did this by applying the same workaround as the COLORED_NAME macros, using .message if it exists, otherwise .m_name.
In future ideally .message would be renamed to .m_name on Mutators and Gametypes.
See https://gitlab.com/xonotic/xonotic-data.pk3dir/-/merge_requests/181#note_2291392189 for more.