Commit graph

2601 commits

Author SHA1 Message Date
Sally Coolatta
0233c26386 Chengi's new position numbers 2022-11-17 21:11:01 -05:00
SteelT
701b345f39 Fix sprite clipping in OpenGL 2022-11-03 23:11:51 -04:00
SteelT
8dbac697ca Add backdrop for paper items
Capsules are unaffected as it has it's own object that shares the sprite of the items.
2022-11-03 22:07:09 -04:00
AJ Martinez
770378eea0 Ironman: move transform VFX into function for reuse 2022-11-03 03:38:56 -07:00
James R
58bb648b0a Merge branch 'udmf-cherrypick' into 'master'
Update our UDMF

Closes STJr/SRB2#862

See merge request KartKrew/Kart!727
2022-10-29 06:54:48 +00:00
James R
0978093a2b undefine K_KartItemOddsSpecial 2022-10-26 22:36:38 -07:00
toaster
59094f73fb Clean up K_TimerInit()
- Fix not being able to change timelimit in MP break the capsules
- Use more readable variable name (singleplayercontext --> domodeattack)
- Reset timelimitintics in K_TimerReset()
2022-10-16 14:23:21 +01:00
toaster
a7a2956b89 Add extra minimap icons
- Battle Capsules for Break The Targets, to improve conveyability
- No Contest players have a special X icon
Also fixes a few issues with minimap rendering
- obviously written before netsplits and bots
- mixing up array indices and loop iteration for local players
- mixing up SPB object and target
- old version of hyudoro with double time in Race
- using explicit gametype comparisons instead of gametype rules
- SPBs with hitlag disappeared from the minimap
2022-10-16 13:21:12 +01:00
toaster
a100987940 Completely prevent bots from utilising PF_WANTSTOJOIN 2022-10-15 16:51:16 +01:00
toaster
6c9c6eeaf8 Also tick (almost) all karthud array timers even during hitlag
Only exception is timers relating to ring usage, as that's intended to signify ring boost power (which is obviously paused during hitlag)
2022-10-15 16:49:51 +01:00
toaster
31bba30dcc No time limit in Capsule timeattack 2022-10-15 15:55:31 +01:00
toaster
e7f111c25a Fix the case where GP coop would cause no Capsules + possibly DUELs in eventmode
Also reduces some of the dead time before Break The Capsules begins by cutting out the majority of POSITION!! and hiding the one measly bulb that would otherwise appear
2022-10-15 14:57:35 +01:00
toaster
f281f47c6f Support alternate gameplay events during GP
- Implementation details:
    - grandprixinfo.eventmode is the reference point
    - All bots have spectator applied and removed at map start depending on eventmode, and I've done my best to guard against side effects of not removing them entirely
    - You shouldn't turn off grandprixinfo.gp when turning on things like specialStage.active or bossinfo.boss when pursuing eventmode behaviour
    - Probably needs to be integrated into XD_MAP for any future netplay support, is currently disabled.
    - You technically don't have to assign a Capsules map to be the bonus and a Special Stage to be the special. A Capsules map can be assigned to a Special Stage too, and a Boss can be assigned to either of them.
    - Special Stages are still just as incomplete as they were before.
- Break the Capsules has special behaviour.
   - Timelimit starts at 20 seconds.
   - Earn 10 seconds (plus a little extra cheaty time) every capsule you destroy.
   - WIN + extra life if you bust all the capsules, COOL if you get some but run out of time, LOSE if you lose your bumper or run out of time without breaking a single capsule.
   - Supposed to also give you rings, but ran into a LOT of difficulty with this and didn't want to commit half-baked stuff, so it'll be a later project.
Also:
- Fix a long standing bug where totalring was reset between maps, preventing the sum from adding up across GP rounds and depriving you of extra lives you were owed.
- Fix an issue where Break the Capsules record attack was KARTSPEED_HARD.
- Send timelimitintics in savegames, since it's handled seperately now.
2022-10-14 18:34:43 +01:00
toaster
c2ef5a32e9 Seperate FINISH text from khud_cardanimation
- Fixes an issue where the card animation and the FINISH animation operating on two different timers, but using the same variable, would intefere with each other
- Also makes khud_fault use the same drawer, so it can benefit from interpolation
2022-10-13 18:14:48 +01:00
toaster
44eb099cfb Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into special-stages 2022-10-11 15:44:32 +01:00
Sally Coolatta
2ac062e5b3 Merge branch 'master' into udmf-cherrypick 2022-10-10 19:34:11 -04:00
toaster
d364e5a5f6 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into rename-kart-commands
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
2022-10-10 17:34:28 +01:00
Sally Coolatta
0614a8739c Duel items use args 2022-10-10 10:48:44 -04:00
MascaraSnake
3b971835ee Add Lua backwards compatibility for FOF flags 2022-10-09 01:56:50 -04:00
Nev3r
5c9599f0a9 "UDMF: The whole thing" merged
See merge request STJr/SRB2!1714

Barely any RR features reimplemented
2022-10-09 01:13:37 -04:00
James R
641d3c89b9 Merge branch 'spb-debug' into 'master'
Restore SPB force-seek define as 'spbtest' cvar

See merge request KartKrew/Kart!725
2022-10-03 02:14:41 +00:00
James R
f3545a6e6f Merge remote-tracking branch 'origin/duel-stuff' 2022-10-02 19:10:22 -07:00
AJ Martinez
224bd9baf3 Don't DEVELOP guard spbtest 2022-10-02 04:12:03 -07:00
AJ Martinez
47cdce239a Only register spbtest in DEVELOP 2022-10-01 22:26:17 -07:00
AJ Martinez
6a7c5050ad Restore SPB force-seek define as 'spbtest' cvar 2022-10-01 21:46:26 -07:00
Sally Coolatta
7b7cbbbf26 Fix oddities with duel items not always spawning 2022-10-01 22:58:58 -04:00
Sally Coolatta
d19924d96d Merge branch 'master' into duel-stuff 2022-10-01 21:46:02 -04:00
Sally Coolatta
ef9975709c Actually add proper item table 2022-10-01 21:36:17 -04:00
Sally Coolatta
4ee46c74d7 Basic start on Special Stages 2022-10-01 21:32:55 -04:00
James R
f891535065 Remove kartdebugcheckpoint, merge into debugwaypoints 2022-10-01 17:44:07 -07:00
James R
08f9628e6c Remove kartminimap, kartcheck, kartcomeback cvars 2022-10-01 17:04:48 -07:00
James R
05dd7d7871 Merge remote-tracking branch 'origin/master' into HEAD 2022-10-01 14:45:39 -07:00
James R
f3668fbd7c Merge branch 'top-final' 2022-09-29 10:52:45 -07:00
James R
8529e8b95e Make Garden Top backwards throw leap consistent across player scales 2022-09-29 10:02:28 -07:00
James R
56a5432f41 Adjust most player physics for Garden Top
- Auto accel
- 800% acceleration
- 110% top speed
- Infinite tether like Lightning Shield

- Resists going upward on slopes
- Less friction

- Can always turn your sprite
- Turning speed does not get weaker at high speeds
- Turning speed is normal underwater
- Keeps moving in momentum direction, regardless of how
you turn
- Releasing a drift redirects all your momentum in that
direction

- Floats over bananas, damage sectors and offroad
- No stair janking while floating

- Hold drift for extra gravity. Not only does this fast
fall (this stacks with true fast falling), it builds
momentum down slopes too!

- Parries Big Players (Grow), Invincibility, Flame Shield
and, of course, other Tops -- all except if you're
grinding
- Wipes out anyone you touch
- Infinite weight like Bubble Shield

- Does not water skip
- Does not water run while holding drift
2022-09-28 02:01:37 -07:00
James R
5063a4acf1 The Garden Top
This is all the visual effects and item logic of the Top
minus (almost all [1]) physics adjustments when a player is
riding one.

While on a Top:

- Otherwordly humming while floating

- Cannot drift [1]. Instead, holding drift begins grinding
the Top into the ground -- sparks fly out
- Sprite tilts left and right as you turn
- No wheel screech when turning too far
- Speed lines while holding drift
- Tripwire Boost effect scales to cover you AND the Top

- One hit and you lose it

- Throwing forward, getting hit or just losing it because
you were in first place for too long: the Top flies out
from under you and begins snaking like crazy
- Throwing backward also makes the Top fly out from under
you but it also thrusts you forward. The Top dies
instantly so it's not dangerous ;-)

- If you're in first for too long, it begins vibrating
- If you tumble, it dances across your entire screen

A loose top will tumble anyone it hits.
2022-09-28 02:01:37 -07:00
James R
aba30a1c16 Rebalance item odds around Garden Top 2022-09-28 02:01:35 -07:00
James R
77bc259986 Separate water skipping condition into K_WaterSkip 2022-09-28 00:07:26 -07:00
James R
7b301452cc Add Garden Top related states
MT_GARDENTOP
S_GARDENTOP
KITEM_GARDENTOP
KSHIELD_TOP
2022-09-28 00:07:25 -07:00
James R
d66b82605b Cleanup order and indentation of item definitions 2022-09-28 00:07:00 -07:00
Sally Coolatta
f9c4f66931 Add duel bomb objects
Basically a landmine, but strafes back and forth. Currently uses SPB sprites, IDK if we'll end up replacing it later.
2022-09-28 01:47:56 -04:00
Sally Coolatta
d7be3d3aca Add Duel objects
- Banana, Eggman Items, Proxi Mine, Land Mine, Hyudoro, and Drop Targets are now placeable in maps.
- By default, will only appear when in 1v1s. (Extra flag can be checked to enable spawning in all modes.)
- Most of these objects will need tweaks to account for being placeable now.
2022-09-27 22:43:45 -04:00
Sally Coolatta
de506b8ff1 Merge branch 'master' into water-skip-conditions 2022-09-27 19:21:20 -04:00
Sally Coolatta
e34ec94721 Smoothly adjust underwater turn nerf
The actual issue was that turning was nerfed by a flat x0.5 when strafing was enabled, but the strafe amount was speed based. This meant that you got way less turning at low speed, and no strafe to make up for it.
2022-09-27 18:14:44 -04:00
Sally Coolatta
85499045f9 Merge branch 'master' into cheats-streamline 2022-09-27 15:41:17 -04:00
Sally Coolatta
afc2a0dcdc Properly spawn effects for the other objects 2022-09-27 13:09:30 -04:00
Sally Coolatta
841bcf3619 Allow non-players to water skip/run
Water skipping is enabled for Orbinaut, Jawz, and Ballhog currently. Jawz can water run, as long as their target is on/above the plane they're at -- once their target goes into the water, they'll start skipping.
2022-09-27 12:31:33 -04:00
Sally Coolatta
81926947d5 Merge branch 'master' into water-skip-conditions 2022-09-27 12:02:34 -04:00
Sally Coolatta
884f710269 Add minimum strafe to water physics 2022-09-27 11:43:55 -04:00
Sally Coolatta
f6b62b6ac6 Clean up water skip conditions
- Use Digital Empire's water running conditions (fully prevents ever being able to water-run on water that isn't level)
- Code cleanup of other parts of this code
- Made the threshold for water skipping much more strict
- Fixed water skip being scaled to player scale instead of map scale
- Make water run / tripwire easier for rubberbanding bots
2022-09-27 11:07:25 -04:00