-> removed the last _ in emote_subtle
-> changed the regex as it was causing issues with multiline subtle / emote
-> small change to the flavor input verb for robots to allow multiline flavor texts to be added directly
-> Timestamps have been simple added as prefix in front of the entire message, having the classifying <span class="..."> behind it what prevented message filtering. So instead of adding it in front, we are inserting it with a regex replace after the first <span...>
-> Underlining breaks fromatting. This issue happens as _ is used as a character in labels. It never should be used in labels as it's a marking character being parsed. Using it in a label causes the label to partially be parsed and therefore the message breaks. I've removed the underline in "emote_sublte" to at least have that working again. But likely all labels should be reworked to no longer use underlines.
-> Known issue: Absorb messages are not having timestamps. The way absorb messages are implemented prevents the current "client.prefs.chat_timestamp" from being used as it would rely to the speaking client to have it enabled. I haven't looked enough into to code, but if there's a way, it might be best to move the entire timestapmping to the code/modules/vchat/vchat_client.dm using a regex to insert them behing the classifying span.
Previously, the message implied that saying no/cancelling acts as a double-check for leaving the round. Now, it's clear that pressing No will still kick you out.
Creates a new var on new player mob that tracks if we have quit the round/abandoned our ghost mob to return to lobby or if we have done our first login.
On leaving a previously occupied mob, regardless if we clear manifest or not (previous functionality), the respawn message is sent.
However, this is no longer done by the abandon_mob() procedure as that causes the MOTD to cover it up. Instead, by setting the has_respawned var to true, we request Login() for new_player mobs (aka lobby joiners) to see it.
If you push CTRL+SHIFT+ numpad +/-, your layer and plane will increase or decrease as appropriate, so you can shuffle yourself around in people stack.
There's 7 total options you can get to. Your layer and plane also return to normal when you move
- SSInput subsystem for running movement inside the tick.
- Switch skin.dmf to use KeyUp/KeyDown procs for movement keys.
- Logic to do responsive diagonal movement.
Every other method of incapacitation is handled by the other procs, leaving "canmove" to functionally only hinder conscious proning. Might send to polaris at some point, but they still lack the features this "fixes" and could probably use a proper de-spaghettification rework on the whole system