- modifying how runes are called to use reflection
- adding highlander code to make sure that there can only be one mask
- adding Spread Shadows spell
- adding cult admin investigation log
- adding mask icon
implant adding via the traitor panel will also update it's location to be in the players head for autopsy as well as is_loyalty_implanted() reasons.
Thanks Chinsky / alex-gh for the heads up on this.
Added a proc is_loyalty_implanted() that returns 1 if so, and 0 if not.
Added the ability to remove and add loyalty implants from the traitor panel.
Changed the checks on antags to not care if they are section heads, but to instead check for a loyalty implant.
Fixed a minor bug where traitorborgs made through traitor panel was not adding law 0
Adding a loyalty implant to an antagonist through traitor panel will also remove them from being an antag.
Source-code for the dll can be found here under LGPL license:
https://github.com/Carn/bygex
It is merely an interface to boost::regex. It uses perl syntax (non-recursive).
Guidelines for use:
var/datum/regex/Rgx = regex_findall(haystack, regex_expression)
for(var/i=1, i<=Rgx.matches.len, ++i)
world << Rgx.str(i)
The implementation is different to the one other regex-in-byond library I found. This implementation only returns a string containing the position and length of each match and submatch. This uses far less memory than also passing back the matched strings (especially in large files like dream-maker maps).
Note: Regex indexes begin at 1 (since byond lists begin at 1), unlike traditional regex. If we are using a procedure such as regex_findall(), with 3 sub-expressions, match 1 will be the overall match. Match 2 will be subexpression 1, match 3 will be subexpression 2.... Match 5 will be the overall match of the next match...and so on. To ease use, there is /datum/regex/var/anchors which is a numerical value which can be used inside loops like so:
for(var/i=1, i<=Rgx.matches.len, i+=Rgx.anchors)
world << Rgx.str(i+1)
This will print the first submatch of each match to world.
Detomax cartridge use will not create an admin message saying the name/key of the antag that tried to blow up the target, and if it was successful or not.