Commit graph

24799 commits

Author SHA1 Message Date
toaster
1adfc7f2a4 TRICKSTATE_FORWARD blast effect
Fun and simple papersprite buffoonery
Hey remember when the author of this commit thought papersprites would be a one-off side feature

Also fixes a potential invalid dereference when getting the color for MT_SIDETRICK
2023-11-12 17:34:28 +00:00
toaster
5cab2401b6 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into catholic-vfx 2023-11-12 16:24:47 +00:00
AJ Martinez
e20218a9d6 Trick Charge VFX WIP 2023-11-12 03:38:17 -07:00
James R.
aac583f2eb Merge branch 'gremlins-sweep-revelation' into 'master'
Line sweep to eliminate Gremlins II, also mitigate getting stuck inside slope enclosures

Closes #393

See merge request KartKrew/Kart!1610
2023-11-12 02:46:12 +00:00
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
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
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
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
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
Gustaf Alhäll
208601e38d Cache and reuse removed mobjs when spawning mobjs 2023-11-05 15:44:53 -06:00
Oni
a3b2dc11ec Merge branch 'frameskip-fixups' into 'master'
Measure frameskip timing before sleeping

See merge request KartKrew/Kart!1602
2023-11-05 21:00:57 +00:00
Eidolon
3f926d7c6e Merge branch 'gl2-instead' into 'master'
rhi: use GL 2.1 instead of GL Core

See merge request KartKrew/Kart!1596
2023-11-05 19:45:43 +00:00
Eidolon
ade0b7cf10 Merge branch 'virtual-keyboard-fix' into 'master'
Only toggle keyboardTyping when input key is valid

See merge request KartKrew/Kart!1604
2023-11-05 19:44:18 +00:00
Eidolon
c8e79ae031 Merge branch 'workaround-broadcast-port' into 'master'
Set broadcast socket ports to 5029

See merge request KartKrew/Kart!1603
2023-11-05 19:44:10 +00:00
Oni
3b04bde5b9 Merge branch 'will-it-blend' into 'master'
Will It Blend

See merge request KartKrew/Kart!1589
2023-11-05 18:45:51 +00:00
Oni
fc236fa310 Merge branch 'illegal-digital-maneuver' into 'master'
Diagonal-back for shallow digital turns

See merge request KartKrew/Kart!1600
2023-11-05 18:45:33 +00:00
toaster
182820ad62 Merge branch 'default-skincolor-pad-led-color' into 'master'
Use M_GetCvPlayerColor for pad LED color

See merge request KartKrew/Kart!1605
2023-11-05 18:25:53 +00:00
Eidolon
9cc3850c3f Use M_GetCvPlayerColor for pad LED color 2023-11-05 12:23:05 -06:00
Eidolon
518366d567 Only toggle keyboardTyping when input key is valid
Fixes unintended toggles to virtual keyboard
2023-11-05 11:45:07 -06:00