mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2026-08-22 20:26:47 +01:00
Merge remote-tracking branch 'upstream/master' into infinidorms-hotel-update
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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 |
Reference in New Issue
Block a user