JMP was doing a rights check in the Topic instead of doing it on the proc, just went ahead and fixed the rights check to include mentors.
Mentors now have player panel but can't see traitor panel. The idea is so they can't tell who is an antag through this.
New things!
/obj/structure/disposalpipe/tagger
- retags a holder when it passes through
/obj/structure/disposalpipe/tagger/partial - retags a holder when it passes through two times; good for loop detection
/obj/structure/disposalpipe/sortjunction/wildcard - filters out all holders that are tagged
/obj/structure/disposalpipe/sortjunction/untagged - filters out untagged holders
Tagging doesn't use an icky list index system any more, tags are put into a global list and directly checked against.
Changed the map around a bit, disposals is now a proper loop but anything that's not tagged, is tagged with "Disposals" or anything that passes the tagger twice will be filtered out.
Not a feature, just a fix for drones being sad about weird disposals. <3
airalarm had various checks missing, e.g. making sure the AA
was unlocked before triggering panicsyphon and the like.
added proper rangecheck, added var checks for the different types of calls.
also replaced usr.machine = src with usr.set_machine(src) so the
window updates properly for silicon mobs using the machine from afar.
i had no time to look for functionality exploits, this commit merely makes sure
the commands can only be called in proper circumstances.
This reverts commit 1679b4062f, reversing
changes made to b149b273d9.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
Conflicts:
code/datums/visibility_networks/update_triggers.dm
Fixed a few bugs in the construction code, before realizing there were a lot more bugs in the move_to_target() code, giving up and disabling it pending rewrite.
recently i fixed a couple of issues with /vg/'s alien weeds and nodes,
and i see some applying to Bay12 too.
one of those issues was the order of checks in weeds/Life().
it should cancel the weed's search for tiles to expand to without starting
the direction loop first, saving quite a few proc calls.
another issue is alien weeds having the default OBJ_LAYER layer 3 which makes them grow
over all kinds of items and objects which makes sense i guess fluffwise but
is really annoying ingame for both crew and aliens.
( and this coming from the host of Alium Deathtrap 13 ;) )
nodes stay at layer 3 to appear properly over things like AI-holopads.
a really tiny improvement is setting linked_node after the space-turf check in weeds/New().
link to the /vg/ commit : 4dcb434f72
this exploit is in all public builds i could look at.
using the mech fabricator, and you were able to duplicate any obj in the server.
as a nice bonus you could also abuse the part-description-function to identify any atom in the server
memory for even easier access to other yet unknown exploits of this kind.
and also range check was missing to make sure you are not on some other z level massproducing guns.
i will not go into details, as it is exactly the same kind of exploit over and over,
so if you are interested on how and why these exploits work, see some of my other exploit commits :
https://github.com/Baystation12/Baystation12/pull/5068https://github.com/Baystation12/Baystation12/pull/4750
i advise any coder team to be supercautious when changing/writing new Topic procs to prevent these,
and to always doublecheck other coder's works.