1.2 update w/ GZDoom 4.9 features:
- Changeable player skins. - Ammo LEDs are now 1:1 with UT by using canvas textures. - Integrate some add-ons, including reskins. - Various fixes (some backported from Demolitionist). - Migrated from libeye to Gutamatics.
This commit is contained in:
parent
81ffca403d
commit
602a89cc68
1761 changed files with 4461 additions and 1597 deletions
|
|
@ -124,7 +124,7 @@ Class UTBloodSpurt : Actor
|
|||
d.SetShade(fillcolor);
|
||||
ang = angle+FRandom[Blood](-3,3)*str;
|
||||
pt = pitch+FRandom[Blood](-3,3)*str;
|
||||
Vector3 dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),-sin(pt));
|
||||
Vector3 dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
d.vel = dir*str*FRandom[Blood](0.4,0.8);
|
||||
d.vel.z += str*0.5;
|
||||
d.scale *= str*0.15*FRandom[Blood](0.6,1.4);
|
||||
|
|
@ -176,7 +176,7 @@ Class UTBloodTrail : Actor
|
|||
ang = FRandom[Blood](0,360);
|
||||
pt = FRandom[Blood](-90,90);
|
||||
Vector3 dir = -target.vel*0.2;
|
||||
dir += (cos(ang)*cos(pt),sin(ang)*cos(pt),-sin(pt))*0.8;
|
||||
dir += dt_Utility.Vec3FromAngle(ang,pt)*0.8;
|
||||
d.vel = dir*str*FRandom[Blood](0.8,1.2);
|
||||
d.scale *= str*0.15*FRandom[Blood](0.6,1.4);
|
||||
}
|
||||
|
|
@ -246,7 +246,7 @@ Class UTGibber : Actor
|
|||
a.scale *= FRandom[Blod](1.7,2.3)*scale.x;
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.6+dir*FRandom[Blod](3.0,6.0);
|
||||
}
|
||||
for ( int i=0; i<gibsize; i++ )
|
||||
|
|
@ -257,7 +257,7 @@ Class UTGibber : Actor
|
|||
a.scale *= FRandom[Blod](1.8,2.3)*scale.x;
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.2+dir*FRandom[Blod](1.5,3.0);
|
||||
}
|
||||
A_CountDown();
|
||||
|
|
@ -307,20 +307,23 @@ Class UTFemaleLegGibber : UTGibber
|
|||
firstgib = true;
|
||||
for ( int i=0; i<2; i++ )
|
||||
{
|
||||
Actor a = Spawn(parts[i],Vec3Offset(-partofsy[i]*sin(angle),partofsy[i]*cos(angle),partofsz[i]));
|
||||
Vector3 pofs = (0,partofsy[i],partofsz[i]);
|
||||
pofs.xy = RotateVector(pofs.xy,angle);
|
||||
Actor a = Spawn(parts[i],level.Vec3Offset(pos,pofs));
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.6+dir*FRandom[Blod](3.0,6.0);
|
||||
}
|
||||
}
|
||||
for ( int i=0; i<gibsize; i++ )
|
||||
{
|
||||
Vector3 box = (FRandom[Blod](-8,8),FRandom[Blod](7,12),FRandom[Blod](5,18));
|
||||
let a = Spawn("UTBloodPuff",Vec3Offset(box.x*cos(angle)-box.y*sin(angle),box.x*sin(angle)+box.y*cos(angle),box.z));
|
||||
box.xy = RotateVector(box.xy,angle);
|
||||
let a = Spawn("UTBloodPuff",level.Vec3Offset(pos,box));
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.2+dir*FRandom[Blod](1.5,3.0);
|
||||
}
|
||||
A_CountDown();
|
||||
|
|
@ -393,15 +396,17 @@ Class UTPlayerGibber : UTGibber
|
|||
if ( ((i == 3) || (i == 7)) && UTPlayer(Gibbed).leglessL ) continue;
|
||||
if ( ((i == 4) || (i > 7)) && UTPlayer(Gibbed).torsoless ) continue;
|
||||
Actor a;
|
||||
Vector3 pofs = (0,partofsy[i],partofsz[i]);
|
||||
pofs.xy = RotateVector(pofs.xy,angle);
|
||||
if ( i < 6 )
|
||||
{
|
||||
if ( UTPlayer(Gibbed).DollType == UTPlayer.DOLL_Boss )
|
||||
a = Spawn(bossparts[i],Vec3Offset(-partofsy[i]*sin(angle),partofsy[i]*cos(angle),partofsz[i]));
|
||||
a = Spawn(bossparts[i],level.Vec3Offset(pos,pofs));
|
||||
else if ( UTPlayer(Gibbed).DollType == UTPlayer.DOLL_Female )
|
||||
a = Spawn(femaleparts[i],Vec3Offset(-partofsy[i]*sin(angle),partofsy[i]*cos(angle),partofsz[i]));
|
||||
else a = Spawn(maleparts[i],Vec3Offset(-partofsy[i]*sin(angle),partofsy[i]*cos(angle),partofsz[i]));
|
||||
a = Spawn(femaleparts[i],level.Vec3Offset(pos,pofs));
|
||||
else a = Spawn(maleparts[i],level.Vec3Offset(pos,pofs));
|
||||
}
|
||||
else a = Spawn(extraparts[i-6],Vec3Offset(-partofsy[i]*sin(angle),partofsy[i]*cos(angle),partofsz[i]));
|
||||
else a = Spawn(extraparts[i-6],level.Vec3Offset(pos,pofs));
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
if ( a is 'UTHead' )
|
||||
|
|
@ -413,7 +418,7 @@ Class UTPlayerGibber : UTGibber
|
|||
UTHead(a).headowner = UTPlayer(Gibbed).player;
|
||||
}
|
||||
}
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.6+dir*FRandom[Blod](3.0,6.0);
|
||||
}
|
||||
}
|
||||
|
|
@ -422,7 +427,7 @@ Class UTPlayerGibber : UTGibber
|
|||
let a = Spawn("UTBloodPuff",Vec3Offset(FRandom[Blod](-0.8,0.8)*radius,FRandom[Blod](-0.8,0.8)*radius,FRandom[Blod](0.1,0.9)*height));
|
||||
ang = FRandom[Blod](0,360);
|
||||
pt = FRandom[Blod](-90,90);
|
||||
dir = (cos(pt)*cos(ang),cos(pt)*sin(ang),sin(-pt));
|
||||
dir = dt_Utility.Vec3FromAngle(ang,pt);
|
||||
a.vel = rvel*0.2+dir*FRandom[Blod](1.5,3.0);
|
||||
}
|
||||
A_CountDown();
|
||||
|
|
@ -505,7 +510,7 @@ Class UTGib : Actor
|
|||
ang = FRandom[Blood](0,360);
|
||||
pt = FRandom[Blood](-90,90);
|
||||
Vector3 dir = -vel*0.4;
|
||||
dir += (cos(ang)*cos(pt),sin(ang)*cos(pt),-sin(pt))*1.3;
|
||||
dir += dt_Utility.Vec3FromAngle(ang,pt)*1.3;
|
||||
d.vel = dir*FRandom[Blood](0.8,1.2);
|
||||
d.scale *= 0.75*FRandom[Blood](0.6,1.4);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue