Added MOVINGSPECIAL flag#1050
Conversation
This is for items that can be moved around and should be picked up by anything they touch that's capable of doing so.
Thanks for opening this PR! We'll review it soon.I'm a bot that checks for some common problems. I'll update this comment with anything I find. Nothing to report. Nice :) |
|
Can I suggest that it be called something else though? There are so many things in ZDoom with "special" in it that it gets really confusing. |
|
I'm not really sure what else to call it tbh. MOVINGPICKUP can't be used here because technically any Actor can have SPECIAL so it's not really bound to items specifically |
|
Does this flag actually affect non-pickup behaviour though? |
well, pickups happen on the touch virtual, so if pickups work anything else would, because it means the touch function is being called properly (+SPECIAL for items doesn't mean action specials, it just means that they trigger touch when they, well, touch, an actor with the +PICKUP flag) |
|
+SPECIAL works for everything, so technically this can apply to things that aren't items at all, granted it'll only apply to things with +PICKUP. If this sounds too niche to be useful, consider one of Strife's enemies literally relies on this, so it's a feature used outside of items even in vanilla handling. Maybe something like +SPECIALCANMOVE would be better, that way things that impact SPECIAL always start with SPECIAL while things that call a special have SPECIAL at the end (e.g. BUMPSPECIAL) |
|
OK so just to be clear, all this "SPECIAL" stuff is totally separate from the "special" that's called with +USESPECIAL and +BUMPSPECIAL, right? (which, just to throw it in there, have nothing to do whatsoever with +SPECIALFIREDAMAGE and none of these in turn have anything to do with +SPECIALFLOORCLIP...) If so I think the best option is "+CANBEPICKEDUPWHILEMOVING" and "+SPECIAL" deprecated in favour of "+CANBEPICKEDUP". But that said... what even does this do? It's already possible to pick up items even if they've been given chase states or velocity, so is this about the item also being able to move in to a non-moving picker-upper and be picked up that way despite not being the passive recipient of the bump? |
Items can only ever be picked up when the other Actor is moving. This means if you have some kind of vacuum effect in your game, the player can stand still and never actually get it. This just allows the inverse case to happen: the item will now check against the other thing on movement to see if it can be picked up |
|
For example, I'd do these changes:
So it would be: But if I had no choice but to pick new name only for this flag with current context of everything... |
|
I like these! |
This is for items that can be moved around and should be picked up by anything they touch that's capable of doing so.
Checklist