Commit graph

25024 commits

Author SHA1 Message Date
James R.
f1c24d0eeb Merge branch 'loop-camera' into 'master'
Loop camera + camera turning interpolation fix

See merge request KartKrew/Kart!1557
2023-11-12 02:28:52 +00:00
Eidolon
af59e95634 Add vid_wait to options, adjust texts 2023-11-11 10:38:21 -06:00
Eidolon
cdde3cca38 Add handler for vid_wait
Allows vid_wait to toggle without changing modes
2023-11-11 09:56:03 -06:00
James R
61709d36a8 Add basic profiling for Lua hooks (except HUD hooks)
- Add lua_profile cheat: calculate average time spent in
  hooks over a period
- Show hook times in a sorted table, along with lump name,
  script line number and hook type
- Show cumulative time spent in game logic hooks and
  percentage of overhead to game logic
2023-11-11 02:27:39 -08:00
James R
4ec1e98b16 lua_hooklib.c: refactor HUD hook call 2023-11-11 02:27:06 -08:00
AJ Martinez
4997c4c0ed Add K_IsPlayingDisplayPlayer for HUD sounds 2023-11-10 17:28:54 -07:00
AJ Martinez
e3fe3ed54a Handle sound falloff for exiting player sounds 2023-11-10 17:08:39 -07:00
AJ Martinez
6cbfc5aead Merge branch 'postrace-cleanup' into 'master'
Don't do gameplay controller vibration after finishing

See merge request KartKrew/Kart!1587
2023-11-10 23:49:31 +00:00
AJ Martinez
ff131335d4 Don't force player sounds to full volume when exiting 2023-11-10 16:47:52 -07:00
AJ Martinez
90902997ba Unset RF_DONTDRAW during controllable non-flashing states 2023-11-10 16:33:50 -07:00
AJ Martinez
77af33d182 More idiomatic unused pflags 2023-11-10 02:58:05 -07:00
James R
7861d51a7f P_TryMove: sweep collided lines to find nearest normal 2023-11-10 00:03:06 -08:00
James R
5a62a07e54 Add srb2::sweep, AABB line sweep algorithms 2023-11-10 00:03:06 -08:00
James R
37f2384229 Add srb2::math, fixed-point, vector, line and slope formula classes
- srb2::math::Fixed
  - Operator overloads for FixedMul and FixedDiv
  - Implicit conversion between fixed_t, Fixed and
    floating-point types
- srb2::math::Vec2
  - Template to any type
  - Operator overloads for arithmetic operations
  - Convertible between different types
- srb2::math::LineSegment
  - Template to any type
  - Holds two Vec2 instances
  - Sorting methods and vertical/horizontal test
- srb2::math::LineEquation
  - Slope formula from LineSegment
  - y method to find y from x
  - Intersect algorithm
  - Fixed-point specialization to avoid overflows
- srb2::math::LineEquationX
  - Inherits LineEquation
  - x method to find x from y
2023-11-10 00:03:06 -08:00
AJ Martinez
3313935630 Don't allow respawn lap reset to increase lap 2023-11-09 20:27:18 -07:00
AJ Martinez
81e7ec6aa3 itemflag tyop 2023-11-09 17:30:19 -07:00
AJ Martinez
0b51bc91f9 Fix comment referring to itemflags by wrong name 2023-11-09 17:29:26 -07:00
AJ Martinez
06bc06869c Lite Steer profile option, itemstate pflags -> player.itemflags 2023-11-09 17:29:26 -07:00
Oni
6686215330 Merge branch 'hanicef-mobj-cache' into 'master'
Cache and reuse removed mobjs when spawning mobjs

See merge request KartKrew/Kart!1607
2023-11-09 12:29:53 +00:00
Oni
cd06b34cd1 Merge branch 'ballhog-limited-tapfire' into 'master'
Easier ballhog tapfire

See merge request KartKrew/Kart!1594
2023-11-09 12:28:54 +00:00
AJ Martinez
19edcbe9c2 WIP: Trickpanel crack IV 2023-11-09 02:02:41 -07:00
AJ Martinez
c11394ce83 WIP: Trick panel decrackening 2023-11-09 00:45:50 -07:00
AJ Martinez
954bd85139 WIP: Trickpanel crack experiments 2023-11-08 01:52:07 -07:00
toaster
239388a1fa Add TRICKSTATE_ constants
Replaces the magic numpers <-- typo I have left in for posterity
2023-11-07 23:06:50 +00:00
toaster
6f22c5261e MT_POGOSPRING: Guarantee spawn of catholocism 2023-11-07 22:53:52 +00:00
toaster
2e760eff43 Merge branch 'trick-control-lock' of https://git.do.srb2.org/KartKrew/Kart into catholic-vfx
# Conflicts:
#	src/k_kart.c
2023-11-07 22:24:53 +00:00
toaster
c3d34e9377 Back Trick effect
A rising tornado swirling the opposite direction.
Sprites do not currently exist, but it's a one-line emergency-break-glass change if there's any danger of not shopping with them
2023-11-07 20:24:01 +00:00
toaster
c1f7546f99 Sneaker/invincibility: Trick Panel launch multiplier is 1.5x, nerfed from 2x 2023-11-07 20:10:01 +00:00
toaster
73f67f4c94 MT_MAGICIANBOX, MT_SIDETRICK: Fix some more interp issues
Also guarantees that MT_SIDETRICK will be visible for the first frame of the trick, since it was invisible for the entire duration of catholocism.
2023-11-07 14:53:03 +00:00
AJ Martinez
49fb2fe6b6 WIP: Trick Panel crack 2023-11-07 03:46:11 -07:00
toaster
af24fcd4bd Don't draw catholocism for other players
Your relationship with christ is personal
2023-11-06 22:18:27 +00:00
toaster
0016e8b9ec Boost the Trick Panel boost gotten from sneakers/invinc to 2* 2023-11-06 22:17:53 +00:00
toaster
48d93ec9f6 Side Trick effect
- Copiously reuses from MT_MAGICIANBOX, gomen
- Also set the lookback frame, for extra toaster-swag zaza
    - Because this feature is so old it predates lookback!?
2023-11-06 21:54:40 +00:00
toaster
8885a335e7 MT_MAGICIANBOX: Support gravflip 2023-11-06 21:49:28 +00:00
toaster
aa0b626467 Trick catholic swipe needs to have all layers be fully visible, even at the peak of the arc 2023-11-06 21:47:16 +00:00
toaster
b417c0655e Map command: If you provide -force and the level has no associated gametype, safely assume Race as the default instead of requiring a -gt race addition 2023-11-06 21:44:55 +00:00
toaster
4ecc378bb6 Make weakest Trick Indicator colour white instead of grey
More opaque, due to additive behaviour
2023-11-06 19:27:24 +00:00
toaster
f8a6449033 Further Trick Indicator refinement
- Abstract K_TrickCatholocismBlast into its own function
    - Spawn one at an askance angle when you fail a trick for any reason
- Indicator is slightly closer to the player
- Smaller indicator base scale
- Indicator becomes more translucent the larger it is
- Swipe is at 1.5 scale relative to the indicator
2023-11-06 19:22:21 +00:00
toaster
e412b6ddd8 Call K_trickPanelTimingVisual only once per tic, to prevent pie duplication 2023-11-06 19:12:26 +00:00
toaster
2f62c0ff6b P_SpawnGhostMobj: Also copy scalespeed 2023-11-06 15:00:38 +00:00
toaster
2ecfe2f50f K_DoPogoSpring: Don't set Trick state if Player is in pain 2023-11-06 14:55:28 +00:00
toaster
e06d961574 Further refinement to Trick Indicator behaviour
- Set colour in K_DoPogoSpring based on relevant vertical momentum
    - Similar but seperate colour list to Dash Rings
- Improve interp state handling when starting a Trick
- Don't set to S_INVISIBLE every non-tricking frame
- Don't follow the player's movement during the very end of a swipe animation
- Add a catholocism blast of the outer D-Pad ring while tricking
2023-11-06 14:54:46 +00:00
toaster
b051ff4741 P_SpawnGhostMobj: Set old_scale too 2023-11-06 14:48:23 +00:00
toaster
bbe2477331 Obj_RainbowDashRingSpawn: Fix copypaste error that could have resulted in out-of-bounds access 2023-11-06 14:47:54 +00:00
AJ Martinez
1b8531dcf1 WIP: Fix shield flip 2023-11-06 01:25:10 -07:00
toaster
5ffae81b08 Trick Indicator first pass
The author of this commit doesn't know what it's doing
2023-11-06 01:13:13 +00:00
toaster
ccbcd203dd Adjust PlayerPointerRemove macros + associated to check validity before removal 2023-11-06 01:11:29 +00:00
toaster
120b567ba2 K_DoPogoSpring: Handle player->trickpanel set directly 2023-11-06 01:09:06 +00:00
Oni
f66c438d9c Merge branch 'clear-pad-state' into 'master'
HACK: Lift all inputs when wipes execute (#635, #734)

See merge request KartKrew/Kart!1586
2023-11-05 21:54:22 +00:00
Oni
ef8c472a51 Merge branch 'failsafe-input-check' into 'master'
Failsafe fixes

See merge request KartKrew/Kart!1599
2023-11-05 21:53:57 +00:00