Commit graph

315 commits

Author SHA1 Message Date
NepDisk
d46f74ea7e This isn't needed the lua func already has an option for this 2026-02-17 14:19:36 -05:00
yamamama
542648e948 Add KIF_HYUCANTSTEAL
- Prevents the given item from ever being stolen by Hyudoro
- Useful for those extra-special items that you really want the player to use
2026-02-16 18:40:48 -05:00
yamamama
d5ca5516de Split Classic and Alt. Invincibility
- It's what the people want, why bother to complain?
- Alt is now its own separate item titled the S-Monitor
- Several variables, macros, functions, and comments have been renamed to fit this change
2026-02-16 18:40:48 -05:00
NepDisk
e9cdbf97c3 Add flag that always forces the timer to the end of the list 2026-02-13 23:37:35 -05:00
NepDisk
e96b1bfdce Make flags field of timers act like a bitfield and add new flags 2026-02-13 23:15:42 -05:00
Indev
cf1ac5f864 Expose item timers to lua 2026-02-13 22:29:26 -05:00
NepDisk
b2ee66cffb Tweak around recovery dash numbers a bit 2026-02-09 14:29:17 -05:00
NepDisk
c13f92a3b9 Expose airdrop stuff to Lua 2026-02-06 14:34:58 -05:00
yamamama
0d7d6a60eb Almost forgot the bitflags 2026-02-04 18:23:40 -05:00
yamamama
bf6f86a5fb Expose airdrop flags to Lua 2026-02-04 11:21:25 -05:00
yamamama
0c2d8a8e36 Shove bouncy fastfalling into a pflag
Reduce headaches about fastfall bounce by obfuscating its existence a decent bit
2026-02-04 01:47:33 -05:00
yamamama
055a93b654 Dedicated horn button
From indev talks: it'd be better to bind horns to a dedicated button,
than for it to occupy more "important" inputs like item/ring usage and looking backwards
2026-02-01 16:16:02 -05:00
NepDisk
bddb56681b Add flipover to SD_LIST 2026-01-30 12:29:51 -05:00
NepDisk
adc7a4d9a9 Add BlanKart Check for Lua 2026-01-21 14:10:19 -05:00
GenericHeroGuy
e45c8d1835 Add cup select
Also, backspace remembers your last selected map/cup now, for easy searching
2026-01-02 02:54:02 +01:00
NepDisk
7249273ca3 Revert "Kill Alt. Invin."
This reverts commit f414006e66.
2025-12-22 20:23:45 -05:00
yamamama
f414006e66 Kill Alt. Invin. 2025-12-22 20:05:13 -05:00
GenericHeroGuy
47f0289a52 Add level platter to ALL menus, clear out ALL the old nextmap code
and delete the unused custom preset stuff because the cvars just happened to
call Nextmap_OnChange
2025-12-15 22:50:29 +01:00
GenericHeroGuy
bcb0eb95cc More fastcmp cleanup 2025-12-11 21:58:37 +01:00
GenericHeroGuy
6ad95bacd0 Level platter, ported from 2.2
Just enough to be feature-complete lol, will need some more tweaking
2025-12-11 00:05:23 +01:00
minenice55
83176e4c9f make equip style a property of the items proper
KNOWN ISSUE: rockets and eggman leave the item slot empty when equipped, should probably add a "equipped item type" field to the player struct
2025-12-06 00:33:51 -05:00
yamamama
568949b8e5 'Join Last Server' option 2025-12-05 15:45:10 -05:00
yamamama
74b76b8471 Merge remote-tracking branch 'origin/next' into subvsdub
Nep taking a sledgehammer to the codebase as refactors are happening :,)

# Conflicts:
#	src/g_demo.c
2025-12-01 17:05:58 -05:00
GenericHeroGuy
58b4949c24 Completely retire the old skinsound system
Everything in Lua related to it is now locked behind compatmode
Also fixed SFX allocations eating into skinsounds
2025-12-01 21:42:06 +01:00
NepDisk
40d792fce9 Expose most constants in k_kart.h
Have fun Lua modders!
2025-12-01 10:24:22 -05:00
yamamama
1aa2549699 Forgot one 2025-12-01 10:14:59 -05:00
yamamama
8128e9a2a1 Expose flipover constants to Lua 2025-12-01 10:13:26 -05:00
yamamama
51a005a7de Refactor voices
* Tie all voices to skins, allocate voices during skin allocation and patching
* Bring back voice.name, kill voice.parent, add voice.id
* Lua compatibility for voices (again) soon (hopefully)
2025-11-29 20:51:25 -05:00
yamamama
14753a4534 Merge remote-tracking branch 'origin/next' into subvsdub 2025-11-29 11:07:05 -05:00
minenice55
2c71e4c18a semi-expose the item equipping logic
really just need enough to be able to prototype stuff with
2025-11-28 20:03:23 -05:00
yamamama
22ff92ea43 Voice -> KartVoice (mostly)
Guest-starring: META_VOICE_ARRAY
2025-11-26 07:49:25 -05:00
yamamama
e0d4a8e385 Consolidate voice allocation
Skin voices and freeslot voices are no longer separated, with all voices allocating as skin voices would prior.
Due to this, skin voice allocation has been refactored a bit:
- No longer relies on a name string, instead using Dehacked name info hashes and string offsets
- Name string checks now check the voice's Dehacked name; the skin 'tails' will allocate KVOICE_TAILS, and so on
- Overall refactors to fit this new system
2025-11-26 07:49:24 -05:00
yamamama
b7a60c2fea Voice dub freeslotting
Full transparency: the way I set up dub reading from an SOC is Yanderedev-tier garbage.
2025-11-26 07:46:37 -05:00
NepDisk
e9d7843b91 Allow P_CanPickupItem to be hooked and unmagic it 2025-11-17 21:50:03 -05:00
NepDisk
d64c36bbf7 Merge branch 'blankart-dev' into openalclassic 2025-11-16 20:22:49 -05:00
NepDisk
53753ef6f2 Show Music formats by name in dbg_music 2025-11-15 17:00:00 -05:00
GenericHeroGuy
1385692e83 Cleanup itemroulette 2025-11-12 23:18:24 +01:00
GenericHeroGuy
e95faf8b55 Cleanup K_AwardPlayerItem 2025-11-12 22:50:29 +01:00
Anonimus
ef6958a578 KRF_HIDEFROMSPB
This isn't a thing in v1 and I'm not sure why it was locked to the Thunder Shield for so long
2025-11-12 07:13:40 -05:00
GenericHeroGuy
f7c1c474e6 Clean up and consolidate all item cooldown code
* The "unique item" flag has moved to kartitem, and split to accomodate
  shields (item slot only, not paper items)
* "BGoneTime" renamed to "CooldownTime"
* indirectitemcooldown has been folded into the existing cooldown system,
  all results with the indirect flag share the highest cooldown time
* Added cooldown debugger to kartdebugdistribution
* Fixed Thunder Shield not resetting cooldown when killing an SPB
2025-11-09 22:00:48 +01:00
minenice55
528a4640a0 implement KIF_HIDEFROMROULETTE 2025-11-08 16:31:25 -05:00
GenericHeroGuy
4986bde9ab Restore the item toggle menu back to working order 2025-11-08 02:15:47 +01:00
GenericHeroGuy
3c64f345fb SOC the items... finally! 2025-11-07 23:23:23 +01:00
GenericHeroGuy
a2396fbdac Item refactor, part 2
Clean up alt item stuff, replace the billion parameters with kartroulette_t
2025-11-07 18:01:13 +01:00
GenericHeroGuy
efac1d27c2 Item refactor, part 1
Too much shit to explain, read the diff (you should anyway!)
Very sloppy, expect lots of fixes
TODO: SOC it all, separate "active odds" table, how to handle alt items
2025-11-06 22:59:02 +01:00
Anonimus
c5649e0b23 Fixes and consolidation
* Changed every instance of K_AltShrinkActive to its K_IsKartItemAlternate equivalent
* Same as above for Invincibility; some functions might still rely on K_GetKartInvinType though
* (Balance change) Alt. Invin. needs a slightly farther distance to start appearing, hopefully means less 5sec dud invinces
* Brought back cv_landmine to prevent SIGSEGVs in the item toggles menu
* Introduce NUMBASEKARTRESULTS since all KAITEM_X items are overrides assigned via K_GetAlternateVersion
2025-11-05 07:16:39 -05:00
minenice55
2c04bb2ef5 generalize alt invinc to apply to any item
(with some work)
2025-11-04 21:55:30 -05:00
NepDisk
7b12bc82ff Add more backcompat for old unused v1 kart flags 2025-10-25 15:15:55 -04:00
NepDisk
6a85aed2d8 Add backwards compat for FULLSTASIS 2025-10-25 14:44:02 -04:00
NepDisk
a8609d7204 Un-shitify function.acp1 pointers 2025-10-23 23:26:26 -04:00