Merge remote-tracking branch 'upstream/master' into infinidorms-hotel-update

This commit is contained in:
ariaworld
2024-01-12 23:44:22 +01:00
parent bd5f3a8312
commit 6d1dc09ca7
8 changed files with 31 additions and 16 deletions
+2 -2
View File
@@ -139,8 +139,8 @@
var/list/visible_turfs = list()
// Is this camera located in or attached to a living thing? If so, assume the camera's loc is the living thing.
var/cam_location = isliving(active_camera.loc) ? active_camera.loc : active_camera
// Need to get camera's location or it
var/cam_location = get_atom_on_turf(active_camera)
// If we're not forcing an update for some reason and the cameras are in the same location,
// we don't need to update anything.
@@ -269,9 +269,10 @@
inputs = list(
"camera name" = IC_PINTYPE_STRING,
"camera active" = IC_PINTYPE_BOOLEAN,
"camera fast mode" = IC_PINTYPE_BOOLEAN,
"camera network" = IC_PINTYPE_LIST
)
inputs_default = list("1" = "video camera circuit", "3" = list("rd"))
inputs_default = list("1" = "video camera circuit", "4" = list("rd"))
outputs = list()
activators = list()
spawn_flags = IC_SPAWN_DEFAULT|IC_SPAWN_RESEARCH
@@ -280,6 +281,8 @@
var/obj/machinery/camera/camera
var/updating = FALSE
var/update_speed = 10 // How often to update the camera
/obj/item/integrated_circuit/output/video_camera/New()
..()
camera = new(src)
@@ -290,11 +293,11 @@
QDEL_NULL(camera)
return ..()
/obj/item/integrated_circuit/output/video_camera/proc/set_camera_status(var/status)
/obj/item/integrated_circuit/output/video_camera/proc/set_camera_status(status)
if(camera)
camera.status = status
GLOB.cameranet.updatePortableCamera(camera)
power_draw_idle = camera.status ? 20 : 0
power_draw_idle = camera.status ? (20 / (update_speed * 0.1)) : 0
if(camera.status) // Ensure that there's actually power.
if(!draw_idle_power())
power_fail()
@@ -303,7 +306,8 @@
if(camera)
var/cam_name = get_pin_data(IC_INPUT, 1)
var/cam_active = get_pin_data(IC_INPUT, 2)
var/list/new_network = get_pin_data(IC_INPUT, 3)
update_speed = get_pin_data(IC_INPUT, 3) ? 5 : 10
var/list/new_network = get_pin_data(IC_INPUT, 4)
if(!isnull(cam_name))
camera.c_tag = cam_name
if(!isnull(new_network))
@@ -319,13 +323,11 @@
. = ..()
update_camera_location(oldLoc)
#define VIDEO_CAMERA_BUFFER 10
/obj/item/integrated_circuit/output/video_camera/proc/update_camera_location(oldLoc)
oldLoc = get_turf(oldLoc)
if(!QDELETED(camera) && !updating && oldLoc != get_turf(src))
updating = TRUE
addtimer(CALLBACK(src, .proc/do_camera_update, oldLoc), VIDEO_CAMERA_BUFFER)
#undef VIDEO_CAMERA_BUFFER
addtimer(CALLBACK(src, .proc/do_camera_update, oldLoc), update_speed)
/obj/item/integrated_circuit/output/video_camera/proc/do_camera_update(oldLoc)
if(!QDELETED(camera) && oldLoc != get_turf(src))
@@ -614,6 +614,7 @@
"Otie" = image(icon = 'modular_splurt/icons/mob/widerobot.dmi', icon_state = "otiee-b"), // SPLURT Adoon (Skyrat Port)
"Drake" = image(icon = 'modular_sand/icons/mob/cyborg/drakemech.dmi', icon_state = "drakeengbox"),
"Assaultron" = image(icon = 'modular_splurt/icons/mob/robots.dmi', icon_state = "assaultron_engi"), // SPLURT Addon
"Meka" = image(icon = 'modular_splurt/icons/mob/robots_32x64.dmi', icon_state = "mekaengi"), // SPLURT Addon
"Haydee" = image(icon = 'modular_splurt/icons/mob/robots.dmi', icon_state = "haydeeengi"), // SPLURT Addon
"Feline" = image(icon = 'modular_splurt/icons/mob/widerobot.dmi', icon_state = "vixengi-b"), // SPLURT Addon (ChompS Port)
"Raptor V-4" = image(icon = 'modular_splurt/icons/mob/robots_64x45.dmi', icon_state = "engiraptor-b"), // SPLURT Addon (ChompS Port)
@@ -748,6 +749,11 @@
cyborg_base_icon = "assaultron_engi"
cyborg_icon_override = 'modular_splurt/icons/mob/robots.dmi'
hat_offset = 3
if("Meka")
cyborg_base_icon = "mekaengi"
cyborg_icon_override = 'modular_splurt/icons/mob/robots_32x64.dmi'
hat_offset = 3
hasrest = TRUE
if("Haydee") // SPLURT Addon
cyborg_base_icon = "haydeeengi"
cyborg_icon_override = 'modular_splurt/icons/mob/robots.dmi'
@@ -144,8 +144,8 @@
var/list/visible_turfs = list()
// Is this camera located in or attached to a living thing? If so, assume the camera's loc is the living thing.
var/cam_location = isliving(active_camera.loc) ? active_camera.loc : active_camera
// Need to get camera's location or it
var/cam_location = get_atom_on_turf(active_camera)
// If we're not forcing an update for some reason and the cameras are in the same location,
// we don't need to update anything.
@@ -134,10 +134,8 @@ GLOBAL_VAR_INIT(running_create_and_destroy, FALSE)
ignore += typesof(/obj/machinery/rnd/production)
// This one sleeps too in it's AI code
ignore += typesof(/mob/living/simple_animal/hostile/swarmer)
for(var/obj/item/stack/stacktype in typesof(/obj/item/stack))
if(initial(stacktype.is_cyborg))
ignore += typesof(stacktype)
// Some stack objects can't be initialized outside a borg module
ignore += typesof(/obj/item/stack)
var/list/cached_contents = spawn_at.contents.Copy()
var/original_turf_type = spawn_at.type
+5
View File
@@ -13,3 +13,8 @@
2024-01-06:
Fabian272:
- spellcheck: Fixes naming of the Mechanical Pinches and Searing Tool in lathes.
2024-01-09:
Anonymous:
- rscadd: Added box of hugs into loadout.
AyyRobotics:
- rscadd: Added Engineering 'Meka'
@@ -104,12 +104,16 @@
name = "Towel"
path = /obj/item/reagent_containers/rag/towel
/datum/gear/backpack/hugbox
name = "Box of Hugs"
path = /obj/item/storage/box/hug
/datum/gear/backpack/shockcollar
name = "Shock Collar Kit"
path = /obj/item/storage/box/shockcollar
subcategory = LOADOUT_SUBCATEGORY_BACKPACK_TOYS
cost = 3
/datum/gear/backpack/standard_chastity_box
name = "Chastity Box"
path = /obj/item/storage/box/chastity_cage
Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 KiB

After

Width:  |  Height:  |  Size: 291 KiB