Merge branch 'master' into hitowner

This commit is contained in:
Marisa the Magician 2018-08-18 00:04:30 +02:00
commit 82a6ae08ce
7 changed files with 36 additions and 22 deletions

View file

@ -47,7 +47,7 @@ This mod requires GZDoom 3.5.0 or later.
## In progress
- General polishing and bugfixing
- General polishing, bugfixing and rebalancing
- Add some more effects
- Visual recoil affecting aim (time to recycle SM's A_Swing once again)
- Lava/Slime footstep sounds?
@ -65,6 +65,7 @@ This mod requires GZDoom 3.5.0 or later.
scripted textures are implemented.
- Add player models + weapon attachment support when that is also added in.
- Add option to have UT-like player movement physics.
- Migrate RandomSpawners to CheckReplacement.
## Known bugs

View file

@ -412,8 +412,8 @@ Class BioGel : Actor
s.args[3] = int(s.args[3]*Scale.x);
invoker.deadtimer = -2;
if ( invoker.atline ) invoker.atline.RemoteActivate(target,invoker.atside,SPAC_Impact,pos);
UTMainHandler.DoBlast(self,Min(150,int(Scale.x*25)),20000*Scale.x);
A_Explode(int(Random[GES](18,22)*max(1,(Scale.x-1)**2)),Min(150,int(Scale.x*25)));
UTMainHandler.DoBlast(self,Min(250,int(Scale.x*75)),20000*Scale.x);
A_Explode(int(Random[GES](18,26)*Scale.x),Min(250,int(Scale.x*75)));
A_PlaySound("ges/explode",CHAN_VOICE);
int numpt = Min(300,int(Scale.x*30))+Random[GES](-10,10);
for ( int i=0; i<numpt; i++ )

View file

@ -123,16 +123,16 @@ Class UTRocket : Actor
l.target = self;
A_PlaySound("utrl/fly",CHAN_VOICE,1.0,true,2.5);
}
action void A_RocketExplode( int dmg )
action void A_RocketExplode( int dmg, int rad )
{
bFORCEXYBILLBOARD = true;
A_SetRenderStyle(1.0,STYLE_Add);
A_SprayDecal("RocketBlast",150);
A_NoGravity();
A_SetScale(0.75);
UTMainHandler.DoBlast(self,100,80000);
A_Explode(dmg,100);
A_QuakeEx(3,3,3,8,0,250,"",QF_RELATIVE|QF_SCALEDOWN,falloff:100,rollIntensity:0.2);
UTMainHandler.DoBlast(self,rad,80000);
A_Explode(dmg,rad);
A_QuakeEx(3,3,3,8,0,rad+50,"",QF_RELATIVE|QF_SCALEDOWN,falloff:rad,rollIntensity:0.2);
A_PlaySound("utrl/explode",CHAN_VOICE);
A_AlertMonsters();
Spawn("RocketExplLight",pos);
@ -179,7 +179,7 @@ Class UTRocket : Actor
}
Wait;
Death:
TNT1 A 0 A_RocketExplode(Random[Eightball](90,115));
TNT1 A 0 A_RocketExplode(Random[Eightball](90,120),220);
SSMX ABCDEFGHIJ 2 Bright;
Stop;
}
@ -233,7 +233,7 @@ Class UTGrenade : UTRocket
}
Goto Spawn;
Death:
TNT1 A 0 A_RocketExplode(Random[Eightball](90,120));
TNT1 A 0 A_RocketExplode(Random[Eightball](100,150),200);
Goto Super::Death+1;
}
}

View file

@ -386,9 +386,9 @@ Class FlakSlug : Actor
A_SprayDecal("RocketBlast",150);
A_NoGravity();
A_SetScale(1.2);
UTMainHandler.DoBlast(self,80,75000);
A_Explode(Random[Flak](70,80),80);
A_QuakeEx(4,4,4,8,0,200,"",QF_RELATIVE|QF_SCALEDOWN,falloff:80,rollIntensity:0.2);
UTMainHandler.DoBlast(self,150,75000);
A_Explode(Random[Flak](70,80),150);
A_QuakeEx(4,4,4,8,0,250,"",QF_RELATIVE|QF_SCALEDOWN,falloff:150,rollIntensity:0.2);
A_PlaySound("flak/explode",CHAN_VOICE);
A_AlertMonsters();
if ( !Tracer ) Spawn("SlugSmoke",pos);

View file

@ -58,6 +58,7 @@ Class DamageAmplifier : Powerup
l = Spawn("DamageAmpLight",Owner.pos);
l.target = Owner;
l.master = self;
if ( deathmatch ) EffectTics /= 2;
}
override void DoEffect()

View file

@ -186,8 +186,6 @@ Class Razor2Alt : Razor2
{
Default
{
DamageFunction 0;
DamageType 'RipperAltDealth';
BounceType "None";
-CANBOUNCEWATER;
+EXPLODEONWATER;
@ -205,7 +203,7 @@ Class Razor2Alt : Razor2
A_AlertMonsters();
A_SprayDecal("RazorBlast",20);
UTMainHandler.DoBlast(self,120,87000);
A_Explode(Random[Ripper](30,50),120);
A_Explode(Random[Ripper](30,50),180,damagetype:'RipperAltDeath');
A_QuakeEx(3,3,3,10,0,180,"",QF_RELATIVE|QF_SCALEDOWN,falloff:120,rollIntensity:0.1);
int numpt = Random[Ripper](10,20);
Vector3 x = (cos(angle)*cos(pitch),sin(angle)*cos(pitch),-sin(pitch));

View file

@ -336,10 +336,10 @@ Class ShockBeam : Actor
{
if ( target ) target.TakeInventory('ShockAmmo',2);
let b = t.Results.HitActor.target;
UTMainHandler.DoBlast(b,300,70000);
UTMainHandler.DoBlast(b,250,70000);
b.ExplodeMissile(null,self);
b.A_Explode(Random[ASMD](150,160),300);
b.A_QuakeEx(6,6,6,60,0,1200,"",QF_RELATIVE|QF_SCALEDOWN,falloff:300,rollIntensity:0.2);
b.A_Explode(Random[ASMD](150,180),250);
b.A_QuakeEx(6,6,6,60,0,1200,"",QF_RELATIVE|QF_SCALEDOWN,falloff:250,rollIntensity:0.2);
b.A_SprayDecal("BigShockMark1",100);
b.A_SprayDecal("BigShockMark2",100);
Spawn("ShockRifleWave",b.pos);
@ -829,7 +829,7 @@ Class ShockBall : Actor
action void A_BallExplode()
{
UTMainHandler.DoBlast(self,70,70000);
A_Explode(Random[ASMD](40,50),70);
A_Explode(Random[ASMD](50,60),70);
A_SprayDecal("ShockMarkBig",16);
Spawn("ShockExplLight",pos);
A_SetScale(1.0);
@ -1115,6 +1115,15 @@ Class EnhancedShockAmmo : Ammo
{
int ticcnt;
override void PostBeginPlay()
{
Super.PostBeginPlay();
if ( deathmatch )
{
MaxAmount /= 2;
BackpackMaxAmount /= 2;
}
}
override void Tick()
{
Super.Tick();
@ -1129,9 +1138,9 @@ Class EnhancedShockAmmo : Ammo
Tag "Enhanced Shock Core";
Inventory.PickupMessage "You picked up an Enhanced Shock Core.";
Inventory.Amount 5;
Inventory.MaxAmount 25;
Inventory.MaxAmount 50;
Ammo.BackpackAmount 0;
Ammo.BackpackMaxAmount 25;
Ammo.BackpackMaxAmount 50;
Ammo.DropAmount 2;
}
States
@ -1155,6 +1164,11 @@ Class ViewSuperShockSpark : ViewShockSpark
Class EnhancedShockRifle : UTWeapon replaces InvulnerabilitySphere
{
override void PostBeginPlay()
{
Super.PostBeginPlay();
if ( deathmatch ) AmmoGive1 /= 2;
}
action void A_SShockFire()
{
Weapon weap = Weapon(invoker);
@ -1247,7 +1261,7 @@ Class EnhancedShockRifle : UTWeapon replaces InvulnerabilitySphere
Weapon.AmmoUse 1;
Weapon.AmmoType2 "EnhancedShockAmmo";
Weapon.AmmoUse2 1;
Weapon.AmmoGive 25;
Weapon.AmmoGive 50;
UTWeapon.DropAmmo 5;
+WEAPON.AMMO_OPTIONAL;
+WEAPON.ALT_AMMO_OPTIONAL;