A_RaiseDead(actor corpse, int flags)

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: A_RaiseDead(actor corpse, int flags)

Re: A_RaiseDead(actor corpse, int flags)

by Graf Zahl » Sun Jul 28, 2019 11:28 am

Rachael wrote: That is - if Graf is okay with that idea.
Please stop thinking like that.

Re: A_RaiseDead(actor corpse, int flags)

by Rachael » Sun Jul 28, 2019 11:11 am

It's really hacky. I think a far better way to do player resurrection would've been to just call G_DoReborn with the flags allowing the player to spawn in the same spot, instead of the way it currently operates. G_DoReborn gives the player a fresh new body and leaves their old one behind as decoration.

In fact, it wouldn't be much trouble probably to split off the body creation and reassignment to a new function which could be exposed to the console, and possibly to ACS and ZScript. That is - if Graf is okay with that idea. In this idea, I would of course force G_DoReborn to call the new function and the new function would have flags based on what it wants to do (i.e. where to spawn the new player, etc).

Re: A_RaiseDead(actor corpse, int flags)

by Xeotroid » Sun Jul 28, 2019 9:05 am

With that in mind, how hacky is the resurrect command, then? I only know that it can't be used when the player is decapitated (Hexen).

Re: A_RaiseDead(actor corpse, int flags)

by Major Cooke » Sun Jul 28, 2019 8:45 am

There will never be player resurrection without some ridiculous reworking of the system Nash. Sorry. :(

Re: A_RaiseDead(actor corpse, int flags)

by Blue Shadow » Sun Jul 28, 2019 7:54 am

This doesn't work on players.
https://zdoom.org/wiki/RaiseActor

Re: A_RaiseDead(actor corpse, int flags)

by Nash » Sun Jul 28, 2019 7:41 am

Does this gracefully handle player resurrection?

Re: A_RaiseDead(actor corpse, int flags)

by Blue Shadow » Sun Jul 28, 2019 4:33 am

Thanks.

Re: A_RaiseDead(actor corpse, int flags)

by Rachael » Sun Jul 28, 2019 4:12 am

You should be able to, now.

Re: A_RaiseDead(actor corpse, int flags)

by Blue Shadow » Sun Jul 28, 2019 3:55 am

Was added in 3.7.0 as RaiseActor().

Edit: Oops! Looks like I can't select the closed feature suggestions forum as a move-to target.

Re: A_RaiseDead(actor corpse, int flags)

by Matt » Tue May 22, 2018 11:13 pm

So I just had to fix a really screwy bug that would have been totally avoidable had I not had to temporarily set an actor's master.

Meanwhile, trying to do the same thing with Thing_Raise lets me do this with one less line (since I can say "Thing_Raise(pointer.tid)", but friendliness cannot be transferred.

Re: A_RaiseDead(actor corpse, int flags)

by Matt » Mon Apr 23, 2018 12:43 pm

Won't work in ZScript, or at least without some circumlocution I can't remember off the top of my head.

EDIT: Temporarily setting a TID for the pointer. Which would require backing up the pointer's current TID, resulting in about the same number of lines of code as temporarily setting a master.

Re: A_RaiseDead(actor corpse, int flags)

by Mikk- » Mon Apr 23, 2018 9:42 am

Potential DIY? I mean, you can use <actor pointer>.Thing_Raise(0) - unless a dedicated function would be more robust.

A_RaiseDead(actor corpse, int flags)

by Matt » Sun Apr 22, 2018 11:27 pm

Like A_RaiseMaster but for any ZScript actor pointer.

Top