Commit graph

2391 commits

Author SHA1 Message Date
toasterbabe 8b46ee76ff Disable colour profile influence on screenshots and gifs if you want. 2017-04-20 18:59:27 +01:00
toasterbabe 9d46ba281f Screenshots now contain the palette you're actively looking at, as opposed to the palette the game/map has! This makes sense for colorblind users being able to store their precious memories, and it matches up with how gifs palettise. 2017-04-20 13:17:11 +01:00
toasterbabe 29d5af61c1 Correcting gamma to match base SRB2. 2017-04-20 13:15:32 +01: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
toasterbabe c3840ba01d Colour Cube Calibration Menu! (called "Advanced Color Settings" because No Fun Allowed...)
https://cdn.discordapp.com/attachments/237798387070664724/304343382073933824/aa.png

Also, a "Reset all" button for the Monitor toggle menu, a ton of new cvars to match up with the colour cube calibration, and a bunch of variable renames related to colour cube operations.
2017-04-19 22:24:28 +01:00
Monster Iestyn 3edbf0a085 Fixed P_CheckSight not considering polyobject top and bottom at all
This was actually kind of easier to do than I expected, though I can't tell if there's anything else I need to do or not
2017-04-19 22:19:46 +01:00
Monster Iestyn f0256c41be Be gone ye old texture hack 2017-04-19 20:00:19 +01:00
Monster Iestyn 8ffa741cda Merge branch 'master' into mapthing-spawn-hook 2017-04-19 17:46:38 +01:00
toasterbabe 9b13caccae greem 2017-04-18 23:40:57 +01:00
toasterbabe c2edd6224d Figured out what was up. I didn't quite understand my original array! 2017-04-18 23:38:38 +01:00
toasterbabe 83e16da83b Introducing the Colour Cube! https://cdn.discordapp.com/attachments/293238104096112641/304015171385294850/aa.png
Basically in preperation of supporting colourblindness modes I implemented the following link when loading palettes.
http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter24.html

This basically means I can do whatever the hell I want to the colour profile of incoming paletties, and nobody can stop me. Muahahahaha etc.

Also, I added a saturation feature to show off its full potential, converted gamma from a table to a factor of the calculation, tweaked some menus and made the default value of cvars show up on sliders. Because that's how I roll.
2017-04-18 23:21:10 +01: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
toasterbabe e34e8f85e2 Including a statement about performance on the resolution menu. 2017-04-18 17:45:43 +01:00
toasterbabe 6d7355e9af Add score on Emerald Token pickup (and make the all-emerald bonus a continue in SP) as requested. 2017-04-18 17:45:23 +01:00
Monster Iestyn 0e358b3d9f Add new Pity shield orb state info, remove unused Pity states 2017-04-18 17:36:04 +01:00
toasterbabe 8e3a3e792e Moved the Race HUD down a little bit, and improved the sound selection. 2017-04-18 16:42:42 +01:00
toasterbabe 39fa4fea4a * Update some sound names.
* Make the continue and the flag capture use different sound numbers.
* Make the fancy new race countdown go beep.
2017-04-18 15:57:52 +01:00
toasterbabe 8aa3928458 A consistency error I should've caught earlier, considering this sound is used for DSZ3's missiles as well as GFZ3's laser. 2017-04-18 12:53:16 +01:00
toasterbabe cf82ef1f79 As requested by Mystic in That Topic, made the end-of-act time bonus for 30 seconds halved and removed the 45 seconds bonus option. 2017-04-18 12:33:19 +01:00
toasterbabe e93e5176c0 Consistency in firing sound naming. 2017-04-18 12:32:30 +01:00
toasterbabe 528132ad6d Sound always happens on SoundOptions menu now. It was weird not having those. 2017-04-18 12:32:06 +01:00
toasterbabe fbdc8d3d9e MP pause menu text for Player setup loses the 1 if you're not in splitscreen 2017-04-17 22:41:23 +01:00
toasterbabe c8186644e7 Improved splitscreen offsets. 2017-04-17 22:34:38 +01:00
toasterbabe 314870bdc2 Support captions for player 2 in 2-player. (You can't tell which screen the sounds are coming from without visual cues normally, so there isn't two seperate caption lists.) 2017-04-17 22:21:16 +01:00
toasterbabe dd566b77b9 More improved sound names. 2017-04-17 19:52:44 +01:00
Monster Iestyn 93efb3084e Merge branch 'mi-a-bit-of-cleanup' into 'master'
MI's unimportant code cleanup

Just removing a bunch of unused variables/function prototypes from the source code and similarly minor stuff, nothing here should change gameplay much (if at all).

See merge request !71
2017-04-17 14:43:50 -04:00
Monster Iestyn 798628eef1 Merge branch 'mi-minor-refactoring' into 'master'
MI minor refactoring

Just moving the locations of some consvar externs from d_netcmd.h to other header files in which I think they should REALLY belong. Ultimately this should not affect gameplay whatsoever, it's just code cleanup.

See merge request !81
2017-04-17 13:40:51 -04:00
toasterbabe 08e7a7cb4d Clean up captions code to allow for different numbers defined at compile time. 2017-04-17 18:15:42 +01:00
toasterbabe bec7a184f1 Bweh heh heh. 2017-04-17 17:16:21 +01:00
toasterbabe c95fcab831 Slight table update. 2017-04-17 15:55:07 +01:00
toasterbabe 74169529fb Correcting a ridiculous crash-causing oversight. 2017-04-17 15:53:54 +01:00
toasterbabe ff97b3aed4 Alter offsets of HUD numbers a little bit to satisfy OCD (have discussed with Mystic, he offered a solution similar but not identical to what I am committing) 2017-04-17 15:42:01 +01:00
toasterbabe 3551509ed8 * Remaster the sound stacking methodology such that the same sound effect updates its previous position rather than heading to the bottom.
* Put brackets around the sound names on the reccomendation of a friend who works with disability in gaming.
* Update a bunch of sound names to better match what they actually do in SRB2.
2017-04-17 14:38:56 +01:00
toasterbabe db282caefe * Fix a bug with sounds overlapping.
* Make sounds with identical names (as opposed to just identical sfx's) stack together.
* Corrected a few names.
2017-04-17 02:03:44 +01:00
toasterbabe 3e29ee3f01 Closed captioning!
* Provides a helpful description for the hearing impaired, whether permanent, temporary or situational.
* Consvar "closedcaptioning", with on/off values available.
* Only works if sounds are on. This is frustrating. I will see what I can do to allow it to work with sounds off in future, but for now it's dependent in order to properly accept or decline sounds.
* Thanks to MI for making that wiki page a lot more comprehensive a few days ago.

* Weapon ring is now a seperate sfx_wepfir instead of doubling up on sfx_thok.

* Also, made V_StringWidth work with V_NOSCALESTART.
2017-04-17 01:09:47 +01:00
toasterbabe 7c07978277 Disable irrelevant/dangerous-to-tweak options on the server menu under cetain conditions. 2017-04-16 15:00:58 +01:00
toasterbabe dff95bc30a Further tweak to server options menu, returning resynchattempts to the menu alongside taking Master Server out of data options because that doesn't make sense at all 2017-04-16 14:20:38 +01:00
toasterbabe 24192f54d1 Revamp statistics screen to put everything on the same page. http://imgur.com/a/kZrfm
* Also, inverted the direction of PGUP and PGDN.
2017-04-16 00:12:37 +01:00
Monster Iestyn a6f830ddff Add the "MapThingSpawn" hook to Lua 2017-04-15 21:41:22 +01:00
toasterbabe b0ebb40913 Headers for the controls menu. 2017-04-15 21:40:30 +01:00
toasterbabe f35cac3b55 Rejigger Server menu a smidgen to encourage scrolling down, clean up, and reinstitute hidetime. 2017-04-15 20:25:53 +01:00
Monster Iestyn 7629a0710e Make sure quakes are scaled for skyboxes
While I was at it I also refactored most of the skybox view scaling code so it isn't needlessly duplicated
2017-04-15 20:21:54 +01:00
toasterbabe 68f5460387 * Added little arrows to the statistics pages.
* Made it possible to switch statistics pages using left and right arrows. Their previous functionality has been given to Page Up and Page Down.
* Swap over header style to the new version for everything.
* Move Master Server into Data Options, since it needs to be exposed somewhere.
2017-04-15 16:41:27 +01:00
toasterbabe 2a40804ea2 Offset tweak so "General" on the netgame settings menu doesn't go only SLIGHTLY off the screen and stop appearing when you scroll down. 2017-04-15 15:42:25 +01:00
toasterbabe fd5c72d4c0 * Revamp sounds menu to show you the current status of the different kinds of sounds and musics, and basically behave like a cvar without being a cvar.
* Show resolution on main Video page.
* Optimise by using V_RightAlignedString instead of V_DrawString with V_StringWidth.
* Revamp sliders. (Requires a new patch.dta I'll upload in a little bit in order to be perfect, but does pretty well w/o replacement graphics too.)
2017-04-15 15:36:19 +01:00
toasterbabe 47bcc2747c * Fixed highlighting text on scrollable menus.
* Revamped base video menu and moved all the relevant stuff from the Game Options Menu onto it. Still mulling on where to put the Master Server reference.
2017-04-15 14:05:51 +01:00
toasterbabe e2b063b2a8 Scrolling menu option now available!
* Revamped Netgame Options Menu to scroll and also be less suck.
* Renamed a few other options here and there.
2017-04-15 13:36:40 +01:00
toasterbabe cafb54cc37 * Tweak pre-key control menu. Not exactly as desired, but exposes flipcam and is functional enough for now.
* Change names of axes.
* Seriously defuck joystick selection for the default number of joysticks available.
* Renames a few other options.
2017-04-15 01:08:26 +01:00
toasterbabe df8078d9a5 Move Game Status up so it shows up on first opening the menu, considering it has an effect in singleplayer but talk doesn't. 2017-04-15 00:18:56 +01:00
toasterbabe 37bd729fe8 Scrolling, monolithic control configuration page. Relies on sphere's patch.dta update for arrow symbols. 2017-04-15 00:15:09 +01:00
toasterbabe 30b10b05d3 Change analog mouse to apply turning buttons, because aa. 2017-04-14 21:01:45 +01:00
toasterbabe 85b71aa685 End to old match scoring toggle. 2017-04-14 20:51:25 +01:00
toasterbabe 174921c1e1 End to sudden death. 2017-04-14 20:46:48 +01:00
toasterbabe 95d89078f5 Removal of cv_allcaps for console stuff. 2017-04-14 20:43:30 +01:00
toasterbabe 99a04cca9c First part of revamp: Removing Camera Rotate L/R keys, and giving the two situations where they had any unique functionality (Analog mode and NiGHTS objectplace) suitable replacements. 2017-04-14 20:29:08 +01:00
Monster Iestyn 181c8bd742 These convar externs aren't moving files, I'm just shifting them up to live with their relatives 2017-04-14 19:56:51 +01:00
Monster Iestyn 0921244ba4 Move analog consvars to g_game.h 2017-04-14 19:00:46 +01:00
Monster Iestyn 488c4071ba Moved screenshot/movie consvar externs to m_misc.h 2017-04-14 18:14:15 +01:00
Monster Iestyn 46c3c42eba cv_controlperkey probably belongs in g_input.h too 2017-04-14 18:02:35 +01:00
Monster Iestyn 887e7e0b7d Moved most of d_netcmd.h's 2P mouse consvar externs to the files with their 1P counterparts 2017-04-14 17:45:27 +01:00
Monster Iestyn 3696463aa8 Just to make toaster happy I'll do this :V 2017-04-14 17:16:09 +01:00
Monster Iestyn 180829e95c Rewrote first person HUD's drown numbers drawing 2017-04-13 22:09:03 +01:00
Inuyasha 5e4f960f3a fixed drawfill to be more consistent w/ other functions
doesn't draw off of the sides, and doesn't ignore snapping or widths for reasons that don't make sense
(for instance: the green bar in MI's test script showed *above* the blue one in non-green resolutions in 2.1.17)
2017-04-12 15:34:13 -07:00
Monster Iestyn 80637b336b Starting work, noclimb inverts direction (haven't tested if it actually works or not yet) 2017-04-11 22:33:04 +01:00
toasterbabe 73ea33d3a1 Fixing the fuckup I made when creating the new palette. 2017-04-06 16:42:52 +01:00
Monster Iestyn bfaf60ceef Merge branch 'public_next' 2017-04-05 21:05:57 +01:00
toasterbabe 89f518a8a3 FuriousFox discovered a crash, realised I wasn't careful here. 2017-04-04 23:12:43 +01:00
Monster Iestyn 81c3d6820e Merge branch 'commandline_skinselect' into 'next'
Command-line skin selecting fix

Fixed http://mb.srb2.org/showthread.php?t=42312.

Also, fixed being able to change your skin colour during credits/cutscenes in singleplayer.

See merge request !158
2017-04-04 16:49:55 -04:00
toasterbabe 6c923b26e7 woops forgot to push this 2017-04-04 21:29:44 +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
Rob 8fdbc5669c Merge branch 'level_select' into 'master'
Revamped Level Select (platter view)

Seriously revamped every level select instance in the game to use a more attractive and easier to navigate platter view, including:

* Game CLEAR! save (Title/Pause menus)
* Secrets Menu (including custom ones)
* Record Attack/NiGHTS Mode
* Server creation (Online/2P)
* MP Pause level select (Online/2P)

As a result, the layout of the last three above menus has been changed to varying degrees of difference.

Also, bonus feature: using level select (or MAP MAPxx without -force) in Co-op multiplayer won't reset your score, will keep any lives you have above the startinglives variable, and will not take away all your emeralds. The -force thing prevents both warping directly to special stages to rack up the emeralds AND ensures there IS a way to start a new game.

Check out <root>/!LatestSRB2Files/srb2win_branch_levelselect.exe with the latest patch.dta to see more.

Also, LF2_WIDEICON lets you do this. https://gfycat.com/MenacingClearAngora

See merge request !68
2017-04-04 12:23:18 -04:00
toasterbabe 76b56a0285 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/p_user.c
2017-04-04 16:55:20 +01:00
toasterbabe d5575669fa Handled some of MI's concerns. 2017-04-04 16:50:33 +01:00
Rob c4984bec46 Merge branch 'changed-defaults' into 'master'
Suggested default settings

Making a merge request for suggested new default settings, because saying "hey, I think this would be a better default, you guys should try it" in IRC won't actually get people to give you opinions on them ;p

Camera distance is 160 now, height is 25, and speed is 0.3 (previously 128, 20, 0.25, respectively). Mouse sensitivity on both axes is now 12, previously 35. The default move/look/jump/spin keys is Mystic's proposed scheme from the New Player Experiences topic (https://mb.srb2.org/showthread.php?t=42095).

Camera settings also now can save to your config.cfg, and they won't try resetting back to the default at every chance it gets. (~~As a side effect, analog mode won't have higher cam_dist anymore. Poor analog mode, no one cries for you.~~ Now increases cam_dist in analog mode by x1.2!) This makes it so everything that's different can be easily reverted back to the older setting.

Test exe in my folder, <root>/TehRealSalt/srb2win_changed-defaults.exe

See merge request !75
2017-04-03 23:45:33 -04:00
toasterbabe caeb515783 On request, swapped out MT_PARTICLE dust for MT_SPINDUST dust. 2017-04-03 19:01:30 +01:00
toasterbabe 1e64b096fd Bugfixes and code cleanup.
* Getting hit whilst on a swinging mace doesn't send you off in roll/jump state.
* P_GetJumpFlags replaces a bunch of copypasted code.
* Homing attacking a spring sends you directly on its path, rather than rocketing off in the direction you were preiously hurtling in.
2017-04-03 18:28:02 +01:00
toasterbabe 0c792ff67a Add missing flag reads. 2017-04-03 16:05:13 +01:00
toasterbabe 1c737f33c5 Camerascale fix to apply to more stuff. 2017-04-03 13:33:05 +01:00
toasterbabe 643daa3394 Updated coloropposite table for the purpose of the .wads under development. 2017-04-03 13:23:05 +01:00
Alam Ed Arias 4fa188cf01 build: fix 64-bit builds 2017-04-01 17:22:24 -04:00
Monster Iestyn bf29b5c6d1 Print warning message in console if line->next is NULL 2017-04-01 20:16:48 +01:00
Monster Iestyn 1c331219f2 Merge branch 'public_next' 2017-03-30 21:50:13 +01:00
Alam Ed Arias 8f25dc62cc Merge branch 'master' into next 2017-03-30 08:11:26 -04:00
TehRealSalt b5d1bff18a Scaled down cam_height default
25 was picked over 24 due to 160/25 being exactly proportional to
128/20.
2017-03-29 18:30:45 -04:00
TehRealSalt 9c9bc7b3e3 Merge remote-tracking branch 'refs/remotes/origin/master' into changed-defaults 2017-03-29 18:28:34 -04:00
Alam Ed Arias 4c992845e7 Merge branch 'next' into allowteamchange-fix 2017-03-29 17:03:03 -04:00
Alam Ed Arias 70677817bb Merge branch 'next' into admin-ban-fix 2017-03-29 17:01:47 -04:00
Alam Ed Arias 114d295f89 Merge branch 'next' into addfile-directories-fix 2017-03-29 17:00:42 -04:00
Alam Ed Arias 0ffc0f1974 Merge branch 'next' into falling-rocks-fix 2017-03-29 16:59:30 -04:00
Alam Ed Arias 74db3b51ac Merge branch 'next' into commandline_skinselect 2017-03-29 16:58:19 -04:00
Alam Ed Arias 108b0c2732 Merge branch 'master' into disable_gettext 2017-03-29 16:56:44 -04:00
Alam Ed Arias 5feccaad2a Merge branch 'next' into touching_fixes 2017-03-29 16:55:06 -04:00
Monster Iestyn 48777e60ed check i not add, silly 2017-03-29 21:27:44 +01:00
Monster Iestyn d7b4b05d9a Fix remaining mixed-declaration-and-code issue detected when compiling 2017-03-28 21:30:31 +01:00
toasterbabe 734d215b35 Corrected oversight. 2017-03-27 15:29:19 +01:00
toasterbabe 5065fa302a Mutiability flag-ised as requested by Rob. 2017-03-27 15:03:21 +01:00
toasterbabe 79f2d616fc Modified melee/twinspin springboost. 2017-03-27 14:37:40 +01:00
toasterbabe 302305ccf5 Fixing SF_NOSUPERSPIN, which has been broken ever since the super walk animation was added. 2017-03-27 14:22:03 +01:00
TehRealSalt e5245c508d Reimplemented analog mode cam_dist increase, slight comment updates
Analog mode's camera is now x1.2 of your actual cam_dist setting,
instead of being strictly 192. "analog on" seems to reset this modifier
every once in a while, but "useranalog on" prevents this. The wiki
itself says that you should only change useranalog though, so it
shouldn't be too big of a deal.
2017-03-26 17:11:04 -04:00
toasterbabe 698e53a518 Per Mystic's request, sped up hammer animation. 2017-03-25 14:06:27 +00:00
toasterbabe 805784a175 Made it possible for nojumpspin characters to juke the Minus into exposing itself by jumping over it slowly, allowing its vulnerability to be exploited. 2017-03-25 12:51:38 +00:00
toasterbabe 8d9b616f00 Fixed repeatable bounces sending you hog-wild if you went into water shallow enough to only spend a single frame in before hitting the ground. 2017-03-25 12:42:39 +00:00
TehRealSalt dbcbcf5da3 Changed defaults, camera settings save
Camera settings: distance from 128 to 160, height from 20 to 32, speed
from 0.25 to 0.3
Mouse sensitivity from 35 to 12
Default control setup is Mystic's proposed scheme from the New Player
Experiences topic (https://mb.srb2.org/showthread.php?t=42095)

Also, camera settings now save to config, and they no longer try to
reset back to the default at every chance it gets (you can die, start a
new game, or exit, all while still keeping your preferred setting)
2017-03-25 03:13:02 -04:00
toasterbabe 0bd093faf7 * Fixed weird hitbox thing when using a shield ability that puts you into a spin (when CA2_NOJUMPSPIN).
* Fixed bug with the magnet shield homing attack and charability homing attack not properly updating the player's target/tracer.
* Made flashing of lockon/got flag icons slower.
2017-03-24 13:51:23 +00:00
Alam Ed Arias 8f4f8c6e77 Merge branch 'master' into next 2017-03-24 00:14:14 -04:00
Alam Ed Arias 59d91e0793 build: r_bsp.c:213:23: warning: inlining failed in call to 'R_DoorClosed': call is unlikely and code size would grow [-Winline] 2017-03-23 23:13:31 -04:00
toasterbabe fa29f7deca A bunch of stuff again.
* Lock on targets bob now, and are used for CA_HOMINGTHOK and SH_ATTRACT as well.
* Flag stuff is now animated like it was designed to be but which was kinda messed up.
* Cork sounds.
* P_SpawnLockOn(player_t player, mobj_t lockon, statenum_t state) for Lua.
* Added homing/firing CA2_GUNSLINGER stuff at egg guard shields.
* Fixed homing stuff wrt egg guard shields and sea egg balloons.
* Fixed attract orb goin' gold when doing a CA_HOMINGTHOK homing ability.
* Fixed positioning of player during homing attack.
* Cleaned up lockon spawn code.
2017-03-23 19:11:22 +00:00
TehRealSalt 965846b0da More consistency
As per MI's request
2017-03-23 01:17:31 -04:00
toasterbabe ddf8db12af Big commit, sorry. I broke several things trying to get other things to work and it's only now that all the code that worked yesterday works today!
*P_LookForEnemies is now side-effect-less and only provides a pointer to the found mobj
*player-jumping is dead, long live PF_STARTJUMP
*per Mystic's request, CA2_GUNSLINGER has a targeting icon. It also has a more restricted vertical aiming range.
*mobj for this is in the game as requested
*fast teetering animation flag
*general code cleanup
2017-03-22 18:51:30 +00:00
TehRealSalt 92e785a9f2 Map emblem type flags
As per toaster's request
2017-03-22 14:45:26 -04:00
TehRealSalt b418ac0acb Level completion emblems
Simple port of something I made for a 2.1 exe mod that Mystic mentioned
needed doing on the 2.2 Priorities topic
(http://mb.srb2.org/showpost.php?p=790613&postcount=4). Adds emblem type
"map", which gives you an emblem upon beating the map it's for. Var sets
more specific conditions; 1 for all emeralds completion, 2 for Ultimate
mode completion, 3 for Perfect Bonus completion. (These can be easily
removed if requested; these were added simply because it was easy to
implement for modders.)

Criticism on the way it's coded and/or how it is implemented is highly
encouraged. Test wad is <root>/TehRealSalt/levelemblems.wad,
pre-compiled exe is <root>/TehRealSalt/levelemblems.exe.
2017-03-22 12:59:16 -04:00
toasterbabe 90893c02a3 * Added restriction to prevent combination of CA2_GUNSLINGER and ringslinger on.
* Swapped usage of player->spinitem to player->revitem for bullet type selection, since spinitem is used coming out of zoom tubes (which are universal).
* Switched the optional boolean for "bullet" in the Lua wrapper for P_LookForEnemies to be false by default.
* Allowed CA2_GUNSLINGER users to target Detons.
* Cleaned up some code here and there.
2017-03-21 23:24:57 +00:00
toasterbabe 7ac0373dbf After usability complaints:
* CA2_MELEE/CA_TWINSPIN combination abilities (ground hit, somersalt) disabled.
* Enabled movement controls whilst using CA2_MELEE in the air.
* CA2_GUNSLINGER no longer requires charging. In exchange, it involves a cooldown in which you can't move.
* CA2_GUNSLINGER lock-on distance improved, and aiming allowance reduced to compensate.
* Lots of cleanup/gravflip allowances for homing/targeting code.

* Unrelated: Flickies now properly face the direction they're supposed to when getting knocked out of the egg capsule.
* Unrelated: Thok trail fades like spindash trail now.
* Unrelated: Using CA_HOMINGATTACK when nowhere near an enemy uncurls you.
2017-03-21 16:04:49 +00:00
toasterbabe 9d9f3e5e1a Changed the race HUD to bounce a bit because I'm having fun. 2017-03-21 15:59:13 +00:00
toasterbabe a6f5357cbd * fixed spindash
* fixed whitespace
2017-03-21 02:06:24 +00:00
toasterbabe f24302adfb Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-03-21 00:56:03 +00:00
toasterbabe 59bc0da022 Introducing CA2_GUNSLINGER.
* Mildly hacky proof of concept! Will de-hack later.
* Charge up your ability!
* You can only damage others if it's at full power.
* Fires directly at enemies/bosses when at full power. Does NOT aim at players.
2017-03-21 00:54:47 +00:00
toasterbabe ee74fa4042 * Changed how CA2_MELEE handles nocontrol to not tweak pw_nocontrol.
* Added CA_TWINSPIN/CA2_MELEE spring boosts.
* Made it so you can't land with CA2_MELEE twice.
* Fixed stray #endif from NiGHTS fixes.
2017-03-20 19:04:33 +00:00
toasterbabe a4c1c3195f Cleanup.
* Fixed a major hack from when I SPR2ised NiGHTS by spawning in a null object.
* Made P_LookForEnemies better in preperation for the future.
* Changed some defaulting characteristics of P_GetMobjSprite2.
* Fixed CA_DOUBLEJUMP potentially counting as a float.
* Killed some extremely small boolean functions and replaced them with #defines.
2017-03-20 16:57:24 +00:00
toasterbabe f0c364c71c For melee:
* Fixed underwater hop going too high.
* Added helpful comment.
* Changed animation speed.
2017-03-19 22:22:39 +00:00
Monster Iestyn a979b425e0 Merge branch 'TEXTURES_More' into 'master'
Transparent patch support in TEXTURES

Adds transparent patch functionality for the TEXTURES format.
Duplicates source-to-cache column drawer functions and adds extra functionality which uses trans tables.
Changes how the column drawer is picked so it's done once per patch instead of per column.

See merge request !72
2017-03-19 16:17:31 -04:00
Monster Iestyn 5877cc40d9 You actually don't need to set ColumnDrawerPointer to &R_DrawColumnInCache etc, C allows you to set it directly to R_DrawColumnInCache etc. ColumnDrawerPointer can then be called without the (* ) stuff 2017-03-19 20:08:33 +00:00
Monster Iestyn 351a391e43 Fixed errors reported while compiling 2017-03-19 19:43:02 +00:00
toasterbabe 9fd09c07f3 <Rob> The host should not be able to switch their skin if skin switching is locked
<Rob> That is completely unfair
2017-03-19 17:18:41 +00:00
toasterbabe 3a6f659b93 She's a lot more complete.
* Melee now has a proper weightiness to it with a landing frame.
* If you have twinspin too, do a somersalt when running and hitting the melee button.
* If you have melee, go into the melee landing frame when twinspinning into the ground.
2017-03-19 16:48:35 +00:00
toasterbabe 1582aee909 No more switching characters in forcecharacter maps! 2017-03-19 13:48:54 +00:00
toasterbabe 8aaf3ac851 ...copypaste failure 2017-03-19 12:49:29 +00:00
toasterbabe 7c852b575a Inu made some suggestions about the skinnamepadding stuff, so here's the fix. 2017-03-19 12:45:01 +00:00
Inuyasha 0e9761bc57 HUD changes don't trip isgamemodified
(some HUD patches renamed because they're dumb)
2017-03-19 05:37:04 -07:00
toasterbabe 99f13c88ae Made jump damage flag application less hacky. 2017-03-18 21:06:06 +00:00
toasterbabe 98095292d6 Rob wanted hudnames that were less than 5 padded at the front. Whilst I tested it and didn't think it was a good idea, I'm committing the code anyways lest some fool wish to try it in future. 2017-03-18 17:02:34 +00:00
toasterbabe 842c27e78b Let's not use terms like this so plainly, right? 2017-03-18 14:20:42 +00:00
toasterbabe 096921cbbf Added a bit of a fun limitation.
* Made it so (player->availabilities & 1 << skinnum) is only true if skins[skinnum] DOES have an availability method, and always false otherwise.
* This means that setting your availabilities to INT32_MAX is no longer the equivalent of having gotten all skins.
* This means we can detect and kick cheat engine script kiddies who try to fool the server that they can use everything.
* This means availabilities of 0x00 is now valid, so make it all F's for an invalid not-in-game.
2017-03-18 13:03:29 +00:00
toasterbabe ced6cd4349 Why do we want to end Ian, anyways? Action Man is a good boy. #deepcut 2017-03-18 10:12:14 +00:00
toasterbabe 87ba3411a4 * Fixes forceskin causing desynchronisations, baby! Checks only when attempting to send.
* Makes the forceskin print more consistent with the skin print.

* Disabled the printing of availabilities.
2017-03-18 00:41:40 +00:00
toasterbabe 0060caaf1a Fixed synchronisation of skin changes and forceskin.
There's an outstanding issue - you can set forceskin to whatever you want to as the host. This needs to be fixed, but I'm commiting my successes first.
2017-03-17 23:11:32 +00:00
toasterbabe b66ded844e compile fix 2017-03-17 23:09:15 +00:00
toasterbabe 8903a0e185 Yeah, this wasn't network safe. 2017-03-17 17:18:14 +00:00
toasterbabe ed3569feae Woops. 2017-03-17 16:47:37 +00:00
toasterbabe 6fa319041a A serious defuckening of my fancy character select code. 2017-03-17 14:27:17 +00:00
toasterbabe 3fdb8a3181 this video game is haunted because it was built on an abandoned endian preservation 2017-03-16 20:55:41 +00:00
toasterbabe 60a2e26569 First attempt at making skin availabilities netgame-synchronised. However, I am completely unable to test this right now, since I'm on uni internet which is super locked down; in order to have it not get tangled up with anything else, I'm committing it now in a potentially broken state so that it can be reverted at a later date if necessary. 2017-03-16 18:57:42 +00:00
toasterbabe a65ffc6b24 * Cleaned up a bit of irrelevant oldbrak goop.
* Made it so the goop always appears on-top of the player.
2017-03-16 11:23:23 +00:00
toasterbabe 95e4a23a69 pw_ingoop is now CR_BRAKGOOP because i can't stop refactoring CAN'T STOP WON'T STOP 2017-03-15 21:51:35 +00:00
toasterbabe b53e69b949 Corrected a silly oversight. No, you can't swap your carry stuff when recycling! 2017-03-15 20:42:01 +00:00
Nevur 191623e246 Made tweaks suggested by toaster to make the code a bit less dumb. 2017-03-15 15:46:04 +01:00
toasterbabe b2c0930807 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-03-14 18:12:47 +00:00
toasterbabe 7aeeb278fe Increased space in pflags (because we were getting VERY close to full capacity), which I will re-organise when this branch is closer to completion.
* PF_NIGHTSMODE is now CR_NIGHTSMODE as part of player->powers[pw_carry]. This is because it's mutually exclusive to every other "carry" type.
* PF_SUPERREADY is dead because it literally just checked for all 7 emeralds and 50 rings. That's it. You couldn't even appreciably alter its presence with Lua. That logic has been placed back in P_SuperReady.
2017-03-14 18:11:17 +00:00
Monster Iestyn 7a37794316 Merge branch 'crumble-FOF' into 'master'
Crumble fof

Basic (but kind of WIPish still) support for remote falling of FOFs by linedef execs or Lua. Originally started for Nev3r to use his dark magic on.

Making this MR so people actually remember I was doing something regarding crumbling FOFs, it's been months since I did stuff for this now mind...

* linedef type 446: basic setup is same as the remote shatter one (436), except the FOF of course falls down rather than shatters. By default the FOF respawns
 * *No Climb*: the FOF *doesn't* respawn
 * *Block Enemies*: respawning ability is determined by the FOF's flags (if it has FF_NORETURN it doesn't return, if it doesn't it does return)
 * *Block Enemies + No Climb*: inverted version of above
* EV_StartCrumble for lua, format: `EV_StartCrumble(controlsec, rover, [floating?, [player, [origalpha, [crumblereturn?]]]])`
 * *controlsec* is the FOF's control sector
 * *rover* is the FOF itself
 * (optional) *floating?* does the FOF float on water after crumbling? Defaults to false (NOTE: probably should be set to `rover.flags & FF_FLOATBOB` for best results currently, kind of weird otherwise)
 * (optional) *player* is the player that caused the FOF to fall; needed for some effects such as who to award points to if you killed someone =3 Defaults to nil
 * (optional) *origalpha* is the FOF's original alpha before crumbling (the thinker for respawning + floating crumbling FOFs tinkers with the alpha for some reason). Defaults to rover.alpha
 * (optional) *crumblereturn?* will the FOF respawn afterwards? Defaults to false (NOTE: probably should be set to `not (rover.flags & FF_NORETURN)` for best results currently, kind of weird otherwise)
 * the return value of EV_StartCrumble means something I forget offhand now ...it's either true or false though, mind

See MonsterIestyn/crumble-fof on the FTP for a test exe (srb2win-crumblefof.exe), a test map for the linedef, and a test lua script for EV_StartCrumble (which can also be tested in the map).

See merge request !55
2017-03-13 14:30:44 -04:00
Monster Iestyn 386fec037f Merge branch 'lua-more-stuff' into 'master'
Lua more stuff

More new Lua features and fixes:
* Most Lua functions that deal with stuff that exists only in levels now should spout Lua errors instead of crashing the game if you try to use them outside of levels. Likewise, accessing any of the tables that contain level-only stuff (players, sectors, lines, etc etc) spouts Lua errors too outside of levels.
* `userdataType(variable)` now exists: this function simply returns the type of the userdata variable given as a string (e.g. `userdataType(players[0])` returns "player_t", `userdataType(sectors[0])` returns "sector_t"). This also includes "minor" userdata types for array members of other userdata types, such as .powers of player_t variables or .lines of sector_t variables (which would give the strings "player_t.powers" and "sector_t.lines" respectively).
* The Lua hook "MobjMoveBlocked" now exists: functions for this hook are called whenever a mobj attempts to move horizontally but is blocked by a wall or solid mobj (or whatever else can cause P_TryMove to return false, assuming it doesn't remove the mobj). In theory this hook could be very useful for behaviour such as sliding or bouncing off walls without the need of flags like MF_SLIDEME or MF_BOUNCE etc. Format for use is just like most generic mobj hooks: `addHook("MobjMoveBlocked", functionname, MT_OBJECTTYPE)`, where `functionname` is a function that takes a single mobj_t argument.

See MonsterIestyn/lua-more-stuff on the FTP for a test exe (srb2win-lua-more-stuff.exe) and some test scripts for the above changes.

See merge request !67
2017-03-13 14:29:35 -04:00
Monster Iestyn 731ee115a3 Merge branch 'public_next' 2017-03-13 18:25:26 +00:00
Alam Arias 7d25ab361a Merge branch 'next' into allowteamchange-fix 2017-03-12 21:50:31 -04:00
Alam Ed Arias cb98c2d972 Merge branch 'master' into next 2017-03-12 21:34:19 -04:00
Alam Ed Arias 4e8972cd24 build: no warning or error about logical-ip or tautological-compare 2017-03-12 21:16:37 -04:00
Alam Ed Arias 9cac1e9e62 build: fixup WFALGS/WFLAGS mistake 2017-03-12 21:09:06 -04:00
Alam Ed Arias 81fe46213d build: do not overwrite the -Wno-error switchs 2017-03-12 20:51:45 -04:00
Alam Ed Arias 42ecca817d build: disable tautological-compare and logical-op 2017-03-12 20:43:35 -04:00
Alam Ed Arias b01d5da60f build: fixup GCC54 endif 2017-03-12 20:23:30 -04:00
Alam Ed Arias e0b2a4a779 build: add suport for GCC 6.3 2017-03-12 17:45:18 -04:00
Alam Ed Arias 2823c7bffb build: fixup warnings from GCC 6.2.1 2017-03-12 17:23:56 -04:00
Nevur be9ca534d7 Whitespace indenting. 2017-03-12 20:26:45 +01:00
Nevur 144514247d Added exceptions to the transparent column drawers to avoid modifying pixels with the cyan color. 2017-03-12 20:02:29 +01:00
toasterbabe b9ddc0226e Fixed a thing where super float started on the float frame normally and then immediately went to the float run frame a tic later. 2017-03-11 18:15:44 +00:00
toasterbabe 5b77ca5fed Reverted change where NiGHTS drilling sprites were technically the super version of flying sprites. It was not helpful to modders at all, and was only justifiable as a rutheless attempt at efficiency in storage. 2017-03-11 18:14:58 +00:00
toasterbabe e20292844d * SPR2_DRL0-C are gone. They're now (FF_SPR2SUPER|SPR2_NGT0-C). This frees up a bunch of badly-used freeslots, considering that you can't be super AND NiGHTS at the same time.
* Speaking of, actively enforced not being able to be Super and NiGHTS at the same time.
* Also on that note - SPR2_TRNS is now the NiGHTS transformation. The Super transformation is (FF_SPR2SUPER|SPR2_TRNS).
* SPR2_NPAN is now SPR2_NSTN, since it matches Super Sonic's stun animation rather than the pain animation.
* Fixed a bunch of things where Super float was handled badly with 2AM brain.
* Fixed the R_ProjectSprite error going out of spr2names' bounds.
* Fixed order of FF's in dehackéd.
* Fixed that thing where Super Sonic was blue for 1 tic after transformation, and the life icon was a blue Super Sonic.
2017-03-11 17:14:39 +00:00
toasterbabe 75ac351940 It's 2am, I'll upload the exe and player.dta to the ftp later.
* Super sprites are now deliniated via an additional S_SUPER lump between S_START and S_END. Above are normal sprites, below are super sprites. Handled internally via FF_SPR2SUPER.
* Sprite2 numbers are now appropriately limited for the data type that stores them.
* SPR2_SPIN is now SPR2_ROLL, SPR2_DASH is now SPR2_SPIN and SPR2_PEEL is now SPR2_DASH. Makes more sense, right?
2017-03-11 02:09:01 +00:00
toasterbabe 7f7d51a474 comment updates 2017-03-06 19:03:05 +00:00
Nevur 13dbe7d3a3 Fixed issue with vertical offsets being broken.
Add a vertical flip variant for the translucent column drawer.
Translucency is now properly distributed: 0.00 leads to no render at all, 0.1 to TRANS10, ..., 0.9 to TRANS90, 1 to regular column drawer.
2017-03-05 18:53:34 +01:00
Nevur 829be5bd43 Changed how R_GenerateTexture picks the function to draw the columns so it checks once per patch.
Also had to set the same args for all of the three current column drawer functions.
2017-03-05 12:49:09 +01:00
Nevur bf5a10e4b7 The translucency feature is now functional, but it doesn't exactly work as expected. Need to make it behave like FOF translucencies etc., I guess. 2017-03-05 00:29:10 +01:00
Nevur bb49362577 Add rudimentary and non-working code for translucency on patches. 2017-03-04 20:59:43 +01:00
Monster Iestyn 0f014fe20a Merge branch 'master' into next 2017-03-04 17:16:33 +00:00
Monster Iestyn b0f4bbb44b Played TD's Stormy Streets enough to know precipitation sprites didn't get an overflow test of their own
(various large invisible blocks used in the level cause rain to make splashes high above the main level, high enough to make ghostly rain splash sprite artifacts appear sometimes in nearby areas)
2017-03-02 19:37:21 +00:00
Monster Iestyn c43b41815f Make "Enter Game" option use the big blue window notice if you cannot switch teams, instead of falling back on changeteam's own console notice 2017-03-02 14:28:52 +00:00
Monster Iestyn b837d5b23d Fix teamchange/teamchange2 to block changing FROM spectator rather than changing TO spectator
This way they're consistent with Got_Teamchange, which is the cause of the "illegal team change" desyncs
2017-03-02 14:25:46 +00:00
Monster Iestyn 6f2f244aef Remove "playerdeadview" variable; it's not been used for its stated purpose for who knows how long now
Besides rankings popping up when you die just sounds weird anyway, maybe I'm just used to SRB2 not doing it I guess
2017-02-22 21:07:29 +00:00
Monster Iestyn 6efb15c6e8 Fix Ban_Add usage for NONET 2017-02-20 21:36:05 +00:00
Monster Iestyn 7424df8180 Make sure I_Ban and Ban_Add are only used by the server
Also make sure the server actually uses Ban_Add if an admin banned someone
2017-02-20 19:58:29 +00:00
toasterbabe 76c15a0e97 Salt's suggestion. 2017-02-18 21:17:20 +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 2f9db4486a Minor corrections. 2017-02-18 14:03:49 +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
Monster Iestyn 84727f4205 Created W_OpenWadFile for opening WAD files with the path correction code.
This is used by Command_Addfile in the MD5 calculation code, so that it can search subfolders properly and allow addfile in netgames to treat them the same way as in SP
2017-02-16 21:55:17 +00:00
Monster Iestyn a27367cdd4 Remove unused ObjectPlace_OnChange prototype (from when Objectplace was a consvar, which it is not anymore) 2017-02-15 21:16:56 +00:00
toasterbabe 758bec6963 Fixed a bunch of awkwardness where Metal wouldn't reset himself properly when his target died. 2017-02-14 02:07:08 +00:00
toasterbabe a04ae45a93 MORE CUES 2017-02-13 18:53:16 +00:00
toasterbabe 3feac5bc90 bad bounce https://gfycat.com/DeliciousReliableGentoopenguin 2017-02-13 18:04:08 +00:00
toasterbabe 5f3cfc6729 Some cleanup. 2017-02-12 14:16:52 +00:00
toasterbabe 6dfef794a4 Metal Sonic's bounce attack is much nicer. Also, a bunch of other minor tweaks. 2017-02-12 01:28:12 +00:00
Monster Iestyn 8f1deb9128 Remove unused "runcount" variable from p_local.h 2017-02-11 23:28:42 +00:00
Monster Iestyn a51548abea "t" is not needed to take out fencepost cases from viewangletox 2017-02-11 23:24:12 +00:00
Monster Iestyn a5001a6af9 Removed unused function prototypes in d_main.h
Also corrected what appears to be a typo in some comments above?
2017-02-11 22:56:08 +00:00
Monster Iestyn f4e5233c7e Remove unused sscount variable
(it's only set to 0 in software, and only ++'d in OpenGL, what kind of sense does that make?)
2017-02-11 22:41:15 +00:00
Monster Iestyn 0def5330c0 Merge branch 'master' into mi-a-bit-of-cleanup 2017-02-11 21:13:28 +00:00
toasterbabe a66567ea0f borp https://gfycat.com/AcceptableWhiteJabiru
doesn't do anything in ogl sorry, inu might change that later but
2017-02-10 23:24:06 +00:00
Monster Iestyn 8a421a05d9 admin bans with custom ban messages should now be recognised by the server properly 2017-02-10 20:31:58 +00:00
toasterbabe 9fc757f388 Inuyasha: You were right.
* Changed the order of Record/Nights Attack and its level select menu option so that you go from the main menu to the map page to level select, rather than main menu to level select to map page.
* Cleaned up a lot of code.
2017-02-10 14:54:05 +00:00
toasterbabe 8cdcb2c416 * You can now bounce off of springs without unbouncing.
* You can now bounce off the bottom of goop areas.
* Fixed that long-standing bug where you could accelerate whilst rolling.
2017-02-09 23:24:47 +00:00
toasterbabe 7b4688732b * Float ability now properly stacks with dashmode.
* Corrected a scenario where you could get a CTF flag mid-dashmode and have dashmode properties forever.
2017-02-08 16:46:16 +00:00
toasterbabe 29c48c1992 As defined in spec, lose a bit of chain each time you bounce on land. 2017-02-08 16:08:36 +00:00
Monster Iestyn f9b41898a9 Don't allow skipping stats in record attack/nights attack 2017-02-05 22:04:29 +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
Monster Iestyn dc249c6cd5 D_ModifierKeyResponder now checks for ev_console as a "key down" event
console window uses ev_keyup too so don't worry about turning off
2017-02-04 23:26:37 +00:00
toasterbabe abc218de38 I am bad at conditions. 2017-02-04 21:41:43 +00:00
toasterbabe 5170fafcac * CA_BOUNCE is now more pleasant to control.
* CA_MELEE can now break downwards like CA_BOUNCE, and CA_TWINSPIN can break both up and downwards.
2017-02-04 18:25:16 +00:00
toasterbabe ba652864a6 Revamped roll-on-landing to work even from jumping, for the purposes of slopes! (But not from PF_THOKKED.)
Salt has wanted this for a while, and this was the only branch I had open which it was appropriate for. :P
2017-02-04 17:08:14 +00:00
toasterbabe c04ee6bfb7 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-02-04 15:19:02 +00:00
Monster Iestyn 9a2b7b2091 Better plan, use ?: for deciding between floorz/ceiling checks based on gravity 2017-02-03 20:13:16 +00:00
Monster Iestyn 659a62db88 Make sure rocks spawned by the rock spawners despawn when they're on the floor and not moving 2017-02-03 18:47:20 +00:00
toasterbabe 3aa7573c86 Made code repetition less. 2017-02-02 16:10:37 +00:00
toasterbabe 42518a1759 For consistency purposes, added trailing ellipses to level selection prompts I added. 2017-02-02 16:02:07 +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 55e736250a Clear out some irrelevant/redundant functions now there are no non-platter Level Selects available. 2017-02-02 12:32:02 +00:00
toasterbabe 05ebc93f6c After discussion with Mystic and Rob, you now keep your lives, score and emerald count when changing maps in Co-op mode. Reset when you declare -force. 2017-02-01 21:31:35 +00:00
toasterbabe 8625c8bfbd Removed extraenous space. 2017-02-01 21:30:10 +00:00
toasterbabe 8ebb4a3c3f Making things nicer for the server creation menus of 2P mode and NONET executables. 2017-02-01 17:36:19 +00:00
toasterbabe 4efeb02978 Added some useful options to the Server setup menu, including a jump-link to the relevant Options screen. Think it should be a little smarter designed, though, but I'd rather commit what I have then let it languish. 2017-02-01 17:21:04 +00:00
toasterbabe 873e768a44 Server page (and splitscreen server page) started.
http://i.imgur.com/jJ3YZUd.png

Will be discussing what to do with the space freed under "server options" the heading on IRC tomorrow.

(MI, if you're looking - the mistake was that I set up an IT_CALL menu line as IT_CVAR by mistake, which of course caused a crash when trying to get ((consvar_t *)M_GameTypeChange)->string. ;P )
2017-01-31 23:56:09 +00:00
Monster Iestyn 72bd3e28ed Fix sprtopscreen from getting integer overflows once and for all in R_DrawRepeatMaskedColumn
Fixes TD's terminal from freezing the game this time, oh boy
2017-01-31 22:10:31 +00:00
toasterbabe 3cb2f178c6 Getting closer to done.
Updated the mid-game gametype/level select menu! Just need to combine it with the server creation menu, and then I'll be ready to make a merge request...
2017-01-31 18:48:50 +00:00
toasterbabe b5fef5f46a Forgot to vertically align collected emblems on nights page 2017-01-31 11:04:50 +00:00
Monster Iestyn 3212ee0b0f Fix endless loop of R_DrawRepeatMaskedColumn if both sprtopscreen and sprbotscreen are CLAMPMAX (INT32_MAX)
This fixes the grid floors in TD's Lava Mountain freezing the game if they go off the bottom of the screen far enough (they have ACWRFL1A as the wall texture, which is a single patch texture with holes)
2017-01-30 21:08:13 +00:00
toasterbabe f56f76692c Put size of BEST GRADE back to 2.1 levels. To make space for it, I left-aligned * LEVEL RECORDS *. http://imgur.com/a/3i7GT 2017-01-30 20:55:31 +00:00
toasterbabe 8d3804a201 * Renamed the confusing "Reselect Level" to "Back to Level Select".
* Updated layout of NiGHTS attack page to match Records attack.
* Improved code.
2017-01-29 22:00:07 +00:00
toasterbabe df3ba30263 * Revamped Time and Nights attack.
Still need to figure out the way to sort pressing esc on reselect level sending you back to the title screen. This will need further whittling before I can call this a solved section and move onto MP stuff.
2017-01-29 19:25:43 +00:00
toasterbabe a23da9ae43 * Level Platter system added to Record/NiGHTS Attack modes.
* Made quality-of-life improvement for starting the player off on the "right" map more reliable.
2017-01-28 13:13:03 +00:00
toasterbabe 3574b598d6 * Make unlockable levels (as opposed to ones which are part of the main campaign) have a different coloured (dark orange) text background.
* Better comments.
2017-01-28 10:34:58 +00:00
toasterbabe 70068c664d * Dark blue background behind text underneath map icons.
* Traditional menu cursor now added.
2017-01-28 00:56:28 +00:00
toasterbabe 2737d08107 * Singleplayer save-complete level select now following new system.
* More comprehensive "pick up where you left off" system.
* Made individual map name selection actually take into account the map name AND the act number if the heading isn't the zone name.
2017-01-27 23:16:35 +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 521ab3ca1a The visuals now work nicely. Future work involves porting this with minimal code repetition to the other sections of the game that use the old level select system. 2017-01-27 00:02:47 +00:00
toasterbabe 4a68f191c8 Mostly-complete structural work, very much incomplete rendering work. 2017-01-26 19:14:52 +00:00
toasterbabe d2d88a919b * Allowing for changing skins on command line startup again.
* Fixing an inconsistency with being able to change skin colours when you shouldn't be able to, much like the previous skin change issue that was fixed.
2017-01-26 12:47:47 +00:00
Monster Iestyn cfb5a9d904 Merge branch 'better_papercollision' into 'master'
Better papercollision

Diagonal bounding boxes are no longer root 2 larger than they should be. Testwad is <root>/toaster/sawb.wad. Nice and simple.

See merge request !49
2017-01-25 17:34:43 -05:00
Monster Iestyn d0861a084a Merge branch 'master' into crumble-FOF 2017-01-25 19:38:07 +00:00
Monster Iestyn 08baf2ebb8 debugfile is only used by DEBUGFILE code, no need to declare/define it for anything else 2017-01-25 19:36:32 +00:00
Monster Iestyn 58abd6f056 Merge branch 'master' into lua-more-stuff 2017-01-25 17:32:08 +00:00
Monster Iestyn 921b57e904 Merge branch 'slopewall_transfer' into 'master'
Slopewall transfer

As @Nev3r wants. Go along a slope, hit a wall? LAUNCH! Well, I mean. He wants it slightly less weak. I have already made it less weak than P_SlopeLaunch.

Also also I made the trail that goes behind the player when they're rolling take into account vertical momentum as well as horizontal, so that being launched directly up didn't leave you trailless.

Test with <root>/!LatestSRB2Files/srb2win_branch_transfer.exe and <root>/Nev3r/ACZMaster.wad (roll down slope directly in front of you).

See merge request !66
2017-01-25 12:30:20 -05:00
toasterbabe 97a6f786a3 De-meming. 2017-01-25 17:23:57 +00:00
toasterbabe ad3b20584b After IRC discussion, made the shells only cause pain to enemy players. 2017-01-25 17:19:12 +00:00
toasterbabe 939a7b8b2e Fixed the missing Mario Puma/poodoo sounds. 2017-01-25 17:00:40 +00:00
toasterbabe cdf388810b Added modified Mario shells. They now hurt everyone if you touch them from the side, and can be stopped by anyone if they stomp on their tops. 2017-01-25 14:53:09 +00:00
toasterbabe 91cbeb5e1a Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into patch_hardcode 2017-01-25 12:24:09 +00:00
Monster Iestyn fb8140312b Merge branch 'flat_alignment_revamp' into 'master'
Revamps of several dated linedef type effects

Felt like being productive so made some things I hate suck less.

Linedef type 7 (flat alignment) now works as follows.
* Linedef angle (from v1 to v2) is flat angle.
* Origin of flat is manipulated to match v1's coordinates - unless ML_NOKNUX is flagged, in which case uses frontside x and y offsets as flat offsets instead.
* ML_NOSONIC prevents changing floor.
* ML_NOTAILS prevents changing ceiling.
* Both of the above flags at once prints a warning.
* (THZ and probably a few other maps need updating.)

Linedef type 540 (friction) now works as follows.
* Controlled by x offset instead of length - offset of -100 is maximum iciness, offset of +483(!!!) is the maximum sludginess BUT things are scaled such that +100 is about the maximum sludginess any reasonable human being would want in a level, 0 is ORIG_FRICTION)
* Not reliant on a sector special to function (can be applied solely by tag to in-map sectors or solid FOF control sectors)
* Uses less memory, perform less calculations, and not bug out objects which just happen to use movefactor for something
* PHYSICS CHANGE: Low friction surfaces actively impede your acceleration (and make your animation speeds faster to give off that Looney Tunes out-of-control effect)
* (ACZ and Frozen Hillside needs updating.)

Sector types 1 and 3 in section 3 no longer do anything.

Linedef type 3 (zoom tube) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 4 flag rotates the player to match the waypoint direction (same as before).
* (ERZ needs updating.)

Linedef type 11 (rope hang) now works as follows.
* Abs of frontside x offset is speed in units of FRACUNIT/8.
* Abs of frontside y offset is waypoint sequence number.
* Effect 1 flag makes rope transfer one-way. (same as before)
* No climb flag makes rope static. (same as before)
* (ACZ and maybe ERZ need updating.)

Linedef type 258 (laser) is almost the same as before, but has altered functionality.
* Its flashing is less obnoxious. (56.25% to 68.75% instead of 100% to 0%, at half the speed)

Linedef type 14 (Bustable block parameters) is new, and works as follows.
* Tagged to the control sector of a block that is likely to be busted (via executor or collision, doesn't matter)
* Concatenation of frontside textures is MT_ object type to spawn, defaults to MT_ROCKCRUMBLE1 if not present
* Sound played when being busted is object type's activesound
* Frontside x offset is spacing (in fracunits) of spawned particles, defaults to 32<<FRACBITS
* Frontside y offset is the fuse of spawned particles in tics, defaults to 3*TICRATE, if set to -1 fuse is not set
* Effect 1 flag makes particles "fly out" horizontally and vertically from the center of the FOF

Sector types 7 through 15 in section 3 no longer do anything.

Linedef type 250 (Mario Block) is almost the same as before, but has new functionality and is slightly different in another way.
* No Climb flag turns it into a brick block (set on Custom FOF via presence of FF_SHATTERBOTTOM - busts when hit from the bottom, player hits their head/fist/whatever, no more upwards momentum)
* Effect 1 flag makes it an invisible block (set on Custom FOF via absence of (FF_SOLID|FF_RENDERALL|FF_CUTLEVEL) - intangible from every side except the bottom. Becomes visible and tangible when it's hit once)
* Only updates side textures when moving down or stationary, not whilst moving up - more fidelity to the source material, less processing on the CPU, everyone wins.
* If FOF master linedef has a backside, then: [If there's items in it the FOF's flats are set to that of the backside sector's ceiling, otherwise the floor.] Otherwise, no flat change.

Linedef type 4 (Speed Pad parameters) now works as follows.
* Frontside x offset is speed in fracunits.
* Effect 4 flag doesn't center the player. (same as before)
* Effect 5 flag sends them off in rolling frames.
* Frontside upper texture is sound to play on launch, defaults to sfx_spdpad when not given

Sector type 6 in section 3 no longer does anything.

Object type 757 is changed as follows, and no longer works on its own - see Linedef type 15 for more details.
* Tag via its angle field
* Number of objects to spawn per tic around it via its z field, if zero then just spawn at center
* Is flipped if given MTF_OBJECTFLIP.
* (ERZ and Seraphic Skylands - if we use that map - needs updating)

Linedef type 15 (Fan particle spawner parameters) is new, and works as follows.
* Tag is tag of object(s!)
* Object type set via concatenation of frontside textures, MT_PARTICLE is default
* The length of the linedef is the radius the particle is spawned out (zeroed if z field is 0)
* Frontside x offset is speed upwards
* Frontside y offset is number of degrees to turn each tic (zeroed if z field is 0)
* Frontside floor and ceiling heights are the heights in which the particle is bound through some fun mathematics

A_ParticleSpawn is changed, too.
* Object type is now changed through actor->threshold instead of var1 to support Linedef type 15.

Test executable uploaded at /toaster/srb2win_branch_flatalignment.exe on the ftp.

Test file uploaded at /toaster/flatalignment.wad on the ftp.

Breaks compatibility with 2.1 so put in internal.

See merge request !29
2017-01-24 16:49:43 -05:00
Monster Iestyn 32562068ba On second thought, I'll revert the P_TryMove bit to how it was before and just stuff an extra P_MobjWasRemoved check in
this way it won't cause as much conflict with the slopetowall transfer branch
2017-01-24 20:21:50 +00:00
Monster Iestyn 4b97333ed7 Merge branch 'plane-displacement' into 'master'
Plane displacement

Basic support for plane displacement, no netplay support as of writing but this is what Nev3r wanted moreorless at least.

Linedef types 66-68 are the plane displacement specials; 66 = move floor only, 67 = move ceiling only, 68 = both

Front sector = control sector
Tag = tag of target sectors to be moved whenever the control sector floor moves
Linedef length = movement factor relative to control sector movement, 256 = 1:1 with control sector. 128 is half as much, 512 is twice as much, etc.

Whenever the control sector floor moves (not ceiling, never ceiling), the selected planes of the tagged sectors all move (mind, they have a tic delay due to how it all works, it's not perfect really). No support for reverse speeds yet sorry.

EDIT: oh, btw, test exe and test map are included in my folder on the FTP (srb2win-plane-displacement.exe and plane-disp-test.wad, respectively)

See merge request !61
2017-01-24 14:29:38 -05:00
toasterbabe 5eb561297b Limit of 45 degrees before you can start transferring up the wall. 2017-01-23 20:30:56 +00:00
toasterbabe 19f31b958d * Put all of the wall transfer code in one place.
* Made the name of P_PrepareSlopeToWallTransfer (now P_GetWallTransferMomz) make sense.
* Bugfixed the case where you couldn't reliably guess the angle of the wall you just hit.
2017-01-23 17:23:42 +00:00
toasterbabe 12da89b1ce Late night commit!
* Seriously reworked a lot of stuff behind the scenes, thanks to Red's comments.
* More consistent behaviour.
* Launching power is now scaled to the slope's angle relative to the wall you hit, so no massive launches when you hit the side of a steep slope.
* The code is a lot messier and the function name doesn't make any sense any more, so I need to clean that up in the morning.
* Need to figure out how to prevent tiny launches that uncurl you when spindashing up against walls.
* Spindashing trails now takes into account vertical momentum as well as horizontal - it was stupid not seeing your spintrail just because you weren't moving very fast horizontally!

No exe uploaded because it's almost 2am.
2017-01-23 01:40:11 +00:00