Commit graph

2490 commits

Author SHA1 Message Date
AJ Martinez
f36e699398 Instawhip reject vfx first pass 2023-10-13 17:09:25 -07:00
toaster
b2bbde290b Add shadow to MT_KURAGEN
Hazard conveyance
2023-10-07 22:06:49 +01:00
Lat
dc6bb1bfa9 solve conflicts and update to master 2023-10-07 11:15:47 +02:00
James R.
bcd4963f2e Always set starting bumpers in P_SpawnPlayer 2023-10-03 21:28:33 -07:00
Oni
f195b9742a Merge branch 'hardcode-chaos-chute' into 'master'
Hardcode Chaos Chute objects

See merge request KartKrew/Kart!1526
2023-10-04 03:50:56 +00:00
James R
6b18563549 Merge branch 'precip-height-random-crash' into 'master'
Conditionally randomize precip height

Closes #528

See merge request KartKrew/Kart!1536
2023-10-04 00:12:10 +00:00
Eidolon
f13871ddbf Conditionally randomize precip height 2023-10-03 19:07:25 -05:00
Oni
bcc8fc6438 Merge branch 'freeze' into 'master'
Mobj thinker freeze condition rework

Closes #690

See merge request KartKrew/Kart!1505
2023-10-02 05:42:19 +00:00
Oni
1387fa81a8 Merge branch 'ballz-activation' into 'master'
Ball Switch

See merge request KartKrew/Kart!1534
2023-10-02 05:41:46 +00:00
Lach
7cd059dfb3 Merge remote-tracking branch 'origin/master' into hardcode-chaos-chute 2023-09-29 22:41:31 +10:00
Lach
2bdc055139 Scale Chaos Chute objects 2023-09-29 20:27:13 +10:00
toaster
25b4eb4f13 Merge branch 'linedef-80-respawn' into 'master'
Respawn things at Z position offset by linedef 80

Closes #542

See merge request KartKrew/Kart!1528
2023-09-26 22:07:46 +00:00
toaster
4a2f3745f0 P_MobjRegularThink for new objects: Return early if certain objects that self-delete do so on this frame 2023-09-26 22:53:44 +01:00
toaster
a68a0b0135 All other modified files: Trailing whitespace cleanup 2023-09-26 22:51:58 +01:00
toaster
bee1cb9a04 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into rideroid-hardcode
# Conflicts:
#	src/sounds.c
2023-09-26 21:39:19 +01:00
Sally Coolatta
643cf46b61 Ball switch 2023-09-26 08:37:10 -04:00
James R.
c743af4d77 P_SpawnMapThing, P_RaiseTaggedThingsToFakeFloor: save raised Z position for respawning later
P_RespawnSpecials just calls P_SpawnMapThing again, so
this works.
2023-09-24 15:36:46 -07:00
Lat
a710237fde Hardcode the remainder of the WPZ objects 2023-09-23 17:05:21 +02:00
Sally Coolatta
c6897688d0 Delay ring burst after damage 2023-09-23 10:42:00 -04:00
Lat
df31c65ebb Hardcode these godforsaken turbines 2023-09-23 16:32:32 +02:00
Lat
12b80b392b hardcode ring vaccums 2023-09-23 11:26:56 +02:00
Lat
ca90d27e30 Hardcode DLZ Hover thingies + rocket fixes 2023-09-23 11:00:00 +02:00
Lat
a565d923c0 Hardcode these cursed seasaws 2023-09-22 18:14:38 +02:00
Lat
fb91a9a0f7 DLZ rocket hardcode 2023-09-21 15:42:10 +02:00
Lat
5a6ecd051a Fix conflict in cmakelist w/ master merge 2023-09-20 17:17:33 +02:00
Lat
42cbb93ca2 Hardcode Leaf Storm Eggman balls 2023-09-20 16:33:07 +02:00
toaster
6ec7456cd2 VC requests for L Sign
- Permit KARTSPEED_NORMAL, so it's not TOO obnoxious
- However, check for whether you're fighting a sufficient opponent
    - A human player is considered sufficient, because if you've dominated another it's fun to style on them
    - If all other players are bots, make sure they're at least half the difficulty range
2023-09-19 23:38:48 +01:00
toaster
9574d7a040 Further revision
- Only show SPR2_SIGL for SF_IRONMAN. You've gotta work for that stuff!
- Instead of duplicating some of the behaviour the tally code does manually, simply use tally state directly
2023-09-19 22:40:13 +01:00
toaster
e438ef0a97 SPR2_SIGL
If you achieve a perfect race (OK hand for every lap) on Hard speed (or better), use a special taunting signpost frame.
2023-09-19 22:40:12 +01:00
toaster
5b7b57e580 MT_SIGN: Improve player property grabbing
Instead of using the skin of the object and the color of the player, use a direct player reference to get both skin and color from.
Now correctly tracks Heavy Magicians at all times, not just after exiting.
2023-09-19 22:40:12 +01:00
James R.
37ce3dba27 E-Brake ring: visual consistency and polish
- Always spawns on the ground below the player
- If falling fast enough, spawn afterimages around the
  player like "falling through hoops"
- Also fix scaling to Shrink/Grow
2023-09-18 11:42:52 -07:00
Lat
aef958d7ed Rideroid: first pass 2023-09-18 16:54:16 +02:00
Sally Coolatta
c9291b0f61 Mobj thinker freeze condition rework
- There's a freeze cheat bool to freeze everything except for players.
- There's a level freeze bool to freeze literally everything.
- There's a frozen bool on mobj_t to explicitly control freeze status on an object.
2023-09-18 03:24:58 -04:00
James R.
0a6fedc48a Hyudoro: carry item capsule back to player, use MT_EMERALD for collect animation
- Carry back item capsule, painted with the skincolor of
  the player who was stolen from
- Give player item by orbiting and shrinking into the
  player like an emerald
  - Lock player item box while animation plays, draw an
    empty item box on the HUD
  - At end of animation, burst item capsule to place item
    in player's hotbar
- Hyudoros can no longer stack items in the hotbar --
  consistent with item capsules
  - (If you have a Super Ring in your hotbar and Hyudoro
    is holding a Super Ring too, it will wait for you to
    use yours)

---

MT_ITEMCAPSULE changes:

- extravalue2 != 0: use this color on caps
- MF2_STRONGBOX: award items like the roulette
  - Super Ring is placed in the hotbar instead of awarding
    rings directly
  - SPB is placed in the hotbar instead of throwing it
    immediately
- DMG_INSTAKILL: don't respawn
2023-09-17 21:56:19 -07:00
James R.
c12a80ef91 MT_ITEMCAPSULE_PART: offset parts by MT_ITEMCAPSULE sprx/y/zoff 2023-09-17 21:56:18 -07:00
James R.
00ea7c62df MT_ITEMCAPSULE: optionally teleport to target, offset by target sprx/y/zoff 2023-09-17 21:56:17 -07:00
James R.
fac5abf69e MT_SHADOW: move code to objects/shadow.cpp; copy whiteshadow from followed object 2023-09-17 21:56:17 -07:00
James R.
72ef1d352b mobj_t: add shadowcolor member to change shadow palette index 2023-09-17 21:56:17 -07:00
toaster
9ba5a93407 Merge branch 'spraycans-2' into 'master'
Tutorial Spray Cans

Closes #669

See merge request KartKrew/Kart!1498
2023-09-17 13:17:41 +00:00
Oni
6ccaae4a0c Merge branch 'fix-inside-top-bug' into 'master'
Fix THAT ONE Garden Top bug, which is also a bug with Rocket Sneakers

Closes #610

See merge request KartKrew/Kart!1499
2023-09-17 05:22:48 +00:00
Oni
a0a1ef41e2 Merge branch 'fix-sealed-star-emerald-die' into 'master'
Fix UFO Catcher Emerald dying on death pits -- also a general fix to death pits

Closes #608

See merge request KartKrew/Kart!1497
2023-09-17 05:22:21 +00:00
toaster
467b5f831b Add GTR_CHECKPOINTS
- Prevents Checkpoint from spawning
- Prevents spawnpoint-handling code from occouring
2023-09-16 23:22:59 +01:00
James R
e83923a365 Checkpoints: add object configuration, collision, animations
This commit handles everything except actually respawning
the player at a checkpoint.

- Checkpoints are formed by two checkpoint things (2030):
  - thingarg0 - The ID for the checkpoint. Must be the
                same for these two things, and these two
                things only. ID cannot be 0.
  - angle - The direction the player is intended to face
            after respawning. Must be the same for both
            things.

- Each checkpoint thing is a starpost with a stick and an
  orb at the end.
- By default, the sticks are lowered to horizontal and
  face toward the opposite starpost.
- Rainbow tether sparkles form a field between the two
  starposts.
- When a player crosses between these two starposts, each
  spins in the direction that the player crossed. The
  sparkles also fly out in that direction.
- Over time the sticks pivot upward.
- When the starposts are done spinning, the sticks will be
  pointing straight upward.
- Orb at the end of the stick begins flashing when the
  starpost is done spinnning.

- Players may cross multiple checkpoints.
- When this happens, any previously activated checkpoint
  will have its stick lowered back to horizontal, and its
  orb will stop flashing.
2023-09-16 21:46:22 +01:00
James R
11fee625f5 P_MobjFlip, P_MobjWasRemoved: let mobj be const 2023-09-16 21:45:59 +01:00
toaster
e1a4f615b9 P_CheckDeathPitCollide: Use P_GetSpecialBottomZ/P_GetSpecialTopZ instead of floorz, ceilingz
Fixes a nasty ledge/FOF touch oversight
2023-09-16 21:05:14 +01:00
James R.
2fd9976102 MT_EMERALD: do not check death pit if MF_NOCLIPHEIGHT 2023-09-16 21:05:13 +01:00
James R.
0bfee3176f P_CheckDeathPitCollide: handle slopes 2023-09-16 21:05:13 +01:00
James R.
a392996a54 P_RemoveMobj: only repair hnext linked list is object is a part of the list
This indirectly fixes a bug with Rocket Sneakers:

- Give yourself Rocket Sneakers, use them up completely.
- Instantly give yourself and deploy Orbinauts (may want
  to use a bind for this, since it has to be quick).
- Wait a moment for the exploded Rocket Sneakers to fall
  to the ground. When this happens, the Orbinauts will
  stop following the player -- they will enter a buggy
  state.

So many items uses hnext/hprev, that I decided to make
a general fix that probably covers most bugs that could
arise from poor handling of hnext/hprev.
2023-09-14 04:03:50 -07:00
toaster
753b733f7e Permit multiple Spray Cans in one map
- Up to 255
- Each Spray Can placed does, in order, the postion in the list from the current head
    - So if there were 3 cans, and your can list was Red Yellow Blue Green, then Red, Yellow, and Blue would be in the level.
- Grabbing the nth colour in the list will swap that colour to the current head of the list
- However, the game will print to the console if you do this outside of GS_TUTORIAL.
2023-09-13 18:02:43 +01:00
AJ Martinez
18bc0d22e5 Higher fastfall gravity with bubble 2023-09-10 18:08:25 -07:00