Ports media code from vgstation, updates it for this codebase and modernizes it.
* Changes jukeboxes to load songs using an embedded browser instead of sending over BYOND's sound channels. This means they load out of band without lagging the server. Also songs can be resumed mid-song, so leaving and returning to an area doesn't start the music over.
* The old WMP and VLC player modes from /vg are still supported, but adds a new default mode using HTML5 audio to play the music.
* WMP - The oldest, still works on IE on windows, but only there, and Microsoft could break it any second.
* VLC - Works on all platforms, but requires user to have VLC pre-installed on their computer. Uses a scary plugin.
* HTML5 - New default, It is cross platform but doesn't require you to have VLC installed to work. Also caches songs locally even between rounds.
* Changed jukebox.txt to be jukebox.json, now can include artist information as well. Must include the duration of songs as well.
* For HTML5 audio compatibility, use only MP3 files, its the only format supported on all browsers.
* Jukebox itself is also upgraded, instead of just repeating the same song over and over it can actually advance to the next song when one is done playing. Has a few modes including random, next, and single song.
* Jukeboxes have a UI improvement, and have a volume control.
* Three new settings are added to global settings in character setup
* Jukebox music on/off toggles jukebox music independently of normal station ambience. Now you can hear ambience but not music. (or vice versa if you wanted...)
* Jukebox music volume. Control the relative volume of jukebox music. Actual volume is player's configured volume * jukebox's configured volume.
* Media player type. Choose between WMP, VLC, and HTML5
* Fixes a few bugs in the /vg code.
global_lists_vr.dm - Removes generic 'suit' which included basically any outerwear, and the invisible magical storage/internal
storage/internal.dm - Don't name the storage inside suits the same as the suit. It causes weird name-alignment problems where if you delete the suit it might just delete the internal storage, or the other way around.
Dreaming.dm - Added some vorish stuff I made up.
belly_vr.dm - Fixes for digesting items and how that works, and how to prevent them from showing up on the HUD. Also fixes IDs falling onto the floor (among other things).
living_vr.dm - Just in case, adds null-entry cleanup to belly cleanup proc.
bellymodes_vr.dm - Removes previous null-item hotfix.
vorepanel_vr.dm - Adds zero-width space to make items in belly wrap and not look horrible.
skim.dmf - Adds Y hotkey for whisper, and 6 hotkey for subtle.
Closes#455Closes#443Closes#239
It bothered me that there was no hotkey for emote that wasn't on the
function row. Y is now me. Activate-held-item is now only Z instead of Z
and Y.
The hotkeys-help verb in OOC tab is changed to include the changes
above, and the previously unmentioned function row hotkeys that are
pertinent to players. (Admin verbs are unmentioned)
Now indicator will disappear if for 30 seconds contents of chatbar didn't change.
Moved all relevant vars to the typing_indicator.dm
Added 'typing' var, as 'if(!(typing_indicator in overlays))' didn't work and overlays kept being added forever.
Fixed preference toggle feedback being backwards.
Fixed wrong verb called in hotkeys mode.