Commit graph

133 commits

Author SHA1 Message Date
Jaime Passos
79d5192b7c TOL/Level platter stuff 2019-12-18 13:24:10 -03:00
fickleheart
b5f7f5f732 Replace direction toggles with a playstyle selection
It's kinda ugly right now...
2019-12-09 22:06:50 -06:00
MascaraSnake
a3549cc8f2 Merge branch 'datestuff' into 'master'
Date stuff

See merge request STJr/SRB2Internal!618
2019-12-06 16:10:36 -05:00
Steel Titanium
d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
lachwright
2e77970526 Fix whitespace issues from when I was new to this shit 2019-12-07 02:31:31 +08:00
sphere
9608021824 Rename "secrets" to "extras". 2019-11-21 01:34:32 +01:00
MascaraSnake
d591554a5d Merge branch 'radiomode' into 'master'
Radio mode

See merge request STJr/SRB2Internal!443
2019-11-13 04:16:38 -05:00
James R
872e662618 That's a lot of whitespace 2019-11-07 13:42:54 -08: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
mazmazz
fc02b73534 Remove TTCOUNTERSET to simplify custom title SOC 2019-11-02 12:40:12 -04:00
mazmazz
c7c72a4892 Merge branch 'master' into new-title 2019-10-25 22:29:29 -04: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
5ac8a26814 Miscellaneous window de-focus options
Music pausing is now optional.
Sounds may be paused--on by default.
The game itself being paused in off-line mode is now optional.

(showfocuslost now loads from config.)
2019-10-22 21:15:20 -07:00
James R
dfdbc0afe3 Don't fade to character select from secret level select 2019-10-19 12:42:53 -07:00
James R
25d8b7d5ea Don't fade to Server Options 2019-10-19 12:25:02 -07:00
toaster
bf761a26d6 * Implement fixes/tweaks as written on the gitlab.
* `SPR2_NTAG` last vestiges removal.
    * Removed need for `getskinfromdescription()` by calculating it once, at Menu load, and storing in `description_t`.
    * Fixed nametag colour issues.
    * Support widescreen with nametags.

* Fix a metric SHITTON of compiler errors.
    * Redefining `x` and `y` within scope of previous `x` and `y` (`M_DrawSetupChoosePlayerMenu`)
    * GCC straight up will not let you cast a `const char*` to a `char` (`V_DrawNameTag`)
    * Redefining `lines` within the scope of the global.
    * Redefining `string` within the function-specific `string`.
    * It would be recommended for y'alls to turn ERRORMODE on!
2019-10-19 18:15:54 +01:00
Jaime Passos
edd016690d A bunch of stuff 2019-10-14 02:24:44 -03:00
Steel Titanium
6b10ffb88f
Merge branch 'master' into newmenus 2019-10-01 16:52:31 -04:00
Steel Titanium
dfee7efd33
Merge branch 'master' into internal-hotplug-stableid 2019-09-23 00:44:34 -04:00
Alam Ed Arias
8d3d5566b8 Undo file mode change on menu files 2019-09-20 12:18:57 -04:00
toaster
7da89e3bc9 Merge branch 'camerafix' into 'master'
Camera fixes

Closes #105

See merge request STJr/SRB2Internal!303
2019-09-20 11:51:30 -04:00
lachwright
5015f8e142 Added Camera Options submenu (provided my files aren't broken again (please D:)) 2019-09-19 17:34:04 +08:00
Steel Titanium
995ab1c84d
Merge branch 'master' into internal-hotplug-stableid
Just merged in known working code, note that I haven't tested it, so I have no idea if it compiles still.
2019-09-08 01:55:36 -04:00
Steel Titanium
8ee0a9309b
Better directory structure 2019-09-08 01:29:09 -04:00
mazmazz
57974168c8 WIP 2.2 title screen (Alacroix) 2019-09-02 22:40:28 -04:00
Jaime Passos
85499040d3 did The Thing 2019-08-19 14:23:03 -03:00
Jaime Passos
381258883e More character select work 2019-08-18 22:26:52 -03: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
mazmazz
89ab777c40 Merge remote-tracking branch 'origin/master' into menu-execs 2019-05-02 18:47:43 -04:00
Monster Iestyn
7a0d8b408e Merge branch 'public_next'
# Conflicts:
#	src/d_main.c
#	src/dehacked.c
#	src/m_menu.c
#	src/m_menu.h
2019-02-27 22:36:01 +00:00
Steel Titanium
bce093fd06 Setup the tables even eariler.
I really hate that PlayerMenu status hack, but that's really the only
way I could think off to show the entires for Tails, Knuckles and the
Sonic&Tails pair.
2019-01-26 23:16:49 -05:00
TehRealSalt
0d1c501664 Update the SP menu stuff to use MAXSKINS
Co-authoered-by: Steel Titanium (steeltitanium1@gmail.com>
2019-01-26 00:22:05 -05:00
mazmazz
075f28b7c8 WIP 20190101 merge
d_netcmd.c
filesrch.c
m_menu.c
p_setup.c
p_spec.c
r_data.c
r_main.c
r_things.c
w_wad.c
w_wad.h
2019-01-02 01:09:15 -05:00
mazmazz
b32f50648d Merge branch 'addons_menu' into 'master'
Addons menu

See merge request KartKrew/Kart!8
2018-12-15 20:46:42 -05:00
mazmazz
6694b7d679 Controller hotplugging by always keeping joy subsystem on (thanks WOLFS)
(with log messages)
2018-12-06 10:54:58 -05:00
mazmazz
ab47e83939 Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-25 19:03:22 -05:00
mazmazz
0439479b3e Remove M_ApplyMenuPresState 2018-11-25 15:08:36 -05:00
mazmazz
eb95289ea4 Rearranged menu presentation methods
* Menu parameter retrieval and hierarchy in m_menu
* Presentation logic (background display) in f_finale
2018-11-25 15:08:12 -05:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
mazmazz
74da082c75 Merge remote-tracking branch 'origin/master' into HEAD 2018-11-20 23:19:36 -05:00
mazmazz
094ec7ce3c Performance improvements
* Don't loop every frame for menu drawing parameters
* Fixed in-game escape menu not dimming correctly
* Fixed glitches on default title screen parameters
2018-11-20 17:28:26 -05:00
mazmazz
765e4b3134 Compiler fixes 2018-11-18 04:32:38 -05:00
mazmazz
758647fab2 More title screen features; menu meta state implementation (active and previous menu types)
* Draw background over titlemap
* HIDEBACKGROUND to show titlemap
* Specify NOMUSIC or IGNOREMUSIC (to not change music)
* Linedef execs implemented for tree hierarchy, including bubbling (NOENTERBUBBLE/NOEXITBUBBLE)
* Specify ENTERWIPE and EXITWIPE
* Menuid hierarchy fixes (Control mapping, joystick setup)
* Time attack handling fixes
* Specify custom wipes on runtime for D_Display and P_SetupLevel (for titlemap)
* Allow for forcing and skipping a wipe
* Wipe utility functions F_GetWipeLength and F_WipeExists
2018-11-17 19:08:30 -05:00
mazmazz
d2bbddbed4 Implemented features
* M_SkyScroll optimization with still speeds; refactor background drawing
* Music (in time attack screens so far)
* FadeStrength
* HideTitlePics
* Scrolling backgrounds in Time Attack (moved F_SkyScroll to m_menu)
2018-11-17 01:21:21 -05:00
mazmazz
1e6369e8de Implement scrolling menu backgrounds 2018-11-16 18:26:26 -05:00
mazmazz
c4cddf8741 Menumeta iterators 2018-11-16 14:16:41 -05:00
mazmazz
15c0bab0c9 Title screen menu SOC 2018-11-16 12:07:47 -05:00
mazmazz
75dab7850f Refactor MM_ menu types to MN_ 2018-11-16 09:56:22 -05:00
mazmazz
3ec96d8b99 Menutypes for dehacked 2018-11-16 09:46:32 -05:00
mazmazz
b69756f5e5 Use bitshifting for menu IDs and hierarchy instead 2018-11-16 09:22:27 -05:00
mazmazz
9dab65fce0 Add MM menutype flags to menu defs 2018-11-15 19:41:27 -05:00
mazmazz
c8f5aa688a Express menu defs as flags 2018-11-15 19:41:05 -05:00
mazmazz
f7cc62d9d9 Define menu enum, encode hierachy by number places 2018-11-15 15:51:29 -05:00
mazmazz
c883b13b5d Merge branch 'tutorial-time' into tutorial-time-firstprompt 2018-11-11 09:21:10 -05:00
toaster
62927bbb76 * Hold the pause button to restart a record attack run!
* Obligatory GIF: https://cdn.discordapp.com/attachments/400761370800422922/456586705424875520/srb20047.gif
* Show powerup display in singleplayer even while holding Game Status button.
2018-06-14 00:58:28 +01:00
toasterbabe
8372bde91b Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into more_about_menus 2017-10-18 21:02:50 +01:00
toasterbabe
40ef1335a1 * Smiles hardcode!
* Add a default behaviour to followmobj (just basic A_CapeChase).
* Allow for modifying which character starting a new SP game should start you on, relative to the first valid character. (SOC's "startchar" variable)
* Make MF2_SHADOW transferrable via linkdraw.
* Modify P_GetSkinSprite2's recursion limiter to have zero chance of ever infinitely looping.
2017-10-03 18:18:18 +01:00
Alam Ed Arias
01602fa1f1 Build: fixup warnings in Debug builds 2017-09-28 16:54:26 -04:00
toasterbabe
295b100df4 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into more_about_menus
# Conflicts:
#	src/m_menu.c
2017-09-27 14:43:09 +01:00
toasterbabe
918edda672 * Make exitlevel only work if someone's at the exit or you've visited the next map before.
* Added a message to suggest changing cheats before release to a future self.
* Removed the gametype selection menu, and baked its contents into the level platter instead (with an additional dose of pretty - https://cdn.discordapp.com/attachments/293238104096112641/359338275338584064/unknown.png)
2017-09-18 15:04:38 +01:00
toasterbabe
00c62e6d88 * Removed unused info from struct as part of clean up.
* Made botskin being invalid make the entire save invalid.
2017-08-23 22:05:11 +01:00
toasterbabe
6e7605e4f3 * Add new graphics for the no save and ultimate slots, and make the invalid files look a little different.
* Push big endsign images downwards.
* Add a way to disable the ultimate slot.
* BwehHehHe()
2017-08-21 16:02:13 +01:00
toasterbabe
706eb5efeb * New, pretty save select! Requires patch.dta to really appreciate.
* Changed the save format a little more, since I had free reign over it.
* Modified the string drawing functions to not awkwardly clip at the very edges of the screen, considering the relevant patch drawing functions avoid out-of-range memory writes.
2017-08-20 23:18:47 +01:00
toasterbabe
fd63db0aaf Starting lives revamp, per the 2.2 priorities topic list!
* Each time you die, the number of game overs you've had is counted.
* Your save file updates to record this.
* The number of startinglives is determined by the number of times you'ved game-overed, with the maximum being infinity lives (thereby providing a cap on the number of game overs you can go through in a typical game).

Requires a new patch.dta, but I'm not uploading that yet because not happy with the icon we've got going for infinity lives on the save select menu.
2017-08-18 00:58:16 +01:00
toasterbabe
4e0d015803 Good:
* Improved layout of addons menu.
* Disabled input for 5 tics after a console-touching enter key command on the menu, so that weird stuff doesn't happen.
* Added Add-on options.
* cv_addons_option - chooses save location. A little smaller in scope than the weird Default/HOME/SRB2/Custom thing for screenshots - now it's SRB2 Folder and Custom.
* cv_addons_folder - goes with Custom for above.
* cv_addons_md5 - chooses whether to identify files on the addons menu with name comparison only, or with checksum comparison as well (more intensive hence not default).
* cv_addons_showall - chooses whether to show just supported file extensions, or all
* Some minor other refactors.

Bad:
* Screenshot options menu crashes on access for some reason (to do with itemOn not being valid?????) looking into
2017-05-07 17:14:57 +01:00
toasterbabe
8f2490d588 Search!
https://gfycat.com/DizzyEnergeticCygnet

I will make it prettier.

(Also: stristr. Since the Windows (and others?) standard library doesn't have it for some reason, I modified code someone put on StackExchange as a stopgap; once I'm ready to get on IRC for the day, we'll discuss attribution/rewriting.)
2017-05-05 16:29:46 +01:00
toasterbabe
3efa66d537 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/m_menu.c
2017-04-04 21:03:35 +01:00
toasterbabe
6fa319041a A serious defuckening of my fancy character select code. 2017-03-17 14:27:17 +00:00
toasterbabe
7f7d51a474 comment updates 2017-03-06 19:03:05 +00:00
toasterbabe
cf45067d9c Gametype descriptions.
https://gfycat.com/RelievedUnselfishChinchilla (competition's desc is slightly reworded but I'm too lazy to retake the gfy)
2017-02-18 17:09:03 +00:00
toasterbabe
c882851f14 Wide icons for the level select platter's exclusive usage.
https://gfycat.com/MenacingClearAngora

More for what's coming than what's here right now, but still quite pretty as a placeholder.
2017-02-17 01:45:21 +00:00
toasterbabe
d670189c89 * Fixed the Mode Attack cv_nextmap issue Salt found.
* Improved the defaulting system to work cross-gametype.
* Cleaned up the code. Less hacks!
2017-02-05 21:20:32 +00:00
toasterbabe
3aa7573c86 Made code repetition less. 2017-02-02 16:10:37 +00:00
toasterbabe
590ffae391 Maximum length for name strings on level platters. http://i.imgur.com/FFXmVlY.png 2017-02-02 12:52:39 +00:00
toasterbabe
7178ae5916 Hefty refactor.
* Named all the new functions/etc "Platter" instead of "NewList", to make maintenence easier and also because it sounds delicious.
* The code, as a whole, is much cleaner.
* Allows for multiple items under the same heading now, with highlights and spacing consistently handled.
* Allows for picking up where you left off between menus now (assuming the same map is available on multiple screens).
* Defined M_CanShowLevelInList in terms of the two compartmentalised functions cleaved from it, in order to ensure consistency and prevent code duplication.
2017-01-27 14:42:57 +00:00
toasterbabe
4a68f191c8 Mostly-complete structural work, very much incomplete rendering work. 2017-01-26 19:14:52 +00:00
toasterbabe
029fd156a8 Some nice optimisations to the new character select menu - no need to iterate up to 3 times a tic at the expense of ((32*2 + 2)*UINT8 - 3*INT32) memory. 2016-08-06 22:41:25 +01:00
toasterbabe
9557cad235 Noticed some bad logic and typos, so correcting. 2016-07-17 15:56:31 +01:00
toasterbabe
fcfe8c0132 More clearly defined handling for replacing character select images. Specifically takes into account whether the hidden character was added in this file or a seperate one.
Also, removed some commented out code regarding character selects, and removed a useless case for R_SkinAvailable().
2016-07-12 20:10:01 +01:00
Inuyasha
f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
Alam Ed Arias
7cb77075d1 SRB2 2.1.11 release 2014-08-26 23:56:30 -04:00
Alam Ed Arias
a03da73115 SRB2 2.1.2 release 2014-03-17 08:13:16 -04:00
Alam Ed Arias
b93cb1b65a SRB2 2.1 release 2014-03-15 13:11:35 -04:00