mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-14 08:30:49 +00:00
- added the inventory bar on Heretic's status bar.
This commit is contained in:
parent
0537e9c1ba
commit
bac464f2b7
2 changed files with 31 additions and 11 deletions
|
@ -5,6 +5,7 @@ class HereticStatusBar : BaseStatusBar
|
||||||
HUDFont mIndexFont;
|
HUDFont mIndexFont;
|
||||||
HUDFont mBigFont;
|
HUDFont mBigFont;
|
||||||
InventoryBarState diparms;
|
InventoryBarState diparms;
|
||||||
|
InventoryBarState diparms_sbar;
|
||||||
|
|
||||||
|
|
||||||
override void Init()
|
override void Init()
|
||||||
|
@ -20,6 +21,7 @@ class HereticStatusBar : BaseStatusBar
|
||||||
fnt = "BIGFONT";
|
fnt = "BIGFONT";
|
||||||
mBigFont = HUDFont.Create(fnt, fnt.GetCharWidth("0"), true, 2, 2);
|
mBigFont = HUDFont.Create(fnt, fnt.GetCharWidth("0"), true, 2, 2);
|
||||||
diparms = InventoryBarState.Create(mIndexFont);
|
diparms = InventoryBarState.Create(mIndexFont);
|
||||||
|
diparms_sbar = InventoryBarState.CreateNoBox(mIndexFont, boxsize:(31, 31), arrowoffs:(0,-10));
|
||||||
mHealthInterpolator = DynamicValueInterpolator.Create(0, 0.25, 1, 8);
|
mHealthInterpolator = DynamicValueInterpolator.Create(0, 0.25, 1, 8);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -120,12 +122,11 @@ class HereticStatusBar : BaseStatusBar
|
||||||
DrawString(mIndexFont, FormatNumber(CPlayer.mo.InvSel.Amount, 3), (209, 182), DI_TEXT_ALIGN_RIGHT);
|
DrawString(mIndexFont, FormatNumber(CPlayer.mo.InvSel.Amount, 3), (209, 182), DI_TEXT_ALIGN_RIGHT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
DrawImage("INVBAR", (34, 160), DI_ITEM_OFFSETS);
|
DrawImage("INVBAR", (34, 160), DI_ITEM_OFFSETS);
|
||||||
//drawinventorybar Heretic, noartibox, 7, INDEXFONT_RAVEN, 50, 160, 77, 182, untranslated;
|
DrawInventoryBar(diparms_sbar, (49, 160), 7, DI_ITEM_LEFT_TOP, HX_SHADOW);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -39,17 +39,9 @@ class InventoryBarState ui
|
||||||
int cr;
|
int cr;
|
||||||
int flags;
|
int flags;
|
||||||
|
|
||||||
// The default settings here are what SBARINFO is using.
|
private static void Init(InventoryBarState me, HUDFont indexfont, int cr, double itemalpha, Vector2 innersize, String leftgfx, String rightgfx, Vector2 arrowoffs, int flags)
|
||||||
static InventoryBarState Create(HUDFont indexfont = null, int cr = Font.CR_UNTRANSLATED, double itemalpha = 1.,
|
|
||||||
String boxgfx = "ARTIBOX", String selgfx = "SELECTBO", Vector2 innersize = (0, 0),
|
|
||||||
String leftgfx = "INVGEML1", String rightgfx = "INVGEMR1", Vector2 arrowoffs = (0, 0), int flags = 0)
|
|
||||||
{
|
{
|
||||||
let me = new ("InventoryBarState");
|
|
||||||
me.itemalpha = itemalpha;
|
me.itemalpha = itemalpha;
|
||||||
me.box = TexMan.CheckForTexture(boxgfx, TexMan.TYPE_MiscPatch);
|
|
||||||
me.selector = TexMan.CheckForTexture(selgfx, TexMan.TYPE_MiscPatch);
|
|
||||||
if (me.box.IsValid() || me.selector.IsValid()) me.boxsize = TexMan.GetScaledSize(me.box.IsValid()? me.box : me.selector);
|
|
||||||
else me.boxsize = (32., 32.);
|
|
||||||
if (innersize == (0, 0))
|
if (innersize == (0, 0))
|
||||||
{
|
{
|
||||||
me.boxofs = (2, 2);
|
me.boxofs = (2, 2);
|
||||||
|
@ -72,8 +64,35 @@ class InventoryBarState ui
|
||||||
else me.amountfont = indexfont;
|
else me.amountfont = indexfont;
|
||||||
me.cr = cr;
|
me.cr = cr;
|
||||||
me.flags = flags;
|
me.flags = flags;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The default settings here are what SBARINFO is using.
|
||||||
|
static InventoryBarState Create(HUDFont indexfont = null, int cr = Font.CR_UNTRANSLATED, double itemalpha = 1.,
|
||||||
|
String boxgfx = "ARTIBOX", String selgfx = "SELECTBO", Vector2 innersize = (0, 0),
|
||||||
|
String leftgfx = "INVGEML1", String rightgfx = "INVGEMR1", Vector2 arrowoffs = (0, 0), int flags = 0)
|
||||||
|
{
|
||||||
|
let me = new ("InventoryBarState");
|
||||||
|
me.box = TexMan.CheckForTexture(boxgfx, TexMan.TYPE_MiscPatch);
|
||||||
|
me.selector = TexMan.CheckForTexture(selgfx, TexMan.TYPE_MiscPatch);
|
||||||
|
if (me.box.IsValid() || me.selector.IsValid()) me.boxsize = TexMan.GetScaledSize(me.box.IsValid()? me.box : me.selector);
|
||||||
|
else me.boxsize = (32., 32.);
|
||||||
|
Init(me, indexfont, cr, itemalpha, innersize, leftgfx, rightgfx, arrowoffs, flags);
|
||||||
return me;
|
return me;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// The default settings here are what SBARINFO is using.
|
||||||
|
static InventoryBarState CreateNoBox(HUDFont indexfont = null, int cr = Font.CR_UNTRANSLATED, double itemalpha = 1.,
|
||||||
|
Vector2 boxsize = (32, 32), String selgfx = "SELECTBO", Vector2 innersize = (0, 0),
|
||||||
|
String leftgfx = "INVGEML1", String rightgfx = "INVGEMR1", Vector2 arrowoffs = (0, 0), int flags = 0)
|
||||||
|
{
|
||||||
|
let me = new ("InventoryBarState");
|
||||||
|
me.box.SetInvalid();
|
||||||
|
me.selector = TexMan.CheckForTexture(selgfx, TexMan.TYPE_MiscPatch);
|
||||||
|
me.boxsize = boxsize;
|
||||||
|
Init(me, indexfont, cr, itemalpha, innersize, leftgfx, rightgfx, arrowoffs, flags);
|
||||||
|
return me;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue