Commit graph

2115 commits

Author SHA1 Message Date
Monster Iestyn
731ee115a3 Merge branch 'public_next' 2017-03-13 18:25:26 +00: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
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
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
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
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
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
toasterbabe
aa6453382e SLOPE-TO-WALL TRANSFER 2017-01-22 18:26:05 +00:00
Monster Iestyn
e3ded1671c Added MobjMoveBlocked Lua hook
Also slightly edited P_XYMovement to properly check the mobj still exists before checking its eflags for MFE_SPRUNG, while I was at it
2017-01-21 23:49:18 +00:00
toasterbabe
4e8ce1b77f CEZ1 flames now implemented.
Please note Brak flames use a FF_ANIMATE state instead of the normal flame ones because they are spammed a lot, and the normal ones make particles.
2017-01-21 20:32:33 +00:00
Monster Iestyn
acfbce21c9 Merge branch 'gfz3_laser' into 'master'
GFZ3 Unfuckening

Some tweaks to the GFZ3 Eggmobile's behaviour to make it less frustrating for old and new players alike.

* GFZ3 Eggmobile's laser won't change its angle when you move left and right anymore.
    * Changed because its ability to move quickly was extremely punishing for new players (see ProJared's youtube video on the matter).
    * http://gfycat.com/PassionateUnknownAgama (the twitching on the third laser has been fixed since this was recorded)
* GFZ3 Eggmobile will, when too far away from the ground and moving upwards, slow itself down vertically.
    * This was punishing and annoying for both old and new players alike.
    * http://gfycat.com/CornyLeftDungbeetle (old values - the typical settling height is slightly lower now)

See merge request !42
2017-01-21 13:46:04 -05:00
toasterbabe
90b2236711 Fixed flame jets. (I'll upload the patch.dta required to run this exe when I'm ready to make a merge request.) 2017-01-21 12:39:59 +00:00
toasterbabe
399a6c1d47 * ALMOST SORTA IMPLEMENTED A NON-HACKY SPINNING FLAMEJET. For some reason, they wanna step down onto the platform - and I've been figuring this out for too long to see what's causing that tonight.
* Hardcoded a bunch of stuff from patch.dta. All works fine, but still more to do.
2017-01-21 01:09:39 +00:00
Monster Iestyn
c9b623390f Add code for saving/loading planedisplace_t thinkers to/from $$$.sav 2017-01-20 20:17:40 +00:00
Monster Iestyn
930527a3d6 Reduced code for userdataType significantly
UTYPE_* enum wasn't needed, meta2utype is now the meta string and return string for each userdata type
2017-01-19 21:35:53 +00:00
Monster Iestyn
45d373a2a2 Merge branch 'doubledecker-detons' into 'master'
No more double-decker Detons

Oversight of a tiny hack when working on the flickies branch meant detons released twin flickies when hitting stuff. As cute as that is, it's also pretty weird.

See merge request !62
2017-01-19 14:07:18 -05:00
Monster Iestyn
1b542c6501 Added userdataType(userdata) function to Lua!
This new function returns a string representing the type of userdata the variable given (e.g. mobj_t, player_t), it even works on "minor" userdata types (player_t.powers, skin_t.soundsid, sector_t.lines, etc)
2017-01-19 18:30:55 +00:00
Monster Iestyn
1935a2ffa6 Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/doomdef.h
#	src/p_map.c
2017-01-19 16:54:47 +00:00
Monster Iestyn
2ac3f68438 Added in-level checks to a lot of these functions and tables for Lua use
This makes it less likely for the game to crash when stuff is used outside a level when they shouldn't be
2017-01-18 22:02:28 +00:00
Alam Ed Arias
a29ced725d Merge branch 'master' into next 2017-01-16 16:41:38 -05:00
Alam Ed Arias
628d1c4dab DD: Mingw 3.4.5 build fix 2017-01-16 16:40:16 -05:00
toasterbabe
19cd010091 Fixed a stupid bug involving jumping at spikes on FOFs in reverse gravity caused by my own incompetence/assumptions. 2017-01-16 17:52:06 +00:00
toasterbabe
020234cc5f Fixed crash bug. It's weird that linedefs' backsides aren't NULL but are instead 0xFFFF when invalid, so instead I used something which DOES take null pointers as a parameter. 2017-01-16 17:33:07 +00:00
toasterbabe
da42165169 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_alignment_revamp 2017-01-16 17:14:58 +00:00
toasterbabe
acf0d4ad5b Detons no longer release duplicate flickies when they hit walls.
(I COULD have hacked around the hack, but when a line tells you it's a hack and it makes things work by removing it, you remove it.)
2017-01-16 17:09:57 +00:00
toasterbabe
85977c271b Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3 2017-01-16 16:52:09 +00:00
Inuyasha
3169b538be Hey! If you change this, add 1 to the MODVERSION below!
Otherwise we can't force updates!
2017-01-15 16:34:30 -08:00
Monster Iestyn
ba3f001a09 I dun goofed, THIS is why FuriousFox disappears like that 2017-01-15 22:24:38 +00:00
Monster Iestyn
4ac709141a Added LJSonic to credits, altered how my own name + nick is shown in credits 2017-01-15 19:23:25 +00:00
Monster Iestyn
e59fb38802 Update version number 2017-01-15 18:49:33 +00:00
Monster Iestyn
691d368434 if this is what caused resynching to randomly turn some people spectators then welp 2017-01-15 18:36:38 +00:00
Monster Iestyn
c0fb3fce73 Merge branch 'master' into next 2017-01-14 19:23:31 +00:00
Louis-Antoine
4a4f0ea7ee Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-14 19:26:31 +01:00
Louis-Antoine
8298ed3559 DEBUGMODE -> _DEBUG =) 2017-01-14 19:24:22 +01:00
Alam Arias
6611b01635 Merge branch 'master' into netcode-shit 2017-01-13 20:48:42 -05:00
Louis-Antoine
b8b720088e Oh? a cookie on the ground
*takes the cookie*
2017-01-13 23:10:00 +01:00
Alam Ed Arias
94025ae947 Merge branch 'master' into lua-additions 2017-01-13 16:47:57 -05:00
Louis-Antoine
490778cdab Why does DD exist 2017-01-13 22:34:16 +01:00
Louis-Antoine
da06b9417a Merge branch 'netcode-shit' of https://github.com/LJSonik/SRB2 into netcode-shit 2017-01-13 22:02:06 +01:00
Louis-Antoine
7cca60a027 Merge branch 'master' into netcode-shit 2017-01-13 21:48:24 +01:00
Louis-Antoine
005485cf9c Fixed a warning 2017-01-13 21:30:30 +01:00
Louis-Antoine
e9cb6d0331 -Added a timeout for game state downloading to prevent definitive join freezes in some cases. The timeout has a minimum value of "jointimeout" and gets higher as the game state grows in size
-If the server tries to kick a joiner who is downloading the game state, they will get a timeout instead, because a regular kick would only happen once the game state has been downloaded
-Added a timeout for player ticcmd packets, again to prevent freezes to happen in some cases
-File/game state downloading is now faster, the speed is controlled by the "downloadspeed" cvar, in packets per tic
-The reason is now properly shown when the server refuses connection
-Changed the default values of "nettimeout" to 10 seconds (previously 15) and "maxsend" to 4 MB (previously 1)
-Added a "noticedownload" cvar that displays a message in the server console when someone is downloading a file
2017-01-13 20:53:52 +01:00
Alam Ed Arias
e7a1c81355 Merge branch 'cmake_nasm' into 'master'
CMake: Fix nasm Linux builds

When compiling under Linux with CMake and nasm/yasm enabled, the operation would fail during linking with undefined symbols related to the tmap files.
This commit adds support for passing flags to the assembler and passes ```-DLINUX``` in order to compile.

After this change, binaries are successfully compiled with either nasm or yasm on Linux systems.
Tested on Ubuntu.

See merge request !153
2017-01-12 17:21:05 -05:00
Alam Arias
456f5cf6e8 Merge branch 'next' into patch-1 2017-01-11 15:50:54 -05:00
Tasos Sahanidis
5216da13f0 Don't check if SRB2_ASM_FLAGS is defined and add docstring for the assembler 2017-01-11 21:52:14 +02:00
Monster Iestyn
e727fea427 Merge branch 'master' into next 2017-01-11 19:40:51 +00:00
Monster Iestyn
b1168b1728 Merge branch 'CMake-inline_ASM' into 'master'
CMake: split inline ASM code from vid_copy.s code

See merge request !151
2017-01-11 11:37:21 -05:00
frozenLake
d865877ca2 Merge branch 'next' into patch-1 2017-01-11 10:49:37 -05:00
Tasos Sahanidis
0f52606953 Pass -DLINUX to n/yasm 2017-01-11 03:16:48 +02:00
Monster Iestyn
edba7834ae Merge branch 'master' into plane-displacement 2017-01-10 14:52:57 +00:00
toasterbabe
38c7436565 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into charabilities_mk3
# Conflicts:
#	src/d_clisrv.c
2017-01-09 11:10:47 +00:00
frozenLake
e3b94c04fd Added transmaps to non modifying lump list. 2017-01-08 18:13:46 -06:00
Monster Iestyn
3d07915be2 Merge branch 'vada_flickies' into 'master'
Hardcoded VAda Flickies

Many thanks to MI for his help, even if he has sinful opinions on what the collection of creatures should be called. ;P

* Flickies are now handled via A_FlickySpawn instead of hardcoded in P_KillMobj, so there can be mobjtypes with MF_ENEMY which don't create flickies, or other mechanisms which can much easier.
* Added map header "FlickyList" (aka "AnimalList") parameter, which can either be set to:
    * A species (eg: "Rabbit" or "Bluebird", amongst 17 currently supported types in dehacked.c table FLICKYTYPES - including the seed from Sonic CD, which isn't limited to 'soniccd on' in the console now)
    * Any valid mobjtype that isn't MT_NULL (eg: "MT_FLICKY_GHOST")
    * A comma-seperated list of either of the above, up to 64 entries long (eg: "Cow,MT_FLICKY_SPIDER,Chicken")
    * "All" - sets behind-the-scenes stuff to use every 'normal' type of flicky in FLICKYTYPES (a distinction which can be utilised to hide secret level flickies where they wouldn't be appropriate for the main game)
    * "Demo" - sets behind-the-scenes stuff to use the five flickies closest to the species used in the game's long history.
    * "None" - prevents any flickies from spawning.

"Demo" is functionally the default value if you don't include a FlickyList parameter in the header at all.

Of note, a bunch of functions are now created:
* A_FlickySpawn - spawns flicky.
* A_FlickyAim - aims for area near target, but not directly on them - turns around when hitting wall
* A_FlickyFly -  flies/swims around target (calls A_FlickyAim)
* A_FlickySoar - hacky alternate fly (calls A_FlickyAim)
* A_FlickyCoast - slowing down before going off again
* A_FlickyHop - fracunit-scale precision for A_BunnyHop
* A_FlickyFlounder - A_FlickyHop with randomisation
* A_FlickyCheck - State-setter for falling, or being on-ground
* A_FlickyHeightCheck - State-setter for falling, or being below a certain height relative to target
* A_FlickyFlutter - A_FlickyCheck, but with a slow fall/movement (calls A_FlickyCheck and A_FlickyAim)

I don't need to enumerate the object types and states that have been added, do I?

Oh yeah, I also made it so get_mobjtype's failure value was MT_NULL and prohibited SOC from editing the properties of it to compensate.

IN ADDITION: Killed "soniccd" console command, since it made things more complicated and honestly being able to specify Sonic CD seeds in the level header is a better option.

See merge request !60
2017-01-08 17:36:25 -05:00
Monster Iestyn
166c6746cd Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
Monster Iestyn
87dc33a78d Merge branch 'master' into next 2017-01-08 15:59:34 +00:00
Inuyasha
cdc9bf3a60 Merge branch 'cb_update' into 'master'
Update Code::Block project

See merge request !145
2017-01-08 10:32:22 -05:00
Monster Iestyn
22020dda03 Merge branch 'savegame-hotfixes' into 'next'
Savegame hotfixes

Yes, this another netgame related fix! Named this "savegame hotfixes" rather than "ERCZ hotfix" or the like in advance of the fact we probably need a general branch for other $$$.sav fixes?

Anyway, fixes included in by this branch:
* ERCZ's lava falls now act as expected rather than being stuck in place for the map's duration, fixing all other known desynchronisation issues known in the map for the time being (yay)
* Changing sector tags in a map no longer causes joiners to netgames to have their SRB2 application stop responding etc
* Player names should no longer turn red in the console in gametypes outside of CTF/Team Match if a resynch occurs (not $$$.sav related, but it's related to netplay so I lumped it in anyway)

See merge request !150
2017-01-07 18:32:07 -05:00
Monster Iestyn
ad30c41179 Fix egg guard shields being endlessly killed by lasers. Simply make sure they have health first before killing them! 2017-01-07 18:02:55 +00:00
Monster Iestyn
45fdfd9f37 Merge branch 'eggscalibur_fixes' into 'next'
One Eggscalibur fix

Use mobj->watertop instead of mobj->spawnpoint->z. CEZ3 is far from fixed in multiplayer, but this is still one less thing to worry about.

See merge request !148
2017-01-07 10:47:02 -05:00
Monster Iestyn
12ae6bb22a Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/r_things.c
2017-01-07 15:03:59 +00:00
Monster Iestyn
cd0ec0881d Merge branch 'plane-fixes' into 'next'
Software plane rendering fixes/cleanup

This is mostly cleanup, with the exception that polyobject planes should now behave somewhat better than they do in 2.1 currently (translucent polyobj planes should now always be actually translucent regardless of where you view them from, for instance). I can't claim I've fixed their rendering once and for all though, there may still be bugs for all I know...

See merge request !136
2017-01-06 21:19:09 -05:00
Monster Iestyn
c601a409e1 Merge branch 'texture-fixes' into 'next'
Some texture-related fixes

Bugs fixed in this branch:
* upper/lower/middle textures with non-existent texture ids being capable of crashing the game. For instance, RVZ1 has colormap codes on non-colormap linedefs, which causes them to wind up with invalid texture ids because of how the game tries to interpret lower/upper textures with "#" followed by characters on normal linedefs. Fortunately these "textures" are normally not visible anyway (since they're all in control sectors) unless they are swapped with in-level textures by some crazy Lua script of some sort...
* animated single-patch textures with holes displaying garbage on first viewing (see this thread: https://mb.srb2.org/showthread.php?t=42195)
* the heights of the lighting (shadows or colormapping) from water/translucent/shadowcasting/etc FOFs become messed up when displayed on repeated midtextures.

See merge request !144
2017-01-06 21:15:22 -05:00
Alam Ed Arias
0b572b6eee CMake: split inline AMS code from vid_copy.s code 2017-01-06 15:48:19 -05:00
Monster Iestyn
5e12f3497a Merge branch 'flat-changing-hotfix' into 'next'
Flat changing hotfix

This should fix how Lua scripts that change flats in levels, particularly to flats that don't already exist in the level, cause SRB2 to crash for anyone who joins a netgame afterwards. (I'm not sure if it's a consistent thing or not though)

Probably needs a good test to verify the issue is completely fixed before being merged in. Maybe there are other minor things I didn't account for in this fix? I don't know!

See merge request !141
2017-01-05 19:46:44 -05:00
Monster Iestyn
5358359ddb Added the thinker creation function and the thinker itself, we now have functional plane displacement thinkers! 2017-01-05 20:29:48 +00:00
Monster Iestyn
f2a58a74ef Stupid me 2017-01-03 22:48:06 +00:00
Monster Iestyn
4d8ca41e65 Fix player colors mysteriously turning red if a resynch occurs outside of CTF/Team Match. Not technically a $$$.sav fix, but still netplay related of course
At least, I assume this is how it's happening for some, I haven't been able to get the full info since WHERE IS EVERYBODY?
2017-01-03 22:43:46 +00:00