1.0.2 release:

- Fix Minigun altfire not triggering while primary was previously held.
 - Fix Rocket Launcher fire button handling. You can fire tight wads properly now.
 - Corrected Biorifle Glob behaviour, now spawns an initial splash on impact, as intended.
 - Rename some textures to fix a small map conflict.
This commit is contained in:
Marisa the Magician 2019-10-28 14:28:22 +01:00
commit c7d1ee78a2
11 changed files with 44 additions and 31 deletions

View file

@ -61,7 +61,7 @@ This mod requires GZDoom 4.2.3 or later.
## In progress ## In progress
- N/A, this is the 1.0.1 release - N/A, this is the 1.0.2 release
## Planned ## Planned

View file

@ -820,10 +820,10 @@ HardwareShader PostProcess scene
// Skyboxes // Skyboxes
SkyBox "KGDaySky" fliptop SkyBox "KGDaySky" fliptop
{ {
"graphics/SkySetB_front.png" "graphics/dtsky_front.png"
"graphics/SkySetB_right.png" "graphics/dtsky_right.png"
"graphics/SkySetB_back.png" "graphics/dtsky_back.png"
"graphics/SkySetB_left.png" "graphics/dtsky_left.png"
"graphics/SkySetB_up.png" "graphics/dtsky_up.png"
"graphics/SkySetB_down.png" "graphics/dtsky_down.png"
} }

View file

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 124 B

After

Width:  |  Height:  |  Size: 124 B

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 6.8 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Before After
Before After

View file

@ -639,15 +639,8 @@ Class BioGlob : BioGel
{ {
int numsplash; int numsplash;
override void AlignSelf() void SpawnSplash()
{ {
Super.AlignSelf();
if ( !bAMBUSH && (Scale.x > 1) ) numsplash = int(2*Scale.x)-1;
}
override void Tick()
{
Super.Tick();
if ( isFrozen() ) return;
Vector3 ofs = (cos(angle)*cos(pitch),sin(angle)*cos(pitch),-sin(pitch)); Vector3 ofs = (cos(angle)*cos(pitch),sin(angle)*cos(pitch),-sin(pitch));
for ( int i=0; i<2; i++ ) for ( int i=0; i<2; i++ )
{ {
@ -664,6 +657,18 @@ Class BioGlob : BioGel
d.vel.z -= 2; d.vel.z -= 2;
} }
} }
override void AlignSelf()
{
Super.AlignSelf();
if ( !bAMBUSH && (Scale.x > 1) ) numsplash = int(2*Scale.x)-1;
SpawnSplash();
}
override void Tick()
{
Super.Tick();
if ( isFrozen() ) return;
SpawnSplash();
}
} }
Class BioSplash : BioGel Class BioSplash : BioGel

View file

@ -467,6 +467,14 @@ Class UTRocketLauncher : UTWeapon
if ( invoker.LockedTarget ) invoker.LockedOn = true; if ( invoker.LockedTarget ) invoker.LockedOn = true;
} }
action bool FireCheck()
{
let weap = Weapon(invoker);
if ( !weap ) return false;
if ( weap.bAltFire ) return !(player.cmd.buttons&BT_ALTATTACK);
else return !(player.cmd.buttons&BT_ATTACK);
}
Default Default
{ {
Tag "$T_EIGHTBALL"; Tag "$T_EIGHTBALL";
@ -526,53 +534,53 @@ Class UTRocketLauncher : UTWeapon
AltFire: AltFire:
// one is loaded already // one is loaded already
EBLI A 1 A_LoadRocket(false); EBLI A 1 A_LoadRocket(false);
EBLI A 2 A_JumpIf((!invoker.bAltFire&&invoker.bSingleRocket)||(invoker.Ammo1.Amount<=0)||!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireOne"); EBLI A 2 A_JumpIf((!invoker.bAltFire&&invoker.bSingleRocket)||(invoker.Ammo1.Amount<=0)||FireCheck(),"FireOne");
EBLI A 0; // no tween EBLI A 0; // no tween
// load two // load two
EBR1 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1); EBR1 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1);
EBR1 ABCDEFG 2 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireOne"); EBR1 ABCDEFG 2 A_JumpIf(FireCheck(),"FireOne");
EBL2 A 0 A_PlaySound("utrl/load",CHAN_6); EBL2 A 0 A_PlaySound("utrl/load",CHAN_6);
EBL2 ABCDEFG 3 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireOne"); EBL2 ABCDEFG 3 A_JumpIf(FireCheck(),"FireOne");
EBR2 A 0 EBR2 A 0
{ {
A_LoadRocket(); A_LoadRocket();
return A_JumpIf((invoker.Ammo1.Amount<=0)||!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireTwo"); return A_JumpIf((invoker.Ammo1.Amount<=0)||FireCheck(),"FireTwo");
} }
// load three // load three
EBR2 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1); EBR2 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1);
EBR2 ABCDEFG 2 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireTwo"); EBR2 ABCDEFG 2 A_JumpIf(FireCheck(),"FireTwo");
EBL3 A 0 A_PlaySound("utrl/load",CHAN_6); EBL3 A 0 A_PlaySound("utrl/load",CHAN_6);
EBL3 ABCDEFG 3 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireTwo"); EBL3 ABCDEFG 3 A_JumpIf(FireCheck(),"FireTwo");
EBR3 A 0 EBR3 A 0
{ {
A_LoadRocket(); A_LoadRocket();
return A_JumpIf((invoker.Ammo1.Amount<=0)||!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireThree"); return A_JumpIf((invoker.Ammo1.Amount<=0)||FireCheck(),"FireThree");
} }
// load four // load four
EBR3 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1); EBR3 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1);
EBR3 ABCDEFG 2 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireThree"); EBR3 ABCDEFG 2 A_JumpIf(FireCheck(),"FireThree");
EBL4 A 0 A_PlaySound("utrl/load",CHAN_6); EBL4 A 0 A_PlaySound("utrl/load",CHAN_6);
EBL4 ABCDEFG 3 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireThree"); EBL4 ABCDEFG 3 A_JumpIf(FireCheck(),"FireThree");
EBR4 A 0 EBR4 A 0
{ {
A_LoadRocket(); A_LoadRocket();
return A_JumpIf((invoker.Ammo1.Amount<=0)||!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFour"); return A_JumpIf((invoker.Ammo1.Amount<=0)||FireCheck(),"FireFour");
} }
// load five // load five
EBR4 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1); EBR4 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1);
EBR4 ABCDEFG 2 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFour"); EBR4 ABCDEFG 2 A_JumpIf(FireCheck(),"FireFour");
EBL5 A 0 A_PlaySound("utrl/load",CHAN_6); EBL5 A 0 A_PlaySound("utrl/load",CHAN_6);
EBL5 ABCDEFG 3 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFour"); EBL5 ABCDEFG 3 A_JumpIf(FireCheck(),"FireFour");
EBR5 A 0 EBR5 A 0
{ {
A_LoadRocket(); A_LoadRocket();
return A_JumpIf((invoker.Ammo1.Amount<=0)||!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFive"); return A_JumpIf((invoker.Ammo1.Amount<=0)||FireCheck(),"FireFive");
} }
// load six // load six
EBR5 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1); EBR5 A 0 A_PlaySound("utrl/rotate",CHAN_6,0.1);
EBR5 ABCDEFG 2 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFive"); EBR5 ABCDEFG 2 A_JumpIf(FireCheck(),"FireFive");
EBL6 A 0 A_PlaySound("utrl/load",CHAN_6); EBL6 A 0 A_PlaySound("utrl/load",CHAN_6);
EBL6 ABCDEF 3 A_JumpIf(!(player.cmd.buttons&(BT_ATTACK|BT_ALTATTACK)),"FireFive"); EBL6 ABCDEF 3 A_JumpIf(FireCheck(),"FireFive");
EBL6 F 0 A_LoadRocket(); EBL6 F 0 A_LoadRocket();
Goto FireSix; Goto FireSix;
FireOne: FireOne:

View file

@ -248,7 +248,7 @@ Class Minigun : UTWeapon
A_Overlay(-9999,"FireDummy"); A_Overlay(-9999,"FireDummy");
} }
MGNF ABCDEFGHIJKLMNOPQRS 1 A_FireBullet(); MGNF ABCDEFGHIJKLMNOPQRS 1 A_FireBullet();
MGNF A 0 A_JumpIf(invoker.bAltFire,1); MGNF A 0 A_JumpIf(player.cmd.buttons&BT_ALTATTACK,1);
Goto Hold+1; Goto Hold+1;
AltHold: AltHold:
MGNF B 0 A_PlaySound("minigun/altfire",CHAN_WEAPON,1.0,true); MGNF B 0 A_PlaySound("minigun/altfire",CHAN_WEAPON,1.0,true);