Oh boy, here comes another big one.
Notable changes since last commit are the full implementation of the automag and asmd. Also the Translator is now fully functional. Fonts have been restructured to a neater format. There have also been other random changes I don't have the time to document in detail.
This commit is contained in:
parent
e5f57e16e1
commit
01249eb43f
1892 changed files with 5151 additions and 416 deletions
|
|
@ -39,6 +39,16 @@ Class StingerAmmo2 : StingerAmmo
|
|||
}
|
||||
}
|
||||
|
||||
Class StingerBurstLight : PaletteLight
|
||||
{
|
||||
Default
|
||||
{
|
||||
Tag "Blue3";
|
||||
Args 0,0,0,30;
|
||||
ReactionTime 10;
|
||||
}
|
||||
}
|
||||
|
||||
Class StingerProjectile : Actor
|
||||
{
|
||||
Default
|
||||
|
|
@ -74,6 +84,7 @@ Class StingerProjectile : Actor
|
|||
if ( !Random[Stinger](0,2) ) A_PlaySound("stinger/hit2",CHAN_BODY,0.5,pitch:FRandom[Stinger](0.5,1.5));
|
||||
else A_PlaySound("stinger/hit",CHAN_BODY,0.6);
|
||||
A_AlertMonsters();
|
||||
Spawn("StingerBurstLight",pos);
|
||||
}
|
||||
TPRJ BCDEFG 2 Bright;
|
||||
Stop;
|
||||
|
|
@ -83,8 +94,18 @@ Class StingerProjectile : Actor
|
|||
}
|
||||
}
|
||||
|
||||
Class Stinger : UTWeapon
|
||||
Class StingerLight : EnforcerLight
|
||||
{
|
||||
Default
|
||||
{
|
||||
args 64,128,255,80;
|
||||
}
|
||||
}
|
||||
|
||||
Class Stinger : UnrealWeapon
|
||||
{
|
||||
int flashnum;
|
||||
|
||||
Default
|
||||
{
|
||||
Tag "$T_STINGER";
|
||||
|
|
@ -99,10 +120,6 @@ Class Stinger : UTWeapon
|
|||
Weapon.AmmoGive 40;
|
||||
UTWeapon.DropAmmo 20;
|
||||
}
|
||||
override void PlayUpSound( Actor origin )
|
||||
{
|
||||
origin.A_PlaySound(upsound,CHAN_WEAPON,Dampener.Active(origin)?.1:1.);
|
||||
}
|
||||
action void A_StingerFire( bool hold = false )
|
||||
{
|
||||
Weapon weap = Weapon(invoker);
|
||||
|
|
@ -121,13 +138,14 @@ Class Stinger : UTWeapon
|
|||
}
|
||||
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
|
||||
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
|
||||
invoker.FireEffect();
|
||||
UTMainHandler.DoFlash(self,Color(16,0,64,255),1);
|
||||
UTMainHandler.DoSwing(self,(FRandom[Stinger](-0.1,-0.2),FRandom[Stinger](-0.1,0.1)),4,-1.5,2,SWING_Spring,2,2);
|
||||
if ( !Dampener.Active(self) ) A_AlertMonsters();
|
||||
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_Matrix4.GetAxes(pitch,angle,roll);
|
||||
Vector3 origin = (pos.x,pos.y,player.viewz)+10.0*x+8.0*y-9.0*z;
|
||||
Vector3 origin = (pos.x,pos.y,player.viewz)+5.0*x+8.0*y-8.0*z;
|
||||
Actor p = Spawn("StingerProjectile",origin);
|
||||
p.angle = angle;
|
||||
p.pitch = BulletSlope();
|
||||
|
|
@ -143,13 +161,14 @@ Class Stinger : UTWeapon
|
|||
A_Overlay(PSP_FLASH,"MFlash");
|
||||
A_OverlayFlags(PSP_FLASH,PSPF_RenderStyle,true);
|
||||
A_OverlayRenderstyle(PSP_FLASH,STYLE_Add);
|
||||
invoker.FireEffect();
|
||||
UTMainHandler.DoFlash(self,Color(16,0,64,255),1);
|
||||
UTMainHandler.DoSwing(self,(FRandom[Stinger](-0.3,-0.8),FRandom[Stinger](-0.4,0.4)),4,-1,3,SWING_Spring,3,5);
|
||||
if ( !Dampener.Active(self) ) A_AlertMonsters();
|
||||
A_QuakeEx(1,1,1,4,0,1,"",QF_RELATIVE|QF_SCALEDOWN,rollIntensity:0.1);
|
||||
Vector3 x, y, z;
|
||||
[x, y, z] = dt_Matrix4.GetAxes(pitch,angle,roll);
|
||||
Vector3 origin = (pos.x,pos.y,player.viewz)+10.0*x+8.0*y-9.0*z;
|
||||
Vector3 origin = (pos.x,pos.y,player.viewz)+5.0*x+8.0*y-8.0*z;
|
||||
[x, y, z] = dt_Matrix4.GetAxes(BulletSlope(),angle,roll);
|
||||
Actor p;
|
||||
double a, s;
|
||||
|
|
@ -193,7 +212,11 @@ Class Stinger : UTWeapon
|
|||
STNI A 3;
|
||||
STNI A 0 A_Refire(1);
|
||||
Goto Idle;
|
||||
STNI A 0 A_PlaySound("stinger/hold",CHAN_WEAPON,Dampener.Active(self)?.1:1.,true);
|
||||
STNI A 0
|
||||
{
|
||||
A_PlaySound("stinger/hold",CHAN_WEAPON,Dampener.Active(self)?.1:1.,true);
|
||||
invoker.flashnum = Random[Stinger](0,3);
|
||||
}
|
||||
Hold:
|
||||
STNH A 1
|
||||
{
|
||||
|
|
@ -201,6 +224,7 @@ Class Stinger : UTWeapon
|
|||
if ( self is 'UPlayer' )
|
||||
UPlayer(self).PlayAttacking();
|
||||
A_StingerFire(true);
|
||||
invoker.flashnum = (invoker.flashnum+1)%4;
|
||||
}
|
||||
STNH BCDEFG 1;
|
||||
STNH A 0 A_Refire();
|
||||
|
|
@ -212,14 +236,51 @@ Class Stinger : UTWeapon
|
|||
STNI A 35; // yes, 1 second cooldown
|
||||
Goto Idle;
|
||||
Deselect:
|
||||
STND ABCDEFGHIJK 1;
|
||||
STND ACEGIK 1;
|
||||
STND K 1 A_Lower(int.max);
|
||||
Wait;
|
||||
MFlash:
|
||||
STFF A 2 Bright
|
||||
{
|
||||
let l = Spawn("StingerLight",pos);
|
||||
l.target = self;
|
||||
}
|
||||
Stop;
|
||||
MFlashHold:
|
||||
TNT1 A 0 A_JumpIf(invoker.flashnum==0,7);
|
||||
TNT1 A 0 A_JumpIf(invoker.flashnum==1,4);
|
||||
TNT1 A 0 A_JumpIf(invoker.flashnum==2,4);
|
||||
TNT1 A 0 A_JumpIf(invoker.flashnum==3,1);
|
||||
Stop;
|
||||
STFF A 2 Bright
|
||||
{
|
||||
let l = Spawn("StingerLight",pos);
|
||||
l.target = self;
|
||||
}
|
||||
Stop;
|
||||
STFF B 2 Bright
|
||||
{
|
||||
let l = Spawn("StingerLight",pos);
|
||||
l.target = self;
|
||||
}
|
||||
Stop;
|
||||
STFF C 2 Bright
|
||||
{
|
||||
let l = Spawn("StingerLight",pos);
|
||||
l.target = self;
|
||||
}
|
||||
Stop;
|
||||
STFF D 2 Bright
|
||||
{
|
||||
let l = Spawn("StingerLight",pos);
|
||||
l.target = self;
|
||||
}
|
||||
Stop;
|
||||
/*MFlash:
|
||||
STFF ABC 2 Bright;
|
||||
Stop;
|
||||
MFlashHold:
|
||||
STFH ABCDEFG 1 Bright;
|
||||
Stop;
|
||||
Stop;*/
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue