move initial facing of missile onto AttackBase in prep for fixing 4tnk
This commit is contained in:
@@ -21,7 +21,7 @@ namespace OpenRa.Game.Effects
|
|||||||
int Altitude;
|
int Altitude;
|
||||||
|
|
||||||
public Missile(string weapon, Player owner, Actor firedBy,
|
public Missile(string weapon, Player owner, Actor firedBy,
|
||||||
int2 src, Actor target, int altitude)
|
int2 src, Actor target, int altitude, int facing)
|
||||||
{
|
{
|
||||||
Weapon = Rules.WeaponInfo[weapon];
|
Weapon = Rules.WeaponInfo[weapon];
|
||||||
Projectile = Rules.ProjectileInfo[Weapon.Projectile];
|
Projectile = Rules.ProjectileInfo[Weapon.Projectile];
|
||||||
@@ -31,9 +31,7 @@ namespace OpenRa.Game.Effects
|
|||||||
Target = target;
|
Target = target;
|
||||||
Pos = src.ToFloat2();
|
Pos = src.ToFloat2();
|
||||||
Altitude = altitude;
|
Altitude = altitude;
|
||||||
|
Facing = facing;
|
||||||
/* todo: initial facing should be turret facing, or unit facing if we're not turreted */
|
|
||||||
Facing = Traits.Util.GetFacing( Target.CenterLocation - src.ToFloat2(), 0 );
|
|
||||||
|
|
||||||
if (Projectile.Image != null && Projectile.Image != "none")
|
if (Projectile.Image != null && Projectile.Image != "none")
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -118,12 +118,15 @@ namespace OpenRa.Game.Traits
|
|||||||
var srcAltitude = unit != null ? unit.Altitude : 0;
|
var srcAltitude = unit != null ? unit.Altitude : 0;
|
||||||
var destAltitude = destUnit != null ? destUnit.Altitude : 0;
|
var destAltitude = destUnit != null ? destUnit.Altitude : 0;
|
||||||
|
|
||||||
|
var fireFacing = self.traits.Contains<Turreted>()
|
||||||
|
? self.traits.Get<Turreted>().turretFacing : unit.Facing;
|
||||||
|
|
||||||
if( weapon.RenderAsTesla )
|
if( weapon.RenderAsTesla )
|
||||||
Game.world.Add( new TeslaZap( firePos, thisTarget.CenterLocation.ToInt2() ) );
|
Game.world.Add( new TeslaZap( firePos, thisTarget.CenterLocation.ToInt2() ) );
|
||||||
|
|
||||||
if( Rules.ProjectileInfo[ weapon.Projectile ].ROT != 0 )
|
if( Rules.ProjectileInfo[ weapon.Projectile ].ROT != 0 )
|
||||||
Game.world.Add(new Missile(weaponName, self.Owner, self,
|
Game.world.Add(new Missile(weaponName, self.Owner, self,
|
||||||
firePos, thisTarget, srcAltitude));
|
firePos, thisTarget, srcAltitude, fireFacing));
|
||||||
else
|
else
|
||||||
Game.world.Add(new Bullet(weaponName, self.Owner, self,
|
Game.world.Add(new Bullet(weaponName, self.Owner, self,
|
||||||
firePos, thisTarget.CenterLocation.ToInt2(), srcAltitude, destAltitude));
|
firePos, thisTarget.CenterLocation.ToInt2(), srcAltitude, destAltitude));
|
||||||
|
|||||||
Reference in New Issue
Block a user