Quadravol HUD display (with Xekkas numerals, for fun).

This commit is contained in:
Mari the Deer 2022-08-14 16:54:55 +02:00
commit 586a33e0bc
18 changed files with 19 additions and 4 deletions

BIN
fonts/XekkasNum/0030.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 B

BIN
fonts/XekkasNum/0031.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 B

BIN
fonts/XekkasNum/0032.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 B

BIN
fonts/XekkasNum/0033.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 B

BIN
fonts/XekkasNum/0034.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 B

BIN
fonts/XekkasNum/0035.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 B

BIN
fonts/XekkasNum/0036.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 B

BIN
fonts/XekkasNum/0037.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 B

BIN
fonts/XekkasNum/0038.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 B

BIN
fonts/XekkasNum/0039.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 B

3
fonts/XekkasNum/font.inf Normal file
View file

@ -0,0 +1,3 @@
TranslationType Standard
SpaceWidth 4
FontHeight 6

View file

@ -177,7 +177,7 @@ Object GoldShell
PointLight QUADAMMOLIGHT PointLight QUADAMMOLIGHT
{ {
Color 0.4 0.25 0.0 Color 1.0 0.8 0.4
Size 20 Size 20
Offset 0 16 0 Offset 0 16 0
Attenuate 1 Attenuate 1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 B

After

Width:  |  Height:  |  Size: 197 B

Before After
Before After

View file

@ -1,3 +1,3 @@
[default] [default]
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r320 \cu(Sat 13 Aug 20:54:14 CEST 2022)\c-"; SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r321 \cu(Sun 14 Aug 16:54:55 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r320 \cu(2022-08-13 20:54:14)\c-"; SWWM_SHORTVER="\cw1.3pre r321 \cu(2022-08-14 16:54:55)\c-";

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Before After
Before After

View file

@ -78,8 +78,20 @@ extend Class HeavyMahSheenGun
// Quadravol // Quadravol
extend Class Quadravol extend Class Quadravol
{ {
ui TextureID WeaponBox, BulletTex[2];
ui Font ChargeFont;
override void DrawWeapon( double TicFrac, double bx, double by, double hs, Vector2 ss ) override void DrawWeapon( double TicFrac, double bx, double by, double hs, Vector2 ss )
{ {
if ( !WeaponBox ) WeaponBox = TexMan.CheckForTexture("graphics/HUD/QuadravolDisplay.png",TexMan.Type_Any);
if ( !BulletTex[0] ) BulletTex[0] = TexMan.CheckForTexture("graphics/HUD/QuadravolRound.png",TexMan.Type_Any);
if ( !BulletTex[1] ) BulletTex[1] = TexMan.CheckForTexture("graphics/HUD/QuadravolCasing.png",TexMan.Type_Any);
if ( !ChargeFont ) ChargeFont = Font.GetFont('XekkasNum');
Screen.DrawTexture(WeaponBox,false,bx-16,by-44,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
for ( int i=0; i<clipcount; i++ )
Screen.DrawTexture(BulletTex[0],false,bx-6,by-(10+i*8),DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
if ( chambered ) Screen.DrawTexture(BulletTex[charged],false,bx-14,by-10,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
Screen.DrawText(ChargeFont,Font.CR_UNTRANSLATED,bx-14,by-20,String.Format("%d",chargelevel),DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true);
// PLACEHOLDER // PLACEHOLDER
String str = "THIS WEAPON IS NOT YET FUNCTIONAL"; String str = "THIS WEAPON IS NOT YET FUNCTIONAL";
Screen.DrawText(NewSmallFont,Font.CR_RED,(Screen.GetWidth()-NewSmallFont.StringWidth(str)*CleanXFac_1)/2,Screen.GetHeight()-(swwm_hudmargin*hs+NewSmallFont.GetHeight()*CleanYFac_1),str,DTA_CleanNoMove_1,true); Screen.DrawText(NewSmallFont,Font.CR_RED,(Screen.GetWidth()-NewSmallFont.StringWidth(str)*CleanXFac_1)/2,Screen.GetHeight()-(swwm_hudmargin*hs+NewSmallFont.GetHeight()*CleanYFac_1),str,DTA_CleanNoMove_1,true);

View file

@ -21,7 +21,7 @@ Class Quadravol : SWWMWeapon
if ( !AmmoLedCharge ) AmmoLedCharge = TexMan.CheckForTexture("models/QuadLEDCharge.png",TexMan.Type_Any); if ( !AmmoLedCharge ) AmmoLedCharge = TexMan.CheckForTexture("models/QuadLEDCharge.png",TexMan.Type_Any);
AmmoLed.Clear(0,0,64,64,0xFF101033); AmmoLed.Clear(0,0,64,64,0xFF101033);
AmmoLed.DrawTexture(AmmoLedBase,false,0,0,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,0xFF00FFFF); AmmoLed.DrawTexture(AmmoLedBase,false,0,0,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,0xFF00FFFF);
Vector3 lainbow = SWWMUtility.HSVToRGB(((5-chargelevel)/7.5,1.,1.)); Vector3 lainbow = SWWMUtility.HSVToRGB((.5+(chargelevel-1)/8.,1.,1.));
Color col = Color(255,int(lainbow.x*255),int(lainbow.y*255),int(lainbow.z*255)); Color col = Color(255,int(lainbow.x*255),int(lainbow.y*255),int(lainbow.z*255));
AmmoLed.DrawTexture(AmmoLedCharge,false,12,4,DTA_SrcX,(chargelevel%4)*64,DTA_SrcY,(chargelevel/4)*64,DTA_SrcWidth,40,DTA_SrcHeight,40,DTA_DestWidth,40,DTA_DestHeight,40,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,(chargelevel>0)?col:0xFF00FF00); AmmoLed.DrawTexture(AmmoLedCharge,false,12,4,DTA_SrcX,(chargelevel%4)*64,DTA_SrcY,(chargelevel/4)*64,DTA_SrcWidth,40,DTA_SrcHeight,40,DTA_DestWidth,40,DTA_DestHeight,40,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,(chargelevel>0)?col:0xFF00FF00);
for ( int i=0; i<clipcount; i++ ) AmmoLed.DrawTexture(AmmoLedRound,false,36-8*i,52,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,0xFF0000FF); for ( int i=0; i<clipcount; i++ ) AmmoLed.DrawTexture(AmmoLedRound,false,36-8*i,52,DTA_LegacyRenderStyle,STYLE_Add,DTA_Color,0xFF0000FF);