Vue.js UI implementation (#4868)

This UI is going to be more integrated with BYOND host objects. It's update principal is very different from nanoui's. It is based around state that is being synchronized with server and client (browser). Such synchronization has it's problems, like it can't handle rapid changes, what could cause client and server to become out of sync and client state to be discard.
This commit is contained in:
Karolis
2018-08-04 20:19:29 +03:00
committed by Erki
parent 8519dcc393
commit 4065e29e86
104 changed files with 22199 additions and 352 deletions
@@ -73,13 +73,13 @@
..()
implant.icon_state = icon_state
/obj/item/device/electronic_assembly/implant/nano_host()
/obj/item/device/electronic_assembly/implant/ui_host()
return implant
/obj/item/device/electronic_assembly/proc/resolve_nano_host()
/obj/item/device/electronic_assembly/proc/resolve_ui_host()
return src
/obj/item/device/electronic_assembly/implant/resolve_nano_host()
/obj/item/device/electronic_assembly/implant/resolve_ui_host()
return implant
/obj/item/device/electronic_assembly/proc/check_interactivity(mob/user)
@@ -34,7 +34,7 @@ a creative player the means to solve many problems. Circuits are held inside an
displayed_name = name
if(!size)
size = w_class
if(size == -1)
if(size == -1)
size = 0
setup_io(inputs, /datum/integrated_io, inputs_default)
setup_io(outputs, /datum/integrated_io, outputs_default)
@@ -53,10 +53,10 @@ a creative player the means to solve many problems. Circuits are held inside an
qdel(A)
. = ..()
/obj/item/integrated_circuit/nano_host()
/obj/item/integrated_circuit/ui_host()
if(istype(src.loc, /obj/item/device/electronic_assembly))
var/obj/item/device/electronic_assembly/assembly = loc
return assembly.resolve_nano_host()
return assembly.resolve_ui_host()
return ..()
/obj/item/integrated_circuit/emp_act(severity)
@@ -41,8 +41,8 @@ D [1]/ ||
holder = null
. = ..()
/datum/integrated_io/nano_host()
return holder.nano_host()
/datum/integrated_io/ui_host()
return holder.ui_host()
/datum/integrated_io/proc/data_as_type(var/as_type)
if(!isweakref(data))