It is a ghost-time preference that doesn't get saved. Admins see anonymous ghosts with a * next to their key. People talking in dead bodies are now always seen only with the name of their body (admins see their keys with a ^).
This should have little/no gameplay effect right now, just paving the
way for directional lights.
Replaced handle_rotation() on buckly things with this.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
This is mainly for wizard and cult rounds, where it is important to know that a wizard/cultist is watching. The announcement was added for most other types of leaving/joining the ghost realm. Admin ghost doesn't get announced for obvious reasons.
Borrows /tg/ html stripping code.
Ghosts are the first to be given this boon, they now have to deliberately emote things like "Spooky man and it#36&;s friends type crap".
Ghosts which have been made visible by cultists can afterward turn themselves (in)visible at will, with a cooldown before being able to turn themselves visible after having faded from sight.
New turf proc: assume_gas(). Maps to air.adjust_gas_temp().
Lots of optimizations to processing, fire, lighting, HasEntered() and
more.
Zones now process all fire data and existance in one go, fire objects
only handle spreading.
Most code has been ported straight so some of it mightn't be ideally
structured for the new gas_mixtures.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
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.