Commit graph

21548 commits

Author SHA1 Message Date
GenericHeroGuy
f30ddcfad2 Three(!?) new methods for placing menu items
Relative: changes the coordinates relative to the current ones
Temporary relative: displaces the coordinates temporarily
Overlay: draws at absolute coordinates, no clipping

Along with custom cursor offsets and Item Styles(tm), this eliminates
M_DrawControl
2025-06-12 16:54:43 +02:00
NepDisk
6a122b0600 Implement ring spam nerf
Less impactful in vanilla + rings. With Chaining and Stacking on however this makes a big difference since it prevents you from having a large stack count forever if you can keep chugging rings
2025-06-11 19:02:06 -04:00
NepDisk
457527d77a GL renderer changes
Always draw the skybox to prevent it from randomly going black and remove deprecated polyskys define. Thaanks Alug for suggestion and assistance.
2025-06-11 13:40:11 -04:00
NepDisk
12c93988e6 Experiment: always stack rubberband boost 2025-06-11 00:39:15 -04:00
NepDisk
a306d117a8 Fix music going away on unfocus 2025-06-11 00:38:15 -04:00
NepDisk
b93a8215c8 Make bonuschars.kart an Iwad 2025-06-10 18:41:20 -04:00
NepDisk
64fd5b93ac raise skinlimit to 4096
Why not UINT16_MAX? Thats 22gb of allocation lmao
2025-06-10 15:38:11 -04:00
GenericHeroGuy
fd48ecd4ca Make the camera options work again 2025-06-09 23:26:56 +02:00
NepDisk
41e3d9b285 Fix broken MS menu 2025-06-09 17:05:50 -04:00
GenericHeroGuy
f14e5f2f56 Softcode server list page and sound options 2025-06-09 22:53:54 +02:00
NepDisk
7c712836f3 Refactor and rework viewserver
Thanks to the srb2 classic team and luigi budd for the original version
2025-06-09 15:43:40 -04:00
Alug
37ea829b2f fix the horrible ffloorclip clearing loops
if yall ever decide to get rid of the static screensize buffer, the compiler will just straight up never optimize those loops and it will turn some maps into absolute cache miss hell, using std::fill only cause it looks fancy lmao
2025-06-08 22:16:30 +02:00
Alug
cd3715bfaa fix portals not accounting for slopes (only for kartmaps)
fixes the last portal paths on ante station
2025-06-08 22:07:30 +02:00
Alug
e63f68e732 fix portal clipping being completely completely broken on kart maps
truly amazing
2025-06-08 22:01:41 +02:00
GenericHeroGuy
56edab2480 Remove a TON of special-case menu code
You can now combine submenu/cvar/call to allow for more complex behavior,
without the need for keyhandlers. All those dummy menuitems relying on
keyhandlers now use cvars, like everything else does.

Yes, several things are still hardcoded, but player setup no longer
needs its own miniature menu system :^)
2025-06-08 17:15:17 +02:00
GenericHeroGuy
acb2cb752e Factor out item drawing into a separate function 2025-06-07 22:47:08 +02:00
GenericHeroGuy
2252c16acb Rewritten scrolling and coordinate logic 2025-06-07 21:01:29 +02:00
GenericHeroGuy
d18ebe8827 The five-for-one menu drawing special! 2025-06-07 13:58:01 +02:00
Alug
1c5dc89b33 fix non papersprite clipping in R_ProjectSprite overflowing 2025-06-06 15:31:38 +02:00
Alug
7247768278 fix 2560x1440 resolution crashing 2025-06-06 15:12:11 +02:00
GenericHeroGuy
df30f44c35 nice job dumbass 2025-06-06 02:23:43 +02:00
GenericHeroGuy
e9d764eaa6 Move keyhandler from menuitems to menu (and clean up event handling)
Also make empty menus work
2025-06-06 02:16:21 +02:00
GenericHeroGuy
1a0285d193 Let keyhandlers pass through events
Hooray, keyhandlers no longer eat your entire keyboard!
2025-06-05 22:29:51 +02:00
GenericHeroGuy
e6dc870b2b Wire up and start using enterroutines 2025-06-05 19:47:08 +02:00
GenericHeroGuy
5a0a889cd1 Menu functions now return INT32
Just my best guess what everything should return. Doesn't matter right now
2025-06-05 19:47:08 +02:00
NepDisk
dcc8b1d868 Stop bots from moving when exiting properly. 2025-06-05 08:35:53 -04:00
NepDisk
8288eaf733 Port Saturn Tooltips 2025-06-04 21:35:24 -04:00
NepDisk
a47594d4be Make this code look less ass 2025-06-04 17:52:23 -04:00
GenericHeroGuy
a8b8510188 Menu flags rework
As I found out the hard way, shit's still hardcoded...
So now, hidden/grayed out/secret are completely separate flags rather than
being baked into the other status fields!
Lots of cleanup and refactoring along the way...

You can now change an item from a call to a submenu without segfaulting
due to hardcode messing with the flags :^)
Also, completely blank items now default to being non-interactible, much
more sensible than defaulting to call
2025-06-04 21:41:05 +02:00
NepDisk
656268f31d Merge pull request 'Port I_Video refactor' (#62) from ivideorefactor into blankart-dev
Reviewed-on: https://codeberg.org/NepDisk/blankart/pulls/62
2025-06-03 20:15:14 +02:00
NepDisk
6c10edcdb4 Fix OpenGL gif recording issues 2025-06-03 14:07:08 -04:00
NepDisk
c958ce87ca I_RegisterSysCommands so video cvars are registerd before menu init happens 2025-06-03 13:47:29 -04:00
NepDisk
d0d8236bad Fix waterpanel in deh_tables 2025-06-03 13:21:47 -04:00
GenericHeroGuy
12dfdd2f11 Remove Pandora's Box and Emblem Hints 2025-06-03 19:16:12 +02:00
GenericHeroGuy
e680b12eac Remove character descriptions 2025-06-03 18:58:09 +02:00
NepDisk
de91aa3a13 Clean up of I_video port 2025-06-03 12:52:32 -04:00
GenericHeroGuy
308d2efb31 Deduplicate a bunch of routines 2025-06-03 18:48:35 +02:00
NepDisk
00d08c851f i_video.c refactor port
based on 4de2d81815
2025-06-03 12:06:19 -04:00
GenericHeroGuy
231b067af1 Pass argument for IT_CALL
and fix server list softlock
2025-06-03 17:01:25 +02:00
GenericHeroGuy
c3fe4fb71e Coordinates, arguments, tooltips, string buffers 2025-06-03 16:01:19 +02:00
GenericHeroGuy
0952b94d3f Update mappatch hash 2025-06-03 14:05:10 +02:00
GenericHeroGuy
1b0ea34476 Add No Spread flag for patch finish lines 2025-06-03 01:10:11 +02:00
NepDisk
10c858186f Change Ring Racers refernce in file to Blankart 2025-06-02 15:17:58 -04:00
NepDisk
c1ca05c6c5 Adjust some stuff to accout for how the map header toggle works 2025-06-02 15:11:39 -04:00
NepDisk
b087b5e372 Port JugadorXEI's Terrain library for Lua
Credits go to JugadorXEI for the code in this. https://git.do.srb2.org/KartKrew/RingRacers/-/merge_requests/103\#d1c6f6fa1ba8207cb6aaef9f4a47d9a0b6b8b5c1

Modifications have been made to account for extra terrainflags, new terraintypes and removal of Ring Racers specfic types
2025-06-02 14:38:33 -04:00
NepDisk
9d864729db Port v.cachePatch second parameter for rotation from Classic
https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2662
2025-06-02 11:23:51 -04:00
NepDisk
4a29babb66 Inline P_MobjWasRemoved 2025-06-02 11:14:16 -04:00
GenericHeroGuy
f63e6d5462 Fix missing hitbox for Mementos Reaper 2025-06-02 16:22:55 +02:00
NepDisk
b0b9d97b1f add MF_PAIN fallback just in case 2025-06-02 09:39:49 -04:00
NepDisk
3f98670fa4 Prevent antigrief from affecting bots 2025-06-02 09:10:13 -04:00