Commit graph

437 commits

Author SHA1 Message Date
toaster
3add9a9bd2 Make the SPEEDING OFF TO ZONE text that appears while loading:
* Use a mixed case "Zone" to match the mixed case level titles.
* Have V_TRANSLUCENT to not stick out too much against pure black/white backgrounds. (Can revert this aspect if necessary, but I think you'll agree it's a good balance between readable and aesthetic.)
2019-11-19 13:00:37 +00:00
Jaime Passos
8a05afa1aa Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-18 18:48:19 -03:00
Jaime Passos
6920d20a0f map header option 2019-11-18 14:08:47 -03:00
Jaime Passos
e40bf85a6f lua 2019-11-18 13:50:44 -03:00
Jaime Passos
4ea3513076 Organize 2019-11-18 12:56:41 -03:00
Jaime Passos
9d17614c55 arg 2019-11-18 11:42:45 -03:00
Jaime Passos
6c98dde736 stuff 2019-11-18 11:39:54 -03:00
Jaime Passos
c15ee65015 LEVELWIPES 2019-11-15 18:21:12 -03:00
Jaime Passos
6be45ec241 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-14 20:24:42 -03:00
MascaraSnake
b0786f12de Merge branch 'coop-item-respawn' into 'master'
Allow item respawn in co-op again

See merge request STJr/SRB2Internal!466
2019-11-14 18:06:32 -05:00
Jaime Passos
d95a93b537 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-14 19:57:51 -03:00
MascaraSnake
8f6890025c Merge branch 'secretstuff' into 'master'
The letter

See merge request STJr/SRB2Internal!438
2019-11-14 17:49:23 -05:00
Louis-Antoine
cccf1c8a7b Disable perfect bonus in multiplayer 2019-11-14 19:25:19 +01:00
Jaime Passos
8506d420a6 Optimise 2019-11-14 14:12:36 -03:00
Jaime Passos
10d1b63ff2 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-14 12:49:03 -03:00
Jaime Passos
4292c5fc0b Other things I missed. Also added SF_NONIGHTSROTATION. Do I even have to keep the old behaviour? I have no idea. 2019-11-14 12:27:22 -03:00
MascaraSnake
14477748be Merge branch 'stopclock' into 'master'
Stop the clock!

See merge request STJr/SRB2Internal!450
2019-11-13 14:39:59 -05:00
MascaraSnake
d591554a5d Merge branch 'radiomode' into 'master'
Radio mode

See merge request STJr/SRB2Internal!443
2019-11-13 04:16:38 -05:00
Jaime Passos
245881ec55 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-11-12 21:38:02 -03:00
Jaime Passos
3354169769 Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-12 20:36:06 -03:00
MascaraSnake
66123b8165 Merge branch 'internal-md3-vanilla-c' into 'master'
Internal MD3 merge 2 good riddance glBegin

See merge request STJr/SRB2Internal!362
2019-11-12 15:44:20 -05:00
Jaime Passos
b88a37949e Use REDFLR for missing flats 2019-11-09 00:08:22 -03:00
Jaime Passos
ae838d4879 Merge remote-tracking branch 'origin/master' into texture-flats-optimization 2019-11-08 23:01:29 -03:00
toaster
d8ad0b4eaa STOP THE CLOCK linedef exectutor!
* When activated, stops the timer in SP/MP.
* Applies to the mapheader countdowntimer as well.
* If you're playing Record Attack, also exits the level immediately.
* It has no special modes, no linedef flags, no parameters, nothing.
* Only not an innate property of A_BossDeath because people may want it to NOT happen sometimes, or make it happen with non-boss events too.

Also, skip over calling P_DoPlayerExit if the player isn't in game.
2019-11-08 15:47:12 +00:00
toaster
5f8671b100 Sound test is cool now!
https://cdn.discordapp.com/attachments/405336003239477249/641295998395613224/srb20042.gif

* Port MUSICDEFs from Kart.
    * Safe to modify without modifying game, so we can put it in music.dta eventually.
    * "Title", "AltTitle", "Authors" fields are self-evident.
    * "Soundtestpage" and "Soundtestcond" are used to determine which sound test unlockable can play them (set with Unlockable's variable, just like Level Select).
    * "Stoppingtime" and "BPM" both accept floats, and are used for presentation stuff on the sound test.
    * Ironically, we don't share a single field name with them. Such is the case of differing foci, though, and I expect they'll change their implementation to match (since this is necessary for a sound test).
* Change how S_AddSoundFx works to avoid iterating through all of them, and to allow cv_soundtest to only scroll through defined slots (instead of the infinite wall of thok sounds when scrolling to the left).
* Change V_DrawFixedPatch to allow scaling on two seperate axes.
    * Now called "V_DrawStretchyFixedPatch".
    * "V_DrawFixedPatch" is a macro to V_DrawStretchyFixedPatch now (same scale on both axes).
    * Available to Lua under v.drawStretched!
    * Even works in GL!
* Bugfix: Add SR_PLAYER to SOC's menutypes_list.

Stay tuned for the merge request, where I put the onus on the Music Team to finish this off...
2019-11-05 16:23:46 +00:00
Jaime Passos
00d76bd9ef fix fades for real 2019-11-05 12:10:42 -03:00
toaster
915e50a1e4 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into internal-md3-vanilla-c
Merge seems fine, but won't compile for some reason.
2019-11-02 18:34:12 +00:00
toaster
e3fe542f31 Prevent desync with modeattacking. 2019-11-01 16:25:28 +00:00
toaster
67f5b2245f Secret stuff. (I intend to keep candid discussion of this outside of any commits; you'll see me write up a comment describing what's going on here soon.) 2019-11-01 15:48:50 +00:00
Jaime Passos
94ab276508 Merge remote-tracking branch 'origin/master' into f_wipes 2019-10-28 23:14:00 -03:00
Jaime Passos
a22af36305 add r_patch.c 2019-10-28 15:28:42 -03:00
Jaime Passos
79e99dc471 Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-10-28 14:29:10 -03:00
MascaraSnake
03c5b70fc5 Merge branch 'newmenus' into 'master'
Better looking menus, nametags and much more. (Resolves #245 and #244 and #252)

Closes #245, #244, and #252

See merge request STJr/SRB2Internal!389
2019-10-25 17:46:16 -04:00
James R
e15ffd2bc8 Optimize texture/patch/png/flat flat caching
SIGSEGV in the case where you have a TEXTURES entry, but no texture or flat,
has been fixed.

Missing flats for now yield a HOM instead of REDFLR as well.

OpenGL also doesn't work yet. And I'm too tired for now to bother with it.
2019-10-20 20:24:03 -07:00
Steel Titanium
3e0a9cf742
Revert my old attempt of making the level music fade out before game over jingle 2019-10-19 14:36:30 -04:00
toaster
910df54fb5 Added some examples of cvars that can use named values.
* Pandora's box now has infinite lives show up as "Infinite" instead of "-1".
* `pointlimit None`
* `timelimit None`
* Ported `basenumlaps` (with "Map default" value) from Kart to replace `usemaplaps`, for if Circuit ever gets shown any love ever again.
* `respawndelay Off`
* `resynchattempts Don't`
2019-10-15 11:49:37 +01:00
Jaime Passos
7746767735 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-10-06 17:40:41 -03:00
Steel Titanium
6b10ffb88f
Merge branch 'master' into newmenus 2019-10-01 16:52:31 -04:00
Jaime Passos
7eb5155240 sprite2info soc yummy yummy yes 2019-09-29 19:03:10 -03:00
Jaime Passos
c268743220 hehee 2019-09-29 12:13:51 -03:00
Jaime Passos
5118f8589d Merge remote-tracking branch 'origin/master' into rotsprite_i 2019-09-28 12:14:55 -03:00
toaster
3285cc9a0d Properly scrub the player struct clean between level transitions. (Good chance this fixes our new bug where the player gets stuck in their standing pose when the map begins..?) 2019-09-18 16:06:13 +01:00
Nev3r
777e7f8760 Merge branch 'deathstuff' into 'master'
Lots of death stuff

Closes #207

See merge request STJr/SRB2Internal!306
2019-09-16 16:32:45 -04:00
Jaime Passos
db979845e0 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-09-15 16:24:24 -03:00
Jaime Passos
f2915817a7 Merge remote-tracking branch 'origin/master' into newmenus 2019-09-11 22:17:42 -03:00
toaster
440b63ef13 Merge branch 'musicplus-resetmusic-followup' into 'master'
Follow-up fixes for reset-upon-dying music

See merge request STJr/SRB2Internal!284
2019-09-11 14:14:09 -04:00
toaster
10a0b38ab1 Fix an issue where completing a stage normally would not correctly set startrings for the next one (as opposed to warping directly or dying inside it). 2019-09-11 14:25:22 +01:00
Jaime Passos
f0788598c9 Better fades 2019-09-09 23:31:48 -03:00
Nev3r
043bb86acd Revert "Merge branch 'flats-png_port' into 'master'"
This reverts merge request !322
2019-09-09 18:40:21 +00:00
Jaime Passos
6553d816ea Merge remote-tracking branch 'origin/master' into flats-png_port 2019-09-09 14:12:28 -03:00
Jaime Passos
0cc553be5f Merge remote-tracking branch 'jimita/flats-png' into flats-png_port 2019-09-06 19:20:45 -03:00
Jaime Passos
1dca3338fd Sprite2 support but I'm not a dumbass 2019-09-03 18:27:22 -03:00
Steel Titanium
8655b8f1f1
Add spawn object linedef special.
Note that spawning a object within a random range does not fully work yet and crashes the game
2019-08-29 01:57:58 -04:00
Jaime Passos
f68652aa66 I 2019-08-18 14:16:48 -03:00
Steel Titanium
ff9766beee
Merge branch 'master' into newmenus 2019-08-14 22:51:06 -04:00
mazmazz
46993268ae * Added FORCERESETMUSIC level header
* cv_resetmusicbyheader toggle to disable said override
* Never reset music during time attack
* Change cv_resetmusic default back to off
2019-08-04 20:02:38 -04:00
toaster
b06af59907 Merge branch 'revert_revert_musicplus' into 'master'
Revert "Revert MusicPlus"

See merge request STJr/SRB2Internal!282
2019-08-04 13:58:01 -04:00
Steel Titanium
dacee0665d
More menu stuff 2019-08-04 13:26:25 -04:00
Steel Titanium
153ed82849 Last min changes 2019-08-04 11:34:55 -04:00
toaster
384dc0674e Revert "Revert "Merge branch 'musicplus-aug2019-b' into 'master'""
This reverts commit 603d5805f7.
2019-08-04 12:03:57 +01:00
toaster
603d5805f7 Revert "Merge branch 'musicplus-aug2019-b' into 'master'"
This reverts commit 56bfdb7113, reversing
changes made to c29cfbef9b.
2019-08-04 11:32:55 +01:00
mazmazz
cdb7250da4 Merge branch 'musicplus-feature-postboss' into musicplus-aug2019-b 2019-08-04 03:22:36 -04:00
mazmazz
5f2a45befd Merge remote-tracking branch 'origin/master' into musicplus-feature-dying-fp 2019-08-03 22:49:20 -04:00
mazmazz
a9b66109fc Fix titlemap music bug 2019-08-03 22:49:12 -04:00
mazmazz
efc8e42083 Fix titlemap music bug 2019-08-03 22:48:40 -04:00
mazmazz
1b59b224c0 Merge branch 'master' into musicplus-feature-dying-fp 2019-08-03 22:22:39 -04:00
Steel Titanium
00c3329ba9
Ring sparkle mirroring 2019-08-03 18:28:53 -04:00
Steel Titanium
9ea7a6dfca
Work on menus 2019-08-03 17:30:51 -04:00
toaster
8a0f1e7ed4 Merge branch 'ending' into 'master'
ENDINGS

See merge request STJr/SRB2Internal!264
2019-08-03 16:23:51 -04:00
toaster
9f34a7aa82 Merge branch 'bossenable' into 'master'
Boss enable linedef (type 449)

See merge request STJr/SRB2Internal!272
2019-08-03 16:23:22 -04:00
Monster Iestyn
8520243ab6 Merge branch 'emeraldfixes' into 'master'
Special stage related fixes

See merge request STJr/SRB2Internal!269
2019-08-02 13:08:20 -04:00
Steel Titanium
e8caa8538d
Merge branch 'master' into newmenus 2019-08-01 18:36:42 -04:00
toaster
7cb02985f4 * Added boss enable linedef (type 449).
- Frontside x offset = boss ID (determined via parameter for all bosses)
	- Noclimb flag = disable mode
	- Bosses don't do a fuckin' THING - no state updates, no player searches, no sounds, no lua, no nothin' - and it's all totally netsynced.
	- The only thing they WILL do is flash infinitely if you hurt them, but this is designed for stuff where you're not meant to be in the same room as the boss til it's activated.
	- All bosses of all IDs are automatically enabled on mapload, then if an enable mode version of this linedef is present in the map for a specific boss id, that boss id is automatically disabled.
* Add multi-boss support via parameter for:
	- All bosses' MT_BOSSFLYPOINT search
	- Boss 5's waypoint search
	- Oldbrak's waypoint search (this one's for you, jood)
2019-07-31 23:17:17 +01:00
toaster
18e43a5cef * Fix "exitlevel" being counted as a special stage success despite not giving you an emerald by inverting stagefailed's default value, since there's only a limited number of ways you can WIN at a special stage.
* Correct a potential source of desync in P_GiveEmerald.
2019-07-30 16:44:40 +01:00
toaster
deaee586ed Make MANIASPHERES' #define'd away stuff also recreatable with SOC, since I want to release it publically if the team don't want it. 2019-07-29 21:06:17 +01:00
toaster
47554b57e4 * Made the evaluation screen even more attractive.
* Fixed an unused variable warning in lua_skinlib.c.
- fixed post-level cutscenes playing when you get game over in MP (still kinda on-topic)
Also with apologies to MI:
- golden egg statue mode for tutorial, since the grey doesn't contrast enough with the blue and lime green
- fixed closed captions for replaced player sounds being incorrect
- fixed closed captions overlapping tutorial text
2019-07-29 14:55:36 +01:00
toaster
063e350c63 A good and bad ending cutscene now exist.
Also:
* SPR2_XTRA - instead of defining lumpnames in S_SKIN, those kinds of assets can just be bundled into the spriteset. Required for ending cutscene stuff, I guess, but also done for HUD life icon and character select image (aside from Sonic&Tails, still SOC'd in).
* Minor oversights in SPR2 support corrected.
* Better evaluation, featuring ending assets.
* Intro has warping-in blackrock, reusing ending assets.
* Cutscene text now supports lowercase (intro and custom).
* Disable the asset-fucking "gamma correction" I put in over two years ago when implementing colour cube. (This is the only thing I could move into another branch if you MUST, but it's basically invisble in the diff so w/e.)
* Don't blank the screen if the top left pixel of a screen-covering patch is transparent. (Checked via nonzero topdelta for first column)

Bugs:
* OPENGL ONLY: The first ~20 frames of both endings are fucked. A little help here? Might be HWR_DrawFadeFill's fault, which I just created. OR it could be in f_finale, but I doubt it, since it doesn't appear in Software.
2019-07-28 00:32:57 +01:00
Monster Iestyn
fac6de9c2e The titlemap glitches turned out to be linked to deathmatchstarts, which wasn't actually properly cleared out each level load ...let's actually fix that, lol.
(Neither were the CTF starts but those didn't directly cause any problems luckily)
2019-07-14 18:10:03 +01:00
Jonas Sauer
166f1fac66 Fixed the thinkerlist issues by removing THINK_LIMBO. Delay-removed thinkers now stay in their list.
Also includes toaster's assorted fixes and improvements from target_painted_on_your_ass.
2019-07-13 01:42:03 +02:00
MascaraSnake
a5074a846b Implemented a skin-based linedef executor trigger 2019-07-03 09:19:29 +02:00
MascaraSnake
e9978b2955 Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
Monster Iestyn
9913cc39a1 Merge branch 'public_next'
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
#	src/p_user.c
#	src/r_data.c
2019-06-29 20:55:58 +01:00
Jaime Passos
28566008b4 Merge remote-tracking branch 'upstream/master' into flats-png 2019-06-25 16:02:35 -03:00
Steel Titanium
8026fe0d4b Some few changes.
The amount of rings you start with also applies when you respawn from a starpost.

Startrings counts the ring total requirement for a perfect bonus.
2019-06-24 16:21:03 -04:00
Steel Titanium
a801efa946 Forgot to do this. 2019-06-23 18:51:42 -04:00
Nev3r
264386f842 Add visplane portal creation functionality and use it to replace the skybox rendering.
The skybox rendering process has been replaced with portals instead. Those are generated after the first BSP tree pass by looking for existing sky visplanes at the time, and their windows are used to define new portals.
The skybox portals are still incomplete and cause visual glitches when masked elements are involved.
2019-06-02 00:07:55 +02:00
Jaime Passos
0bcf89679e Hardware renderer: Fix polyobjects 2019-05-26 18:16:13 -03:00
Jaime Passos
dbb1575a6d Animations, better flat management. 2019-05-21 15:24:26 -03:00
Jaime Passos
714c997aac Support for patches and textures to be used in place of sector flats
Still a work in progress.
2019-05-21 00:28:52 -03:00
mazmazz
89ab777c40 Merge remote-tracking branch 'origin/master' into menu-execs 2019-05-02 18:47:43 -04:00
Nev3r
a9110c0645 Fixed more mobj thinker iterator oversights and removed all mobj thinker function checks
Mobjs got their own thinker list after all, and disappearing thinkers are automatically purged from their lists and sent to the limbo list.
So it's safe to assume all thinkers inside the mobj list must be mobjs.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:39:57 +02:00
Nev3r
11dba34f43 Remove dynamic slope queue list due to now being unnecessary.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:52:18 +02:00
Nev3r
d264d06879 Merge branch 'slopethinkers' into thinkerlists
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 11:47:34 +02:00
Nev3r
b60c66325c Added a mobj-only list entry for mobj thinkers
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 23:29:20 +02:00
Nev3r
39ba20be6b Basic multiple thinker list implementation
Set up a main thinker list and a polyobject mover list to test things up. Works so far, networking as well.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 22:39:22 +02:00
Nev3r
b3ac590e5e Add a slope thinker queue.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 13:06:06 +02:00
Nev3r
5401e9560f Dynamic slopes now use thinkers.
* Moved dynamic slope-related data into its own thinker.
* Vertex slopes no longer use the mapthings directly.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 14:14:43 +02:00
mazmazz
ad50fa4d9e Fix MIDI crash bug when changing music between levels
This happened when the old music was ERZ2 native midi, then warping to any other level.
2019-03-15 10:02:50 -04:00
mazmazz
7346684bd8 Fade out music upon dying or level change: 2.1 frontport 2019-03-15 04:21:17 -04:00
mazmazz
f163633591 Merge branch 'public_next' 2019-03-15 01:43:03 -04:00