- Fade out level music for 1.5 seconds when "Hurry up!"
plays.
- Play SHWDWN when level music finishes fading out.
- Switch to SHWDN2 when there are 2 players left and the
Overtime Barrier has reached its smallest size.
- Plays a loud noise to mask the transition.
- Go to a MainCfg-specified map on its guessed gametype
- `TutorialChallengeMap = RR_ZonedCity`
- Some unique settings
- K_CanChangeRules() == false
- If GTR_CIRCUIT, make it Hard Speed
- If GTR_BUMPERS, die in one hit
- If GTR_BOTS, make them all difficulty 13 of the default bot skin
- No Medals or Spray Cans during the Tutorial Challenge
- Complete the stage in 1st place or don't bother at all
- Has the "Give up" menu option available, but no "Try Again"
- Condition for successfully completing the Tutorial Skip
- `Condition1 = TutorialSkip`
Related bugfixes:
- Correctly wipe skipstats when returning to the Title/menus
- Typing of `ultimatemode` (hey this isn't accessible by anything right now I wonder)
Fixes player death not ending a Prisons round, bugged
debug feature.
Now, do it properly. Don't end the round if the last
player spectates.
This is more than a debug feature; in Free Play, it lets
the player spectate and fly around if they want to, and
even come back in, all without restarting the level.
- 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
TODO: This should be available as a debugging option at
release, since it would be useful for addon authors.
I don't want to make more cvars, those are getting
cluttered and should maybe be coalesced into a single
debugging option.
- 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
- 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)
- Add flag application in function signature
- Consistent gating of extra PF_NOCONTEST application behind not already exiting
- This should fix dying after winning in K_Cooperative gametypes breaking things
- P_DoAllPlayersExit
- Consistent condition of playeringame, spectator, exiting, etc checks
- Also could force-give a life (for Battle Prisons)
- MT_CDUFO is now a valid type of Prison in Prison Break
- Tracked on counter
- Tracked on HUD
- Tracked on minimap
- P_AddBrokenPrison in p_inter.c
- Generalises behaviour on breaking a Prison Break object
- MT_CDUFO polish
- Can now be broken with all damaging objects EXCEPT Shield Orbinaut/Shield Jawz
- These two are exceptions to prevent them from denying you your on-contact item grab., which these will still give you if you touch them
- Breaking the object by touching it now causes hitlag instead of fireworks
- The fireworks were to make touching it feel good... but hitlag feels better :P
- Now supports mapobjectscale directly.
- Scaled 1.5x mapobjectscale
- Hitbox now far closer to actual sprite (which was just replaced, but was inexplicably far away from the old one too)
We had this collective consciousness bigbrain moment in VC together, and it can literally only happen in this branch because unlocks.pk3 is the only main-game asset that needs to change for it
Solves the big problem we had with mixing up Item Capsules and ~~Battle Capsules~~ PRISON EGGS
Adds some functions:
- K_Bumpers, bumper count for the count, intended for
where player->bumpers was used in HUD and visual
contexts.
- K_BumpersToHealth, converts bumper count to health
points.
player->mo->health replaces player->bumpers where it was
used in health contexts.
Removes some functions:
- K_HandleBumperChanges
- K_DestroyBumpers
Everything K_HandleBumperChanges did has either been
removed or moved elsewhere. P_KillMobj also already called
K_CheckBumpers.
K_DestroyBumpers became pointless after player->bumpers
was removed.