Commit graph

590 commits

Author SHA1 Message Date
mazmazz 4d3ddda5b5 Sky scroll attempt 2018-11-16 14:34:28 -05:00
mazmazz 9c76c61384 Extra title SOCs: Music and FadeScreen. TitleScrollYSpeed in MainCfg 2018-11-16 14:18:35 -05:00
mazmazz 199bc155bc Make MENU dehacked block top-level; TITLESCREEN is not necessary 2018-11-16 12:12:11 -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
Alam Ed Arias 4e9fc881a2 Fix =sizeof-pointer-memaccess: argument to ‘sizeof’ in ‘strncpy’ call is the same expression as the source; did you mean to use the size of the destination? 2018-11-14 16:26:46 -05:00
Alam Ed Arias d14f87b8c6 Cleanup whitespace 2018-11-14 10:54:33 -05:00
mazmazz 8f87bf82cd Merge branch 'master' into musicplus-core 2018-11-13 13:46:30 -05:00
mazmazz 6c69dd1f78 Merge branch 'master' into text-prompts 2018-11-13 11:12:44 -05:00
Digiku b6a0b2f1d9 Merge branch 'tutorial-time' into 'master'
Tutorial mode handling

See merge request STJr/SRB2Internal!201
2018-11-13 10:49:02 -05:00
Digiku 3ccfd57fba Merge branch 'tracerangle' into 'master'
Line Exec 457, 458: Track mobj's angle to tracer; executes line tag if mobj faces away

See merge request STJr/SRB2Internal!198
2018-11-13 10:48:01 -05:00
mazmazz c1c815ce6e Compile errors 2018-11-13 10:31:06 -05:00
mazmazz 75c4a96e69 NextTag implementation
* Adjust named tag implementation to be more portable
* Next page adjustments
2018-11-13 00:13:36 -05:00
mazmazz eb7718bfeb PicToStart implementation; fix NumPrompts limitation error 2018-11-12 23:16:24 -05:00
mazmazz a362407886 Merge branch 'control-selector' into text-prompts 2018-11-12 21:11:53 -05:00
mazmazz ce7f168568 Fix PICSMETAPAGE 2018-11-11 14:50:10 -05:00
mazmazz 424bc557c2 Dehacked typos 2018-11-11 14:44:57 -05:00
mazmazz c883b13b5d Merge branch 'tutorial-time' into tutorial-time-firstprompt 2018-11-11 09:21:10 -05:00
Monster Iestyn e4f157786c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/doomtype.h
#	src/hardware/hw_clip.c
#	src/hardware/hw_main.c
#	src/sdl12/sdl_sound.c
2018-11-10 19:18:34 +00:00
Monster Iestyn fced19d291 Merge branch 'master' into next 2018-11-10 19:05:33 +00:00
mazmazz 9a038b28e1 Implemented GFX for text prompts
* PicMode SOC
* PicToLoop SOC
2018-11-10 12:42:13 -05:00
Monster Iestyn 268bde3fdf Merge branch 'public_next'
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/dehacked.c
#	src/g_game.h
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/lua_baselib.c
#	src/lua_hook.h
#	src/lua_hooklib.c
#	src/lua_hudlib.c
#	src/lua_libs.h
#	src/lua_maplib.c
#	src/lua_script.c
#	src/m_misc.h
#	src/p_mobj.c
#	src/s_sound.c
#	src/sdl12/mixer_sound.c
#	src/w_wad.c
2018-11-10 15:41:57 +00:00
mazmazz 3d9ce630d2 SOC for prompt gfx and music 2018-11-10 10:33:58 -05:00
mazmazz a197c19742 Prompt page string field length adjustment; check empty named tag before prompt search 2018-11-10 09:38:32 -05:00
mazmazz e1e94c3af2 Added page tags and find page by tag
* Added tutorial mode defines to this branch
2018-11-10 09:32:53 -05:00
mazmazz 7ac641450f Text prompt Hide HUD dehacked 2018-11-09 23:50:25 -05:00
mazmazz 9ee894f777 Make gray/black text prompt backcolor darker in OpenGL 2018-11-09 22:52:13 -05:00
mazmazz 7daf5d4727 Set up separate background color for prompts vs. console 2018-11-09 22:38:55 -05:00
mazmazz b8897db308 Fix crash when page text is empty; add checks for MAX_PROMPTS and MAX_PAGES 2018-11-09 21:55:14 -05:00
Monster Iestyn d8f3a20e65 Merge branch 'Playerquit_hook' into 'next'
"PlayerQuit" Lua Hook

See merge request STJr/SRB2!127
2018-11-08 15:53:35 -05:00
Monster Iestyn a9cfd6a781 Merge branch 'lua-slopes' into 'next'
Lua support for slopes

See merge request STJr/SRB2!307
2018-11-08 15:52:44 -05:00
Monster Iestyn 0bdbdd1b1e Remove FUNCMATH from functions with a void return value or args, or examine variables other than their args (which could be modified) 2018-11-08 16:26:55 +00:00
GoldenTails a3bc7ddfa0 Add Lua Ultimate Mode global variable so people can use it. 2018-11-06 18:09:45 -06:00
mazmazz c16c59fd73 Support underscores -> spaces in TextPrompt name 2018-11-04 22:32:47 -05:00
mazmazz 6356a6cf2e Lowercase font for body text; added ICONFLIP parameter 2018-11-04 22:32:46 -05:00
mazmazz 73ae273348 Implemented auto-advancing TextPrompts
* Fixed TextSpeed
* New TimeToNext
* Other bugs
2018-11-04 22:32:46 -05:00
Monster Iestyn d327f82e85 Fix errors found when compiling 2018-11-04 22:32:46 -05:00
mazmazz 971151ab83 Fixes: MetaPage, AdvanceToNextPage, center/scale icons, button handling 2018-11-04 22:32:46 -05:00
mazmazz a3d000a37e Kind of support line breaks with PAGETEXT. Can't trim trailing whitespace yet. 2018-11-04 22:31:52 -05:00
mazmazz ef241b4521 Broken attempt at supporting linebreaks for PageText, like cutscenes 2018-11-04 22:31:52 -05:00
mazmazz 95c68c331a TextPrompt/Page freeslots; SOC Prompt/Page parsing 2018-11-04 22:31:52 -05:00
mazmazz cf6a6991cb Trigger line exec by whether mobj is facing its tracer
* MFE_TRACERANGLE
* Thing 758 MT_ANGLEMAN
* mobj thinker behavior
* Line Exec 457/458 Enable/Disable
2018-11-04 16:28:25 -05:00
mazmazz eec3f630cf Merge remote-tracking branch 'origin/master' into tutorial-time 2018-11-03 10:58:11 -04:00
Monster Iestyn e9ea1b47d5 Fix the game crashing if you put params with no "=" for some reason in some of the SOC blocks, just stop going through the lines if that happens 2018-10-31 19:26:29 +00:00
Monster Iestyn e15ed742c1 add ESLOPE ifdef checks around all the Lua slope support code that was there before I was involved 2018-10-21 16:27:54 +01:00
Monster Iestyn 7d4e27937d Merge branch 'next' into lua-slopes
# Conflicts:
#	src/lua_maplib.c
2018-10-20 18:31:06 +01:00
Monster Iestyn 8ab4915b5b Whoops these should be L not gL here (not that it makes much difference normally though) 2018-10-11 21:44:25 +01:00
mazmazz 1c314833db Merge branch 'musicplus-core' into musicplus-feature-postboss 2018-09-19 18:53:46 -04:00
mazmazz 1da3b921dd Merge remote-tracking branch 'origin/master' into musicplus-core 2018-09-19 18:53:18 -04:00
Digiku 106afd48af Merge branch 'nights-score-lap' into 'master'
NiGHTS: Intermission Bonuses

See merge request STJr/SRB2Internal!159
2018-09-19 11:03:14 -04:00
Digiku 1dadee6804 Nights intermission dehacked: a comment 2018-09-19 10:45:51 -04:00
mazmazz c60d61a493 musicplus-jingle 2.2 -> 2.1 backport 2018-09-18 15:10:00 -04:00
mazmazz c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
mazmazz c5d4ff5712 Merge branch 'musicplus-core' into musicplus-feature-postboss 2018-09-16 23:32:18 -04:00
mazmazz 8e4569381f Merge branch 'master' into musicplus-core 2018-09-13 13:24:46 -04:00
mazmazz eb590910b2 Added NIGHTSLINK bonus type for the 2.1 Link Bonus 2018-09-09 01:13:02 -04:00
mazmazz bc2f48a018 Merge branch 'master' into nights-dronebox 2018-09-07 09:06:32 -04:00
mazmazz fe2d1e9020 Merge branch 'master' into flicky-things 2018-09-06 08:09:02 -04:00
Monster Iestyn bcc9e58d0e Merge branch 'master' into tutorial-time 2018-09-04 15:54:50 +01:00
mazmazz dabd7f99e6 Add MUSICPOSTBOSSFADEIN 2018-09-01 13:10:50 -04:00
mazmazz a44be49535 Merge remote-tracking branch 'origin/master' into nights-inufixes 2018-08-30 08:13:34 -04:00
Monster Iestyn a48326383c Merge branch 'master' into hud-cleaning
# Conflicts:
#	src/y_inter.c
2018-08-29 16:39:02 +01:00
Digiku 4882b7c3f8 Merge branch 'intermission-bonuslivesmax' into 'master'
Intermission: MaxBonusLives level header option for # of lives in score tally

See merge request STJr/SRB2Internal!162
2018-08-29 04:25:03 -04:00
mazmazz 7d882c482f UINT32 muspostbosspos fix 2018-08-25 16:28:56 -04:00
mazmazz 4dd6b733d6 MUSICPOSITION -> MUSICPOS
* Added muspos level header var to lua

# Conflicts:
#	src/dehacked.c
#	src/lua_maplib.c
#	src/p_setup.c
2018-08-25 16:23:01 -04:00
mazmazz 493bc86b08 MUSICPOSITION -> MUSICPOS
* Added muspos level header var to lua
2018-08-25 16:21:34 -04:00
mazmazz ed8288a028 MUSICPOSTBOSSPOSITION -> MUSICPOSTBOSSPOS 2018-08-25 16:18:09 -04:00
mazmazz 21d08b39bf Merge branch 'musicplus-core' into musicplus-feature-postboss
# Conflicts:
#	src/dehacked.c
#	src/p_setup.c
2018-08-25 16:11:29 -04:00
mazmazz 610a83f60e Added MUSICPOSTBOSSTRACK and MUSICPOSTBOSSPOSITION level header/variables 2018-08-25 16:10:46 -04:00
mazmazz a3ed60d7bd Added MUSICPOSTBOSS level header for boss post-defeat music 2018-08-25 16:02:12 -04:00
mazmazz 578e386e40 Add MUSICPOSITION level header and mapmusposition variable to instantly jump to position
* Cutscene support too!
2018-08-25 15:59:20 -04:00
mazmazz ec2bc29bb1 Add MUSICRATE to dehacked 2018-08-25 08:08:04 -04:00
wolfy852 6ddee877c5 Expose NEWTICRATE and NEWTICRATERATIO to Lua
This should keep 70FPS-compatible scripts from throwing nil value errors.
2018-08-25 03:40:43 -05:00
Monster Iestyn 011459790f Add INFLIVES as a constant that Lua/SOC can use 2018-08-23 22:18:52 +01:00
Monster Iestyn e37f6585fa Merge branch 'master' into tutorial-time 2018-08-22 21:30:29 +01:00
Monster Iestyn f8c4c6dbc4 Hardcoded Brambles.lua from CEZRes.pk3, changed thing type to 1125 2018-08-22 17:16:11 +01:00
mazmazz d8c565407c MaxBonusLives level header option for # of lives in score tally 2018-08-13 14:17:38 -04:00
mazmazz 4642c75025 MT_IDEYAANCHOR info and spawn logic 2018-08-13 02:03:36 -04:00
mazmazz 89f57cb111 Have just one NiGHTS bonus option: NIGHTS and LINK together 2018-08-12 20:25:35 -04:00
mazmazz feadcbfc94 BONUSTYPE typo; bonus alignment 2018-08-12 19:32:11 -04:00
mazmazz 30d57eac79 NiGHTS bonus implementation 2018-08-12 19:25:21 -04:00
Monster Iestyn 0da21244c0 Added "Tutorialmap" MainCfg option for SOC 2018-08-12 14:30:49 +01:00
mazmazz c8dcb57e83 Remove ORBIDYA CENTER states, we don't need 'em 2018-08-11 12:06:17 -04:00
mazmazz c9c0219393 ORBITEM CENTER states for A_OrbitNights target height offset 2018-08-10 23:49:02 -04:00
mazmazz e0e77d873b Nights Drone mobj and state entries
* New entries: NIGHTSDRONE_MAN, NIGHTSDRONE_SPARKLING
* NIGHTSGOAL renamed to NIGHTSDRONE_GOAL
* MT_NIGHTSDRONE repurposed as an invisble, no-gravity hitbox
2018-08-10 18:24:31 -04:00
mazmazz d405bdfd9b Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into nights-inufixes 2018-08-10 15:00:41 -04:00
mazmazz 07c882139b Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into flicky-things 2018-08-10 14:58:27 -04:00
mazmazz fe61678437 MT_FLINGBLUESPHERE and MT_FLINGNIGHTSCHIP entries 2018-08-10 02:18:20 -04:00
mazmazz 09f4309f45 Standardize NiGHTS link timer w/ NightsLinkTics MAINCFG option 2018-08-09 23:14:14 -04:00
mazmazz 38eae01400 MT_FLICKY_x_CENTER defs 2018-08-09 12:08:06 -04:00
mazmazz d5f32cc0e5 Flicky stand states 2018-08-09 01:44:21 -04:00
Latapostrophe ad187c26f0 Repositionning chat & bugfixes 2018-07-31 15:57:19 +02:00
Latapostrophe ac7c249fd2 SRB2chat test rework 2018-07-31 11:10:02 +02:00
toaster 37e1fae07d Fixing dehacked.c consistency. 2018-06-13 18:10:32 +01:00
toaster 13053bd1ba FINAL CHANGE, I PROMISE, I THINK
* MainCfg property smpstage_start - controls the special stage multiplayer games go to.
2018-06-06 16:07:14 +01:00
toaster adf8f0e391 * Some minor info.c tweaks I discovered I needed to make while transferring material across from patch.dta to srb2.pk3.
* Making the particle generator dynamic, as requested by Nev3r.
* i....... think this is done? i'll double check in the morning.
2018-06-06 00:40:23 +01:00
toaster 3725203bcd Bit of a random one today, but the branch approaches completion...
* Bomb sphere! Paraloopable hazard. Replaces MT_SPECIALSPIKEBALL.
* Blueberry bushes, both normal and Xmas, from patch.dta.
* BSZ tulips, also from patch.dta!
* Frozen Hillside badniks - Penguinator and Pophat.
* Frozen Hillside ice decoration!
* Fixed some big bugs with the DSZ light beams.
* Made multi-mare special stages work, in a troll way - the Chaos Emerald disappears in a puff of smoke, and the Spinbobert laughter sound plays... >:3c
* Reverted the mobjtype number changes from the source SOC/Lua, which we can do later when doing a final pass of the levels.
* State optimisation.
* Serious cruft-removal of the NiGHTS drone thinker.
* Fix the issues where the player wouldn't curl into jump in waterslides or dropping off rope-hangs.
* Tweak NiGHTS player flashing.
* Add text colour support to the titlecard font.
* Use that to make the PRESS SPIN\nMID-JUMP thing when you get all Chaos Emeralds use the titlecard font for readability.
* Fix the GOT ALL EMERALDS page not lasting the correct, extended amount of time.
* Fix that thing where flying mid-spin didn't enact autobrake.
* Modify graymap a little on Sryder's suggestion.
* [COMPLETELY UNRELATED] fix that thing where the addons menu will fail on files/paths with spaces in [/COMPLETELY UNRELATED]
2018-06-05 17:22:28 +01:00
toaster 6e07631cc9 MONSTER COMMIT.
OLD SPECIAL STAGES:
* Spheres in old special stages instead of rings!
* Individual timers in old special stages instead of a global one!
* Old special stages use a variant of the NiGHTS HUD now!
* Special stage damage in old special stages loses 5 seconds of time instead of 10 rings/spheres!
* All damage gained through old special stages is converted to special stage damage! As a consequence, the special spikeball has no need to be special anymore.
* Made emerald gaining function be based on special stage number rather than gained emeralds!
* Consistency with...

NiGHTS SPECIAL STAGES:
* Spheres now flash in bonus time. https://cdn.discordapp.com/attachments/400761370800422922/452590553100713984/srb20032.gif
* Sphere and ring mapthingnums are now less fucked up in 'em. (Rings are 300, same as usual, while Spheres are now 1706 replacing NiGHTS Wings.)

SPECIAL STAGES IN GENERAL:
* useNightsSS is now dead. Each individual special stage is now assessed for NiGHTS-mode behaviour based on maptol & TOL_NIGHTS.
* CRAWLA HONCHO\n CAN NOW BE\n SUPER CRAWLA HONCHO end tally modification now also includes a mini-tutorial on turning super. https://cdn.discordapp.com/attachments/400761370800422922/452844894113759233/srb20036.gif
* SONIC GOT A CHAOS EMERALD? https://cdn.discordapp.com/attachments/400761370800422922/452623869497573386/srb20034.gif

NiGHTS NON-SPECIAL STAGES:
* Colour Chips and Star Chips! Replaces Spheres and Rings of NiGHTS Special Stages.
* Colour Chips turn yellow in bonus time.
* Ideya!
* Its own "drowning" music!
* All of the object types for Dream Hill.
* GIF: https://cdn.discordapp.com/attachments/400761370800422922/452844894113759233/srb20036.gif

RANDOM BS:
* Turn super with the spin button instead of the jump button!
* Followmobj now correctly set with P_SetTarget instead of pointer assignment.
* Emerald hunt uses new sprites!
* Made unlock noise different from emblem gain noise! (It's the CRAWLA HONCHO CAN NOW TURN yadda yadda sound from S3K now.)
2018-06-03 22:41:54 +01:00
toaster 8d00192fee New CEZ hardcoding done!!
* Better Robo Hood arrows.
* Shield break animation for Egg Guard. (Temporary state slot so I don't have to compile from scratch until I do something more complicated later.)
* Suspicious Facestabber Statue animates a little before bursting open.
* Fix Facestabber radius.
* Fix some stuff in Flicky functions that could be overwritten in Lua call actions by mistake.
2018-05-31 21:00:12 +01:00
toaster 2ec1c3cd9d First commit on new tablet-laptop!
* Robo Hood.
* Hi MI, I know you're looking at this just because it features Robo hood. :V
2018-05-30 23:16:57 +01:00
toasterbabe cb86ed7721 * Castlebot Facestabbers.
* Facestabber statues, of both the suspicious and non-suspicious kind.
* New object type for the end of grabbable chains.
* I moved my compilation .bat file to my Releases folder, so it should .gitignore .bat's.
* Random extra stuff.
2018-05-24 01:40:57 +01:00
toasterbabe 847f8b4ef0 * CEZ decorations!
* Moved a bunch of stuff that had no business being in mapthing spawns into mobj spawns.
2018-05-22 11:04:28 +01:00
toasterbabe ee42132ed1 * Bumpers and Balloons in a more final state.
* Blue diagonal springs, because that gap is very, very odd.
* Improved A_SpawnFreshCopy.
* Tweaked P_LookForEnemies for consistency's sake. (Previously, it was impossible to make a spring that could neither be homing-attacked or attraction-shotted.)
2018-05-20 00:04:39 +01:00
toasterbabe 26d13db548 * Crushtacean!
* Behaves a bit differently to the one in DSZres.pk3.
   * Can now punch DSZ mines!
   * Also has mapthingnum 126 instead of 610.
* Some other mapthingnum changes.
   * DSZ2 stalagmite is now 1009, formerly 999.
   * Big DSZ gargoyle is now 1011, formerly 1009.
2018-05-14 01:19:24 +01:00
toasterbabe a738ef99e3 * DrT's Spincushion hardcoded.
* Make the MF_PAIN stuff ONLY depend on mass, using the bottom 8 bits for the type and the custom sound in the upper ones.
* A bunch of cleanup of random other stuff, including an unused Deton state and an unused Jetty type's sprite.
2018-05-13 14:09:20 +01:00
toasterbabe 8a61d87961 * Add new damagetype flag (DMG_CANHURTSELF) that allows a player to hurt themselves indirectly.
* Add damagetype to P_RadiusAttack (optinteger in lua, A_Explode var1).
* Removed the prevention of MF_BOSS objects from getting P_RadiusAttacked. This was a holdover from DooM (I checked) - a way to prevent the Cyberdemon from gibbing itself when firing point blank into a wall, and also a way to make it and the Spider Mastermind harder.
* Enemies are solid to other enemies movement-wise now.
* (Fun little aside - if you remove MF_SOLID from a monitor, it now behaves like they did in Sonic Adventure (poppable by colliding with, not just attacking).
* Fixed Metal Sonic battle conflict in MF_PAIN/mass not picked up earlier.
* Miscellaneous tiny code tweaks.
2018-05-08 23:26:36 +01:00
toasterbabe d0575f7fb0 * Hive Elementals and Bumblebores, plus associated useful action functions.
* Made Facestabbers take two hits and have associated pain/death animations. No other changes, just wanted to make sure THIS was done.
* Move Bubblebuzz-related stuff to go alongside the secret badniks and etc.
* MF2_INVERTAIMABLE. Inverts whether P_LookForEnemies can get at; replaces a hardcoded thingy.
2018-05-04 21:30:15 +01:00
toasterbabe 5cc1befcad * Haunted Heights! Smashing spikeball, Cacolantern, Spinbobert and Hangster, along with the Spider and Bat flickies and general decoration/ambience stuff.
* MF_PAIN and MF_MISSILE now support setting damagetype via their Mass parameter. The two existing conflicts - the fuse setting for the grenade weapon ring and the Cybrakdemon napalm bomb - had these moved to other free parameters.
* A_ConnectToGround is EXTREMELY useful for palmtrees and stuff.
* Some other, relatively hacky A_ functions.
* (Unrelated) Remove the need for a "Mario block mode" for the token by making it natively compatible.
* Spikes and their time-offsetting via that Lua script sphere made. Also allow for wallspikes to do it via their angle/360.
2018-04-28 15:13:44 +01:00
toasterbabe 1eb84f57c5 * Billiards mines! With support for both above and below water, replacing both the below-and-above-water old mines at once.
* Explosion executors.
* Minor refactor of P_KillMobj.
2018-04-26 20:18:51 +01:00
toasterbabe 976331fb03 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into hardcoding-time-again 2018-04-08 16:23:19 +01:00
toasterbabe ff9775225e Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into delag_maces
# Conflicts:
#	src/p_mobj.c
2018-04-07 01:54:43 +01:00
toasterbabe 6d59551afd Mace optimisation!
* Handle all chain objects as a hnext/hprev chain.
* When removing mobjs with hnext/hprev, "repair the chain" (make the h links meet).
* Fix hidden slings, which I accidentially broke when I revamped maces the first time.
* Kill MF2_MACEROTATE. Not needed for anything anymore.
* P_MaceRotate now available to Lua to make up for it.
* Related: Made modifying hnext/hprev using Lua safer, so it keeps the reference counts in play.
2018-04-01 20:54:19 +01:00
toasterbabe d9b5155e6e * Make Tokens appear in competition.
* Tweak thrown ring colours.
* Make Armageddon shield loop properly.
* Tweak drowning numbers to be consistent between third and first person.
2018-03-30 21:49:15 +01:00
toasterbabe 98601dc757 A lot!
* cv_powerupdisplay. Never, First-person only (default), Always.
* New monitor stuff.
* Fixed hitmessages.
* Some CTF stuff.
* Aaaaugh it's a lot I hate myself I need to work on my coursework.
* I'll figure out what I did here in the merge request when that's done.
2018-03-26 23:53:09 +01:00
toasterbabe 33afd94252 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into pretty_stuff
# Conflicts:
#	src/d_main.c
#	src/st_stuff.c
2018-03-24 17:17:01 +00:00
toasterbabe 7885ae57e2 * Allow for V_ flag control for hudinfo SOC/Lua stuff through hudinfo[n].f (for flags).
* Fix Old Special Stage offsets.
* Fix drowning number offsets.
* Remove useless "WS" macros.
2018-03-19 23:08:51 +00:00
Monster Iestyn bfbe69c627 Merge branch 'master' into hardcoding-time-again 2018-03-04 19:22:08 +00:00
Monster Iestyn 61923f3b1f Merge branch 'public_next'
# Conflicts:
#	src/sdl/i_system.c
2018-03-04 19:18:13 +00:00
toasterbabe 33d5baa2aa * Add new console text colours - sky, purple, aqua, peridot, azure, brown, rosy, and invert.
* Remove redundant check from V_DrawFadeScreen().
* Clean up potential endless sound source in Race HUD.
2018-03-02 13:32:55 +00:00
Monster Iestyn ad8c51ab8f removing stupid dumb useless code fish 2018-02-21 22:45:51 +00:00
Monster Iestyn c0bb511c1f Hardcoded LUA_THZT from THZ1.wad, giving us the funny-looking steam whistle tree
This concludes hardcoding of scenery items for THZ
2018-01-22 18:41:14 +00:00
toasterbabe 2141754e54 V_PERPLAYER. (Hooh boy.)
* Completely redid how splitscreen works, with eventual support for quads. Squish per-player stuff automatically into the right places! Works in GL, associated flag kills V_SPLITSCREEN.
* Seriously update the lives-drawing function for all gametypes, with strings that replace the lives number whenever it's missing (deprecates SKINNAMEPADDING).
* Improved how the nosshack works, alongside many other refactorings.
2018-01-20 22:14:24 +00:00
Monster Iestyn 82ac8b6a1c Hardcoded SOC_FWR6 from THZ1.wad, also tweaked MT_THZFLOWERB's hitbox 2018-01-19 17:56:18 +00:00
Matthew Marsalko 82f00215ac Remove unncessary extra boss frames 2018-01-02 11:33:13 -08:00
Monster Iestyn a79d064d15 The contents of DSZ-f16.wad's LUA_A000 Lua script are in now
Thing type numbers may be changed later
2017-12-08 18:26:32 +00:00
toaster c84d4261d1 Merge branch 'unca_scrooge' into 'master'
The hardcoded part of ACZ3 so far

See merge request STJr/SRB2Internal!124
2017-11-02 16:43:11 -04:00
toaster 605e51f6f3 Merge branch 'more_about_menus' into 'master'
More about menus

Closes #72

See merge request STJr/SRB2Internal!122
2017-11-02 16:31:51 -04:00
toaster 927e74e406 Merge branch 'FileManagement' into 'master'
File management - PK3 support.

See merge request STJr/SRB2Internal!121
2017-11-02 16:27:54 -04:00
Monster Iestyn fbe5654477 add quick error messages to make toaster happy 2017-11-01 17:11:10 +00:00
Monster Iestyn a244948f21 fix action_call index numbers for the args, add missing breaks after LUA_TUSERDATA code in infolib (I am dumb dumb dumb dumb dumb dumb) 2017-11-01 16:52:12 +00:00
Monster Iestyn 42b955f4ca getActionName: added support for custom actions (A_ prefix functions only) 2017-10-31 16:47:24 +00:00
Monster Iestyn 440ada120d Merge branch 'master' into lua-action-userdata 2017-10-30 21:33:40 +00:00
toasterbabe ee4b891318 Since I'm on the branch: bugfix a thing with introchanged/titlechanged. 2017-10-27 22:08:01 +01:00
toasterbabe 9a10dfeaee Replaced the laggy randomised-at-runtime static with sufficiently random low-impact pregenerated static. Requires new patch.dta. https://cdn.discordapp.com/attachments/293238104096112641/372770688890830859/srb20003.gif 2017-10-25 16:40:21 +01:00
toasterbabe eea5c9d56a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into unca_scrooge
# Conflicts:
#	src/dehacked.c
#	src/info.h
#	src/p_enemy.c
2017-10-21 12:48:41 +01:00
Monster Iestyn 3e595b8f1b Merge branch 'master' into ports-chopping-block 2017-10-14 20:47:04 +01:00
toasterbabe 87fc24ccbb Fancy super transformation changes! About to go out for dinner, so no major writeup,but let's just say all this changed code means that the transformation animation is smoother in colour change. 2017-10-04 17:45:03 +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
Monster Iestyn 49542cdaa1 Remove XBOXSTATIC and FILESTAMP, since only the XBOX port needed them 2017-09-29 19:46:23 +01:00
Alam Ed Arias 1be137f461 cleanup 2017-09-28 11:10:24 -04:00
Alam Ed Arias f1a347e55f Merge branch 'public_next' into master 2017-09-28 11:01:20 -04:00
toasterbabe 48c0ef2362 Remove extraneous DEH_WriteUndoline's. 2017-09-19 13:21:48 +01:00
toaster 3cc14e3985 Merge branch 'directionchar' into 'master'
Autobrake & decoupling player sprite angle from camera angle

See merge request !69
2017-09-19 07:56:22 -04:00
toaster ecfeb7b0af Merge branch 'spr2fixes' into 'master'
Sprite2 MD2s and customisable defaulting

See merge request !115
2017-09-19 07:49:04 -04:00
toasterbabe f90d595332 * cv_directionchar and cv_autobrake, and their secondplayer versions (both on by default) now exist.
* cv_useranalog is now hidden from the menu.
* Directionchar now attempts to face the camera direction when you're standing still, and handles a few other states with more decorum.
* Tailsbot is now slightly more capable of keeping up with Sonic.
* pflags rearranged/adjusted, combining a few non-simulstaneous ones and turning PF_NIGHTSFALL into CR_NIGHTSFALL.
* [unrelated to branch] all ground-impact based abilities now happen more consistently with quicksand.
2017-09-16 20:25:14 +01:00
toasterbabe 3c785cbe94 * Add Skid SPR2/state in preperation for directionchar.
* Clean up spr2 md2 code.
* Experimented but then commented out some stuff for homing attack.
2017-09-09 22:12:23 +01:00
Monster Iestyn 8514251ad5 fix savegamename not prepending srb2home to itself for custom mods using their own gamedata files 2017-09-09 21:19:07 +01:00
toasterbabe 76300026f8 * Added support for sprite2s to MD2s!
- Name each frame either SPR2_**** or SUPER**** (where **** is the 4-character name)
    - If the name is 3 characters, '.' is accepted as a substitute for the '_', but a space/absent isn't (for tool-related reasons).
    - Adds a big sprite2 index array to all models, even non-player ones. Sorry!
* Made MD2 frame interpoleration only work across the same spriteset (and sprite2set).
* Made MD2 frame interpoleration happen when there's less than a quarter of a second between frames, as opposed to the hardcoded specific animation disabling.
* Fixed sprite2-related typo in dehacked.c.
2017-08-26 18:56:23 +01:00
toasterbabe 4da6169892 Add spr2defaults[] array to make sprite2 defaulting system much, much simpler to manage.
This is in preparation for a seperate project which still involves sprite2s.
2017-08-25 18:00:20 +01:00
yellowtd 519414b215 Merge branch 'master' into titlemap 2017-08-22 19:07:32 -04:00
toasterbabe 2e6c09a636 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into directionchar
# Conflicts:
#	src/hardware/hw_main.c
2017-08-16 21:40:32 +01:00
Monster Iestyn 9f726bc66d Merge branch 'new_coop' into 'master'
New Co-op

See merge request !104
2017-08-16 15:01:39 -04:00
Monster Iestyn 75d363527b Merge branch 'toastfixes' into 'master'
An assortment of relatively minor bugfixes and behaviour tweaks

See merge request !110
2017-08-16 14:58:30 -04:00
toasterbabe f6670fea76 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/r_things.h
2017-08-16 19:29:23 +01:00
toasterbabe 06dc30ea54 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch
# Conflicts:
#	src/dehacked.c
2017-08-14 21:34:37 +01:00
toasterbabe a00deee209 * Combine all shield-giving functions into a single one, since they were practically identical anyways.
* Expose P_SwitchShield(player, shieldnum) to Lua.
2017-08-10 13:57:09 +01:00
toasterbabe 1cab08e39f * Add SH_PROTECTSPIKE as a shield flag, because I kinda wanted to when I originally made shields, and SUBARASHII's cactus shield vindicated my desires.
* Tweaked the values of the shield constants slightly so that no base-game shield is made up of flags and only flags.
2017-08-09 20:56:31 +01:00
toasterbabe 780f9b1645 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/hardware/hw_md2.c
2017-08-07 20:36:14 +01:00
Monster Iestyn 42ed41aeb1 Merge branch 'maces_but_better' into 'master'
Maces but better

See merge request !103
2017-08-07 15:27:05 -04:00
TehRealSalt a813506b8f Clean whitespace 2017-08-06 23:47:39 -04:00
TehRealSalt 042729bd8f AA i'm forgetting everything today 2017-08-06 17:09:25 -04:00
TehRealSalt a5ca158622 LF_SAVEGAME flag instead of savemode
Also always save on file creation
2017-08-06 16:36:55 -04:00
TehRealSalt e24b8b917a Merge remote-tracking branch 'refs/remotes/origin/master' into save-mode 2017-08-06 01:19:33 -04:00
toasterbabe 0a1e055ba1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop
# Conflicts:
#	src/m_menu.c
2017-08-05 22:13:14 +01:00
Monster Iestyn 0ac63c0949 Merge branch 'lua-lump-load-only' into 'master'
Lua lump load only

This branch prevents the following Lua functions from being used within hooks or coroutines, to prevent netgame desync problems or any other similar oddities when using these weirdly:

* `freeslot()`
* `addHook()`
* `hud.add()`
* `COM_AddCommand()`
* `CV_RegisterVar()`

All of the above should only be called when the Lua script is being loaded (i.e. it takes place the same instant a ".lua" file or a WAD file with a "LUA_" lump is being loaded)

To put it another way:
```
//This is valid usage:
freeslot("MT_TEST")

//This is NOT valid usage
addHook("MobjSpawn", function() freeslot("MT_TEST2") end, MT_PLAYER)

```

See *Monster Iestyn/Lua lump load only* on the FTP for an exe and test script.

See merge request !87
2017-08-05 16:36:05 -04:00
Monster Iestyn 102d30fe8d Merge branch 'nights_emblems' into 'master'
NiGHTS Paraloop-special emblems

Implemented the two NiGHTS Emblem types in the TUDD via var modifications to ET_GLOBAL!
* GE_NIGHTSPULL (for it to chase you once paralooped) - Sun emblem
* GE_NIGHTSITEM (for hidden until paralooped) - Moon emblem
* Combined means that you essentially have to loop it twice.

Also, revamped NIGHTSITEM to suck a little less (and have more compatibility with MT_EMBLEM).

Check out root/!LatestSRB2Files/srb2win_branch_nightsemblems.exe with the latest patch.dta, along with root/toaster/nightstest.soc for a sample in GFZS.

See merge request !94
2017-08-05 16:03:33 -04:00
toasterbabe e2a9d47ef6 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into new_coop 2017-08-05 12:28:31 +01:00
toasterbabe cca779e4a0 * Updated Supercyan constants/names to Supersky, considering the base skincolour Cyan was renamed Sky (and a new Cyan was made independently of that).
* Swapped the names of Cloudy and Silver so that Silver meant the shinier option.
2017-08-02 13:11:21 +01:00
TehRealSalt 0b05b10bdb Merge remote-tracking branch 'refs/remotes/origin/master' into save-mode 2017-07-30 11:13:52 -04:00
Monster Iestyn 15bd6b980d Merge branch 'master' into lua-action-userdata 2017-07-25 19:10:56 +01:00
Monster Iestyn 3948ab6da5 Merge branch 'master' into lua-lump-load-only 2017-07-25 17:18:07 +01:00
toasterbabe 8941379c64 Implementation of all the new skincolours. No new exe yet, though, since I'm still doin' stuff. 2017-07-22 23:24:12 +01:00
toasterbabe ef4dc42c7c * Bustable wallspikes.
* Improve the code for busting vertical spikes.
* Improve the frame arrangement for vertical spikes' spriteset. (Requires new patch.dta)
* Make all spikes consistently do damage with DMG_SPIKE.
* (unrelated) renamed "flame stomp" to "elemental stomp" in P_HitDeathMessages
2017-07-19 16:26:49 +01:00
toasterbabe d5365a26e1 ...and revert brak, too 2017-07-15 22:42:39 +01:00
Monster Iestyn dbc7a4099f Hardcoded SOC_TOKE from patch.dta
Or rather, I killed anything to do with the old background orb, renamed all "EMMY" stuff to "TOKEN", and of course adjusted the new S_TOKEN accordingly
2017-07-15 20:15:34 +01:00
Monster Iestyn aa947ea022 Starting work for hardcoding wall spikes 2017-07-13 22:42:08 +01:00
Monster Iestyn 96ec319897 Hardcoded SOC_TREE from patch.dta
Also made sure the GFZ trees have MF2_STANDONME
2017-07-13 17:29:15 +01:00
Monster Iestyn 0dd15ed8a4 Merge branch 'master' into lua-lump-load-only 2017-07-09 15:06:15 +01:00
Monster Iestyn d9cbc8308a Merge branch 'master' into lua-action-userdata 2017-07-09 15:05:48 +01:00
toasterbabe a5f336e51a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into unca_scrooge
# Conflicts:
#	src/dehacked.c
#	src/info.h
#	src/p_enemy.c
#	src/p_inter.c
2017-07-09 12:14:24 +01:00
toasterbabe 370d9c3176 Hooh boy.
****
* MF2_MACEROTATE. Apply to any object. Replaces the indiscriminate spamming of A_MaceRotate each tic.
****
* Mace point mapthings have been slightly modified.
   - MTF_AMBUSH: bigger luke theory (has no effect on custom mace, different effect on spring mace)
   - MTF_OBJECTFLIP: flips the objects, but nothing else - just so it doesn't look out of place in gravflip sections
   - MTF_OBJECTSPECIAL: keeps it from attempting to play swinging sounds
   - angle: tag of controlling linedef
   - parameter: number of "spokes" minus one - for example, a parameter of 2 results in 3 equidistant maces rotating around the same point.
****
* Mace linedefs have been significantly revamped.
   - line dx: number of chain links
   - line dy: speed (in FU)
   - frontside floor height: Pitch (in degrees; how much it "tilts" over - Yaw influences the axis it's tilting on)
   - frontside ceiling height: Yaw (in degrees; rotation of entire thing on xy plane)
   - frontside x offset: Phase (in degrees; how far it is through the rotation cycle)
   - frontside y offset: Max speed (in FU; if less than speed, set to speed*2)
   - backside floor height: Pinch (in degrees; 0 if no backside; essentially makes rotation conical instead of wheel-like)
   - backside ceiling height: Roll (in degrees; 0 if no backside; rotates on the axis of the spinning - identical to Phase for spinning maces, but useful for rotating swinging maces as opposed to just offsetting them)
   - backside x offset: Number of "antispokes" (0 if no backside; makes that many spokes not exist so you can put another mace/chain type in there instead; for combo mace/chain instead turns them into chains directly)
   - backside y offset: Width (in number of extra chains per side; 0 if no backside; creates a "skiprope" arrangement)
   ----
   - ML_NOCLIMB: for chains and chain-mace combos, allow for player control of yaw through strafe keys
   - ML_EFFECT1: replacing the seperate mapthings, this makes a mace type swing instead of spin.
   - ML_EFFECT2: for all spokes of the mace wheel ending in maces, make the chains out of the mace type (inverted for firebars)
   - ML_EFFECT3: spawn a bonus mace type at the center(s) of rotation
   - ML_EFFECT4: don't clip inside ground
****
* Mapthing 1104 represents both spinning and swinging maces from prior versions of SRB2.
* Mapthing 1105 has gone from being a swinging mace variant to a combination of chains and maces in a single unit, provided the number of "spokes" is greater than one.
* Mapthing 1105 has gone from being a swinging chain variant to a vertical spring-on-a-ball-on-a-chain. Yellow by default, apply MTF_AMBUSH to turn into a red spring.
* Mapthing 1107 represents both spinning and swinging chains from prior versions of SRB2.
* Mapthing 1108 is completely untouched except to port over 2.1's functionality to the new backend.
* Mapthing 1109 is a Mario castle-level style firebar. This inverts the functionality of ML_EFFECT2 on the tagged linedef.
* Mapthing 1110 is a free slot should we want to implement another type of base-game mace.
* Mapthing 1111 is a custom mace. Use the linedef's frontside texture slots to identify a macetype mobjtype, then use the backside texture slots to identify a linktype mobjtype (defaults to MT_NULL if no backside).
****

Whooh. Requires new patch.dta for sprites.
2017-07-02 15:11:09 +01:00
Monster Iestyn f44d769d39 dehacked.c cleanup
*removed Texture/Patch SOC implementations, since they weren't used in the end
*removed remnants of AnimTex and some Spritename thing
*none of the save* arrays in DEH_LoadDehackedFile were being used, so I removed all related code disabled or otherwise
*DEH_LoadDehackedFile doesn't need a "wad" param anymore since only the Patch block was using it
2017-06-24 20:33:56 +01:00
Monster Iestyn fd1efff338 Added the META_ACTION userdata type to Lua, created getActionName() to return string name
SRB2's built-in action types will now all be pushed as META_ACTION, state_t.action can be assigned META_ACTION and return it

getUserdataType returns "action" for META_ACTION variables
2017-05-17 20:36:40 +01:00
toasterbabe b864e45487 Added reset for titlemap (and other title attribute) changes so that the title screen never ends up being some half-formed hybrid
Also because I could I added it for intro changes too
2017-05-14 16:45:08 +01:00
Monster Iestyn 8d483cdc47 Fix whitespace on that one line toaster pointed out 2017-05-13 20:51:10 +01:00
Monster Iestyn e45e740a65 Merge branch 'master' into lua-lump-load-only 2017-05-13 20:40:38 +01:00
yellowtd 13c748531f bootmap
(+indentation fix)
2017-05-12 20:48:20 -04:00
toasterbabe 9445455fb1 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into skin_patch 2017-05-11 22:02:12 +01:00
toasterbabe 61fcbe9b36 Implemented the two NiGHTS Emblem types in the TUDD via var modifications to ET_GLOBAL!
* GE_NIGHTSPULL (for it to chase you once paralooped) - Sun emblem
* GE_NIGHTSITEM (for hidden until paralooped) - Moon emblem

Combined means that you essentially have to loop it twice.

Also, revamped NIGHTSITEM to suck a little less (and have more compatibility with MT_EMBLEM).
2017-05-09 16:20:26 +01:00
toasterbabe 7f83e0d134 * Prevent crash if you go to a map and it doesn't exist.
* Handle music fix in smarter way.
* Enums!
2017-05-09 11:09:58 +01:00
toasterbabe dd57e47574 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into titlemap
# Conflicts:
#	src/r_main.c
2017-05-08 23:58:44 +01:00
toasterbabe 73f1550242 There are now captions for specific types of music! (Currently signified with an M, but I'll change that in a bit...) A whole lotta things needed to be modified for this, though.
* Serious refactor of - and internal exposure of - what has become S_StartCaption().
* Renaming of a few existing captions.
* The prevention of access to - or writing over - sfx_None's stuff in SOC or Lua.
* The new Lua wrapper function S_StartMusicCaption(string, tics, optional player), which essentially allows custom music captions to be created. (This is best used for stuff like final lap music in SRB2 Kart or bonus time in a thokker-like game, not a comprehensive Now Playing expy. That'd be a different kettle of fish.)

Also, updated all the lock-on stuff to use P_IsLocalPlayer instead of rolling my own.
2017-04-29 16:27:52 +01:00
Monster Iestyn 1462c638cb Added the "lua_lumploading" variable for restricting certain Lua functions to lump load time only 2017-04-25 21:45:53 +01:00
toasterbabe bcf0df7cb6 Ended up being stressed and not getting any real work done, so figured I'd finish up the checklist system. 2017-04-23 00:16:09 +01:00
yellowtd f70b89b22a titlemap - support for map camera object
allows a camera thing to be placed for alternate camera placement besides player and DM starts
2017-04-20 20:25:53 -04:00
toasterbabe bef9520556 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into Deez_NewUserXperiences 2017-04-19 23:03:47 +01:00
yellowtd 1c93b07c86 Titlemap - Maincfg variables, unplayability crash fixes 2017-04-18 17:36:54 -04:00
Monster Iestyn 0f2c9c40a2 Hardcoded the big gargoyle 2017-04-18 20:38:13 +01:00
Monster Iestyn 941ab72204 Hardcode new/updated xmas scenery object type/state info 2017-04-18 18:32:52 +01:00