Commit graph

275 commits

Author SHA1 Message Date
Sally Coolatta
867253540c Sonic 3-style intermission coloring
Not just tan, but blue & a tiny bit of green!
2023-09-07 16:19:37 -04:00
James R
f552791052 Add CV_ADDEDBYLUA, show all Lua cvars on the cheats menu 2023-09-01 22:13:18 +01:00
toaster
6455882942 Remove the irrelevant cheatcheck states and spritename 2023-09-01 21:25:26 +01:00
VelocitOni
8845700c06 Starpost Gentrification
Replaced all mentions of starpostnum and Starpost w/ cheatchecknum and CheatCheck (so Ivo can stop asking why we still need it when its going to save our asses on release patches)
2023-09-01 00:31:49 -04:00
toaster
656e9ad310 Merge branch 'thing-radius-acs' into 'master'
"Radius Action" thing type

See merge request KartKrew/Kart!1429
2023-08-31 13:15:12 +00:00
Lach
ac9b96e98b Add spawn rate arg to Sneaker Panel Spawners; allow sneaker panels to scale themselves redundantly 2023-08-27 14:01:23 +10:00
Sally Coolatta
ea7ad31fef Add Radius Action thing
Thing type 4096, activates its action when a player enters the specified radius
2023-08-26 20:28:50 -04:00
VelocitOni
2eef398381 Merge branch 'master' into dialogue-2 2023-08-25 22:46:14 -04:00
Sally Coolatta
3c14931764 Merge master 2023-08-25 18:39:01 -04:00
Oni
b63f3f6f16 Merge branch 'majin-box' into 'master'
Auto Roulette (resolves #618)

Closes #618

See merge request KartKrew/Kart!1411
2023-08-25 19:24:42 +00:00
Sally Coolatta
764010b3ab Implement talk sounds
We're in Undertale
2023-08-25 07:53:09 -04:00
toaster
e1b7cb66cb Rework the Spray Can system to ACTUALLY be what we want
Instead of being specific to each level, Spray Cans are stored in a list on gamedata that will be stepped along each Spray Can you collect.
They are only assigned to a level on collection - which prevents you from farming the same easy location for every colour in the game.

In addition, this new system is one step short of dehardcoding them entirely. Now only Spray Cans specifically asked for by the existence of UC_SPRAYCAN will be put in the list, and if a secondary parameter is either "Yes" or "True", it will be put at the head of the list. This could technically support custom skincolours one day, but the author of this commit doesn't care to do the last bit of work necessary to make it happen.

There's a slight extra overhead in that skincolor_t now also holds a `cache_spraycan` (renamed from `cachedcan`, which maps had previously)

Currently, there's no safeguard against grabbing it on a custom course - you'll lose the Spray Can as soon as you load a fresh game again - but  I consider that easy to fix (tomorrow) and necessary before merger, because the author of this commit does NOT want complaints on release because we forgot to protect users who keep on losing their skincolors.
2023-08-23 00:46:46 +01:00
toaster
f7635c4399 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into spraycans 2023-08-22 19:57:28 +01:00
AJ Martinez
3900189199 Auto Spin -> Auto Roulette 2023-08-20 16:26:34 -07:00
AJ Martinez
fbfc75df71 Item box autospin 2023-08-20 05:08:53 -07:00
toaster
dc695e7acf First pass at implementing Spray Can pickups
- Replaces a few D00DKart objects because the doomednum specifically replaced one of these
- Reports on load if the map has too many, or if one's assigned but the object doesn't exist
2023-08-19 22:21:20 +01:00
toaster
1d06637a38 First pass at assigning unique spraycans to level headers
Increments gamedata minor version, be aware
- M_AssignSpraycans
    - Called in M_FinaliseGameData.
    - Attaches a hardcoded set of colours to all race maps in cup order, stopping once we run out.
    - The colours are shuffled, with some "freebies" always at the head of the list.
    - Integrates partial lists pretty well.
    - In DEVELOP builds, I_Errors if it produces corrupted state.
- G_LoadGameData, G_SaveGameData
    - Save & Load is implemented for these assignments
2023-08-19 15:08:55 +01:00
James R
4857d48633 Add "twinkle" lens flare to emeralds
- Battle: plays once the orbiting collection animation
  finishes and the player's emerald flags are updated
  - Centered on the player

- Sealed Star: plays as soon as the orbiting animation
  begins
  - Centered on the emerald
2023-08-19 03:40:17 -07:00
Lach
53b48d057c Rename Lost Colony symbols to Ark Arrows and add 10 new symbol types 2023-08-15 22:47:04 +10:00
James R
b209b321f6 deh_tables.c: add FF_REVERSEANIM to SOC and Lua 2023-08-13 13:59:02 -07:00
James R
e0562a44e5 Add MSF_DIRECTIONLIGHTING, forces directional lighting on, even indoors
UDMF flag: forcedirectionallighting
2023-08-11 01:42:48 -07:00
James R
39f46a0f20 Replace music handling
(This commit does not compile. Sound test and tunes
command code needs to be ported after this.)

This is a big one. Here's the rundown:

The old music system was very direct, much of the time
just a proxy to the real sound API in i_sound.h.

You could change the music on command, but there wasn't
a consistent way to prevent some music from playing over
others. P_RestoreMusic is one example of needing to
address this problem. The jingles system was intended as
another solution. Furthermore, sound test (Stereo) has its
own needs.

I am removing all of that. Music handling in general is
now a very deliberate system, kind of similar to jingles.

In the new system, "tunes" are registered. The tune stores
info such as whether it should loop or fade out. Most of
the configuration is intended to be initialized only ONCE.
Tunes can be mapped to an actual music lump. They can be
remapped at any time too.

Tunes are also configured with a priority number. This
determines which tune is heard, if multiple are supposed
to be playing at a time. You can even tell a tune how long
it should play, so it's unnecessary to track this with
bespoke timers.
2023-08-06 17:31:45 -07:00
Sal
42c36126b5 Merge branch 'directional-lighting-flag' into 'master'
Directional lighting flag

See merge request KartKrew/Kart!1356
2023-08-02 07:14:29 +00:00
Oni
a18982dc55 Merge branch 'splatbooster' into 'dashrings'
Hardcode MT_SNEAKERPANEL & MT_SNEAKERPANELSPAWNER

See merge request KartKrew/Kart!1349
2023-07-29 18:28:48 +00:00
Lach
fd8ba4236d Hardcode MT_SNEAKERPANELSPAWNER & adjust FF_GLOBALANIM behaviour 2023-07-29 17:51:25 +10:00
VelocitOni
19fa5c09db Merge branch 'master' into directional-lighting-flag 2023-07-29 02:24:12 -04:00
toaster
16e036a0bd Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into dashrings 2023-07-28 23:12:06 +01:00
James R
49e7357704 Add MSF_FLATLIGHTING 2023-07-27 17:49:26 -07:00
James R
9a262a308c Add missing flags to MSF_LIST 2023-07-27 17:47:59 -07:00
toaster
f040523b19 Implement the Sunbeam Palm decoration
- Randomised tilt
- Randomised leaf angles
- Technically specifiable number of leaves, but the default of 5 is sane enough
2023-07-25 18:01:07 +01:00
Oni
b82392dee6 Merge branch 'more-conversions' into 'master'
More UDMF conversions

See merge request KartKrew/Kart!1336
2023-07-23 17:24:17 +00:00
Lach
2d7ae88586 Hardcode MT_BOOSTPAD as MT_SNEAKERPANEL 2023-07-21 19:19:28 +10:00
Lach
ed76ca72fa Merge branch 'dashrings' into splatbooster 2023-07-20 19:22:30 +10:00
Lach
bb5070afb0 Merge remote-tracking branch 'origin/master' into dashrings 2023-07-20 19:04:42 +10:00
Lach
476d53d305 WIP: Hardcode MT_BOOSTPAD 2023-07-20 19:02:13 +10:00
Lach
a21e509a94 Hardcode MT_DASHRING & MT_RAINBOWDASHRING 2023-07-19 21:47:41 +10:00
toaster
a812ef8809 DMG_WHUMBLE
There are two differences between Whumble and Stumble.
- Stumble cannot be combo'd on upwards momentum, while whumble can. (Resolves #522)
- Whumble takes bumpers, while stumble does not.
    - Removes the MT_INSTAWHIP hack.
2023-07-18 17:39:17 +01:00
toaster
2e395c8b0f Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into more-conversions 2023-07-18 10:52:09 +01:00
Oni
a59896ef88 Merge branch 'string-clenups' into 'master'
String Clenups[sic]

See merge request KartKrew/Kart!1330
2023-07-16 08:50:22 +00:00
Oni
28748725fe Merge branch 'initializing-instawhip-reject-frames' into 'master'
Initializing the instawhip reject frames

See merge request KartKrew/Kart!1334
2023-07-16 08:28:04 +00:00
VelocitOni
6f31a6d4a8 Initializing the instawhip reject frames
Setting it up to save the future coder headache
2023-07-16 03:31:03 -04:00
VelocitOni
7aec2b0732 10th frame of hitsparks added
Added biggest frame of hitsparks, only 1 to go now.
2023-07-16 02:27:25 -04:00
toaster
36e0a23c09 Remove console script support from maps
The linedef's behaviour was broken horribly by long map names, and it's not worth the effort to fix it for the following reasons.
- It was considered a security vulnerability to have free access to the console when it was written.
- The game literally had a cvar to disable running console scripts. That's "I am willingly distributing ActiveX Word Documents in 2023" levels of foolhardery.
- Anything GOOD it can do, both Lua and ACS can do better.
2023-07-12 16:32:23 +01:00
toaster
a536f884ce V_ALLOWLOWERCASE --> V_FORCEUPPERCASE
Content of commit was originally written by Sal, but as a monolithic commit. The author of this commit is chunking it up for easier review.

Simple inversion on the face of things, but with a long tail of consequences, including 19 changed files.

Forced uppercase has been applied in a handful of locations where it was aesthetically imperative. Most menus will follow in another commit, so that that may be reverted if we change the default menu font.
2023-07-12 09:00:29 +01:00
Lach
64511e82c2 Merge remote-tracking branch 'origin/master' into symbol-signs 2023-07-11 20:55:44 +10:00
VelocitOni
b1054f486e Added level 8 hitsparks
Added level 8 hitsparks, 2 more to go. Gonna take MR out of draft though and do the other 2 later.
2023-07-03 06:15:03 -04:00
VelocitOni
25c0ff738c Added stages 4, 5, and 6 of hitsparks, maxhitlag 30
Now the amount of hitsparks is 7, need to do 3 more.
2023-07-01 20:48:20 -04:00
VelocitOni
8c53e56f3b Set up the states for stages 1-3
Just got them ready for putting in :cantfuckingtakeit: why do you have to touch so many fucking spots for a sprite???
2023-06-30 23:04:34 -07:00
Sally Coolatta
8c273039ab Add first pass at hitlag EFX
Only 9-tic animation is here currently, so hitlag is forced to 9 tics for testing.
2023-06-30 23:04:33 -07:00
SteelT
06acc1c07f Spawn powerup orb on death
Spawns random powerup
2023-06-29 22:22:00 -07:00