mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-21 03:56:47 +01:00
VS: AR Entopics and Soulcatcher projecting (+Worldbender)
This commit is contained in:
@@ -4,4 +4,5 @@
|
||||
plane_holder.set_vis(VIS_GHOSTS, ghostvision)
|
||||
plane_holder.set_vis(VIS_FULLBRIGHT, !seedarkness)
|
||||
plane_holder.set_vis(VIS_AI_EYE, TRUE)
|
||||
plane_holder.set_vis(VIS_AUGMENTED, TRUE) //VOREStation Add - GHOST VISION IS AUGMENTED
|
||||
plane = PLANE_GHOSTS
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
//Crazy alternate human stuff
|
||||
/mob/living/carbon/human/New()
|
||||
. = ..()
|
||||
|
||||
var/animal = pick("cow","chicken_brown", "chicken_black", "chicken_white", "chick", "mouse_brown", "mouse_gray", "mouse_white", "lizard", "cat2", "goose", "penguin")
|
||||
var/image/img = image('icons/mob/animal.dmi', src, animal)
|
||||
img.override = TRUE
|
||||
add_alt_appearance("animals", img, displayTo = alt_farmanimals)
|
||||
|
||||
/mob/living/carbon/human/Destroy()
|
||||
alt_farmanimals -= src
|
||||
|
||||
. = ..()
|
||||
@@ -0,0 +1,6 @@
|
||||
/mob/Login()
|
||||
. = ..()
|
||||
|
||||
if(viewing_alternate_appearances && viewing_alternate_appearances.len)
|
||||
for(var/datum/alternate_appearance/AA in viewing_alternate_appearances)
|
||||
AA.display_to(list(src))
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
/datum/plane_holder/Destroy()
|
||||
my_mob = null
|
||||
plane_masters.Cut() //Goodbye my children, be free
|
||||
qdel_null_list(plane_masters) //Goodbye my children, be free //VOREStation Edit - Need to qdel these now
|
||||
return ..()
|
||||
|
||||
/datum/plane_holder/proc/set_vis(var/which = null, var/state = FALSE)
|
||||
|
||||
@@ -5,4 +5,39 @@
|
||||
plane_masters[VIS_CH_BACKUP] = new /obj/screen/plane_master{plane = PLANE_CH_BACKUP} //Backup implant status
|
||||
plane_masters[VIS_CH_VANTAG] = new /obj/screen/plane_master{plane = PLANE_CH_VANTAG} //Vore Antags
|
||||
|
||||
plane_masters[VIS_AUGMENTED] = new /obj/screen/plane_master{plane = PLANE_AUGMENTED} //Augmented reality
|
||||
plane_masters[VIS_AUGMENTED] = new /obj/screen/plane_master/augmented(my_mob) //Augmented reality
|
||||
|
||||
/////////////////
|
||||
//AR planemaster does some special image handling
|
||||
/obj/screen/plane_master/augmented
|
||||
plane = PLANE_AUGMENTED
|
||||
var/state = FALSE //Saves cost with the lists
|
||||
var/mob/my_mob
|
||||
|
||||
/obj/screen/plane_master/augmented/New(var/mob/M)
|
||||
..()
|
||||
my_mob = M
|
||||
logged_in_event.register(my_mob,src,/obj/screen/plane_master/augmented/proc/apply)
|
||||
|
||||
/obj/screen/plane_master/augmented/Destroy()
|
||||
logged_in_event.unregister(my_mob,src)
|
||||
my_mob = null
|
||||
return ..()
|
||||
|
||||
/obj/screen/plane_master/augmented/set_visibility(var/want = FALSE)
|
||||
. = ..()
|
||||
state = want
|
||||
apply()
|
||||
|
||||
/obj/screen/plane_master/augmented/proc/apply()
|
||||
if(!my_mob.client)
|
||||
return
|
||||
|
||||
if(state)
|
||||
entopic_users |= my_mob
|
||||
if(my_mob.client)
|
||||
my_mob.client.images |= entopic_images
|
||||
else
|
||||
entopic_users -= my_mob
|
||||
if(my_mob.client)
|
||||
my_mob.client.images -= entopic_images
|
||||
|
||||
Reference in New Issue
Block a user