Commit graph

2499 commits

Author SHA1 Message Date
Oni
e9cea99ae7 Merge branch 'dashrings' into 'master'
Hardcode MT_DASHRING & MT_RAINBOWDASHRING

See merge request KartKrew/Kart!1345
2023-07-29 18:29:08 +00:00
Oni
a18982dc55 Merge branch 'splatbooster' into 'dashrings'
Hardcode MT_SNEAKERPANEL & MT_SNEAKERPANELSPAWNER

See merge request KartKrew/Kart!1349
2023-07-29 18:28:48 +00:00
AJ Martinez
6607722b64 Simpler 120-tic flame shield behavior 2023-07-29 05:10:14 -07:00
Lach
fd8ba4236d Hardcode MT_SNEAKERPANELSPAWNER & adjust FF_GLOBALANIM behaviour 2023-07-29 17:51:25 +10:00
toaster
16e036a0bd Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into dashrings 2023-07-28 23:12:06 +01:00
toaster
f040523b19 Implement the Sunbeam Palm decoration
- Randomised tilt
- Randomised leaf angles
- Technically specifiable number of leaves, but the default of 5 is sane enough
2023-07-25 18:01:07 +01:00
Oni
b82392dee6 Merge branch 'more-conversions' into 'master'
More UDMF conversions

See merge request KartKrew/Kart!1336
2023-07-23 17:24:17 +00:00
toaster
e0b47b16e7 Improve Spectator entry handling
- Re-entry SHOULDN'T get stuck nonzero on first join for a given node
    - Set to 0 for all players on level start
    - Set to 0 for all players on level end
    - DEFINITELY never intentionally set on join with teamchange finalisation
    - This basically just prevents people from spamming New Challenger after hopping out mid-session, since the previous version, in addition to being buggy, was a little annoying.
- New Challenger no longer happens on tic 0 of mapload
    - Handles any late, pending PF_PF_WANTSTOJOINs without threat of reset in P_PostLoadLevel
2023-07-22 14:03:11 +01:00
Lach
2d7ae88586 Hardcode MT_BOOSTPAD as MT_SNEAKERPANEL 2023-07-21 19:19:28 +10:00
Lach
ed76ca72fa Merge branch 'dashrings' into splatbooster 2023-07-20 19:22:30 +10:00
Lach
bb5070afb0 Merge remote-tracking branch 'origin/master' into dashrings 2023-07-20 19:04:42 +10:00
Lach
476d53d305 WIP: Hardcode MT_BOOSTPAD 2023-07-20 19:02:13 +10:00
toaster
ba7307b425 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into more-conversions 2023-07-19 22:46:49 +01:00
Lach
a21e509a94 Hardcode MT_DASHRING & MT_RAINBOWDASHRING 2023-07-19 21:47:41 +10:00
toaster
e6619df2d4 Servant Hand: Refactor to use its own thinker
Since it's already ticking for the sake of a fuse, make it handle its own movement/scaling as well.

Spawning is still handled by the player thinker (and can be blocked by hitlag), but this permits it to disappear when a player dies/disconnects the server.
2023-07-18 15:45:49 +01:00
toaster
c1810ac891 P_SetupSpawnedMapThing: Re-add missing MT_AMBIENT 2023-07-18 10:59:06 +01:00
toaster
45012dbd6a Make sure MT_LOOPCENTERPOINT doesn't have an invalid stack-allocated spawnpoint pointer
Fixes connecting to a server that's currently on a map with a loop.

Also tidies P_SpawnItemRow, P_SpawnItemCircle to reduce the likelihood of this happening again, and possible crash with Lua-shortcircuited loop spawning
2023-07-17 13:51:48 +01:00
Lach
64511e82c2 Merge remote-tracking branch 'origin/master' into symbol-signs 2023-07-11 20:55:44 +10:00
James R
a98db957e6 WANTED player or Lightning Shield attracts emeralds 2023-07-03 06:20:19 -04:00
James R
82cf995e35 Kill Battle UFOs outside of the Overtime Barrier 2023-07-03 06:20:18 -04:00
AJ Martinez
c0d025c1c4 Fix stagger off-by-one in hitstop VFX 2023-07-01 18:52:57 -07:00
Oni
e6ba45e558 Merge branch 'fix-emerald-overtime-crash' into 'master'
Fix Overtime Barrier crash

See merge request KartKrew/Kart!1315
2023-06-30 06:23:30 +00:00
James R
38f9922aa1 Fix crash from trying to spawn emerald sparkles on emeralds or monitors killed by the Overtime Barrier 2023-06-29 23:08:32 -07:00
James R
38c5703020 Add Battle UFO to minimap 2023-06-29 23:01:27 -07:00
SteelT
6e33281baf Despawn UFO after touching the ground 2023-06-29 22:22:00 -07:00
SteelT
bf394f1f38 UFO beam spawning behavior
- Spawned from underneath the UFO and is thrusted downwards
- Is spawned as splats instead of papersprites
- Colorized to sapphire
- Despawns on any ground contact
2023-06-29 22:21:28 -07:00
SteelT
3ef583040e Add shadow to Battle UFO
Also add it to the CD SS ufo per request
2023-06-29 19:49:36 -07:00
James R
f5d68783fc Battle UFO spawning behavior
- MT_BATTLEUFO_SPAWNER args[0] is the ID
- Spawn a random UFO from the list spawner at the start of
  Battle
- UFO spawns 200 units above the spawner
- After destroyig a UFO, wait 25 seconds before spawning
  the next UFO (next ID in the list)
2023-06-29 19:49:35 -07:00
SteelT
a24e9bb19f Add basic Battle UFO object functionality 2023-06-29 19:49:17 -07:00
James R
c01a29c42a Add Power-Up Aura
- Spawns on player when they use their first power-up
- Lasts as long as player has any power-up
- A hexagon of animated, additive, fullbright papersprites
  surround and move with the player, takes player's angle
2023-06-29 19:37:22 -07:00
James R
e67ab6a116 Spawn Guard visual when player spawns, do not tie spawning to e-brake
Object already handles turning invisible if player has no
Guard.
2023-06-29 19:31:27 -07:00
Oni
f393b9782b Merge branch 'super-flicky' into 'master'
Battle: Super Flicky power-up, give power-up command, general functions for interfacing power-ups (also Lua)

See merge request KartKrew/Kart!1301
2023-06-28 00:31:53 +00:00
James R
58cccedd64 MT_FLOATINGITEM: use K_UpdateMobjItemOverlay 2023-06-27 01:12:01 -07:00
James R
ed262f780b Add majority of Super Flicky object functionality
Thinkers and most collision.

- 4 Super Flickys deploy from above the owner player, in
  a radius.
- Radius shrinks as Flickys descend.
- Flickys orbit their owner until coming within range of
  another player.
- The entire group of Flickys attack another player at
  once, with some delay between each.
- Flickys accelerate toward their target, constantly
  building speed.
- When a Flicky is both within a short radius of its
  target and the angle of momentum is narrowed toward the
  target, the Flicky will sharply accelerate to impale the
  target.
- When a Flicky is both outside of a long radius of its
  target and the angle of momentum is facing away from the
  target, the Flicky's momentum will be drastically cut in
  order to make it easier for the Flicky to turn around.
- After one of the Flickys in the group hits its target,
  all but one of the group is free to hunt a different
  target.
- A new target is chosen from a radius around the current
  target.
- Flickys can only target players who are not respawning
  and who have not already been attacked by another
  Flicky.
- Super Flickys can be blocked by a Guard. The Super
  Flicky shall have all its momentum reflected (strong
  knockback).
- Super Flickys can be insta-whipped. This shall have the
  same effect as a Guard, with the additional effect of
  knocking the 'Super' out of the Super Flicky.
- Non-Super Flickys are knocked back with gravity. After
  bouncing off the ground once, it regains flight and will
  continue to chase its target. However, it cannot damage
  the target. After 5 seconds, the Flicky regains Super
  state.
- The Flicky power-up is on a timer. After the timer
  expires, Flickys lose Super state and ascend back into
  the air (reverse of their initial descent).
- If the Super Flicky is not orbiting its target when it
  ascends, it retains all horizontal momentum during the
  ascent, 'flying off into the distance'.
2023-06-27 00:53:24 -07:00
AJ Martinez
c71bb7092e Merge remote-tracking branch 'origin/master' into ringbox 2023-06-26 19:19:21 -07:00
AJ Martinez
45547607bd Ringbox: item respawn refactor + box visuals 2023-06-26 06:36:37 -07:00
toaster
164f72a6cb "Bored" follower audience toggle (for Chaclon)
- If follower audience member has a certain flag, the bob/jump height is forced to zero
    - UDMF: args[2] & 2
    - Binary: The "Extra" flag
- If a follower audience member (or MT_EMBLEM with GE_FOLLOWER) has a bob/jump height of 0, use the idlestate instead of the movement state
2023-06-20 12:41:42 +01:00
Lach
6dc7e96e95 Add Lost Colony symbol object 2023-06-19 23:12:55 +10:00
James R
aa82d8da77 Instawhip Recharge VFX
- 3 splats spawn before the instawhip cooldown runs out
- Splats angle steeply outward in a triangle formation
- VFX is animated, animation runs out right when instawhip
  cooldown completely runs out
2023-06-18 01:57:03 -07:00
Oni
abd6e183e9 Merge branch 'mt-reorder' into 'master'
Reorder stuff in P_SpawnMobjFromMapThing

See merge request KartKrew/Kart!1293
2023-06-16 05:39:38 +00:00
toaster
1fee9f65fb Servant Hand
- Points in the direction of the best waypoint to take
- Vwoops in and out like a drop target squash-n-stretch
- Shows WRONG WAY only on debugwaypoints
- Flexible enough to be used for custom purposes and other gametypes, the only caveat being if those gametypes use GTR_CIRCUIT conflicting with the other purpose of PF_WRONGWAY
2023-06-15 18:46:44 +01:00
Sally Coolatta
d63c1d8ab4 Reorder stuff in P_SpawnMobjFromMapThing
Fixes the loops issue Tyron ran into. Way, way too much stuff was being initialized after P_SetupSpawnedMapThing instead of before.

Also get rid of weird doangle pointer crap, I don't understand why it did it that way to begin with? The only thing that I didn't write that needed to set it was P_SetupMace, which just seemed to be a weird hack to get around the weird ordering, instead of just changing the ordering? A lot of objects even double-calculate the angle just because it hasn't been set yet...
2023-06-15 12:44:19 -04:00
AJ Martinez
41540ed9e5 WIP: Ring Box 2023-06-14 23:32:31 -07:00
Sally Coolatta
cd37542edf Improve Item Capsule spawning
- Spawn them after player count has been calculated properly.
- Move gametype spawning into its own argument. Now instead of 1 flag that said it inverted Time Attack spawning but ACTUALLY just made it spawn in all modes, there's flags for the two gametypes which can be combined. Not setting any will use the old default behavior (rings are in both modes, items are multiplayer-only).
2023-06-14 07:13:26 -04:00
Oni
ce2ea138b4 Merge branch 'gacha-rebound' into 'master'
Gachabom rebound

See merge request KartKrew/Kart!1286
2023-06-14 02:31:23 +00:00
Sal
0f909bdb46 Merge branch 'gacha-prep' into 'master'
Add FF_REVERSEANIM and FF_INVERT, extern P_InstaScale

See merge request KartKrew/Kart!1285
2023-06-14 00:25:50 +00:00
Sal
7b98752b67 Merge branch 'refactor-mapthing' into 'master'
Read-only mapthing_t

See merge request KartKrew/Kart!1252
2023-06-14 00:07:42 +00:00
James R
696e9e09c9 Gachabom rebound
- Gachabom hits an object and is destroyed immediately
  (does not bounce off like Orbinauts or Jawz).
- Gachabom explosion spawns in its place.
- (New) Gachabom physically returns to the player who
  threw it.
2023-06-13 16:57:44 -07:00
James R
c50e63ccd7 p_mobj.c: add P_InstaScale function
Previously was in objects/broly.c
2023-06-13 14:42:00 -07:00
James R
8c4502ff5b Add FF_REVERSEANIM frame flag
- Animate from state frame backwards by var1
2023-06-13 14:42:00 -07:00