Created a helper proc /proc/is_mentor(client) use this when determining if someone is a mentor and they aren't the usr of the proc (rights_check uses usr)
Mentors will no longer hear ghosts while playing
Mentors will no longer see orange text around names in check_player_age panel if they have special_roles
Mentors will no longer be able to tell players with special roles through the use of player_panel
Mentors will no longer be able to aghost, use antagHUD, then return to their bodies.
Tracking added for AI's and Observers
Instead of calling GetVoice() over and over for everyone that can hear you we're checking a variable that is updated with Life()
removed a bunch of my debug verbs.
Before: Every tick each HUD item would recalculate and redo images for every mob in view. For items like the secHUD where we're transversing implants and the various records this gets very expensive.
After: Mobs use their hud_list variable to store varius huditem images, when conditions change for those specific huditem images it updates the specific ones on demand. As a backup every 30 ticks or so the mob will update all of their hud_list.
Also: moved proc/RoundHealth() from 2 seperate locations into __HELPERS/mobs.dm
If antagHUD respawn restrictions are enabled, players will no longer be able
to use the "become mouse" verb if they have enabled their antagHUD's.
Observers were able to use antagHUD then become mice and die resetting their "has_used_antagHUD" variable allowing them to respawn bypassing the restrictions by becoming a mouse as well as respawning later.
universal_understand = 1 now allows player-controlled mobs to understand what everybody is saying without necessarily allowing them to talk back intelligibly. Mice have universal_understand = 1 by default.
Also added the proc get_ghosts() with 2 versions of output, it defaults to returning a mob list but can be set to return a list for use with an input window.
Created configurations for Server Admins to be able to toggle it within default config.
Modified my previous AdminVerb that allows respawns to bypass the limitations of the restrictions while also letting the admins know if the ghost has used AntagHUD
Created restriction checks for various forms of joining the round and if administrators/hosts have restricted AntagHUD users from joining the round they will not be able to.
To Do:
Create Adminverb for toggling restrictions to also be able to toggle everyones ability to use antagHUD for a round.
Create a method for "Job Banning" users from using antagHUD.
Problem: Cult members can't use the rune to see ghosts, then beat ghosts over the head. it was being intercepted by _onclick and processed there and only displaying an angry red notice
that you hit that ghost. Ghost didn't become visible, it disappeared soon after moving off the rune.
Solution: Made an attackby for ghosts to check when they are being beat up by cultist with books, now they appear.
Minor feature change: Now if a visible ghost gets hit it will give a different message than the standard "Ghost is pulled through from the other side".
* Added a proc to be called whenever a ghost emotes something
* Added emote_dead, which displays the *fancy* emote text to admins, mods, and those with M.stat DEAD
Mice can no longer open airlocks.
Mice can no longer strip items from humans
Mice can no longer put other creatures into disposal units (though they can still climb into disposal units)
Message for when mice crawl into vents removed. Mouse nibbling message only displayed to observers half the time.