ActorMover can't make an actor non-solid

Forum rules
Please don't bump threads here if you have a problem - it will often be forgotten about if you do. Instead, make a new thread here.

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: ActorMover can't make an actor non-solid

Re: ActorMover can't make an actor non-solid

by drfrag » Fri Dec 24, 2021 10:52 am

No big deal, i didn't catch it either. It was an inconvenience for the ZZDoom release, i could have moved the tag but being myself i had to do a hard reset. xD

Re: ActorMover can't make an actor non-solid

by Fishytza » Fri Dec 24, 2021 9:49 am

Apologies for the inconvenience.
I should have caught the whole thing in the OP but didn't notice it until later.

Thanks again.

Re: ActorMover can't make an actor non-solid

by drfrag » Fri Dec 24, 2021 9:11 am

Re: ActorMover can't make an actor non-solid

by drfrag » Fri Dec 24, 2021 8:54 am

I fixed what you reported and the test wad works.

Re: ActorMover can't make an actor non-solid

by Fishytza » Fri Dec 24, 2021 7:55 am

Thank you kindly!
Although the fix is incomplete.

Other flags that are being changed is bNoGravity here
And bInvulnerable and bDormant here

The whole issue seems to be contained in the Activate() override which is pretty short.
Just to compare (again), here's ZDoom's version of ActorMover's Activate()

Re: ActorMover can't make an actor non-solid

by drfrag » Thu Dec 23, 2021 12:32 pm

Re: ActorMover can't make an actor non-solid

by Fishytza » Wed Dec 08, 2021 1:52 am

Not sure if this is relevant, but yes, apparently ZDoom's version did actually change the tracer's flags. So it's definitely broken.
https://github.com/rheit/zdoom/blob/mas ... a.cpp#L542

ActorMover can't make an actor non-solid

by Fishytza » Sat Nov 27, 2021 2:41 pm

According to this here [wiki]Classes:ActorMover[/wiki]
128: If the thing being moved is normally solid, make it nonsolid so that it can't be blocked.
However I have found out that's actually not the case.
According to this it seems the ActorMover is changing its own flags instead of its tracer's flags. Seems like a typo?
https://github.com/coelckers/gzdoom/blo ... ra.zs#L492
actormover-nonsolidtest.wad
Replaces MAP01. Load with Doom 2.
(2.63 KiB) Downloaded 58 times
Have a test map, the moving green pillar is supposed to be non-solid, but you can stand in its way and it'll be blocked.
The ActorMover is using the 128 bit.

EDIT: Actually, any flag changes it's supposed to do are done on itself and not the tracer, regardless if 128 is used or not.
This seems wrong?

Top