Commit graph

8421 commits

Author SHA1 Message Date
Inuyasha
e62b0f219f Merge branch 'damage-control' into 'master'
Damage control + Match rebalancing

This is two branches in one since while I was working on damage-control's changes months back, I felt it was best Match rebalancing was merged in here too (thanks JTE for helping me do so).

Changes from damage-control:
* `player->health` (formerly the "HUD copy" of `player->mo->health`) is now `player->rings`, and is also now the player's actual ring count.
* `player->mo->health` (formerly rings + 1) is now always 1 when alive, regardless of ring count; if player with rings is damaged, this is untouched.
* P_RingDamage now includes ring spilling code.
* P_ShieldDamage now has a damagetype argument, allowing me to remove the last MT_NULL hack left in from the pre-damagetype days that I forgot about.
* The old "switch-to-seestate" enemy damaging behavior in P_DamageMobj has been removed. This was a Doom left-over and doesn't really affect SRB2's enemies anyway - see, Doom enemies had a random chance of using seestate or painstate, SRB2 enemies always use painstate.
* Other minor efforts to reorganise damaging code and have it make more sense, but otherwise nothing that should affect gameplay in general.

Changes from match-rebalancing:
* New weapon/ammo dropping behavior: if you have the weapon panel + ammo, you drop the panel (but not the ammo); if you don't, you just drop the ammo.
* New Match ammo consumption: Weapon rings can now be fired with no rings at double the ammo cost.
* New emerald behaviour: collecting all 7 emeralds no longer turns you super (read: Match super is dead now) but instead steal points from enemies and gives you and teammates invincibility + sneakers
* Tails ringslinger buff: Any character with CA_FLY will now throw rings 1.5x as fast.

See merge request !28
2016-11-13 16:47:05 -05:00
toasterbabe
b7298a5574 Revert "Nev3r wants to make barrels which are both shootable and die when you break them like you break monitors."
This reverts commit 286a8b0289.
2016-11-12 15:39:47 +00:00
toasterbabe
0cca852eb6 Revert "Correction of some other relevant places to the previous commit."
This reverts commit a88b21f703.
2016-11-12 15:39:42 +00:00
toasterbabe
11a391dbb5 Making FF_SPR2ENDSTATE consistent between P_SetMobjState and P_SetPlayerMobjState. 2016-11-12 15:06:49 +00:00
toasterbabe
a88b21f703 Correction of some other relevant places to the previous commit. 2016-11-12 14:34:25 +00:00
toasterbabe
286a8b0289 Nev3r wants to make barrels which are both shootable and die when you break them like you break monitors.
To that end, I've made MF_MONITOR *without* MF_SHOOTABLE act like MF_MONITOR does, and MF_SHOOTABLE allow for both missiles AND players to destroy. This has had the side effect of allowing MF_ENEMY and MF_BOSS to use MF_MONITOR as a substitute for MF_SHOOTABLE that doesn't allow missiles to cause them damage, which might be useful for Jetty-syns.
2016-11-12 14:08:27 +00:00
toasterbabe
645e7298c0 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-11-12 13:43:02 +00:00
toasterbabe
20677c7a66 * Introducing new Lua-exclusive function, P_IsValidSprite2(mo, spr2). Basically just a wrapper for (((skin_t *)mobj->skin)->sprites[spr2].numframes > 0), useful for creating custom sprite2 defaulting functions since hooking into P_GetMobjSprite2 wouldn't be worth it.
* All Lua-originated sprite2 settings are now forced through P_GetMobjSprite2. Makes sense because of SPR2_JUMP, which none of the main characters have sprites for yet all use.
* Cleaned up P_GetMobjSprite2 to not set irrelevant, otherwise-unused variable.
2016-11-11 23:23:41 +00:00
toasterbabe
4756b4ce2c Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into spr2stuff 2016-11-11 21:38:35 +00:00
toasterbabe
9aa41582c3 Lua support for sprite2. 2016-11-11 21:37:28 +00:00
Inuyasha
c545194bef update colors to new palette 2016-11-10 16:53:27 -08:00
toasterbabe
d8096d237a Nullification of a lot of irrelevant nextstates for infinite length states. It makes sense. 2016-11-11 00:30:49 +00:00
Inuyasha
1ff498fcfd Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
# Conflicts:
#	src/console.c
2016-11-10 16:20:03 -08:00
toasterbabe
6c1483266c You know, I should've converted these with the earlier commit. Silly me. 2016-11-11 00:15:41 +00:00
Inuyasha
6c40eb5cd7 Merge branch 'next' of http://git.magicalgirl.moe/STJr/SRB2 into public_next 2016-11-10 16:13:35 -08:00
toasterbabe
07e5fe9546 Swapped around in an attempt to streamline. 2016-11-10 22:35:33 +00:00
Monster Iestyn
47c67472ff Added bubble form of spin dust 2016-11-10 21:09:05 +00:00
toasterbabe
fc64feee60 FF_ANIMATE now cooperates with Sprite2, and to this end a few player states which have non-varying animation speeds (some which previously had a speed of 0) now use it. 2016-11-10 18:27:01 +00:00
Monster Iestyn
ce97c1e986 Added basic spindash dust
Also cleaned up some of the code in P_DoSpinAbility while I was at it
2016-11-10 17:51:10 +00:00
Monster Iestyn
fea97b4880 Merge branch 'master' into next 2016-11-10 16:45:49 +00:00
toasterbabe
080b3c1d6d Decouple the Sprite2 defaulting from P_SetPlayerMobjState. 2016-11-10 16:05:40 +00:00
Monster Iestyn
1b6c1a02c9 Merge branch 'reduced-palette-quick-fix' into 'master'
Reduced palette quick fix

Fixes a leftover from the days of the old palette

See merge request !50
2016-11-10 09:30:53 -05:00
Inuyasha
2569a1eda6 Merge branch 'console-improvements' into 'master'
Console improvements

* Unused console backgrounds no longer take up memory
* Input cursor can now move left and right
* Support for selections (Shift-arrow keys, CTRL-A, etc)
* Clipboard support (CTRL-C to copy, CTRL-V to paste, CTRL-X to cut)
* Fixed handling of simultaneous modifier key presses

https://dl.dropboxusercontent.com/u/3518218/21/console.gif

None of this affects chat yet, that's not part of the console. I'll look at it later.

See merge request !133
2016-11-09 20:42:56 -05:00
Prisima the Fox
b1ce5896aa Remove boolean remnants 2016-11-08 10:30:01 -05:00
Monster Iestyn
5be8e4f1b0 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2016-11-07 21:55:56 +00:00
Monster Iestyn
14cd274baa Change 0xF7 to 0xFF in R_GenerateTexture 2016-11-07 20:27:12 +00:00
Monster Iestyn
817f0908e4 made HWR_CreateBlendedTexture's color switch case take up not so many lines, and only one V_GetColor call is used now 2016-11-07 18:34:51 +00:00
Alam Ed Arias
93c9841360 move Windows zlib options out of PNG to ZLIB 2016-11-06 15:11:02 -05:00
Monster Iestyn
bbd67a6960 Merge branch 'master' into opengl-improvements 2016-11-06 18:02:34 +00:00
Monster Iestyn
cb1fbbf345 Merge branch 'public_next' 2016-11-06 18:02:12 +00:00
Monster Iestyn
798f4d498d Merge branch 'next' into public_next 2016-11-06 18:01:49 +00:00
Monster Iestyn
f97301b8b8 Merge branch 'master' into next 2016-11-06 17:59:35 +00:00
Monster Iestyn
0882dd79c0 Merge branch 'md2-limits-check-hotfix' into 'master'
MD2 limits check hotfix

Fixing slight mistake made in merge request !132 that someone else spotted, no real explanation needed

See merge request !134
2016-11-06 12:57:48 -05:00
Monster Iestyn
2dfb841c38 Correcting slight mistake I made 2016-11-06 17:50:04 +00:00
toasterbabe
01f3aa5743 Fixed collision for MF_PAPERCOLLISION with respect to diagonals. 2016-11-06 16:46:27 +00:00
toasterbabe
b5a6bfe046 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into shield-actions 2016-11-06 16:03:12 +00:00
Monster Iestyn
05860b2fa1 Ensure file is closed whenever MD2 reading errors happen 2016-11-05 20:51:48 +00:00
Monster Iestyn
b00c680437 Add MD2_INDENT and MD2_VERSION so we can cleanly check that it's a valid MD2 from magic number/version 2016-11-05 20:40:48 +00:00
Monster Iestyn
43cdcc94f9 remove commented-out HWRENDER code in V_DrawContinueIcon 2016-11-05 19:54:49 +00:00
Monster Iestyn
795b3aa552 Call V_DoPostProcessor only in software mode (it cancels itself in OGL anyway) 2016-11-05 19:54:38 +00:00
Monster Iestyn
2df7d8c4aa Merge branch 'public_next' 2016-11-05 19:52:27 +00:00
Monster Iestyn
90d82a8358 Merge branch 'next' into public_next 2016-11-05 19:51:57 +00:00
Monster Iestyn
7b9328781f Merge branch 'master' into next 2016-11-05 19:36:04 +00:00
Monster Iestyn
3bf19a004e Merge branch 'md2-limits-check' into 'master'
MD2 vertex/frame/triangle/etc limits checking

Fix for this bug: http://mb.srb2.org/showthread.php?t=42099

The model reading code didn't properly check if the model had too many vertices, so models with higher counts freely broke the game. This fix now stops that and prints an error message if that is the case.

However, it seems some models happily exceed other limits such as texcoords without problem (to my knowledge), so I've not bothered with checking those limits for now. Perhaps this could be a time to discuss if we need to change such limits again or not? Either way, one can easily uncomment my lines for checking texcoords/skins/triangles limits later if needed.

EDIT: I've allowed checking for triangle and frame limits too now, after some discussion.

See merge request !132
2016-11-05 15:20:39 -04:00
Monster Iestyn
8909b7c27b Change >= to >, I THINK having exactly 4096 vertices is safe? 2016-11-05 17:38:36 +00:00
Louis-Antoine
6f4699fb77 MobjThinker, MobjCollide and MobjMoveCollide hooks are now directly linked to the mobjtype they belong to, so you no longer iterate through all existing hooks. 2016-11-04 18:56:25 +01:00
Inuyasha
55400a262d go fuck yourself stupid compiler
...your guesses should not be treated as errors.
2016-11-04 02:02:26 -07:00
Inuyasha
010c52aed2 show highlight BG over ellipses if highlight extends offscreen
+ bug fixes
2016-11-03 19:36:43 -07:00
Inuyasha
bb92986aee Merge branch 'console-improvements' of http://git.magicalgirl.moe/STJr/SRB2 into console-improvements
# Conflicts:
#	src/sdl/i_system.c
2016-11-03 17:31:24 -07:00
Inuyasha
e245cdfcbf Console with moving cursor, selections, etc 2016-11-03 17:30:30 -07:00