- Fixed: A_SorcOffense2 depended on args being bytes and overflowing.
- Fixed: Even though P_DamageMobj checked an attack's originator for MF2_NODMGTHRUST the same check was missing from P_RadiusAttack. - Fixed: A_MinotaurRoam should not assume without check that it was called by a MinotaurFriend. - Fixed: The Minotaur declared A_MntrFloorFire which it did not use. - Fixed: All Spawnspot functions did not check for a spot tid of 0 as the script's activator. - Fixed: Friendly monsters ignored team association of their owning players. SVN r1770 (trunk)
This commit is contained in:
parent
a5ec361715
commit
385350efae
9 changed files with 83 additions and 48 deletions
|
|
@ -2276,26 +2276,42 @@ int DLevelScript::DoSpawn (int type, fixed_t x, fixed_t y, fixed_t z, int tid, i
|
|||
|
||||
int DLevelScript::DoSpawnSpot (int type, int spot, int tid, int angle, bool force)
|
||||
{
|
||||
FActorIterator iterator (spot);
|
||||
AActor *aspot;
|
||||
int spawned = 0;
|
||||
|
||||
while ( (aspot = iterator.Next ()) )
|
||||
if (spot != 0)
|
||||
{
|
||||
spawned += DoSpawn (type, aspot->x, aspot->y, aspot->z, tid, angle, force);
|
||||
FActorIterator iterator (spot);
|
||||
AActor *aspot;
|
||||
|
||||
while ( (aspot = iterator.Next ()) )
|
||||
{
|
||||
spawned += DoSpawn (type, aspot->x, aspot->y, aspot->z, tid, angle, force);
|
||||
}
|
||||
}
|
||||
else if (activator != NULL)
|
||||
{
|
||||
spawned += DoSpawn (type, activator->x, activator->y, activator->z, tid, angle, force);
|
||||
}
|
||||
return spawned;
|
||||
}
|
||||
|
||||
int DLevelScript::DoSpawnSpotFacing (int type, int spot, int tid, bool force)
|
||||
{
|
||||
FActorIterator iterator (spot);
|
||||
AActor *aspot;
|
||||
int spawned = 0;
|
||||
|
||||
while ( (aspot = iterator.Next ()) )
|
||||
if (spot != 0)
|
||||
{
|
||||
spawned += DoSpawn (type, aspot->x, aspot->y, aspot->z, tid, aspot->angle >> 24, force);
|
||||
FActorIterator iterator (spot);
|
||||
AActor *aspot;
|
||||
|
||||
while ( (aspot = iterator.Next ()) )
|
||||
{
|
||||
spawned += DoSpawn (type, aspot->x, aspot->y, aspot->z, tid, aspot->angle >> 24, force);
|
||||
}
|
||||
}
|
||||
else if (activator != NULL)
|
||||
{
|
||||
spawned += DoSpawn (type, activator->x, activator->y, activator->z, tid, activator->angle >> 24, force);
|
||||
}
|
||||
return spawned;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue