|
I've implemented a new door API in minetest_game that
performs all the needed things to assure doors are
properly openend and closed, without mods needing to
know the inner details of what needs to be done.
Mesecons can just fetch a reference to the door object
and call the appropriate open or close method, which
simplifies this code a lot.
For compatibility, this code retains the old code path
and tests whether the new API is available, so this
code remains functional if the new API is not available.
Since the metal trapdoor was only recently added, I added
it to the new API codepath only, it's unlikely to be
present on older versions of minetest_game anyway.
As a benefit from the new door API, there is now
absolutely no more accidental switching closed trapdoors
to open on power off, which could happen with the
old method - since that was just a simple toggle.
|