mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-17 13:42:44 +00:00
* Better notifications * Add buttons to del/move tabs in edit mode * Add a <span> to emotes * Fix duplicate IDs in VChat and add more logging * VChat: Redone chat output in Vue.js * Ported tg asset cache * VChat DME Update * Replace \image macro with bicon() * NanoUI Subsystem Fixes Don't do this, the asset subsystem does this for you * Allow narrate/globalnarrate shenanigans Allows HTML if your entire thing is HTML * Disable bicon() icon object cache, and create text tag cache * Ore Scanner is written incorrectly Only revealed by vchat * Fixes 2 VChat bugs * Underline links in VChat * Fix LOOC color * VChat Improvements Hopefully, anyway. - Arbitrary font size setting - Line height setting - Multiple crush settings - Rewrote how tabs work hopefully for performance - Hidden messages are actually put elsewhere - Attempts to correct chat backlog restore on rejoin * Surgery steps to use <span> * Some VChat Tweaks - Chat remains between client reconnects if your client didn't close (so things like using the reconnect button, or autoreconnects at round end when that feels like working) - The client doesn't send pings to the server, the server sends pings to the client. This fixes AFK measurements for AFK kick purposes. - Turn latency indicator into a green/red indicator to show if you're connected, and when clicked will perform a one-time ping (and block doing it again for 10 seconds). It will display '?ms' if it never got a reply, or '999ms' if it did, but it was over 1s. * Include date in filename for VChat log save * Merge pull request #6767 from Cyantime/patch-2 Change chat export naming scheme * Adds VChat tab saving Saves every time you enter/exit edit mode. Persists between rounds, VChat reloads via verb, etc. * Fix chat exporting when someone has used unicode Only affects clients still using 512 * Use CLIENT_FROM_VAR for ease of code reading * Update code/modules/client/asset_cache.dm Co-Authored-By: Novacat <35587478+Novacat@users.noreply.github.com> * Fix runtime when client disconnects before vchat loads * Fix polaris version of command reports * Fix LOOC color in oldchat * Put some styles in various adminpm messages * Round info and advanced who spans * Fix missing tag-end * Maybe fix images for linux and statpanel but also doom everyone Co-authored-by: ShadowLarkens <ShadowLarkens@users.noreply.github.com> Co-authored-by: Novacat <35587478+Novacat@users.noreply.github.com>
71 lines
2.0 KiB
Plaintext
71 lines
2.0 KiB
Plaintext
// Wires for cameras.
|
|
|
|
/datum/wires/camera
|
|
random = 1
|
|
holder_type = /obj/machinery/camera
|
|
wire_count = 6
|
|
|
|
/datum/wires/camera/GetInteractWindow()
|
|
. = ..()
|
|
var/obj/machinery/camera/C = holder
|
|
. += show_hint(0x1, C.view_range == initial(C.view_range), "The focus light is on.", "The focus light is off.")
|
|
. += show_hint(0x2, C.can_use(), "The power link light is on.", "The power link light is off.")
|
|
. += show_hint(0x4, C.light_disabled, "The camera light is off.", "The camera light is on.")
|
|
. += show_hint(0x8, C.alarm_on, "The alarm light is on.", "The alarm light is off.")
|
|
return .
|
|
|
|
/datum/wires/camera/CanUse(var/mob/living/L)
|
|
var/obj/machinery/camera/C = holder
|
|
return C.panel_open
|
|
|
|
var/const/CAMERA_WIRE_FOCUS = 1
|
|
var/const/CAMERA_WIRE_POWER = 2
|
|
var/const/CAMERA_WIRE_LIGHT = 4
|
|
var/const/CAMERA_WIRE_ALARM = 8
|
|
var/const/CAMERA_WIRE_NOTHING1 = 16
|
|
var/const/CAMERA_WIRE_NOTHING2 = 32
|
|
|
|
/datum/wires/camera/UpdateCut(var/index, var/mended)
|
|
var/obj/machinery/camera/C = holder
|
|
|
|
switch(index)
|
|
if(CAMERA_WIRE_FOCUS)
|
|
var/range = (mended ? initial(C.view_range) : C.short_range)
|
|
C.setViewRange(range)
|
|
|
|
if(CAMERA_WIRE_POWER)
|
|
if(C.status && !mended || !C.status && mended)
|
|
C.deactivate(usr, 1)
|
|
|
|
if(CAMERA_WIRE_LIGHT)
|
|
C.light_disabled = !mended
|
|
|
|
if(CAMERA_WIRE_ALARM)
|
|
if(!mended)
|
|
C.triggerCameraAlarm()
|
|
else
|
|
C.cancelCameraAlarm()
|
|
return
|
|
|
|
/datum/wires/camera/UpdatePulsed(var/index)
|
|
var/obj/machinery/camera/C = holder
|
|
if(IsIndexCut(index))
|
|
return
|
|
switch(index)
|
|
if(CAMERA_WIRE_FOCUS)
|
|
var/new_range = (C.view_range == initial(C.view_range) ? C.short_range : initial(C.view_range))
|
|
C.setViewRange(new_range)
|
|
|
|
if(CAMERA_WIRE_LIGHT)
|
|
C.light_disabled = !C.light_disabled
|
|
|
|
if(CAMERA_WIRE_ALARM)
|
|
C.visible_message("[bicon(C)] *beep*", "[bicon(C)] *beep*")
|
|
return
|
|
|
|
/datum/wires/camera/proc/CanDeconstruct()
|
|
if(IsIndexCut(CAMERA_WIRE_POWER) && IsIndexCut(CAMERA_WIRE_FOCUS) && IsIndexCut(CAMERA_WIRE_LIGHT) && IsIndexCut(CAMERA_WIRE_NOTHING1) && IsIndexCut(CAMERA_WIRE_NOTHING2))
|
|
return 1
|
|
else
|
|
return 0
|