Document patches

OBS-URL: https://build.opensuse.org/package/show/games/prboom-plus?expand=0&rev=11
This commit is contained in:
Jan Engelhardt 2013-11-11 05:10:51 +00:00 committed by Git OBS Bridge
parent 34085b8163
commit 041df30872
6 changed files with 203 additions and 22 deletions

View File

@ -1,5 +1,6 @@
Date: 2011-08-03 18:36:44+0200
From: Jan Engelhardt <jengelh@medozas.de>
From: Jan Engelhardt <jengelh@inai.de>
Upstream: sent
Always do tesselation, because otherwise, map hacks like
self-referencing sectors (cf.

26
prboom-hbar-all.diff Normal file
View File

@ -0,0 +1,26 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2013-05-01 09:53:49.000000000 +0200
Category: improvement
Status: sent Wed, 1 May 2013 14:28:44 +0200
Show the health bar for all destructible items (including
barrels and Lost Souls).
---
src/gl_main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: prboom2/src/gl_main.c
===================================================================
--- prboom2.orig/src/gl_main.c
+++ prboom2/src/gl_main.c
@@ -2399,7 +2399,8 @@ static void gld_DrawSprite(GLSprite *spr
static void gld_AddHealthBar(mobj_t* thing, GLSprite *sprite)
{
- if (((thing->flags & (MF_COUNTKILL | MF_CORPSE)) == MF_COUNTKILL) && (thing->health > 0))
+ if ((thing->flags & MF_SHOOTABLE) && thing->info->spawnhealth > 0 &&
+ thing->health > 0)
{
GLHealthBar hbar;
int health_percent = thing->health * 100 / thing->info->spawnhealth;

31
prboom-hbar-color.diff Normal file
View File

@ -0,0 +1,31 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2013-05-01 09:42:45.000000000 +0200
Category: improvement
Status: sent Wed, 1 May 2013 14:28:44 +0200
With the current value of health_hbar_green=0, green will never
be shown for monsters, which feels incorrect.
---
src/m_misc.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
Index: prboom2/src/m_misc.c
===================================================================
--- prboom2.orig/src/m_misc.c
+++ prboom2/src/m_misc.c
@@ -953,11 +953,11 @@ default_t defaults[] =
def_bool,ss_stat},
{"health_bar_full_length", {&health_bar_full_length}, {1},0,1,
def_bool,ss_stat},
- {"health_bar_red", {&health_bar_red}, {50},0,100,
+ {"health_bar_red", {&health_bar_red}, {25},0,100,
def_int,ss_stat},
- {"health_bar_yellow", {&health_bar_yellow}, {99},0,100,
+ {"health_bar_yellow", {&health_bar_yellow}, {50},0,100,
def_int,ss_stat},
- {"health_bar_green", {&health_bar_green}, {0},0,100,
+ {"health_bar_green", {&health_bar_green}, {99},0,100,
def_int,ss_stat},
#endif

120
prboom-hbar-gradient.diff Normal file
View File

@ -0,0 +1,120 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2013-05-01 14:27:39.000000000 +0200
Category: improvement
Status: sent Wed, 1 May 2013 14:28:44 +0200
This makes the health bar above shootables use gradiented color.
---
src/gl_drawinfo.c | 4 ++--
src/gl_intern.h | 2 +-
src/gl_main.c | 44 +++++++++++++++++---------------------------
3 files changed, 20 insertions(+), 30 deletions(-)
Index: prboom2/src/gl_drawinfo.c
===================================================================
--- prboom2.orig/src/gl_drawinfo.c
+++ prboom2/src/gl_drawinfo.c
@@ -111,10 +111,10 @@ static void gld_AddDrawRange(int size)
#define NEWSIZE (MAX(64 * 1024, itemsize))
void gld_AddDrawItem(GLDrawItemType itemtype, void *itemdata)
{
- int itemsize = 0;
+ unsigned int itemsize = 0;
byte *item_p = NULL;
- static int itemsizes[GLDIT_TYPES] = {
+ static const unsigned int itemsizes[GLDIT_TYPES] = {
0,
sizeof(GLWall), sizeof(GLWall), sizeof(GLWall), sizeof(GLWall), sizeof(GLWall),
sizeof(GLWall), sizeof(GLWall),
Index: prboom2/src/gl_intern.h
===================================================================
--- prboom2.orig/src/gl_intern.h
+++ prboom2/src/gl_intern.h
@@ -220,7 +220,7 @@ typedef struct
typedef struct
{
- int cm;
+ float r,g;
float x1, x2, x3;
float z1, z2, z3;
Index: prboom2/src/gl_main.c
===================================================================
--- prboom2.orig/src/gl_main.c
+++ prboom2/src/gl_main.c
@@ -2405,15 +2405,20 @@ static void gld_AddHealthBar(mobj_t* thi
GLHealthBar hbar;
int health_percent = thing->health * 100 / thing->info->spawnhealth;
- hbar.cm = -1;
- if (health_percent <= health_bar_red)
- hbar.cm = CR_RED;
- else if (health_percent <= health_bar_yellow)
- hbar.cm = CR_YELLOW;
- else if (health_percent <= health_bar_green)
- hbar.cm = CR_GREEN;
+ if (health_percent <= health_bar_red) {
+ hbar.r = 1;
+ hbar.g = 0;
+ } else if (health_percent <= health_bar_yellow) {
+ hbar.r = 1;
+ hbar.g = (double)(health_percent - health_bar_red) /
+ (health_bar_yellow - health_bar_red);
+ } else if (health_percent <= health_bar_green) {
+ /* FullSimplify[1-((percent-yellow)/(green-yellow))] */
+ hbar.r = (double)(health_bar_green - health_percent) /
+ (health_bar_green - health_bar_yellow);
+ hbar.g = 1;
+ }
- if (hbar.cm >= 0)
{
float sx2 = (float)thing->radius / 2.0f / MAP_SCALE;
float sx1 = sx2 - (float)health_percent * (float)thing->radius / 100.0f / MAP_SCALE;
@@ -2437,7 +2442,6 @@ static void gld_AddHealthBar(mobj_t* thi
static void gld_DrawHealthBars(void)
{
int i, count;
- int cm = -1;
count = gld_drawinfo.num_items[GLDIT_HBAR];
if (count > 0)
@@ -2448,31 +2452,17 @@ static void gld_DrawHealthBars(void)
for (i = count - 1; i >= 0; i--)
{
GLHealthBar *hbar = gld_drawinfo.items[GLDIT_HBAR][i].item.hbar;
- if (hbar->cm != cm)
- {
- cm = hbar->cm;
- glColor4f(cm2RGB[cm][0], cm2RGB[cm][1], cm2RGB[cm][2], 1.0f);
- }
+ glColor4f(hbar->r, hbar->g, 0, 1);
glVertex3f(hbar->x1, hbar->y, hbar->z1);
glVertex3f(hbar->x2, hbar->y, hbar->z2);
- }
- glEnd();
-
- if (health_bar_full_length)
- {
- glColor4f(0.5f, 0.5f, 0.5f, 1.0f);
- glBegin(GL_LINES);
- for (i = count - 1; i >= 0; i--)
- {
- GLHealthBar *hbar = gld_drawinfo.items[GLDIT_HBAR][i].item.hbar;
-
+ if (health_bar_full_length) {
+ glColor4f(0.5f, 0.5f, 0.5f, 1.0f);
glVertex3f(hbar->x1, hbar->y, hbar->z1);
glVertex3f(hbar->x3, hbar->y, hbar->z3);
}
- glEnd();
}
-
+ glEnd();
gld_EnableTexture2D(GL_TEXTURE0_ARB, true);
}
}

View File

@ -1,3 +1,6 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2012-02-19 07:16:45.000000000 +0100
---
src/version.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

View File

@ -12,10 +12,10 @@ p_saveg.c:66:9: warning: cast from pointer to integer of different size
src/r_drawflush.inl | 4 +++-
3 files changed, 21 insertions(+), 17 deletions(-)
Index: prboom-plus-2.5.1.3/src/g_overflow.c
Index: prboom2/src/g_overflow.c
===================================================================
--- prboom-plus-2.5.1.3.orig/src/g_overflow.c
+++ prboom-plus-2.5.1.3/src/g_overflow.c
--- prboom2.orig/src/g_overflow.c
+++ prboom2/src/g_overflow.c
@@ -35,6 +35,7 @@
#include "config.h"
#endif
@ -33,10 +33,10 @@ Index: prboom-plus-2.5.1.3/src/g_overflow.c
}
}
}
Index: prboom-plus-2.5.1.3/src/p_saveg.c
Index: prboom2/src/p_saveg.c
===================================================================
--- prboom-plus-2.5.1.3.orig/src/p_saveg.c
+++ prboom-plus-2.5.1.3/src/p_saveg.c
--- prboom2.orig/src/p_saveg.c
+++ prboom2/src/p_saveg.c
@@ -31,6 +31,7 @@
*
*-----------------------------------------------------------------------------*/
@ -72,9 +72,9 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
}
// phares 9/13/98: Moved this code outside of P_ArchiveThinkers so the
@@ -500,10 +501,10 @@ void P_UnArchiveThinkers (void)
//e6y save_p += 4*sizeof(void*);
@@ -474,10 +475,10 @@ void P_UnArchiveThinkers (void)
memcpy (mobj, save_p, sizeof(mobj_t));
save_p += sizeof(mobj_t);
- mobj->state = states + (int) mobj->state;
+ mobj->state = states + (uintptr_t) mobj->state;
@ -85,7 +85,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
P_SetThingPosition (mobj);
mobj->info = &mobjinfo[mobj->type];
@@ -814,7 +815,7 @@ void P_UnArchiveSpecials (void)
@@ -799,7 +800,7 @@ void P_UnArchiveSpecials (void)
ceiling_t *ceiling = Z_Malloc (sizeof(*ceiling), PU_LEVEL, NULL);
memcpy (ceiling, save_p, sizeof(*ceiling));
save_p += sizeof(*ceiling);
@ -94,7 +94,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
ceiling->sector->ceilingdata = ceiling; //jff 2/22/98
if (ceiling->thinker.function)
@@ -831,10 +832,10 @@ void P_UnArchiveSpecials (void)
@@ -816,10 +817,10 @@ void P_UnArchiveSpecials (void)
vldoor_t *door = Z_Malloc (sizeof(*door), PU_LEVEL, NULL);
memcpy (door, save_p, sizeof(*door));
save_p += sizeof(*door);
@ -107,7 +107,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
door->sector->ceilingdata = door; //jff 2/22/98
door->thinker.function = T_VerticalDoor;
@@ -848,7 +849,7 @@ void P_UnArchiveSpecials (void)
@@ -833,7 +834,7 @@ void P_UnArchiveSpecials (void)
floormove_t *floor = Z_Malloc (sizeof(*floor), PU_LEVEL, NULL);
memcpy (floor, save_p, sizeof(*floor));
save_p += sizeof(*floor);
@ -116,7 +116,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
floor->sector->floordata = floor; //jff 2/22/98
floor->thinker.function = T_MoveFloor;
P_AddThinker (&floor->thinker);
@@ -861,7 +862,7 @@ void P_UnArchiveSpecials (void)
@@ -846,7 +847,7 @@ void P_UnArchiveSpecials (void)
plat_t *plat = Z_Malloc (sizeof(*plat), PU_LEVEL, NULL);
memcpy (plat, save_p, sizeof(*plat));
save_p += sizeof(*plat);
@ -125,7 +125,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
plat->sector->floordata = plat; //jff 2/22/98
if (plat->thinker.function)
@@ -878,7 +879,7 @@ void P_UnArchiveSpecials (void)
@@ -863,7 +864,7 @@ void P_UnArchiveSpecials (void)
lightflash_t *flash = Z_Malloc (sizeof(*flash), PU_LEVEL, NULL);
memcpy (flash, save_p, sizeof(*flash));
save_p += sizeof(*flash);
@ -134,7 +134,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
flash->thinker.function = T_LightFlash;
P_AddThinker (&flash->thinker);
break;
@@ -890,7 +891,7 @@ void P_UnArchiveSpecials (void)
@@ -875,7 +876,7 @@ void P_UnArchiveSpecials (void)
strobe_t *strobe = Z_Malloc (sizeof(*strobe), PU_LEVEL, NULL);
memcpy (strobe, save_p, sizeof(*strobe));
save_p += sizeof(*strobe);
@ -143,7 +143,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
strobe->thinker.function = T_StrobeFlash;
P_AddThinker (&strobe->thinker);
break;
@@ -902,7 +903,7 @@ void P_UnArchiveSpecials (void)
@@ -887,7 +888,7 @@ void P_UnArchiveSpecials (void)
glow_t *glow = Z_Malloc (sizeof(*glow), PU_LEVEL, NULL);
memcpy (glow, save_p, sizeof(*glow));
save_p += sizeof(*glow);
@ -152,7 +152,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
glow->thinker.function = T_Glow;
P_AddThinker (&glow->thinker);
break;
@@ -914,7 +915,7 @@ void P_UnArchiveSpecials (void)
@@ -899,7 +900,7 @@ void P_UnArchiveSpecials (void)
fireflicker_t *flicker = Z_Malloc (sizeof(*flicker), PU_LEVEL, NULL);
memcpy (flicker, save_p, sizeof(*flicker));
save_p += sizeof(*flicker);
@ -161,7 +161,7 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
flicker->thinker.function = T_FireFlicker;
P_AddThinker (&flicker->thinker);
break;
@@ -927,7 +928,7 @@ void P_UnArchiveSpecials (void)
@@ -912,7 +913,7 @@ void P_UnArchiveSpecials (void)
elevator_t *elevator = Z_Malloc (sizeof(*elevator), PU_LEVEL, NULL);
memcpy (elevator, save_p, sizeof(*elevator));
save_p += sizeof(*elevator);
@ -170,10 +170,10 @@ Index: prboom-plus-2.5.1.3/src/p_saveg.c
elevator->sector->floordata = elevator; //jff 2/22/98
elevator->sector->ceilingdata = elevator; //jff 2/22/98
elevator->thinker.function = T_MoveElevator;
Index: prboom-plus-2.5.1.3/src/r_drawflush.inl
Index: prboom2/src/r_drawflush.inl
===================================================================
--- prboom-plus-2.5.1.3.orig/src/r_drawflush.inl
+++ prboom-plus-2.5.1.3/src/r_drawflush.inl
--- prboom2.orig/src/r_drawflush.inl
+++ prboom2/src/r_drawflush.inl
@@ -28,6 +28,8 @@
*
*-----------------------------------------------------------------------------*/