Reverted radius/height changes to items, it causes issues on many maps.
Implemented proper HUD rendering, along with toggling and resizing. Works just like in UT now. Added "extended" version of the Beta menu music, quickly put together in OpenMPT. I really like it. Added M_DOOM graphic and changed the titlemap texture. Made various screen graphics additive now that I know how to. Separated pickup and first person brightmaps for Pulse Gun, this is needed for beta skin packs (there will be skins for the Pulse Gun, Redeemer and Impact Hammer).
This commit is contained in:
parent
eaa6f118d8
commit
4c451de008
27 changed files with 295 additions and 327 deletions
|
|
@ -60,8 +60,6 @@ Class UTThighPads : UTArmor replaces GreenArmor
|
|||
UTArmor.ArmorAbsorption 50;
|
||||
Inventory.PickupMessage "You got the Thigh Pads.";
|
||||
Inventory.PickupSound "misc/ut_armor";
|
||||
Radius 8;
|
||||
Height 20;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -82,8 +80,6 @@ Class UTBodyArmor : UTArmor replaces BlueArmor
|
|||
UTArmor.ArmorAbsorption 75;
|
||||
Inventory.PickupMessage "You got the Body Armor.";
|
||||
Inventory.PickupSound "misc/ut_armor";
|
||||
Radius 10;
|
||||
Height 20;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -99,7 +95,7 @@ Class UTShieldBelt : UTArmor replaces Megasphere
|
|||
{
|
||||
if ( (amount > 0) && !DamageTypeDefinition.IgnoreArmor(damageType) )
|
||||
{
|
||||
Owner.A_PlaySound("belt/absorb");
|
||||
Owner.A_PlaySound("belt/absorb",CHAN_7);
|
||||
UTMainHandler.DoFlash(Owner,Color(80,255,224,0),5);
|
||||
}
|
||||
Super.AbsorbDamage(damage,damageType,newdamage);
|
||||
|
|
@ -141,8 +137,6 @@ Class UTShieldBelt : UTArmor replaces Megasphere
|
|||
Inventory.PickupMessage "You got the Shield Belt.";
|
||||
Inventory.PickupSound "belt/pickup";
|
||||
Inventory.RespawnTics 2100;
|
||||
Radius 10;
|
||||
Height 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
|
|||
|
|
@ -28,8 +28,6 @@ Class BioAmmo : Ammo
|
|||
Ammo.BackpackAmount 50;
|
||||
Ammo.BackpackMaxAmount 100;
|
||||
Ammo.DropAmount 10;
|
||||
Radius 8;
|
||||
Height 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -497,9 +495,6 @@ Class BioRifle : UTWeapon
|
|||
Weapon.AmmoType2 "BioAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 25;
|
||||
Radius 10;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 14;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
|
|||
|
|
@ -147,9 +147,6 @@ Class UTChainsaw : UTWeapon
|
|||
Weapon.SelectionOrder 9;
|
||||
+WEAPON.MELEEWEAPON;
|
||||
+FORCEPAIN;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -247,7 +244,7 @@ Class UTChainsaw : UTWeapon
|
|||
Goto Ready;
|
||||
Deselect:
|
||||
CSWD A 0 A_PlaySound("chainsaw/lower",CHAN_6);
|
||||
CSWD ABCDEF 2;
|
||||
CSWD ABCDEF 1;
|
||||
CSWD F 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,8 +9,6 @@ Class UTRocketAmmo : Ammo
|
|||
Ammo.BackpackAmount 12;
|
||||
Ammo.BackpackMaxAmount 48;
|
||||
Ammo.DropAmount 3;
|
||||
Radius 4;
|
||||
Height 14;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -29,8 +27,6 @@ Class UTRocketAmmo2 : UTRocketAmmo
|
|||
Inventory.PickupMessage "You picked up a Single Rocket.";
|
||||
Inventory.Amount 1;
|
||||
Ammo.DropAmount 1;
|
||||
Radius 2;
|
||||
Height 13;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -238,7 +234,7 @@ Class UTRocketLauncher : UTWeapon
|
|||
lockontex = TexMan.CheckForTexture("Crosshr6",TexMan.Type_Any);
|
||||
}
|
||||
|
||||
override void PostRender()
|
||||
override void PreRender( double lbottom )
|
||||
{
|
||||
if ( LockedTarget ) Screen.DrawTexture(lockontex,false,Screen.GetWidth()*0.5,Screen.GetHeight()*0.5);
|
||||
}
|
||||
|
|
@ -351,6 +347,7 @@ Class UTRocketLauncher : UTWeapon
|
|||
}
|
||||
}
|
||||
// lose lock-on
|
||||
if ( invoker.LockedOn ) A_PlaySound("utrl/seeklost",CHAN_6);
|
||||
invoker.LockedTarget = null;
|
||||
invoker.LockedOn = false;
|
||||
}
|
||||
|
|
@ -393,9 +390,6 @@ Class UTRocketLauncher : UTWeapon
|
|||
Weapon.AmmoType2 "UTRocketAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 6;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ Class EClip : MiniAmmo replaces Clip
|
|||
Inventory.PickupMessage "You picked up a Clip.";
|
||||
Inventory.Amount 20;
|
||||
Ammo.DropAmount 5;
|
||||
Radius 8;
|
||||
Height 6;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -159,11 +157,11 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
property ClipCount : ClipCount;
|
||||
property SlaveClipCount : SlaveClipCount;
|
||||
|
||||
override void PostRender()
|
||||
override void PostRender( double lbottom )
|
||||
{
|
||||
if ( !CVar.GetCVar('flak_enforcerreload').GetBool() ) return;
|
||||
if ( Amount > 1 ) Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,Screen.GetHeight()*0.9-confont.GetHeight()*2,String.Format("L Clip: %2d / 20\nR Clip: %2d / 20",slaveclipcount,clipcount));
|
||||
else Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,Screen.GetHeight()*0.9-confont.GetHeight(),String.Format("Clip: %2d / 20",clipcount));
|
||||
if ( Amount > 1 ) Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,lbottom-Screen.GetHeight()*0.01-confont.GetHeight()*2,String.Format("L Clip: %2d / 20\nR Clip: %2d / 20",slaveclipcount,clipcount));
|
||||
else Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,lbottom-Screen.GetHeight()*0.01-confont.GetHeight(),String.Format("Clip: %2d / 20",clipcount));
|
||||
}
|
||||
|
||||
override bool HandlePickup( Inventory item )
|
||||
|
|
@ -204,7 +202,7 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
if ( !weap || !player ) return;
|
||||
if ( slave )
|
||||
{
|
||||
if ( CVar.GetCVar('flak_enforcerreload').GetBool() && (invoker.slaveclipcount < 5) ) A_PlaySound("enforcer/click",CHAN_7);
|
||||
if ( CVar.GetCVar('flak_enforcerreload').GetBool() && (invoker.slaveclipcount < 5) ) A_PlaySound("enforcer/click",CHAN_6);
|
||||
if ( (invoker.slaveclipcount <= 0) || (weap.Ammo1.Amount <= 0) )
|
||||
{
|
||||
invoker.slaverefire = 0;
|
||||
|
|
@ -277,7 +275,7 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
}
|
||||
invoker.FireEffect();
|
||||
UTMainHandler.DoFlash(self,Color(32,255,128,0),1);
|
||||
A_PlaySound("enforcer/shoot",slave?CHAN_7:CHAN_WEAPON);
|
||||
A_PlaySound("enforcer/shoot",slave?CHAN_6:CHAN_WEAPON);
|
||||
A_AlertMonsters();
|
||||
A_QuakeEx(2,2,2,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.08);
|
||||
if ( slave )
|
||||
|
|
@ -362,9 +360,6 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
Weapon.AmmoGive 30;
|
||||
Enforcer.ClipCount 20;
|
||||
Enforcer.SlaveClipCount 20;
|
||||
Radius 8;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -391,7 +386,7 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
LeftReady:
|
||||
2NFS A 0
|
||||
{
|
||||
A_PlaySound("enforcer/select",CHAN_7);
|
||||
A_PlaySound("enforcer/select",CHAN_6);
|
||||
invoker.slaveactive = true;
|
||||
}
|
||||
2NFS ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 A_JumpIf(invoker.slavedown,"LeftDeselect");
|
||||
|
|
@ -486,18 +481,18 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
invoker.slaveclipcount = Min(20,invoker.Ammo1.Amount);
|
||||
invoker.slavereload = false;
|
||||
A_Overlay(-9998,"Null");
|
||||
A_PlaySound("enforcer/click",CHAN_7);
|
||||
A_PlaySound("enforcer/click",CHAN_6);
|
||||
}
|
||||
2NFR ABCDEFGHIJKLMNOPQRSTUVWXYZ 1;
|
||||
2NR2 AB 1;
|
||||
2NR2 B 30 A_PlaySound("enforcer/reload",CHAN_7);
|
||||
2NFS A 0 A_PlaySound("enforcer/select",CHAN_7);
|
||||
2NR2 B 30 A_PlaySound("enforcer/reload",CHAN_6);
|
||||
2NFS A 0 A_PlaySound("enforcer/select",CHAN_6);
|
||||
Goto LeftReady;
|
||||
Deselect:
|
||||
ENFI A 1 { invoker.slavedown = true; }
|
||||
ENFD A 0 A_Overlay(-9999,"Null");
|
||||
ENFD A 0 A_JumpIf(invoker.slaveactive,"Deselect");
|
||||
ENFD ABCDEFGHIJKL 1;
|
||||
ENFD ABDEGHJK 1;
|
||||
ENFD L 1 A_Lower(int.max);
|
||||
Wait;
|
||||
LeftDeselect:
|
||||
|
|
@ -506,7 +501,8 @@ Class Enforcer : UTWeapon replaces Pistol
|
|||
A_Overlay(-9998,"Null");
|
||||
invoker.slaveactive = false;
|
||||
}
|
||||
2NFD ABCDEFGHIJKL 1;
|
||||
2NFD ABDEGHJK 1;
|
||||
2NFD L 0;
|
||||
Stop;
|
||||
MuzzleFlash:
|
||||
EMUZ A 2 Bright
|
||||
|
|
|
|||
|
|
@ -35,8 +35,6 @@ Class FlakAmmo : Ammo
|
|||
Ammo.BackpackAmount 20;
|
||||
Ammo.BackpackMaxAmount 50;
|
||||
Ammo.DropAmount 5;
|
||||
Radius 10;
|
||||
Height 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -54,8 +52,6 @@ Class FlakAmmo2 : FlakAmmo
|
|||
Inventory.PickupMessage "You picked up a Flak Shell.";
|
||||
Inventory.Amount 1;
|
||||
Ammo.DropAmount 1;
|
||||
Radius 4;
|
||||
Height 6;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -557,9 +553,6 @@ Class FlakCannon : UTWeapon
|
|||
Weapon.AmmoType2 "FlakAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 10;
|
||||
Radius 12;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 16;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -569,10 +562,10 @@ Class FlakCannon : UTWeapon
|
|||
FPCK B -1;
|
||||
Stop;
|
||||
Ready:
|
||||
FLKS ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 A_WeaponReady(WRF_NOFIRE);
|
||||
FKS2 ABC 1 A_WeaponReady(WRF_NOFIRE);
|
||||
FLKS ABDEGHJKMNPQSTVWYZ 1 A_WeaponReady(WRF_NOFIRE);
|
||||
FKS2 BC 1 A_WeaponReady(WRF_NOFIRE);
|
||||
FLKL A 1 A_Loading(true);
|
||||
FLKL BCDEFGHIJKLMNO 1;
|
||||
FLKL BCEFGIJKMNO 1;
|
||||
Goto Idle;
|
||||
Loading:
|
||||
FLKL A 1
|
||||
|
|
@ -580,7 +573,7 @@ Class FlakCannon : UTWeapon
|
|||
A_CheckReload();
|
||||
if ( invoker.Ammo1.Amount > 0 ) A_Loading();
|
||||
}
|
||||
FLKL BCDEFGHIJKLMNO 1;
|
||||
FLKL BCEFGIJKMNO 1;
|
||||
Idle:
|
||||
FLKI A 10;
|
||||
FLKI A 1 A_WeaponReady();
|
||||
|
|
@ -599,7 +592,7 @@ Class FlakCannon : UTWeapon
|
|||
FLKS A 1 A_Raise(int.max);
|
||||
Wait;
|
||||
Deselect:
|
||||
FLKD ABCDEFGHIJ 2;
|
||||
FLKD ABCDEFGHIJ 1;
|
||||
FLKD J 1 A_Lower(int.max);
|
||||
Wait;
|
||||
MuzzleFlash:
|
||||
|
|
|
|||
|
|
@ -12,8 +12,6 @@ Class UTHealthPack : Health replaces Soulsphere
|
|||
Inventory.PickupMessage "You picked up the Big Keg O' Health.";
|
||||
Inventory.PickupSound "misc/ut_keg";
|
||||
Inventory.RespawnTics 3500;
|
||||
Radius 18;
|
||||
Height 30;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -32,8 +30,6 @@ Class UTHealthBox : Health replaces Medikit
|
|||
Inventory.PickupMessage "You picked up a Health Box.";
|
||||
Health.LowMessage 25,"You picked up a Health Box that you REALLY need!";
|
||||
Inventory.PickupSound "misc/ut_heal";
|
||||
Radius 16;
|
||||
Height 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -52,8 +48,6 @@ Class UTMedBox : Health replaces Stimpack
|
|||
Inventory.PickupMessage "You picked up a Health Pack.";
|
||||
Inventory.PickupSound "misc/ut_heal";
|
||||
Inventory.RespawnTics 700;
|
||||
Radius 12;
|
||||
Height 10;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -75,8 +69,6 @@ Class UTHealthBonus : Health replaces HealthBonus
|
|||
Inventory.PickupMessage "You picked up a Health Vial.";
|
||||
Inventory.PickupSound "misc/ut_heal";
|
||||
RenderStyle "Add";
|
||||
Radius 2;
|
||||
Height 16;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
|
|||
|
|
@ -289,7 +289,7 @@ Class ImpactHammer : UTWeapon replaces Fist
|
|||
Goto Idle;
|
||||
Deselect:
|
||||
IMPD A 0 A_StopSound(CHAN_WEAPON);
|
||||
IMPD ABCDE 3;
|
||||
IMPD ABCDE 2;
|
||||
IMPD E 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,8 +35,6 @@ Class MiniAmmo : Ammo
|
|||
Ammo.BackpackAmount 100;
|
||||
Ammo.BackpackMaxAmount 199;
|
||||
Ammo.DropAmount 20;
|
||||
Radius 12;
|
||||
Height 14;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -194,9 +192,6 @@ Class Minigun : UTWeapon
|
|||
Weapon.AmmoType2 "MiniAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 50;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -412,8 +407,8 @@ Class Minigun : UTWeapon
|
|||
MGU2 ABCDEFGHIJKLM 1;
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
MGND A 2 A_StopSound(CHAN_WEAPON);
|
||||
MGND BCDEFGHIJ 2;
|
||||
MGND A 1 A_StopSound(CHAN_WEAPON);
|
||||
MGND BCDEFGHIJ 1;
|
||||
MGND J 1 A_Lower(int.max);
|
||||
Wait;
|
||||
MuzzleFlash:
|
||||
|
|
|
|||
|
|
@ -12,8 +12,6 @@ Class UDamage : PowerupGiver replaces Berserk
|
|||
Powerup.Type "DamageAmplifier";
|
||||
Inventory.PickupSound "udamage/pickup";
|
||||
Inventory.RespawnTics 4200;
|
||||
Radius 15;
|
||||
Height 40;
|
||||
}
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
|
|
@ -79,7 +77,7 @@ Class DamageAmplifier : Powerup
|
|||
{
|
||||
Super.DoEffect();
|
||||
if ( (EffectTics == 175) || (EffectTics == 140) || (EffectTics == 105) || (EffectTics == 70) || (EffectTics == 35) )
|
||||
Owner.A_PlaySound("udamage/drain",CHAN_6,1.0,false,0.25);
|
||||
Owner.A_PlaySound("udamage/drain",CHAN_7,1.0,false,0.25);
|
||||
}
|
||||
|
||||
override void EndEffect()
|
||||
|
|
@ -95,8 +93,8 @@ Class DamageAmplifier : Powerup
|
|||
|
||||
void FireEffect()
|
||||
{
|
||||
if ( EffectTics < 350 ) Owner.A_PlaySound("udamage/fire2",CHAN_5,1.0,false,0.25);
|
||||
else Owner.A_PlaySound("udamage/fire1",CHAN_5,1.0,false,0.25);
|
||||
if ( EffectTics < 350 ) Owner.A_PlaySound("udamage/fire2",CHAN_7,1.0,false,0.25);
|
||||
else Owner.A_PlaySound("udamage/fire1",CHAN_7,1.0,false,0.25);
|
||||
UTMainHandler.DoFlash(Owner,Color(96,238,0,255),10);
|
||||
}
|
||||
|
||||
|
|
@ -198,8 +196,6 @@ Class UTBackpack : BackpackItem replaces Backpack
|
|||
Tag "Backpack";
|
||||
Inventory.PickupMessage "You got a Backpack.";
|
||||
Inventory.RespawnTics 2100;
|
||||
Radius 10;
|
||||
Height 32;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -239,8 +235,6 @@ Class UTInvisibility : PowerupGiver replaces BlurSphere
|
|||
Inventory.PickupMessage "You have Invisibility.";
|
||||
Inventory.PickupSound "invis/pickup";
|
||||
Inventory.RespawnTics 4200;
|
||||
Radius 6;
|
||||
Height 20;
|
||||
}
|
||||
override void PostBeginPlay()
|
||||
{
|
||||
|
|
@ -298,8 +292,6 @@ Class UTMapRevealer : MapRevealer replaces Allmap
|
|||
Inventory.MaxAmount 0;
|
||||
Inventory.PickupSound "trans/pickup";
|
||||
Inventory.PickupMessage "You got the Computer Map.";
|
||||
Radius 10;
|
||||
Height 4;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -321,8 +313,6 @@ Class UTJumpBoots : Inventory replaces RadSuit
|
|||
Inventory.PickupMessage "You picked up the AntiGrav boots.";
|
||||
Inventory.PickupSound "boot/pickup";
|
||||
Inventory.RespawnTics 1050;
|
||||
Radius 9;
|
||||
Height 14;
|
||||
}
|
||||
override bool Use( bool pickup )
|
||||
{
|
||||
|
|
@ -407,8 +397,6 @@ Class Searchlight : Inventory replaces Infrared
|
|||
Inventory.MaxAmount 200;
|
||||
Inventory.InterHubAmount 0;
|
||||
Inventory.PickupMessage "You picked up the Searchlight.";
|
||||
Radius 10;
|
||||
Height 16;
|
||||
}
|
||||
|
||||
override bool Use( bool pickup )
|
||||
|
|
|
|||
|
|
@ -27,8 +27,6 @@ Class PulseAmmo : Ammo
|
|||
Ammo.BackpackAmount 50;
|
||||
Ammo.BackpackMaxAmount 199;
|
||||
Ammo.DropAmount 10;
|
||||
Radius 5;
|
||||
Height 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -415,10 +413,10 @@ Class PulseGun : UTWeapon
|
|||
|
||||
Property ClipCount : clipcount;
|
||||
|
||||
override void PostRender()
|
||||
override void PostRender( double lbottom )
|
||||
{
|
||||
if ( !CVar.GetCVar('flak_pulsereload').GetBool() ) return;
|
||||
Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,Screen.GetHeight()*0.9-confont.GetHeight(),String.Format("Clip: %2d / 50",clipcount));
|
||||
Screen.DrawText(confont,Font.CR_GREEN,Screen.GetWidth()*0.01,lbottom-Screen.GetHeight()*0.01-confont.GetHeight(),String.Format("Clip: %2d / 50",clipcount));
|
||||
}
|
||||
|
||||
action void A_Reloading()
|
||||
|
|
@ -536,9 +534,6 @@ Class PulseGun : UTWeapon
|
|||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 60;
|
||||
PulseGun.ClipCount 50;
|
||||
Radius 18;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -645,8 +640,8 @@ Class PulseGun : UTWeapon
|
|||
PGR2 ABCDEFGHIJKLMNOPQRSTUVWX 1;
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
PGNS W 0 A_StopSound(CHAN_WEAPON);
|
||||
PGNS WVUTSRQPONMLKJIHGFEDCBA 1;
|
||||
PGNS W 1 A_StopSound(CHAN_WEAPON);
|
||||
PGNS VTSQPNMKJHGEDBA 1;
|
||||
PGNS A 1 A_Lower(int.max);
|
||||
Wait;
|
||||
Select:
|
||||
|
|
|
|||
|
|
@ -9,8 +9,6 @@ Class RipperAmmo : Ammo
|
|||
Ammo.BackpackAmount 50;
|
||||
Ammo.BackpackMaxAmount 75;
|
||||
Ammo.DropAmount 10;
|
||||
Radius 4;
|
||||
Height 21;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -253,9 +251,6 @@ Class Ripper2 : UTWeapon
|
|||
Weapon.AmmoType2 "RipperAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 15;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 16;
|
||||
}
|
||||
action void A_RazorFire( bool alt = false )
|
||||
{
|
||||
|
|
@ -311,7 +306,7 @@ Class Ripper2 : UTWeapon
|
|||
RZRF HIJKLMNO 1;
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
RZRD ABCDEF 2;
|
||||
RZRD ABCDEF 1;
|
||||
RZRD F 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,8 +9,6 @@ Class ShockAmmo : Ammo
|
|||
Ammo.BackpackAmount 20;
|
||||
Ammo.BackpackMaxAmount 50;
|
||||
Ammo.DropAmount 5;
|
||||
Radius 4;
|
||||
Height 23;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -958,9 +956,6 @@ Class ShockRifle : UTWeapon
|
|||
Weapon.AmmoType2 "ShockAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 20;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -987,7 +982,7 @@ Class ShockRifle : UTWeapon
|
|||
ASMA BCDEFGHIJ 2;
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
ASMD ABCDEFG 2;
|
||||
ASMD ABCDEFG 1;
|
||||
ASMD G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
Select:
|
||||
|
|
@ -1007,8 +1002,6 @@ Class EnhancedShockAmmo : Ammo
|
|||
Ammo.BackpackAmount 0;
|
||||
Ammo.BackpackMaxAmount 25;
|
||||
Ammo.DropAmount 2;
|
||||
Radius 4;
|
||||
Height 23;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -1072,9 +1065,6 @@ Class EnhancedShockRifle : UTWeapon replaces InvulnerabilitySphere
|
|||
Weapon.AmmoType2 "EnhancedShockAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 25;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -1101,7 +1091,7 @@ Class EnhancedShockRifle : UTWeapon replaces InvulnerabilitySphere
|
|||
ASMA BCDEFGHIJ 2;
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
ASMD ABCDEFG 2;
|
||||
ASMD ABCDEFG 1;
|
||||
ASMD G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
Select:
|
||||
|
|
|
|||
|
|
@ -9,8 +9,6 @@ Class RifleAmmo : Ammo
|
|||
Ammo.BackpackAmount 20;
|
||||
Ammo.BackpackMaxAmount 50;
|
||||
Ammo.DropAmount 5;
|
||||
Radius 6;
|
||||
Height 12;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -28,8 +26,6 @@ Class RifleAmmo2 : RifleAmmo
|
|||
Inventory.PickupMessage "You got a Rifle Round.";
|
||||
Inventory.Amount 1;
|
||||
Ammo.DropAmount 1;
|
||||
Radius 2;
|
||||
Height 8;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -57,10 +53,10 @@ Class SniperRifle : UTWeapon
|
|||
Super.PostBeginPlay();
|
||||
reticle = TexMan.CheckForTexture("RReticle",Texman.Type_Any);
|
||||
}
|
||||
override void PreRender()
|
||||
override void PreRender( double lbottom )
|
||||
{
|
||||
if ( sniperzoom <= 1.0 ) return;
|
||||
Screen.DrawTexture(reticle,false,320,240,DTA_VirtualWidth,640,DTA_VirtualHeight,480);
|
||||
Screen.DrawTexture(reticle,false,320,240,DTA_VirtualWidth,640,DTA_VirtualHeight,480,DTA_RenderStyle,(1|2<<8|1<<16));
|
||||
Screen.DrawText(confont,Font.CR_DARKGREEN,192,160,String.Format("X%.1f",sniperzoom),DTA_Clean,true);
|
||||
}
|
||||
action void A_SniperFire( bool zoomed = false )
|
||||
|
|
@ -142,9 +138,6 @@ Class SniperRifle : UTWeapon
|
|||
Weapon.AmmoType2 "RifleAmmo";
|
||||
Weapon.AmmoUse2 1;
|
||||
Weapon.AmmoGive 8;
|
||||
Radius 20;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 10;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -162,22 +155,7 @@ Class SniperRifle : UTWeapon
|
|||
A_ZoomFactor(invoker.sniperzoom=1.0,ZOOM_INSTANT);
|
||||
A_WeaponReady(WRF_NOFIRE);
|
||||
}
|
||||
SRFS B 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS C 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS D 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS E 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS F 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS G 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS H 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS I 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS J 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS K 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS L 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS M 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS N 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS O 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS P 2 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS Q 1 A_WeaponReady(WRF_NOFIRE);
|
||||
SRFS BCDEFGHIJKLMNOPQ 1 A_WeaponReady(WRF_NOFIRE);
|
||||
Idle:
|
||||
SRFI A 1
|
||||
{
|
||||
|
|
@ -230,7 +208,7 @@ Class SniperRifle : UTWeapon
|
|||
Goto Idle;
|
||||
Deselect:
|
||||
SRFD A 0 A_ZoomFactor(invoker.sniperzoom=1.0,ZOOM_INSTANT);
|
||||
SRFD ABCDEFG 2;
|
||||
SRFD ABCDEFG 1;
|
||||
SRFD G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
MuzzleFlash:
|
||||
|
|
|
|||
|
|
@ -288,6 +288,7 @@ Class Translocator : UTWeapon
|
|||
p.target = self;
|
||||
p.angle = angle;
|
||||
p.pitch = BulletSlope();
|
||||
p.A_SetSize(radius);
|
||||
Vector3 dir = (cos(p.angle)*cos(p.pitch),sin(p.angle)*cos(p.pitch),-sin(p.pitch));
|
||||
dir.z += 0.35*(1-abs(dir.z));
|
||||
p.vel = dir*p.speed;
|
||||
|
|
@ -323,10 +324,13 @@ Class Translocator : UTWeapon
|
|||
}
|
||||
// check if there's enough space
|
||||
Vector3 oldpos = pos, newpos = invoker.module.pos;
|
||||
double modulefloorz = invoker.module.floorz, moduleceilingz = invoker.module.ceilingz;
|
||||
bool bBroken = invoker.module.bAMBUSH;
|
||||
invoker.module.Destroy();
|
||||
invoker.FireEffect();
|
||||
A_AlertMonsters();
|
||||
// squeeze down new z if ceiling is in the way
|
||||
if ( (newpos.z+height > moduleceilingz) ) newpos.z = max(modulefloorz,moduleceilingz-height);
|
||||
if ( Warp(self,newpos.x,newpos.y,newpos.z,flags:WARPF_ABSOLUTEPOSITION|WARPF_TESTONLY) && TeleportMove(newpos,true) )
|
||||
{
|
||||
SpawnTeleportFog(oldpos,true,false);
|
||||
|
|
@ -357,9 +361,6 @@ Class Translocator : UTWeapon
|
|||
Weapon.SlotNumber 1;
|
||||
Weapon.SelectionOrder 10;
|
||||
+WEAPON.NO_AUTO_SWITCH;
|
||||
Radius 5;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 4;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -412,11 +413,11 @@ Class Translocator : UTWeapon
|
|||
Goto Idle2;
|
||||
Deselect:
|
||||
TLCD A 0 A_JumpIf(invoker.module,"Deselect2");
|
||||
TLCD ABCDEFG 2;
|
||||
TLCD ABCDEFG 1;
|
||||
TLCD G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
Deselect2:
|
||||
TLD2 ABCDEFG 2;
|
||||
TLD2 ABCDEFG 1;
|
||||
TLD2 G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,16 @@
|
|||
Class UTPlayer : DoomPlayer
|
||||
{
|
||||
bool lastground;
|
||||
double lastvelz, prevvelz;
|
||||
|
||||
Default
|
||||
{
|
||||
Player.StartItem "MiniAmmo", 30;
|
||||
Player.StartItem "Enforcer";
|
||||
Player.StartItem "Translocator";
|
||||
Player.StartItem "ImpactHammer";
|
||||
Player.DamageScreenColor "FF 00 00", 1.0;
|
||||
Player.ViewHeight 46;
|
||||
}
|
||||
|
||||
// Have to modify the give cheat to handle UT armor
|
||||
|
|
@ -163,7 +168,12 @@ Class UTPlayer : DoomPlayer
|
|||
Super.Tick();
|
||||
double ang = level.time/(20*TICRATE/35.)*360.;
|
||||
if ( (abs(sin(ang)) >= 1.0) && player.onground && (player.cmd.forwardmove || player.cmd.sidemove) )
|
||||
A_PlaySound("ut/playerfootstep",CHAN_BODY);
|
||||
A_PlaySound("ut/playerfootstep",CHAN_5,abs(vel.xy.length())*0.03);
|
||||
if ( player.onground && !bNoGravity && !lastground && (lastvelz < -2) && (lastvelz >= -8) )
|
||||
A_PlaySound("*land",CHAN_AUTO,abs(lastvelz*0.0625));
|
||||
lastground = player.onground;
|
||||
lastvelz = prevvelz;
|
||||
prevvelz = vel.z;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -184,14 +194,10 @@ Class RandomSpawner2 : RandomSpawner
|
|||
|
||||
Class UTWeapon : Weapon
|
||||
{
|
||||
double droppedheight;
|
||||
|
||||
Property DroppedHeight : droppedheight;
|
||||
|
||||
// Drawstuffs under HUD
|
||||
virtual ui void PreRender() {}
|
||||
virtual ui void PreRender( double lbottom ) {}
|
||||
// Drawstuffs over HUD
|
||||
virtual ui void PostRender() {}
|
||||
virtual ui void PostRender( double lbottom ) {}
|
||||
|
||||
override Inventory CreateTossable( int amt )
|
||||
{
|
||||
|
|
@ -201,7 +207,6 @@ Class UTWeapon : Weapon
|
|||
{
|
||||
d.SetState(d.ResolveState("Spawn")+1);
|
||||
d.bALWAYSPICKUP = true;
|
||||
d.A_SetSize(-1,UTWeapon(d).droppedheight);
|
||||
}
|
||||
return d;
|
||||
}
|
||||
|
|
@ -210,7 +215,6 @@ Class UTWeapon : Weapon
|
|||
{
|
||||
SetState(ResolveState("Spawn")+1);
|
||||
bALWAYSPICKUP = true;
|
||||
A_SetSize(-1,droppedheight);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -234,7 +238,6 @@ Class UTWeapon : Weapon
|
|||
Weapon.BobRangeX 0.2;
|
||||
Weapon.BobRangeY 0.4;
|
||||
+WEAPON.NOALERT;
|
||||
UTWeapon.DroppedHeight 16;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -700,11 +703,13 @@ Class UTMainHandler : StaticEventHandler
|
|||
override void WorldLoaded( WorldEvent e )
|
||||
{
|
||||
if ( gamestate != GS_LEVEL || e.IsSaveGame ) return;
|
||||
// prettify Kinsie's test map for a more Unreal feel
|
||||
if ( level.levelname ~== "Modder Test Map" )
|
||||
{
|
||||
TexMan.ReplaceTextures("-noflat-","-kinsie-",0);
|
||||
TextureID skytx = TexMan.CheckForTexture("BlueSky",TexMan.Type_Any);
|
||||
level.ChangeSky(skytx,skytx);
|
||||
// TODO handplace some dynamic lights and add Unreal/UT ambient sounds
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -716,9 +721,11 @@ Class UTMainHandler : StaticEventHandler
|
|||
ui void StartMenu()
|
||||
{
|
||||
if ( gamestate != GS_TITLELEVEL ) return;
|
||||
if ( CVar.GetCVar('flak_protomenu',players[consoleplayer]).GetBool() )
|
||||
int proto = CVar.GetCVar('flak_protomenu',players[consoleplayer]).GetInt();
|
||||
if ( proto )
|
||||
{
|
||||
S_ChangeMusic("xyzdMenu");
|
||||
if ( proto > 1 ) S_ChangeMusic("menu2");
|
||||
else S_ChangeMusic("xyzdMenu");
|
||||
tex = TexMan.CheckForTexture("protobg",TexMan.Type_Any);
|
||||
}
|
||||
else
|
||||
|
|
@ -758,6 +765,7 @@ Class UTMainHandler : StaticEventHandler
|
|||
{
|
||||
if ( gamestate != GS_TITLELEVEL ) return;
|
||||
if ( tex.IsNull() || !tex.IsValid() ) return;
|
||||
if ( !CVar.GetCVar('flak_showmenu',players[consoleplayer]).GetBool() ) return;
|
||||
Screen.Dim("Black",1.0,0,0,Screen.GetWidth(),Screen.GetHeight());
|
||||
Screen.DrawTexture(tex,true,0,0,DTA_VirtualWidth,1024,DTA_VirtualHeight,768);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,17 +27,22 @@ Class UTHud : BaseStatusBar
|
|||
Class<Weapon> IconClasses[14];
|
||||
double HScale;
|
||||
Color tintcolor, bgcolor;
|
||||
double opacity;
|
||||
int opacity;
|
||||
int lastfrag, lastfragcnt, lastpickup, lastslot;
|
||||
ViewTracer vtracer;
|
||||
Actor lastseen;
|
||||
int lastseentic;
|
||||
bool showweapons, showfrags, showammo, showstatus, showinfo;
|
||||
double hudsize, weaponsize, statussize;
|
||||
|
||||
// For easier UT Canvas drawing
|
||||
Color DrawColor, WhiteColor, GoldColor;
|
||||
double CurX, CurY;
|
||||
double FracTic;
|
||||
|
||||
// Ugh...
|
||||
const TINTSTYLE = (1|2<<8|1<<16|12<<24);
|
||||
|
||||
override void Init()
|
||||
{
|
||||
Super.Init();
|
||||
|
|
@ -139,8 +144,40 @@ Class UTHud : BaseStatusBar
|
|||
override void Draw( int state, double TicFrac )
|
||||
{
|
||||
Super.Draw(state,TicFrac);
|
||||
if ( players[consoleplayer].camera is 'GuidedWarShell' ) return;
|
||||
HScale = Screen.GetWidth()/1280.;
|
||||
switch ( CVar.GetCVar('flak_colorprefs',CPlayer).GetInt() )
|
||||
{
|
||||
case 0:
|
||||
if ( CPlayer.GetTeam() >= Teams.Size() )
|
||||
tintcolor = Color("White");
|
||||
else tintcolor = Color(Teams[CPlayer.GetTeam()].mName);
|
||||
break;
|
||||
case 1:
|
||||
tintcolor = CPlayer.GetColor();
|
||||
break;
|
||||
case 2:
|
||||
tintcolor = Color(CVar.GetCVar('flak_colorcustom',CPlayer).GetString());
|
||||
break;
|
||||
}
|
||||
opacity = CVar.GetCVar('flak_opacity',players[consoleplayer]).GetInt();
|
||||
bgcolor = Color("Black");
|
||||
showweapons = CVar.GetCVar('flak_showweapons',players[consoleplayer]).GetBool();
|
||||
showstatus = CVar.GetCVar('flak_showstatus',players[consoleplayer]).GetBool();
|
||||
showfrags = CVar.GetCVar('flak_showfrags',players[consoleplayer]).GetBool();
|
||||
showammo = CVar.GetCVar('flak_showammo',players[consoleplayer]).GetBool();
|
||||
showinfo = CVar.GetCVar('flak_showinfo',players[consoleplayer]).GetBool();
|
||||
hudsize = CVar.GetCVar('flak_hudsize',players[consoleplayer]).GetFloat();
|
||||
weaponsize = CVar.GetCVar('flak_weaponsize',players[consoleplayer]).GetFloat();
|
||||
statussize = CVar.GetCVar('flak_statussize',players[consoleplayer]).GetFloat();
|
||||
double lbottom = Screen.GetHeight();
|
||||
if ( showweapons )
|
||||
{
|
||||
if ( weaponsize*hudsize>=1.0 ) lbottom -= 64*hudsize*HScale;
|
||||
if ( showfrags ) lbottom -= 64*hudsize*HScale;
|
||||
}
|
||||
if ( (CPlayer.ReadyWeapon is 'UTWeapon') )
|
||||
UTWeapon(CPlayer.ReadyWeapon).PreRender();
|
||||
UTWeapon(CPlayer.ReadyWeapon).PreRender(lbottom);
|
||||
if ( (state == HUD_StatusBar) || (state == HUD_Fullscreen) )
|
||||
{
|
||||
BeginHUD();
|
||||
|
|
@ -148,7 +185,7 @@ Class UTHud : BaseStatusBar
|
|||
DrawUTHUD();
|
||||
}
|
||||
if ( (CPlayer.ReadyWeapon is 'UTWeapon') )
|
||||
UTWeapon(CPlayer.ReadyWeapon).PostRender();
|
||||
UTWeapon(CPlayer.ReadyWeapon).PostRender(lbottom);
|
||||
}
|
||||
|
||||
private Color LerpColor( Color a, Color b, double x )
|
||||
|
|
@ -156,26 +193,24 @@ Class UTHud : BaseStatusBar
|
|||
return Color(a.a,int(a.r*(1.-x)+b.r*x),int(a.g*(1.-x)+b.g*x),int(a.b*(1.-x)+b.b*x));
|
||||
}
|
||||
|
||||
private void UTDrawTintedTex( TextureID tx, double sx = 1.0, Color tint = Color("Black") )
|
||||
private void UTDrawTintedTex( TextureID tx, double sx = 1.0, int opacity = -1, Color tint = Color("Black") )
|
||||
{
|
||||
double ss = (HScale*sx);
|
||||
double dw = (Screen.GetWidth()/ss), dh = (Screen.GetHeight()/ss);
|
||||
double dx = CurX/ss, dy = CurY/ss;
|
||||
Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_Alpha,opacity,DTA_FillColor,bgcolor);
|
||||
Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_AlphaChannel,true,DTA_FillColor,(tint!="Black")?tint:tintcolor);
|
||||
if ( opacity == -1 ) opacity = self.opacity;
|
||||
if ( opacity >= 16 ) Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_FillColor,bgcolor);
|
||||
double alpha = clamp(opacity/15.,0.0,1.0);
|
||||
Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_Alpha,alpha,DTA_RenderStyle,TINTSTYLE,DTA_FillColor,(tint!="Black")?tint:tintcolor);
|
||||
}
|
||||
private void UTDrawColorTex( TextureID tx, double sx = 1.0, double alpha = 1.0 )
|
||||
{
|
||||
double ss = (HScale*sx);
|
||||
double dw = (Screen.GetWidth()/ss), dh = (Screen.GetHeight()/ss);
|
||||
double dx = CurX/ss, dy = CurY/ss;
|
||||
Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_AlphaChannel,true,DTA_Alpha,alpha,DTA_FillColor,DrawColor);
|
||||
}
|
||||
private void UTDrawPlainTex( TextureID tx, double sx = 1.0, double alpha = 1.0 )
|
||||
private void UTDrawPlainTex( TextureID tx, double sx = 1.0, int opacity = -1 )
|
||||
{
|
||||
double ss = (HScale*sx);
|
||||
double dw = (Screen.GetWidth()/ss), dh = (Screen.GetHeight()/ss);
|
||||
double dx = CurX/ss, dy = CurY/ss;
|
||||
if ( opacity == -1 ) opacity = self.opacity;
|
||||
if ( opacity >= 16 ) Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_FillColor,bgcolor);
|
||||
double alpha = clamp(opacity/15.,0.0,1.0);
|
||||
Screen.DrawTexture(tx,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_Alpha,alpha);
|
||||
}
|
||||
|
||||
|
|
@ -184,8 +219,8 @@ Class UTHud : BaseStatusBar
|
|||
for ( int i=0; i<14; i++ )
|
||||
{
|
||||
if ( !(w is IconClasses[i]) ) continue;
|
||||
if ( use ) UTDrawTintedTex(Uses[i],sx);
|
||||
else UTDrawTintedTex(Icons[i],sx,tintcolor/2);
|
||||
if ( use ) UTDrawTintedTex(Uses[i],sx,opacity+7);
|
||||
else UTDrawTintedTex(Icons[i],sx,opacity,tintcolor/2);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
@ -201,17 +236,20 @@ Class UTHud : BaseStatusBar
|
|||
String digits = String.Format("%d",min(abs(value),9999));
|
||||
double flen = 3*step;
|
||||
double len = digits.length()*step;
|
||||
double alpha = clamp((opacity+7)/15.,0.0,1.0);
|
||||
for ( int i=0; i<digits.length(); i++ ) if ( digits.CharAt(i) == "1" ) len -= 0.5*step;
|
||||
CurX += (flen-len)*0.5;
|
||||
if ( digits.CharAt(0) == "1" ) CurX -= 0.5*step;
|
||||
if ( value < 0 )
|
||||
{
|
||||
Screen.DrawTexture(BigNum[11],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_AlphaChannel,true,DTA_FillColor,DrawColor);
|
||||
if ( opacity+7 > 15 ) Screen.DrawTexture(BigNum[11],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_FillColor,bgcolor);
|
||||
Screen.DrawTexture(BigNum[11],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_Alpha,alpha,DTA_RenderStyle,TINTSTYLE,DTA_FillColor,DrawColor);
|
||||
CurX += step;
|
||||
}
|
||||
for ( int i=0; i<digits.length(); i++ )
|
||||
{
|
||||
Screen.DrawTexture(BigNum[digits.CharCodeAt(i)-0x30],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_AlphaChannel,true,DTA_FillColor,DrawColor);
|
||||
if ( opacity+7 > 15 ) Screen.DrawTexture(BigNum[digits.CharCodeAt(i)-0x30],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_FillColor,bgcolor);
|
||||
Screen.DrawTexture(BigNum[digits.CharCodeAt(i)-0x30],false,CurX/ss,CurY/ss,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_Alpha,alpha,DTA_RenderStyle,TINTSTYLE,DTA_FillColor,DrawColor);
|
||||
CurX += ((i<digits.length()-1)&&(digits.CharAt(i+1)=="1"))?step*0.5:step;
|
||||
}
|
||||
}
|
||||
|
|
@ -220,119 +258,142 @@ Class UTHud : BaseStatusBar
|
|||
{
|
||||
Inventory ammotype1, ammotype2;
|
||||
[ammotype1, ammotype2] = GetCurrentAmmo();
|
||||
CurX = Screen.GetWidth()-128*HScale;
|
||||
CurY = Screen.GetHeight()-64*HScale;
|
||||
UTDrawTintedTex(Boxes[0]);
|
||||
CurX += 8*HScale;
|
||||
CurY += 14*HScale;
|
||||
CurX = showweapons?(Screen.GetWidth()-128*hudsize*HScale):(Screen.GetWidth()*0.5+128*hudsize*HScale);
|
||||
CurY = Screen.GetHeight()-64*hudsize*HScale;
|
||||
if ( showweapons && ((weaponsize*hudsize)>=1.0) ) CurY -= 64*hudsize*HScale;
|
||||
UTDrawTintedTex(Boxes[0],hudsize);
|
||||
CurX += 8*hudsize*HScale;
|
||||
CurY += 14*hudsize*HScale;
|
||||
DrawColor = WhiteColor;
|
||||
if ( ammotype1 ) UTDrawBigNum(ammotype1.Amount);
|
||||
if ( ammotype1 ) UTDrawBigNum(ammotype1.Amount,hudsize);
|
||||
if ( ammotype2 && (ammotype2 != ammotype1) )
|
||||
{
|
||||
CurX = Screen.GetWidth()-128*HScale;
|
||||
CurY = Screen.GetHeight()-128*HScale;
|
||||
CurX = showweapons?(Screen.GetWidth()-128*hudsize*HScale):((Screen.GetWidth()+256*hudsize*HScale)*0.5);
|
||||
CurY = showweapons?(Screen.GetHeight()-128*hudsize*HScale):(Screen.GetHeight()-64*hudsize*HScale);
|
||||
if ( showweapons && ((weaponsize*hudsize)>=1.0) ) CurY -= 64*hudsize*HScale;
|
||||
UTDrawTintedTex(Boxes[0]);
|
||||
CurX += 8*HScale;
|
||||
CurY += 14*HScale;
|
||||
UTDrawBigNum(ammotype2.Amount);
|
||||
CurX += 8*hudsize*HScale;
|
||||
CurY += 14*hudsize**HScale;
|
||||
UTDrawBigNum(ammotype2.Amount,hudsize);
|
||||
}
|
||||
}
|
||||
private void DrawStatus()
|
||||
{
|
||||
CurX = Screen.GetWidth()-128*HScale;
|
||||
CurY = 0;
|
||||
Color dollcolor = tintcolor;
|
||||
DamageAmplifier d;
|
||||
UTArmor b, a, t, s;
|
||||
UTJumpBoots j;
|
||||
d = DamageAmplifier(CPlayer.mo.FindInventory("DamageAmplifier"));
|
||||
b = UTArmor(CPlayer.mo.FindInventory("UTArmorBonus"));
|
||||
a = UTArmor(CPlayer.mo.FindInventory("UTBodyArmor"));
|
||||
t = UTArmor(CPlayer.mo.FindInventory("UTThighPads"));
|
||||
j = UTJumpBoots(CPlayer.mo.FindInventory("UTJumpBoots"));
|
||||
s = UTArmor(CPlayer.mo.FindInventory("UTShieldBelt"));
|
||||
if ( d && !d.isBlinking() ) dollcolor = d.BlendColor;
|
||||
if ( CPlayer.GetGender() == 1 )
|
||||
if ( showstatus )
|
||||
{
|
||||
UTDrawTintedTex(Woman[0],1.0,dollcolor);
|
||||
DrawColor = dollcolor;
|
||||
if ( a ) UTDrawColorTex(Woman[1],1.0,a.Amount/double(a.MaxAmount));
|
||||
if ( t ) UTDrawColorTex(Woman[2],1.0,t.Amount/double(t.MaxAmount));
|
||||
if ( j ) UTDrawColorTex(Woman[3],1.0,j.Amount/double(j.MaxAmount));
|
||||
DrawColor = GoldColor;
|
||||
if ( s ) UTDrawColorTex(Woman[4],1.0,s.Amount/double(s.MaxAmount));
|
||||
CurX = Screen.GetWidth()-128*HScale*hudsize*statussize;
|
||||
CurY = 0;
|
||||
Color dollcolor = tintcolor;
|
||||
DamageAmplifier d;
|
||||
UTJumpBoots j;
|
||||
d = DamageAmplifier(CPlayer.mo.FindInventory("DamageAmplifier"));
|
||||
j = UTJumpBoots(CPlayer.mo.FindInventory("UTJumpBoots"));
|
||||
if ( d && !d.isBlinking() ) dollcolor = d.BlendColor;
|
||||
if ( CPlayer.GetGender() == 1 )
|
||||
{
|
||||
UTDrawTintedTex(Woman[0],hudsize*statussize,min(opacity,15),dollcolor);
|
||||
if ( a ) UTDrawTintedTex(Woman[1],hudsize*statussize,min(opacity,15)*(a.Amount/double(a.MaxAmount)),dollcolor);
|
||||
if ( t ) UTDrawTintedTex(Woman[2],hudsize*statussize,min(opacity,15)*(t.Amount/double(t.MaxAmount)),dollcolor);
|
||||
if ( j ) UTDrawTintedTex(Woman[3],hudsize*statussize,min(opacity,15)*(j.Amount/double(j.MaxAmount)),dollcolor);
|
||||
if ( s ) UTDrawTintedTex(Woman[4],hudsize*statussize,min(opacity,15)*(s.Amount/double(s.MaxAmount)),GoldColor);
|
||||
}
|
||||
else
|
||||
{
|
||||
UTDrawTintedTex(Man[0],hudsize*statussize,min(opacity,15),dollcolor);
|
||||
if ( a ) UTDrawTintedTex(Man[1],hudsize*statussize,min(opacity,15)*(a.Amount/double(a.MaxAmount)),dollcolor);
|
||||
if ( t ) UTDrawTintedTex(Man[2],hudsize*statussize,min(opacity,15)*(t.Amount/double(t.MaxAmount)),dollcolor);
|
||||
if ( j ) UTDrawTintedTex(Man[3],hudsize*statussize,min(opacity,15)*(j.Amount/double(j.MaxAmount)),dollcolor);
|
||||
if ( s ) UTDrawTintedTex(Man[4],hudsize*statussize,min(opacity,15)*(s.Amount/double(s.MaxAmount)),GoldColor);
|
||||
}
|
||||
}
|
||||
DrawColor = WhiteColor;
|
||||
if ( !showstatus && !showweapons )
|
||||
{
|
||||
CurX = Screen.GetWidth()*0.5-128*hudsize*HScale;
|
||||
CurY = Screen.GetHeight()-64*hudsize*HScale;
|
||||
}
|
||||
else
|
||||
{
|
||||
UTDrawTintedTex(Man[0],1.0,dollcolor);
|
||||
DrawColor = dollcolor;
|
||||
if ( a ) UTDrawColorTex(Man[1],1.0,a.Amount/double(a.MaxAmount));
|
||||
if ( t ) UTDrawColorTex(Man[2],1.0,t.Amount/double(t.MaxAmount));
|
||||
if ( j ) UTDrawColorTex(Man[3],1.0,j.Amount/double(j.MaxAmount));
|
||||
DrawColor = GoldColor;
|
||||
if ( s ) UTDrawColorTex(Man[4],1.0,s.Amount/double(s.MaxAmount));
|
||||
CurX = Screen.GetWidth()-140*hudsize*HScale;
|
||||
if ( showstatus ) CurX -= 128*statussize*hudsize*HScale;
|
||||
CurY = 0;
|
||||
}
|
||||
DrawColor = WhiteColor;
|
||||
CurX = Screen.GetWidth()-268*HScale;
|
||||
UTDrawTintedTex(Boxes[1]);
|
||||
UTDrawTintedTex(Boxes[1],hudsize);
|
||||
int allarmor = 0;
|
||||
if ( b ) allarmor += b.amount;
|
||||
if ( a ) allarmor += a.amount;
|
||||
if ( t ) allarmor += t.amount;
|
||||
if ( s ) allarmor += s.amount;
|
||||
CurX += 8*HScale;
|
||||
CurY += 14*HScale;
|
||||
UTDrawBigNum(Min(199,allarmor));
|
||||
CurX = Screen.GetWidth()-268*HScale;
|
||||
CurY = 64*HScale;
|
||||
CurX += 8*hudsize*HScale;
|
||||
CurY += 14*hudsize*HScale;
|
||||
if ( !showstatus && b ) DrawColor = GoldColor;
|
||||
UTDrawBigNum(Min(199,allarmor),hudsize);
|
||||
DrawColor = WhiteColor;
|
||||
if ( !showstatus && !showweapons )
|
||||
{
|
||||
CurX = Screen.GetWidth()*0.5;
|
||||
CurY = Screen.GetHeight()-64*hudsize*HScale;
|
||||
}
|
||||
else
|
||||
{
|
||||
CurX = Screen.GetWidth()-140*hudsize*HScale;
|
||||
if ( showstatus ) CurX -= 128*statussize*hudsize*HScale;
|
||||
CurY = 64*hudsize*HScale;
|
||||
}
|
||||
if ( CPlayer.mo.Health < CPlayer.mo.SpawnHealth()/2 )
|
||||
{
|
||||
Color blinkcolor;
|
||||
double blinky = ((gametic+fractic)/Thinker.TICRATE)*1.5;
|
||||
blinky = blinky-floor(blinky);
|
||||
blinkcolor = LerpColor(tintcolor,WhiteColor,blinky);
|
||||
UTDrawTintedTex(Boxes[2],1.0,blinkcolor);
|
||||
UTDrawTintedTex(Boxes[2],hudsize,-1,blinkcolor);
|
||||
DrawColor = LerpColor(WhiteColor,blinkcolor,blinky);
|
||||
CurX += 8*HScale;
|
||||
CurY += 14*HScale;
|
||||
UTDrawBigNum(max(0,CPlayer.mo.Health));
|
||||
CurX += 8*hudsize*HScale;
|
||||
CurY += 14*hudsize*HScale;
|
||||
UTDrawBigNum(max(0,CPlayer.mo.Health),hudsize);
|
||||
}
|
||||
else
|
||||
{
|
||||
UTDrawTintedTex(Boxes[2]);
|
||||
CurX += 8*HScale;
|
||||
CurY += 14*HScale;
|
||||
UTDrawBigNum(Clamp(CPlayer.mo.Health,0,199));
|
||||
UTDrawTintedTex(Boxes[2],hudsize);
|
||||
CurX += 8*hudsize*HScale;
|
||||
CurY += 14*hudsize*HScale;
|
||||
UTDrawBigNum(Clamp(CPlayer.mo.Health,0,199),hudsize);
|
||||
}
|
||||
}
|
||||
private void DrawWeapons()
|
||||
{
|
||||
double BaseX = 128*HScale;
|
||||
double WeapScale = 0.8*HScale;
|
||||
double WeapScale = hudsize*weaponsize*HScale;
|
||||
double BaseX = (Screen.GetWidth()-(1280*WeapScale))*0.5;
|
||||
double BaseY = Screen.GetHeight()-64*WeapScale;
|
||||
double WeaponOffset = 128*WeapScale;
|
||||
let cw = CPlayer.ReadyWeapon;
|
||||
int cwslot = -1;
|
||||
let pw = CPlayer.PendingWeapon;
|
||||
int pwslot = -1;
|
||||
if ( cw && (cw.SlotNumber != -1) )
|
||||
{
|
||||
int slot = cw.SlotNumber?(cw.SlotNumber-1):9;
|
||||
CurX = BaseX+slot*WeaponOffset;
|
||||
cwslot = cw.SlotNumber?(cw.SlotNumber-1):9;
|
||||
CurX = BaseX+cwslot*WeaponOffset;
|
||||
CurY = BaseY;
|
||||
UTDrawWeaponIcon(cw,true,0.8);
|
||||
CurX = BaseX+slot*WeaponOffset;
|
||||
UTDrawWeaponIcon(cw,true,hudsize*weaponsize);
|
||||
CurX = BaseX+cwslot*WeaponOffset;
|
||||
CurY = BaseY;
|
||||
UTDrawPlainTex(WeaponBox,0.8);
|
||||
UTDrawPlainTex(WeaponBox,hudsize*weaponsize,opacity+7);
|
||||
}
|
||||
if ( pw && (pw.SlotNumber != -1) && (pw != WP_NOCHANGE) )
|
||||
{
|
||||
int slot = pw.SlotNumber?(pw.SlotNumber-1):9;
|
||||
CurX = BaseX+slot*WeaponOffset-64*WeapScale;
|
||||
pwslot = pw.SlotNumber?(pw.SlotNumber-1):9;
|
||||
CurX = BaseX+pwslot*WeaponOffset-64*WeapScale;
|
||||
CurY = BaseY-32*WeapScale;
|
||||
DrawColor = GoldColor;
|
||||
UTDrawColorTex(Flash,0.8);
|
||||
CurX = BaseX+slot*WeaponOffset;
|
||||
UTDrawTintedTex(Flash,hudsize*weaponsize,min(opacity,15),GoldColor);
|
||||
CurX = BaseX+pwslot*WeaponOffset;
|
||||
CurY = BaseY;
|
||||
UTDrawWeaponIcon(pw,true,0.8);
|
||||
UTDrawWeaponIcon(pw,true,hudsize*weaponsize);
|
||||
}
|
||||
Weapon wslots[10];
|
||||
for ( Inventory i = CPlayer.mo.Inv; i; i=i.Inv )
|
||||
|
|
@ -351,18 +412,17 @@ Class UTHud : BaseStatusBar
|
|||
CurX = BaseX+i*WeaponOffset;
|
||||
CurY = BaseY;
|
||||
if ( !wslots[i] )
|
||||
UTDrawTintedTex(Slots[i],1.6,tintcolor/2);
|
||||
else if ( (wslots[i] != cw) && (wslots[i] != pw) )
|
||||
if ( !UTDrawWeaponIcon(wslots[i],false,0.8) )
|
||||
UTDrawTintedTex(Slots[i],1.6,tintcolor/2);
|
||||
UTDrawTintedTex(Slots[i],2*hudsize*weaponsize,-1,tintcolor/2);
|
||||
else if ( (i != cwslot) && (i != pwslot) )
|
||||
if ( !UTDrawWeaponIcon(wslots[i],false,hudsize*weaponsize) )
|
||||
UTDrawTintedTex(Slots[i],2*hudsize*weaponsize,-1,tintcolor/2);
|
||||
}
|
||||
for ( int i=0; i<10; i++ )
|
||||
{
|
||||
if ( !wslots[i] ) continue;
|
||||
CurX = BaseX+i*WeaponOffset+4*WeapScale;
|
||||
CurY = BaseY+4*WeapScale;
|
||||
DrawColor = GoldColor;
|
||||
UTDrawColorTex(BigNum[(i==9)?0:(i+1)],0.6);
|
||||
UTDrawTintedTex(BigNum[(i==9)?0:(i+1)],0.75*hudsize*weaponsize,opacity+7,GoldColor);
|
||||
if ( !wslots[i].Ammo1 ) continue;
|
||||
CurY = BaseY+52*WeapScale;
|
||||
Vector2 ss = (0.6875,0.5)*WeapScale;
|
||||
|
|
@ -370,13 +430,15 @@ Class UTHud : BaseStatusBar
|
|||
double dx = CurX/ss.x, dy = CurY/ss.y;
|
||||
Vector2 bs = TexMan.GetScaledSize(AmmoBar);
|
||||
double ddw = bs.x*(wslots[i].Ammo1.Amount/double(wslots[i].Ammo1.MaxAmount));
|
||||
Screen.DrawTexture(AmmoBar,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_WindowRightF,ddw);
|
||||
double alpha = clamp((opacity+7)/15.,0.0,1.0);
|
||||
Screen.DrawTexture(AmmoBar,false,dx,dy,DTA_VirtualWidthF,dw,DTA_VirtualHeightF,dh,DTA_KeepRatio,true,DTA_WindowRightF,ddw,DTA_Alpha,alpha);
|
||||
}
|
||||
}
|
||||
private void DrawFragCount()
|
||||
{
|
||||
CurX = 0;
|
||||
CurY = Screen.GetHeight()-64*HScale;
|
||||
CurX = showweapons?0:(Screen.GetWidth()*0.5-256*hudsize*HScale);
|
||||
CurY = Screen.GetHeight()-64*hudsize*HScale;
|
||||
if ( showweapons && ((weaponsize*hudsize)>=1.0) ) CurY -= 64*hudsize*HScale;
|
||||
DrawColor = tintcolor;
|
||||
double whiten = ((gametic+fractic)-lastfrag)/Thinker.TICRATE;
|
||||
if ( whiten < 3.0 )
|
||||
|
|
@ -384,19 +446,19 @@ Class UTHud : BaseStatusBar
|
|||
if ( tintcolor == GoldColor )
|
||||
DrawColor = WhiteColor;
|
||||
else DrawColor = GoldColor;
|
||||
CurX -= 64*HScale;
|
||||
CurY -= 32*HScale;
|
||||
UTDrawColorTex(Flash);
|
||||
CurX += 64*HScale;
|
||||
CurY += 32*HScale;
|
||||
CurX -= 64*hudsize*HScale;
|
||||
CurY -= 32*hudsize*HScale;
|
||||
UTDrawTintedTex(Flash,hudsize,min(opacity,15),DrawColor);
|
||||
CurX += 64*hudsize*HScale;
|
||||
CurY += 32*hudsize*HScale;
|
||||
whiten = 4*whiten-int(4*whiten);
|
||||
DrawColor = lerpcolor(tintcolor,DrawColor,whiten);
|
||||
}
|
||||
UTDrawTintedTex(Boxes[3],1.0,DrawColor);
|
||||
CurX += 44*HScale;
|
||||
CurY += 14*HScale;
|
||||
UTDrawTintedTex(Boxes[3],hudsize,-1,DrawColor);
|
||||
CurX += 44*hudsize*HScale;
|
||||
CurY += 14*hudsize*HScale;
|
||||
DrawColor = WhiteColor;
|
||||
UTDrawBigNum((deathmatch||teamplay)?CPlayer.fragcount:CPlayer.killcount);
|
||||
UTDrawBigNum((deathmatch||teamplay)?CPlayer.fragcount:CPlayer.killcount,hudsize);
|
||||
}
|
||||
private void DrawIdentifyInfo()
|
||||
{
|
||||
|
|
@ -427,47 +489,42 @@ Class UTHud : BaseStatusBar
|
|||
int nrows = 0, nrowss = 0;
|
||||
for ( int i=0; i<3; i++ ) if ( locks[i] ) nrows++;
|
||||
for ( int i=3; i<6; i++ ) if ( locks[i] ) nrowss++;
|
||||
CurX = (Screen.GetWidth()-64*HScale);
|
||||
CurY = (Screen.GetHeight()-nrows*64*HScale)*0.5;
|
||||
CurY -= max(0,nrows-1)*4*HScale;
|
||||
CurX = (Screen.GetWidth()-64*hudsize*HScale);
|
||||
CurY = (Screen.GetHeight()-nrows*64*hudsize*HScale)*0.5;
|
||||
CurY -= max(0,nrows-1)*4*hudsize*HScale;
|
||||
if ( locks[0] )
|
||||
{
|
||||
DrawColor = "Red";
|
||||
UTDrawColorTex(Keys[0]);
|
||||
CurY += 72*HScale;
|
||||
UTDrawTintedTex(Keys[0],hudsize,min(opacity,15),Color("Red"));
|
||||
CurY += 72*hudsize*HScale;
|
||||
}
|
||||
if ( locks[1] )
|
||||
{
|
||||
DrawColor = "Blue";
|
||||
UTDrawColorTex(Keys[1]);
|
||||
CurY += 72*HScale;
|
||||
UTDrawTintedTex(Keys[1],hudsize,min(opacity,15),Color("Blue"));
|
||||
CurY += 72*hudsize*HScale;
|
||||
}
|
||||
if ( locks[2] )
|
||||
{
|
||||
DrawColor = "Gold";
|
||||
UTDrawColorTex(Keys[2]);
|
||||
CurY += 72*HScale;
|
||||
UTDrawTintedTex(Keys[2],hudsize,min(opacity,15),Color("Gold"));
|
||||
CurY += 72*hudsize*HScale;
|
||||
}
|
||||
if ( nrows ) CurX -= 56*HScale;
|
||||
CurY = (Screen.GetHeight()-nrowss*64*HScale)*0.5;
|
||||
CurY += max(0,nrowss-1)*2*HScale;
|
||||
if ( nrows ) CurX -= 56*hudsize*HScale;
|
||||
CurY = (Screen.GetHeight()-nrowss*64*hudsize*HScale)*0.5;
|
||||
CurY += max(0,nrowss-1)*2*hudsize*HScale;
|
||||
if ( locks[3] )
|
||||
{
|
||||
DrawColor = "Red";
|
||||
UTDrawColorTex(Keys[3]);
|
||||
CurY += 60*HScale;
|
||||
UTDrawTintedTex(Keys[3],hudsize,min(opacity,15),Color("Red"));
|
||||
CurY += 60*hudsize*HScale;
|
||||
}
|
||||
if ( locks[4] )
|
||||
{
|
||||
DrawColor = "Blue";
|
||||
UTDrawColorTex(Keys[3]);
|
||||
CurY += 60*HScale;
|
||||
UTDrawTintedTex(Keys[3],hudsize,min(opacity,15),Color("Blue"));
|
||||
CurY += 60*hudsize*HScale;
|
||||
}
|
||||
if ( locks[5] )
|
||||
{
|
||||
DrawColor = "Gold";
|
||||
UTDrawColorTex(Keys[3]);
|
||||
CurY += 60*HScale;
|
||||
UTDrawTintedTex(Keys[3],hudsize,min(opacity,15),Color("Gold"));
|
||||
CurY += 60*hudsize*HScale;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -493,35 +550,17 @@ Class UTHud : BaseStatusBar
|
|||
|
||||
private void DrawUTHUD()
|
||||
{
|
||||
if ( players[consoleplayer].camera is 'GuidedWarShell' ) return;
|
||||
HScale = Screen.GetWidth()/1280.;
|
||||
switch ( CVar.GetCVar('flak_colorprefs',CPlayer).GetInt() )
|
||||
{
|
||||
case 0:
|
||||
if ( CPlayer.GetTeam() >= Teams.Size() )
|
||||
tintcolor = Color("White");
|
||||
else tintcolor = Color(Teams[CPlayer.GetTeam()].mName);
|
||||
break;
|
||||
case 1:
|
||||
tintcolor = CPlayer.GetColor();
|
||||
break;
|
||||
case 2:
|
||||
tintcolor = Color(CVar.GetCVar('flak_colorcustom',CPlayer).GetString());
|
||||
break;
|
||||
}
|
||||
opacity = CVar.GetCVar('flak_opacity',CPlayer).GetFloat();
|
||||
bgcolor = Color(CVar.GetCVar('flak_bgcolor',CPlayer).GetString());
|
||||
// Display Weapons
|
||||
DrawWeapons();
|
||||
if ( showweapons ) DrawWeapons();
|
||||
// Display Frag count
|
||||
DrawFragCount();
|
||||
if ( showfrags ) DrawFragCount();
|
||||
// Draw Ammo
|
||||
DrawAmmo();
|
||||
if ( showammo ) DrawAmmo();
|
||||
// Draw Health/Armor status
|
||||
DrawStatus();
|
||||
// Display Keys
|
||||
DrawKeys();
|
||||
// Display Identification Info
|
||||
if ( CPlayer == players[consoleplayer] ) DrawIdentifyInfo();
|
||||
if ( CPlayer == players[consoleplayer] && showinfo ) DrawIdentifyInfo();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,8 +11,6 @@ Class WarheadAmmo : Ammo
|
|||
Ammo.BackpackMaxAmount 2;
|
||||
Ammo.DropAmount 1;
|
||||
Inventory.RespawnTics 2100;
|
||||
Radius 2;
|
||||
Height 42;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -496,17 +494,17 @@ Class RedeemerHUD : HUDMessageBase
|
|||
{
|
||||
for ( int i=0; i<ta.Size(); i++ )
|
||||
{
|
||||
Screen.DrawTexture(mark,false,ta[i].vpos.x,ta[i].vpos.y);
|
||||
Screen.DrawText(whfont,Font.CR_UNTRANSLATED,(ta[i].vpos.x-whfont.StringWidth(ta[i].diststr)/2)-12,ta[i].vpos.y+8,ta[i].diststr);
|
||||
Screen.DrawTexture(mark,false,ta[i].vpos.x,ta[i].vpos.y,DTA_RenderStyle,(1|2<<8|1<<16));
|
||||
Screen.DrawText(whfont,Font.CR_UNTRANSLATED,(ta[i].vpos.x-whfont.StringWidth(ta[i].diststr)/2)-12,ta[i].vpos.y+8,ta[i].diststr,DTA_RenderStyle,(1|2<<8|1<<16));
|
||||
}
|
||||
}
|
||||
// other stuff
|
||||
Screen.DrawTexture(reticle,false,320,240,DTA_VirtualWidth,640,DTA_VirtualHeight,480);
|
||||
Screen.DrawTexture(reticle,false,320,240,DTA_VirtualWidth,640,DTA_VirtualHeight,480,DTA_RenderStyle,(1|2<<8|1<<16));
|
||||
int numreadouts = Screen.GetHeight()/128+2;
|
||||
for ( int i=0; i<numreadouts; i++ )
|
||||
{
|
||||
int scroll = (gametic*5)%128;
|
||||
Screen.DrawTexture(readout,false,0,i*128-scroll);
|
||||
Screen.DrawTexture(readout,false,0,i*128-scroll,DTA_RenderStyle,(1|2<<8|1<<16));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -651,9 +649,6 @@ Class WarheadLauncher : UTWeapon replaces BFG9000
|
|||
Inventory.RespawnTics 2100;
|
||||
+INVENTORY.ALWAYSPICKUP;
|
||||
+WEAPON.NOAUTOFIRE;
|
||||
Radius 24;
|
||||
Height 16;
|
||||
UTWeapon.DroppedHeight 16;
|
||||
}
|
||||
States
|
||||
{
|
||||
|
|
@ -687,7 +682,7 @@ Class WarheadLauncher : UTWeapon replaces BFG9000
|
|||
WARS A 1 A_Raise(int.max);
|
||||
Wait;
|
||||
Deselect:
|
||||
WARD ABCDEFG 2;
|
||||
WARD ABCDEFG 1;
|
||||
WARD G 1 A_Lower(int.max);
|
||||
Wait;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue