diff --git a/Readme.md b/Readme.md index 5207a41..b48f017 100644 --- a/Readme.md +++ b/Readme.md @@ -78,6 +78,9 @@ Doom Tournament (currently the devel branch is required). ## Planned + - Impaler "slice" animation for melee alt + - Separate proto content into an add-on (if people want) + - RTNP add-on - Monster pack (someday) - Map pack (maybe? who knows) diff --git a/graphics/hud083/Flsh083.png b/graphics/hud083/Flsh083.png new file mode 100644 index 0000000..15e9a42 Binary files /dev/null and b/graphics/hud083/Flsh083.png differ diff --git a/graphics/hud083/ammo/Asmd083.png b/graphics/hud083/ammo/Asmd083.png index 384e016..ab9e68f 100644 Binary files a/graphics/hud083/ammo/Asmd083.png and b/graphics/hud083/ammo/Asmd083.png differ diff --git a/graphics/hud083/ammo/Big083.png b/graphics/hud083/ammo/Big083.png index d5a3fa7..a4ecd88 100644 Binary files a/graphics/hud083/ammo/Big083.png and b/graphics/hud083/ammo/Big083.png differ diff --git a/graphics/hud083/ammo/Bio083.png b/graphics/hud083/ammo/Bio083.png index de7146a..55eac6f 100644 Binary files a/graphics/hud083/ammo/Bio083.png and b/graphics/hud083/ammo/Bio083.png differ diff --git a/graphics/hud083/ammo/Disp083.png b/graphics/hud083/ammo/Disp083.png index 17ff86b..e71a0cf 100644 Binary files a/graphics/hud083/ammo/Disp083.png and b/graphics/hud083/ammo/Disp083.png differ diff --git a/graphics/hud083/ammo/Flak083.png b/graphics/hud083/ammo/Flak083.png index dcd34db..dc3db89 100644 Binary files a/graphics/hud083/ammo/Flak083.png and b/graphics/hud083/ammo/Flak083.png differ diff --git a/graphics/hud083/ammo/Flame083.png b/graphics/hud083/ammo/Flame083.png index e1002c8..0ae1e13 100644 Binary files a/graphics/hud083/ammo/Flame083.png and b/graphics/hud083/ammo/Flame083.png differ diff --git a/graphics/hud083/ammo/Impal083.png b/graphics/hud083/ammo/Impal083.png index 8e5bebd..9b7f38a 100644 Binary files a/graphics/hud083/ammo/Impal083.png and b/graphics/hud083/ammo/Impal083.png differ diff --git a/graphics/hud083/ammo/Mini083.png b/graphics/hud083/ammo/Mini083.png index fe81437..ef546a2 100644 Binary files a/graphics/hud083/ammo/Mini083.png and b/graphics/hud083/ammo/Mini083.png differ diff --git a/graphics/hud083/ammo/OLSMP083.png b/graphics/hud083/ammo/OLSMP083.png index 3f335ca..5677583 100644 Binary files a/graphics/hud083/ammo/OLSMP083.png and b/graphics/hud083/ammo/OLSMP083.png differ diff --git a/graphics/hud083/ammo/Peace083.png b/graphics/hud083/ammo/Peace083.png index dce2035..c5e7aac 100644 Binary files a/graphics/hud083/ammo/Peace083.png and b/graphics/hud083/ammo/Peace083.png differ diff --git a/graphics/hud083/ammo/Razor083.png b/graphics/hud083/ammo/Razor083.png index b315442..2b2d124 100644 Binary files a/graphics/hud083/ammo/Razor083.png and b/graphics/hud083/ammo/Razor083.png differ diff --git a/graphics/hud083/ammo/Rifle083.png b/graphics/hud083/ammo/Rifle083.png index 4be4776..b4c9cba 100644 Binary files a/graphics/hud083/ammo/Rifle083.png and b/graphics/hud083/ammo/Rifle083.png differ diff --git a/graphics/hud083/ammo/Rokt083.png b/graphics/hud083/ammo/Rokt083.png index 1691e2b..70f5827 100644 Binary files a/graphics/hud083/ammo/Rokt083.png and b/graphics/hud083/ammo/Rokt083.png differ diff --git a/graphics/hud083/ammo/Stun083.png b/graphics/hud083/ammo/Stun083.png index 2d2a887..28a8d75 100644 Binary files a/graphics/hud083/ammo/Stun083.png and b/graphics/hud083/ammo/Stun083.png differ diff --git a/graphics/hud083/ammo/Tele083.png b/graphics/hud083/ammo/Tele083.png index 184294c..2f4ea99 100644 Binary files a/graphics/hud083/ammo/Tele083.png and b/graphics/hud083/ammo/Tele083.png differ diff --git a/sndinfo.txt b/sndinfo.txt index cf0fe8c..d734dc5 100644 --- a/sndinfo.txt +++ b/sndinfo.txt @@ -191,6 +191,7 @@ ffield/hit ffieldh2 dpistol/select disppick dpistol/fire dispshot +dpistol/altfire dispshot dpistol/charge powerup3 dpistol/up1 number1 dpistol/up2 number2 @@ -202,6 +203,7 @@ $limit dpistol/hit 16 amplifier/act ampact amplifier/set health1 +amplifier/unset health1 flare/on flares1 flare/loop flarel1 @@ -283,6 +285,7 @@ $random impaler/stab { impaler/stab1 impaler/stab2 impaler/stab3 } impaler/flesh impflesh impaler/wall impwall impaler/altfire impboltl +impaler/altend impbolte impaler/hit imphit impaler/fly impfly impaler/beam ele04 diff --git a/sounds/ImpBoltE.ogg b/sounds/ImpBoltE.ogg new file mode 100644 index 0000000..4503774 Binary files /dev/null and b/sounds/ImpBoltE.ogg differ diff --git a/zscript/dispersionpistol.zsc b/zscript/dispersionpistol.zsc index 289e807..5d2614a 100644 --- a/zscript/dispersionpistol.zsc +++ b/zscript/dispersionpistol.zsc @@ -570,7 +570,7 @@ Class DispersionPistol : UnrealWeapon if ( self is 'UTPlayer' ) UTPlayer(self).PlayAttacking3(); DefaultAmmo(weap.Ammo1).rechargephase = 0; - A_PlaySound("dpistol/fire",CHAN_WEAPON,Dampener.Active(self)?.4:1.); + A_PlaySound("dpistol/altfire",CHAN_WEAPON,Dampener.Active(self)?.4:1.); double mult = Amplifier.GetMult(self,int(invoker.ChargeSize*50)+50); invoker.FireEffect(); int ulevel = sting_dpistol?0:invoker.upgradelevel; diff --git a/zscript/impaler.zsc b/zscript/impaler.zsc index bf091e8..ce4f7ef 100644 --- a/zscript/impaler.zsc +++ b/zscript/impaler.zsc @@ -953,7 +953,7 @@ Class Impaler : UnrealWeapon player.SetPSprite(-3,invoker.FindState("GemAltRelease")); player.SetPSprite(-2,invoker.FindState("ZapAltRelease")); A_StopBeam(); - A_PlaySound("impaler/gem",CHAN_WEAPON,looping:true); + A_PlaySound("impaler/altend",CHAN_WEAPON,looping:true); } IMPA QRSTUVWX 2; Goto Idle; diff --git a/zscript/napalm.zsc b/zscript/napalm.zsc index 5386458..676e148 100644 --- a/zscript/napalm.zsc +++ b/zscript/napalm.zsc @@ -975,7 +975,11 @@ Class UFlamethrower : UnrealWeapon TNT1 A 1 A_FireFlame(); Wait; Hold: - FLMF FGHIJK 2 A_SoundVolume(CHAN_WEAPON,Dampener.Active(self)?.1:1.); + FLMF FGHIJK 2 + { + A_SoundVolume(CHAN_WEAPON,Dampener.Active(self)?.1:1.); + A_SoundVolume(CHAN_6,Dampener.Active(self)?.02:.2); + } Loop; Release: #### # 2 @@ -983,6 +987,7 @@ Class UFlamethrower : UnrealWeapon A_Overlay(-9999,"Null"); player.SetPSprite(-2,ResolveState("FlameRelease")); A_PlaySound("flamet/fireend",CHAN_WEAPON,Dampener.Active(self)?.1:1.); + A_SoundVolume(CHAN_6,Dampener.Active(self)?.1:1.); A_ClearRefire(); } FLMF MNOP 2; diff --git a/zscript/unrealcommon.zsc b/zscript/unrealcommon.zsc index 2907fd4..d11b703 100644 --- a/zscript/unrealcommon.zsc +++ b/zscript/unrealcommon.zsc @@ -860,6 +860,7 @@ Class AmmoUsedInSlot Class UnrealMainHandler : EventHandler { Array AmmoSlots; + transient int slotflash[10]; // used by the 0.83 hud override void WorldThingDamaged( WorldEvent e ) { @@ -1189,6 +1190,8 @@ Class UnrealMainHandler : EventHandler let t = players[e.player].mo.FindInventory("UTranslator"); if ( t ) t.Use(false); } + else if ( e.Name ~== "Bar083SlotFlash" ) + slotflash[e.Args[0]] = gametic+20; } private static bool CmpWeapon( Class a, Class b ) { diff --git a/zscript/unrealhud.zsc b/zscript/unrealhud.zsc index 2b3aa8b..0fc50c0 100644 --- a/zscript/unrealhud.zsc +++ b/zscript/unrealhud.zsc @@ -332,7 +332,8 @@ Class UnrealHUD : BaseStatusBar for ( int i=0; i<10; i++ ) { Font cfont = TinyFont; - if ( cwslot == i ) cfont = TinyWhiteFont; + if ( (pwslot != -1) && (pwslot == i) || (pwslot == -1) && (cwslot == i) ) + cfont = TinyWhiteFont; int realslot = i?i:10; CurX = HalfHUDX-3+realslot*6; CurY = HalfHUDY+4; @@ -616,6 +617,14 @@ Class UnrealHUD : BaseStatusBar } } + override void ReceivedWeapon( Weapon weapn ) + { + Super.ReceivedWeapon(weapn); + if ( weapn.SlotNumber == -1 ) return; + // fuckin' hell + EventHandler.SendNetworkEvent("Bar083SlotFlash",weapn.SlotNumber); + } + private void DrawUnrealBar() { // 0.83 status bar, just for funsies @@ -646,7 +655,16 @@ Class UnrealHUD : BaseStatusBar { if ( !CPlayer.HasWeaponsInSlot(i) ) continue; bool used = (CPlayer.ReadyWeapon&&(CPlayer.ReadyWeapon.SlotNumber==i)); - DrawImage("Slot083",(slotofs[i],342),DI_ITEM_OFFSETS,used?1.:.8); + if ( CPlayer.PendingWeapon && (CPlayer.PendingWeapon != WP_NOCHANGE) ) + used = (CPlayer.PendingWeapon.SlotNumber==i); + DrawImage(used?"Used083":"Slot083",(slotofs[i],342),DI_ITEM_OFFSETS); + } + let hnd = UnrealMainHandler(EventHandler.Find("UnrealMainHandler")); + if ( hnd ) + { + for ( int i=0; i<10; i++ ) + if ( hnd.slotflash[i] > gametic ) + DrawImage("Flsh083",(slotofs[i],342),DI_ITEM_OFFSETS,(hnd.slotflash[i]-gametic+FracTic)/20.); } DrawString(mOldDigits,FormatNumber(CPlayer.health,3),(358,366),DI_TEXT_ALIGN_RIGHT); int ArmorAmount = 0, CurAbs = -1; diff --git a/zscript/upowerups.zsc b/zscript/upowerups.zsc index 54ba53b..08c5321 100644 --- a/zscript/upowerups.zsc +++ b/zscript/upowerups.zsc @@ -113,7 +113,7 @@ Class Amplifier : UnrealInventory { if ( pickup ) return false; bActive = !bActive; - Owner.A_PlaySound("amplifier/set",CHAN_ITEM); + Owner.A_PlaySound(bActive?"amplifier/set":"amplifier/unset",CHAN_ITEM); return false; } override void DoEffect()