- use mapspawned flag in all already scriptified code.

This is more to clarify intent than to fix things, none of the changes here should change behavior.
This commit is contained in:
Christoph Oelckers 2022-12-13 11:29:37 +01:00
parent 13e6718153
commit 37067753fc
16 changed files with 23 additions and 23 deletions

View file

@ -12,7 +12,7 @@ class DukeBloodSplat1 : DukeActor
self.scale.X = 0.109375 + random(0, 7) * REPEAT_SCALE;
self.scale.Y = 0.109375 + random(0, 7) * REPEAT_SCALE;
self.pos.Z -= 16;
if (self.ownerActor && self.ownerActor.pal == 6)
if (!self.mapSpawned && self.ownerActor && self.ownerActor.pal == 6)
self.pal = 6;
self.insertspriteq();
}

View file

@ -11,7 +11,7 @@ class DukeCanWithSomething : DukeActor
override void Initialize()
{
if (self.ownerActor != self)
if (!self.mapSpawned)
self.scale = (0.5, 0.5);
self.makeitfall();
self.cstat = CSTAT_SPRITE_BLOCK_ALL | randomXFlip();

View file

@ -74,7 +74,7 @@ class DukeFootprints : DukeActor
override void Initialize()
{
if (self != self.ownerActor)
if (!self.mapSpawned)
{
bool away = self.isAwayFromWall(5.25);
if (!away)

View file

@ -8,7 +8,7 @@ class DukeForceSphere : DukeActor
override void Initialize()
{
if (ownerActor == self)
if (self.mapSpawned)
{
self.cstat = CSTAT_SPRITE_INVISIBLE;
self.ChangeStat(STAT_ZOMBIEACTOR);

View file

@ -9,7 +9,7 @@ class DukeFrameEffect : DukeActor
override void Initialize()
{
if (self != self.ownerActor)
if (!self.mapSpawned && self.ownerActor)
{
self.scale = self.ownerActor.scale;
}
@ -41,7 +41,7 @@ class DukeFrameEffect : DukeActor
override bool animate(tspritetype t)
{
let OwnerAc = self.ownerActor;
if (OwnerAc && OwnerAc.statnum < MAXSTATUS)
if (OwnerAc)
{
if (OwnerAc.isPlayer())
if (ud.cameraactor == nullptr)

View file

@ -11,7 +11,7 @@ class DukePipeBomb : DukeActor
override void Initialize()
{
// This is only for placed items, not for armed weapons!
if (self.ownerActor == self)
if (self.mapSpawned)
{
self.extra = gs.impact_damage;
self.cstat |= CSTAT_SPRITE_BLOCK_ALL; // Make it hitable
@ -197,9 +197,9 @@ class DukePipeBomb : DukeActor
p.pals = Color(32, 0, 32, 0);
}
if (Owner != self || ud.respawn_items == 0)
if (!self.mapSpawned || ud.respawn_items == 0)
{
if (Owner == self && ud.coop >= 1)
if (self.mapSpawned && ud.coop >= 1)
return false;
self.Destroy();

View file

@ -15,7 +15,6 @@ class DukeMortar : DukeActor
void Common(int itemmode)
{
let Owner = self.ownerActor;
let sectp = self.sector;
DukePlayer p;
double xx;
@ -160,7 +159,7 @@ class DukeBounceMine : DukeMortar
{
// This is only for placed items, not for armed weapons!
// Although this can be shot, it doesn't really work for that.
if (self.ownerActor == self)
if (self.mapSpawned)
{
self.ownerActor = self;
self.extra = gs.impact_damage << 2;

View file

@ -11,7 +11,7 @@ class DukeOoz : DukeActor
{
self.shade = -12;
if (self.ownerActor && self.OwnerActor != self)
if (!self.mapSpawned)
{
if (self.actorflag2(SFLAG2_PAL8OOZ))
self.pal = 8;

View file

@ -12,7 +12,7 @@ class DukeRat : DukeActor
override void Initialize()
{
if (ownerActor) self.lotag = 0;
if (!self.mapSpawned) self.lotag = 0;
if ((self.lotag > ud.player_skill) || ud.monsters_off == 1)
{
@ -25,7 +25,7 @@ class DukeRat : DukeActor
self.angle = frandom(0, 360);
self.cstat = 0;
if (self.ownerActor)
if (!self.mapSpawned && self.ownerActor)
{
self.timetosleep = 0;
self.ChangeStat(STAT_ACTOR);

View file

@ -156,7 +156,7 @@ class DukeRecon : DukeActor
self.angle += deltaangle(self.angle, (pactor.pos.XY - self.pos.XY).Angle()) * 0.25;
}
if (self.temp_data[0] != 2 && self.temp_data[0] != 3 && Owner)
if (self.temp_data[0] != 2 && self.temp_data[0] != 3 && Owner && Owner != self)
{
double dist = (Owner.pos.XY - self.pos.XY).Length();
if (dist <= 96)

View file

@ -11,7 +11,7 @@ class DukeRespawnMarker : DukeActor
override void Initialize()
{
if (ownerActor != self) self.pos.Z = ownerActor.floorZ;
if (!self.mapSpawned && ownerActor != null) self.pos.Z = ownerActor.floorZ;
}
override void Tick()

View file

@ -11,7 +11,7 @@ class DukeShell : DukeActor
void initshell(bool isshell, double direction)
{
let Owner = self.OwnerActor;
if (Owner && Owner != self)
if (Owner && !self.mapSpawned)
{
double ang;

View file

@ -9,7 +9,8 @@ class DukeTongue : DukeActor
override void Initialize()
{
self.angle = self.ownerActor.angle;
if (self.ownerActor && !self.mapSpawned)
self.angle = self.ownerActor.angle;
self.pos.Z -= gs.playerheight;
self.vel.Z = 1 - frandom(0, 2);
self.vel.X = 4 - frandom(0, 8);

View file

@ -11,7 +11,7 @@ class DukeWaterDrip : DukeActor
override void Initialize()
{
let owner = self.ownerActor;
if (owner && (owner.statnum == STAT_PLAYER || owner.statnum == STAT_ACTOR))
if (!self.mapSpawned && owner && (owner.statnum == STAT_PLAYER || owner.statnum == STAT_ACTOR))
{
self.shade = 32;
if (owner.pal != 1)
@ -53,7 +53,7 @@ class DukeWaterDrip : DukeActor
if (self.pal != 2 && (self.hitag == 0 || Raze.isRR()))
self.PlayActorSound("SOMETHING_DRIPPING");
if (self.ownerActor != self)
if (!self.mapSpawned)
{
self.Destroy();
}

View file

@ -11,7 +11,7 @@ class DukeWatersplash : DukeActor
{
let Owner = self.ownerActor;
let sectp = self.sector;
if (Owner)
if (Owner && !self.mapSpawned)
{
self.SetPosition(Owner.pos);
double s = 0.125 + random(0, 7) * REPEAT_SCALE;

View file

@ -230,7 +230,7 @@ class DukeActor : CoreActor native
void commonEnemySetup(bool countkill = true)
{
if (self.ownerActor != self) self.lotag = 0;
if (!self.mapSpawned) self.lotag = 0;
if ((self.lotag > ud.player_skill) || ud.monsters_off == 1)
{
@ -245,7 +245,7 @@ class DukeActor : CoreActor native
if (countkill)
Duke.GetLocalPlayer().max_actors_killed++;
if (self.ownerActor != self)
if (!self.mapSpawned)
{
self.timetosleep = 0;
self.PlayFTASound();