Commit graph

334 commits

Author SHA1 Message Date
Sally Coolatta
643cf46b61 Ball switch 2023-09-26 08:37:10 -04:00
Sal
bb8499b43d Track-based bot difficulty 2023-09-23 03:28:43 +00:00
James R.
543fd03b11 Add Obj_EmeraldCanHUDTrack to handle MT_EMERALD being used for Hyudoro orbiting 2023-09-18 04:21:10 -07:00
James R.
08056a9ae2 hyudoro_patrol_hit_player: do not make 1st place invisible 2023-09-17 21:59:35 -07:00
James R.
4347af5069 Hyudoro: increase hitbox size 2023-09-17 21:56:20 -07:00
James R.
6878c7dd90 Apply PF_CASTSHADOW when player touches patrolling Hyudoro's shadow, darken player to pure black 2023-09-17 21:56:20 -07:00
James R.
5c1332f977 Add R_CustomShadowZ, Obj_FakeShadowZ, Obj_HyudoroShadowZ; let Hyudoro shadow float while patrolling 2023-09-17 21:56:19 -07:00
James R.
25837afc8c Hyudoro: use B frame when holding item 2023-09-17 21:56:19 -07: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.
3eeaaefc5f Hyudoro: stack uses modulate blendmode (with ghost trick) if player is in first place
- If player is in first place, they cannot use the stack
- Use ghost trick to lessen the effect, since modulate
  blendmode cannot be controlled with translucency
2023-09-17 21:56:19 -07:00
James R.
e0d7d08dde Hyudoro: flickering shadows for patrolling and stealing from a player
- Shadow flickers in high contrast colors while patrolling
- Shadow flickers black/white for short time after Hyudoro
  steals from a player
- (Resetting shadow for hovering stack already handled by
  append_hyudoro)
2023-09-17 21:56:19 -07:00
James R.
43ca8a2f4c Hyudoro: toggle shadow in hovering stack so multiple shadows are not rendered 2023-09-17 21:56:19 -07:00
James R.
1cd0781648 Hyudoro: spawn ghost trail, colorized to owner, on return to owner 2023-09-17 21:56:19 -07:00
James R.
d86aaa8c0c Hyudoro: smoothly transition vertical position in hovering stack 2023-09-17 21:56:18 -07:00
James R.
3b19376848 append_hyudoro, pop_hyudoro: fix linked list handling
- Use P_SetTarget to handle reference counting properly
- Properly unlink from the start of the list
2023-09-17 21:56:18 -07:00
James R.
4c551a03ca project_hyudoro: match Z to slope of center point 2023-09-17 21:56:18 -07:00
James R.
b86ade712a MT_EMERALD: prepartion to let orbiting physics be used in a general-purpose manner
- Add Obj_SetEmeraldAwardee
  - Separate object receiving emerald from object being
    orbited
  - Obj_BeginEmeraldOrbit sets both, if the awardee isn't
    explicitly set
- Don't HUD track emeralds without emerald flag set
2023-09-17 21:56:17 -07:00
James R.
eb477365a4 MT_SHADOW: copy shadowcolor from followed object 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
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
35c388c877 Merge branch 'item-pickup-restrictions' into 'master'
Anti item farming

See merge request KartKrew/Kart!1492
2023-09-17 04:55:54 +00: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
SteelT
52e920e874 Sealed Stars: fix UFODebugSetHealth always running
Resolves #686
2023-09-16 14:58:53 -04:00
James R.
c8cf6a4621 Obj_GardenTopThrow: reset item and shield even if Top object is missing 2023-09-14 04:03:50 -07:00
James R.
a455822790 Garden Top: track inexplicable changes in mobj pointers to avoid Top entering buggy state 2023-09-14 04:03:50 -07:00
James R.
5abd0f7a6c UFOMove: check playeringame cv_ufo_follow 2023-09-12 18:22:53 -07:00
AJ Martinez
562da2b376 Anti item farming: item box clarity 2023-09-12 16:26:40 -07:00
James R.
d9d6a0da18 Add ufo_health cheat, set UFO Catcher health 2023-09-12 03:04:51 -07:00
James R.
21e8431e1a Add ufo_follow cheat, teleport UFO Catcher to player 2023-09-12 03:04:28 -07:00
AJ Martinez
d3316ff614 Shrink growtime 2x, global darkness when using shrink 2023-09-01 20:40:52 -07:00
James R
b8b286b177 Merge branch 'softer-stumble' into 'master'
Smoothlanding leniency (resolves #602)

Closes #602

See merge request KartKrew/Kart!1428
2023-08-28 07:49:20 +00:00
James R
1db1eaedff Merge branch 'sealed-star-lose-text' into 'master'
Sealed Stars: show text on the screen for loss conditions; improved titlecard cecho centering, splitscreen support

See merge request KartKrew/Kart!1404
2023-08-28 07:48:47 +00:00
James R
c080828dde Dash Rings, Fast Fall: reset pitch too 2023-08-27 04:17:16 -07:00
Lach
ac9b96e98b Add spawn rate arg to Sneaker Panel Spawners; allow sneaker panels to scale themselves redundantly 2023-08-27 14:01:23 +10:00
AJ Martinez
b03056e4c8 Smoothlanding leniency 2023-08-26 16:05:34 -07:00
James R
5d8efb66a4 Sealed Stars: show text on the screen for loss conditions
Player dies:

    FALL OUT!

Player finishes before collecting the emerald:

     EMPTY
    HANDED?

UFO finishes before player:

    TOO LATE...
2023-08-26 21:39:18 +01:00
Sally Coolatta
f02e6dbe3c Final thing args code cleanup
- Fix the last few bugs I could find with thing args
- Move version update code
- Rename internal variables to `thing_[string]args` to make older code merge issues more obvious
2023-08-22 02:14:09 -04:00
toaster
274e72ed2d Shrink Sync
Obj_CreateShrinkPohbees: Fix potential uninitialised memory being used that could cause a differing number of pobbys to spawn between client and server, causing an (extremely recoverable but still undesired) desync
2023-08-20 22:13:53 +01:00
Oni
07aabdfdb3 Merge branch 'battle-emerald-collect' into 'master'
Emerald collection polish, animation for Battle and tweak to Sealed Star

See merge request KartKrew/Kart!1408
2023-08-20 06:10:35 +00:00
James R
7d7cc04da2 Player glows with additive exposure while emerald collection lens flare plays
For ease of programming, the emerald itself glows in
Sealed Stars.
2023-08-19 03:42:31 -07:00
James R
4857d48633 Add "twinkle" lens flare to emeralds
- Battle: plays once the orbiting collection animation
  finishes and the player's emerald flags are updated
  - Centered on the player

- Sealed Star: plays as soon as the orbiting animation
  begins
  - Centered on the emerald
2023-08-19 03:40:17 -07:00
James R
dd7f6b17dd Add fuse behavior to emerald orbit, Battle collect animation
- Battle emeralds orbit into the player's body upon
  collection
- Emerald shrinks down to a speck
- Orbiting speed increases over time
- Player's emerald flags altered at the end of the
  animation
2023-08-19 03:28:41 -07:00
James R
4bdc05824c Add Obj_BeginEmeraldOrbit, seamless transition into orbit 2023-08-19 03:24:22 -07:00
James R
fe6da4e087 Instawhip: consistently flicker on opposite frame of player flashing tics 2023-08-17 18:12:59 -07:00
James R
72a58cee3c Orbinaut and Gachabom water run if player was water running when it was thrown 2023-08-16 01:00:08 -07:00
James R
b46bfc8766 Obj_JawzThrown: chase UFO Catcher immediately
Done here so Jawz fulfills water running condition during
K_SpawnKartMissile.
2023-08-16 01:00:08 -07:00
Lach
53b48d057c Rename Lost Colony symbols to Ark Arrows and add 10 new symbol types 2023-08-15 22:47:04 +10:00
James R
2f9ae94b62 Emerald orbits player after UFO Catcher is broken 2023-08-12 21:41:21 -07:00
James R
af26848cf9 Spawn literal MT_EMERALD for UFO Catcher, remove MT_SPECIAL_UFO tracking
Side effects:

- HUD tracking icon now uses emerald's color in Sealed
  Stars.
- UFO emerald doesn't disappear when collected. This is
  WIP because the emerald is intended to orbit the player.
2023-08-12 21:41:21 -07:00
James R
1c2a2155c0 Deduplicate a bunch of emerald related code
- Add K_BattleOvertimeKiller
  - Kills an object if it is outside of the Overtime
    Barrier in Battle

- Add Obj_SpawnEmeraldSparks
  - Use this function for MT_EMERALD, MT_MONITOR and
    MT_SPECIAL_UFO

- Move thinking code for MT_EMERALD and MT_MONITOR to
  objects/monitor.c and objects/emerald.c
2023-08-12 19:34:26 -07:00