From 2d141739680dbc7802269596f89a3bb1590a663e Mon Sep 17 00:00:00 2001
From: Yukita Mayako <catgirl@goddess.moe>
Date: Fri, 29 May 2015 02:35:24 -0400
Subject: [PATCH] Allow spin button Jump Shield normally.

If you walk off a cliff with a jump shield, you
can now press EITHER the jump or spin buttons to
activate it and double jump.
---
 src/p_user.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/p_user.c b/src/p_user.c
index ea4d83938..613fbe68d 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -3832,11 +3832,13 @@ static void P_DoJumpStuff(player_t *player, ticcmd_t *cmd)
 
 	if (cmd->buttons & BT_USE && !(player->pflags & PF_JUMPDOWN) && !player->exiting && !P_PlayerInPain(player))
 	{
-		if (onground || player->climbing || player->pflags & (PF_CARRIED|PF_ITEMHANG|PF_ROPEHANG))
-		{}
-		else if (player->pflags & PF_MACESPIN && player->mo->tracer)
-		{}
-		else if (!(player->pflags & PF_SLIDING) && ((gametype != GT_CTF) || (!player->gotflag)))
+		if (onground || player->climbing || player->pflags & (PF_CARRIED|PF_ITEMHANG|PF_ROPEHANG|PF_SLIDING)
+		|| (player->pflags & PF_MACESPIN && player->mo->tracer))
+			;
+		else if ((player->powers[pw_shield] & SH_NOSTACK) == SH_JUMP
+		&& !(player->pflags & PF_JUMPED))
+			P_DoJumpShield(player);
+		else if (gametype != GT_CTF || !player->gotflag)
 		{
 #ifdef HAVE_BLUA
 			if (!LUAh_JumpSpinSpecial(player))