Inverted Synchronization - opening one door closes another door #1
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hi. You did a great module.
Is it possible to make a sync door open another at the same time it close another one?
This could allow the creation of amazing puzzles.
Thanks for the nice words. I'm glad you enjoy the module.
Unfortunately syncing doors in a way that closes one when another one is opened isn't currently possible. I've been thinking about implementing this feature, however I'm not sure about what to do about locked doors.
I see three ways to handle this:
I must say I'm not very fond of either of these possibilities, since all of these lead to a result that might break someones use case.
Any ideas or suggestions for how to solve this problem are greatly appreciated.
Also interested in this functionality.
I maybe wrong, but I can offer an idea.
Create a second field on the wall config. You can set a second group. This will work like the first one.
Example. All doors closed.
Door A has Group 1
Door B has Group 1, Group 2
Door C has Group 2
Player opens door A.
Door B opens.
Player closes Door B.
Door A closes. Door C opens.
Player opens Door B.
Door A opens. Door C closes.
Player closes Door A.
Door B closes.
a better solution be a toggle instead of setting true or false.
setter a opposite of actual state of door.. ( door = !door instead door=true)
then the command always orders the opposite situation.
if it is closed it is open.
if in a group, those that are closed will open and those that are open will close.
Another possibility for locked doors in groups is if you toggle the group, all the doors but the locked one will change, and then if that door is ever unlocked it will automatically change to its proper opened/closed state.
For example:
A (open, unlocked), B (closed, unlocked), C (closed, locked)
Toggle A
A (closed, unlocked), B (open, unlocked), C (closed, locked)
Unlock C
A (closed, unlocked), B (open, unlocked), C (open, unlocked)
So doors will always stay synchronized unless they are locked closed in which case they will stay there until unlocked no matter what the rest of the group does.
I think a toggle work great (and yes I would be greatly interested in this functionality).
Next to the Group, have a "invert" toggle. All doors that don't have thist toggle set will open an close in synch. Any door that has invert set will do the opposite.
I currently have a map with a corridore with 2 doors (one at each end). One door opens, the other closes. This would be the perfect solution for me.
Of course if you want to go really complex, you could allow doors to be part of multiple groups (maybe a character separated list in the group box). Then, in combination with the invert toggle, these groups or doors can affect each other in complex ways :-)