CanTeleportState virtual

Remember, just because you request it, that doesn't mean you'll get it.

Moderator: GZDoom Developers

User avatar
Major Cooke
Posts: 8170
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

CanTeleportState virtual

Post by Major Cooke »

A virtual that can be used to allow or deny entities that teleport to go to their Teleport states.

I find myself in a bit of an odd circumstance at the moment where I've got some monsters that are designed for interruption when they're leaping through the air, i.e. the baron of hell and hell knight in D4D. As I was working on this however, I noticed that if they're pushed over a line or something else causes them to teleport, it'll interrupt states that are not supposed to be interrupted.

So here's what I propose is a function that can indicate what caused the actor to teleport. That way if we don't want the teleport state to be jumped into, returning false will block the state jump.

This is only called if teleportation was successful.
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Re: CanTeleportState virtual

Post by Matt »

Is there a way (I mean theoretically as a new feature) to make certain states ininterruptible? That could provide a general solution against all these pain overrides and whatnot.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: CanTeleportState virtual

Post by Graf Zahl »

No, there isn't. Because states are single entries in the list. The labels are just that: labels. They do not propagate any information to any state in the following sequence.
You also have to keep in mind that this would also block going to a death state, because it all calls the same code.
User avatar
Apeirogon
Posts: 1605
Joined: Mon Jun 12, 2017 12:57 am

Re: CanTeleportState virtual

Post by Apeirogon »

Matt right in this one. Create virtual for for each particular case can(teleport/jump/attack/scratchandsniff/etc.) is a bad idea.

Why just dont make labels less....labelless, I think?
Like "state name".uninterrupted(or continuous) and make death states like death.caninterrupt(or breaking).
User avatar
Major Cooke
Posts: 8170
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: CanTeleportState virtual

Post by Major Cooke »

No, that's not okay Apeirogon.
Post Reply

Return to “Feature Suggestions [GZDoom]”