Commit graph

17146 commits

Author SHA1 Message Date
toaster
2ec943a214 Several changes to respawning and race start.
* Becoming a spectator is now instant, and leaves no bumpable corpse behind.
* Players will now FAULT if they:
    * change from a spectator into a player after the initial camera turnaround but before the end of POSITION.
    * touch an instant kill FOF or get crushed during POSITION.
    * become a spectator during POSITION. (I might change this later, seems overkill)
* If you respawn during POSITION, the jingle will not restart from the beginning.
* Change the FAULT animation to match spinout/currents.
* Clean up some of the spawning code to not place spectators on the ground.
2021-02-17 21:48:09 +00:00
toaster
7fb44bdb02 Tweakmaps!
Literally identical to Encore remapping, but *only applied when Encore mode is OFF*. Long-requested by Oni, and allows you to reuse textures and skies from other stages without having to duplicate them in different colours.
2021-02-17 10:21:58 +00:00
Sal
1858811fbc Merge branch 'opengl-encore-screeninvert' into 'master'
Invert the screen for encore circle transition in OpenGL

See merge request KartKrew/Kart!390
2021-02-16 20:04:26 -05:00
James R
a3c72c0158 Speed up the cycle if typing quickly 2021-02-16 14:50:00 -08:00
James R
62ca621827 Handle typing dot y offset in lump
One less thing to do in the code.
2021-02-16 13:03:36 -08:00
James R
34744b03b1 Nevermind the part about making the first dot end sooner, might be a bird moment 2021-02-16 12:08:47 -08:00
James R
46e4d5c8ee Add typing_timer and typing_duration to netsave 2021-02-16 11:03:19 -08:00
James R
8f9d9d783b Adjust dot timing to look a bit nicer
* The cycle always ends on two dots.
* The second dot gets drawn slightly sooner after a wrap.
2021-02-16 10:59:36 -08:00
James R
196d310052 Sacrifice fun for readability :( 2021-02-16 10:48:24 -08:00
Sryder
0d43c3e3ad Invert the screen for encore circle transition in OpenGL 2021-02-16 18:26:45 +00:00
James R
56dc373f76 n 2021-02-16 10:17:00 -08:00
James R
dd5223f4d7 Draw an icon above players when they are typing in chat or console
A little speech bubble is drawn, with dots cycling as they type.
No typing = no dots.
2021-02-16 09:24:22 -08:00
toaster
4efd1fdc8c minor typo 2021-02-16 17:16:22 +00:00
toaster
ac0e291db6 Fixed Change Sky linedef type crashing the game.
It was changed during v2 indev to operate off textures supplied rather than offsets. Unfortunately, she didn't bank on the 2.2 merge making it so that only linedefs of specific types would generate the necessary `->text` string from their texture fields. This branch corrects that issue, along with a bonus null-avoidance in P_SetupLevelSky just in case someone messes up the source linedef.
2021-02-16 17:08:49 +00:00
James R
3ac803be76 Merge branch 'mirrorfixes' into 'master'
Mirror fixes

See merge request KartKrew/Kart!385
2021-02-16 11:33:13 -05:00
James R
465bc55219 Merge branch 'caltropcalstop' into 'master'
Caltrop calstop (resolves #114)

Closes #114

See merge request KartKrew/Kart!381
2021-02-16 11:31:51 -05:00
toaster
4052e01f4a Introduce a sequence of macros to reduce the reliance of Colormap-related code (especially but not limited to Encore mode) on magic numbers. 2021-02-16 14:34:00 +00:00
James R
49bbdd537b Move the debt spike fuse initialization from P_ZMovement to P_MobjThinker
slopes + upward momentum = no upward momentum haha
2021-02-16 04:43:20 -08:00
James R
81d162d19c Add some helper functions for objects in reverse gravity 2021-02-16 04:42:27 -08:00
James R
0cf41dade0 Improve P_SpawnMobjFromMobj by factoring the scale from P_SpawnMobj in
This will copy the parent object's scale to the child, but scale it by the
child's original scale relative to the map scale. Also uses the child's actual
height, instead of the mobjinfo version. Might be useful if either the scale
or height was changed in P_SpawnMobj. Say, from a Lua hook.
2021-02-16 03:55:37 -08:00
James R
b77a67c085 Fix caltrop burst in reverse gravity; condense function
I'm not sure how the rings were working though.
2021-02-16 03:54:09 -08:00
James R
9fae8dbb41 Don't respawn on the finish line waypoint
This causes you to respawn at the waypoint before the finish line waypoint,
which I think looks a bit nicer.
2021-02-15 23:17:55 -08:00
James R
130e1fc4f9 Windows??? 2021-02-15 23:12:30 -08:00
James R
82718216cc Respawn slightly before a waypoint, in the direction you came from, if the waypoint is exactly on a line
See notably the finish line. Basically respawning exactly on a line can let you
cross it twice, if you crossed it before respawning, or NOT cross it, depending
on which direction you drive after landing. So this just respawns very slightly
before the line so you can cross (or not cross) it normally.
2021-02-15 23:01:13 -08:00
toaster
f40836dcec Fix skies not being Encore-remapped (only affected software :regret:) 2021-02-15 21:55:40 +00:00
toaster
a597d9b463 Fixed a too-small memory allocation for Encore remaps, removing all memory-related crashes in Software. 2021-02-15 16:37:37 +00:00
toaster
8a4542a5ef Reintroduce the mirroring aspect of Encore in OpenGL. I'm not familiar enough with the renderer to recreate the rest of the changes at current, but this is the most significant regression. 2021-02-15 12:26:22 +00:00
toaster
a210049839 Attempt to calculate postimg during chasecam hitlag - otherwise encore mode will temporarily flip back and it'll be confusing. 2021-02-15 11:43:45 +00:00
James R
4f96fead3a Search entire map, not just waypoint's sector, for finish line 2021-02-15 01:46:29 -08:00
James R
29d9bafb9e Snap finish line waypoints to the nearest point of the finish line
Finish line waypoints must be exactly on the finish line to avoid erroneous
finish line distance from crossing the waypoint before/after the line. This
is only a problem in circuit maps and on laps before the last, due to the
multiplied circuit length.
2021-02-14 23:04:17 -08:00
James R
b4eefec81d Fix angle issue with finish line waypoint hack
The other hack which adds distance is also gone. It's not needed for
...reasons. All this was Sal's massive brain.
2021-02-14 22:56:36 -08:00
James R
b672ffa8ba Check previously considered best waypoint when pathfinding to solve overlapping waypoints
Previously could skip the waypoint that was actually closer and assume the
further is the best.
2021-02-14 22:55:03 -08:00
Sal
e11f4ed167 Merge branch 'purplepussyfooting' into 'master'
Resolves #87 after literally 7 months

Closes #87

See merge request KartKrew/Kart!382
2021-02-14 21:18:28 -05:00
Sal
ea2223abe6 Merge branch 'once-in-battle' into 'master'
Don't disable linedef executors other than 308 outside of Race

See merge request KartKrew/Kart!380
2021-02-14 21:13:51 -05:00
Sal
8cb676b0a1 Merge branch 'bigger-signpost' into 'master'
Beeg Large Signpost

See merge request KartKrew/Kart!383
2021-02-14 21:13:10 -05:00
toaster
f290a6c44d Resolves #87 after literally 7 months 2021-02-14 23:07:26 +00:00
toaster
b66965185a Caltrop calstop (resolves #114).
If a ring isn't lost from the counter, don't drop a caltrop.

This is done by changing the function signature of P_GivePlayerRings to return the number of rings it has successfully given (or taken away) (which can differ from the rings provided to it). This change has been done for Lua as well.

Super Ring absorbtion now uses this system too, so you only need to change one location to modify the maximum and minimum number of rings a player can have (as far as I am aware).
2021-02-14 21:48:55 +00:00
James R
d6ea8549d2 Scale end sign 1.5x 2021-02-13 21:38:22 -08:00
James R
a9a1779e19 Only disable 308 outside of Race 2021-02-13 20:10:12 -08:00
Sal
4993d2ce39 Merge branch 'tracking-fix' into 'master'
Replace the tracking function with Nev3r's version

See merge request KartKrew/Kart!372
2021-02-13 20:55:50 -05:00
Sally Coolatta
c5fa63c0fa Invert the value of cv_fov
After a little more testing, it was reversed for specifically the cvar.
2021-02-13 10:56:40 -05:00
Sally Coolatta
192d0b6410 I_Assert for result/point != NULL 2021-02-13 10:37:25 -05:00
Sal
7f944ce467 Merge branch 'waypoints-disable' into 'master'
Linedef executor 499: Enable/Disable Waypoints in Tagged Sector

See merge request KartKrew/Kart!357
2021-02-13 08:41:32 -05:00
Sal
2dfe9cc9eb Merge branch 'doubly-scaled-floating-rings' into 'master'
Fix rings not floating high enough in mobjscaled maps

See merge request KartKrew/Kart!378
2021-02-13 08:41:16 -05:00
Sal
4da5ed8999 Merge branch 'invertfix' into 'master'
Fixed the Encore mode invert wipe.

See merge request KartKrew/Kart!379
2021-02-13 08:40:15 -05:00
toaster
b91a9928c6 Fixed the Encore mode invert wipe.
Explanation: NearestColor takes UINT8 inputs, but is being provided a number in the range of 1 to 256(!!) - which means very dark channels were looping back around to 0.

This error might exist in public branches too, because I don't think Encore's wipes would have been changed internally without us knowing.
2021-02-13 12:04:57 +00:00
Sally Coolatta
ecb4111bed Merge branch 'master' into tracking-fix 2021-02-12 20:28:57 -05:00
Sally Coolatta
c4850c1990 Merge branch 'master' into oop-starttime 2021-02-12 20:28:45 -05:00
Sally Coolatta
1849f70359 Merge branch 'master' into waypoints-disable 2021-02-12 20:28:16 -05:00
Sally Coolatta
b91ceddcbf Sync numbulbs
I don't think this has ever caused issues (numbulbs is just for HUD), but the drawn bulbs on start up might as well be synched if the starttime needs to be resynched too.
2021-02-12 20:27:14 -05:00