mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-14 08:31:23 +00:00
- fixed new A_Facetarget pitch code which made some incorrect assumptions about variables' signedness.
- fixed a few compiler warnings. SVN r3535 (trunk)
This commit is contained in:
parent
7443c3d167
commit
40c906f10d
2 changed files with 8 additions and 20 deletions
|
@ -2784,34 +2784,22 @@ void A_Face (AActor *self, AActor *other, angle_t max_turn, angle_t max_pitch)
|
||||||
double dist_z = self->target->z - self->z;
|
double dist_z = self->target->z - self->z;
|
||||||
double dist = sqrt(dist_x*dist_x + dist_y*dist_y + dist_z*dist_z);
|
double dist = sqrt(dist_x*dist_x + dist_y*dist_y + dist_z*dist_z);
|
||||||
|
|
||||||
angle_t other_pitch = rad2bam(asin(dist_z / dist));
|
int other_pitch = (int)rad2bam(asin(dist_z / dist));
|
||||||
|
|
||||||
if (max_pitch && (max_pitch < (angle_t)abs(self->pitch - other_pitch)))
|
if (max_pitch != 0)
|
||||||
{
|
{
|
||||||
if (self->pitch > other_pitch)
|
if (self->pitch > other_pitch)
|
||||||
{
|
{
|
||||||
if (self->pitch - other_pitch < ANGLE_180)
|
max_pitch = MIN(max_pitch, unsigned(self->pitch - other_pitch));
|
||||||
{
|
|
||||||
self->pitch -= max_pitch;
|
self->pitch -= max_pitch;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
max_pitch = MIN(max_pitch, unsigned(other_pitch - self->pitch));
|
||||||
self->pitch += max_pitch;
|
self->pitch += max_pitch;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
if (other_pitch - self->pitch < ANGLE_180)
|
|
||||||
{
|
|
||||||
self->pitch += max_pitch;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
self->pitch -= max_pitch;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
self->pitch = other_pitch;
|
self->pitch = other_pitch;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1428,7 +1428,7 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_RailAttack)
|
||||||
slope = pr_crailgun.Random2() * (Spread_Z / 255);
|
slope = pr_crailgun.Random2() * (Spread_Z / 255);
|
||||||
}
|
}
|
||||||
|
|
||||||
P_RailAttack (self, Damage, Spawnofs_XY, Color1, Color2, MaxDiff, (Flags & RAF_SILENT), PuffType, (!(Flags & RAF_NOPIERCE)), angle, slope, Range, (Flags & RAF_FULLBRIGHT), Duration, Sparsity, DriftSpeed, SpawnClass);
|
P_RailAttack (self, Damage, Spawnofs_XY, Color1, Color2, MaxDiff, !!(Flags & RAF_SILENT), PuffType, (!(Flags & RAF_NOPIERCE)), angle, slope, Range, !!(Flags & RAF_FULLBRIGHT), Duration, Sparsity, DriftSpeed, SpawnClass);
|
||||||
}
|
}
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
@ -1546,7 +1546,7 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_CustomRailgun)
|
||||||
slopeoffset = pr_crailgun.Random2() * (Spread_Z / 255);
|
slopeoffset = pr_crailgun.Random2() * (Spread_Z / 255);
|
||||||
}
|
}
|
||||||
|
|
||||||
P_RailAttack (self, Damage, Spawnofs_XY, Color1, Color2, MaxDiff, (Flags & RAF_SILENT), PuffType, (!(Flags & RAF_NOPIERCE)), angleoffset, slopeoffset, Range, (Flags & RAF_FULLBRIGHT), Duration, Sparsity, DriftSpeed, SpawnClass);
|
P_RailAttack (self, Damage, Spawnofs_XY, Color1, Color2, MaxDiff, !!(Flags & RAF_SILENT), PuffType, (!(Flags & RAF_NOPIERCE)), angleoffset, slopeoffset, Range, !!(Flags & RAF_FULLBRIGHT), Duration, Sparsity, DriftSpeed, SpawnClass);
|
||||||
|
|
||||||
self->x = saved_x;
|
self->x = saved_x;
|
||||||
self->y = saved_y;
|
self->y = saved_y;
|
||||||
|
|
Loading…
Reference in a new issue