diff --git a/_build_dependencies.sh b/_build_dependencies.sh index 7e4a8ce153ec..b481c560f49e 100644 --- a/_build_dependencies.sh +++ b/_build_dependencies.sh @@ -6,11 +6,11 @@ export NODE_VERSION=20 # Stable Byond Major export STABLE_BYOND_MAJOR=515 # Stable Byond Minor -export STABLE_BYOND_MINOR=1620 +export STABLE_BYOND_MINOR=1628 # Beta Byond Major export BETA_BYOND_MAJOR=515 # Beta Byond Minor -export BETA_BYOND_MINOR=1620 +export BETA_BYOND_MINOR=1628 # Python version for mapmerge and other tools export PYTHON_VERSION=3.11.6 # RUSTG version diff --git a/_maps/map_files220/MetaStation/MetaStation.dmm b/_maps/map_files220/MetaStation/MetaStation.dmm index 4582c1cb5528..a302bd40984b 100644 --- a/_maps/map_files220/MetaStation/MetaStation.dmm +++ b/_maps/map_files220/MetaStation/MetaStation.dmm @@ -31463,7 +31463,7 @@ "cgH" = ( /obj/machinery/light/directional/north, /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ @@ -40123,7 +40123,7 @@ "cMx" = ( /obj/machinery/light/directional/north, /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ diff --git a/_maps/map_files220/cyberiad/cyberiad.dmm b/_maps/map_files220/cyberiad/cyberiad.dmm index 2df406d1bbd5..aac6a1494f79 100644 --- a/_maps/map_files220/cyberiad/cyberiad.dmm +++ b/_maps/map_files220/cyberiad/cyberiad.dmm @@ -31381,7 +31381,7 @@ /area/station/medical/morgue) "cvU" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ @@ -58059,7 +58059,7 @@ /area/station/maintenance/port) "ieC" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ @@ -61771,7 +61771,7 @@ /area/station/maintenance/aft) "jBJ" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ @@ -90288,7 +90288,7 @@ /area/station/security/permabrig) "tXI" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 8 }, /turf/simulated/floor/plasteel{ diff --git a/_maps/map_files220/delta/delta.dmm b/_maps/map_files220/delta/delta.dmm index 0392321909a9..c54c91d2386c 100644 --- a/_maps/map_files220/delta/delta.dmm +++ b/_maps/map_files220/delta/delta.dmm @@ -51122,8 +51122,8 @@ /area/station/hallway/secondary/entry) "eQP" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ - pixel_y = 6 +/obj/item/storage/surgical_tray{ + pixel_y = 8 }, /turf/simulated/floor/plasteel{ icon_state = "whiteblue" @@ -53347,8 +53347,8 @@ /area/station/maintenance/starboard) "fDY" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ - pixel_y = 6 +/obj/item/storage/surgical_tray{ + pixel_y = 8 }, /turf/simulated/floor/plasteel{ icon_state = "whiteblue" @@ -66351,8 +66351,8 @@ /area/station/service/theatre) "jHK" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ - pixel_y = 6 +/obj/item/storage/surgical_tray{ + pixel_y = 8 }, /turf/simulated/floor/plasteel{ dir = 1; @@ -104058,8 +104058,8 @@ /area/station/hallway/secondary/bridge) "vCt" = ( /obj/structure/table/tray, -/obj/item/storage/firstaid/surgery{ - pixel_y = 6 +/obj/item/storage/surgical_tray{ + pixel_y = 8 }, /turf/simulated/floor/plasteel{ dir = 1; diff --git a/_maps/map_files220/generic/centcomm.dmm b/_maps/map_files220/generic/centcomm.dmm index b5777d63a4bd..c8221c5c6e1d 100644 --- a/_maps/map_files220/generic/centcomm.dmm +++ b/_maps/map_files220/generic/centcomm.dmm @@ -12880,7 +12880,7 @@ /area/syndicate_mothership) "ize" = ( /obj/structure/table, -/obj/item/storage/firstaid/surgery{ +/obj/item/storage/surgical_tray{ pixel_y = 6 }, /obj/item/clothing/gloves/color/latex/nitrile, diff --git a/code/modules/food_and_drinks/food_base.dm b/code/modules/food_and_drinks/food_base.dm index d3c8247c6cc3..64facc6b031f 100644 --- a/code/modules/food_and_drinks/food_base.dm +++ b/code/modules/food_and_drinks/food_base.dm @@ -5,6 +5,7 @@ /obj/item/food resistance_flags = FLAMMABLE container_type = INJECTABLE + w_class = WEIGHT_CLASS_TINY var/filling_color = "#FFFFFF" //Used by sandwiches. var/junkiness = 0 //for junk food. used to lower human satiety. var/bitesize = 2 diff --git a/modular_ss220/balance/_balance.dme b/modular_ss220/balance/_balance.dme index 2d9559a712cb..2e1375cb0af3 100644 --- a/modular_ss220/balance/_balance.dme +++ b/modular_ss220/balance/_balance.dme @@ -2,6 +2,7 @@ #include "code/items/projectiles.dm" #include "code/items/weapons.dm" +#include "code/items/storage/surgical_tray.dm" #include "code/jobs/warden.dm" #include "code/mobs/aliens/larva.dm" #include "code/species/machine.dm" diff --git a/modular_ss220/balance/code/items/storage/surgical_tray.dm b/modular_ss220/balance/code/items/storage/surgical_tray.dm new file mode 100644 index 000000000000..c3c65d4b0692 --- /dev/null +++ b/modular_ss220/balance/code/items/storage/surgical_tray.dm @@ -0,0 +1,14 @@ +/obj/item/storage/surgical_tray/Initialize(mapload) + . = ..() + + QDEL_LIST_CONTENTS(contents) + + new /obj/item/scalpel(src) + new /obj/item/cautery(src) + new /obj/item/hemostat(src) + new /obj/item/retractor(src) + new /obj/item/FixOVein(src) + new /obj/item/surgicaldrill(src) + new /obj/item/circular_saw(src) + new /obj/item/bonegel(src) + new /obj/item/bonesetter(src) diff --git a/modular_ss220/objects/_objects.dme b/modular_ss220/objects/_objects.dme index 697afd755731..56083ab10a68 100644 --- a/modular_ss220/objects/_objects.dme +++ b/modular_ss220/objects/_objects.dme @@ -1,5 +1,9 @@ #include "_objects.dm" +// Mechs +#include "code/mecha/lockermech.dm" + +// Miscellaneous #include "code/beach_umbrella.dm" #include "code/beretta.dm" #include "code/big_bed.dm" diff --git a/modular_ss220/objects/code/mecha/lockermech.dm b/modular_ss220/objects/code/mecha/lockermech.dm new file mode 100644 index 000000000000..0f4dfe8be19e --- /dev/null +++ b/modular_ss220/objects/code/mecha/lockermech.dm @@ -0,0 +1,176 @@ +// Makeshift (Lockermech) +/obj/mecha/lockermech + name = "Шкафомех" + desc = "Шкафчик с украденными проводами, стойками, электроникой и шлюзовыми сервоприводами, грубо собранными в нечто, напоминающее мех." + icon = 'modular_ss220/objects/icons/mech.dmi' + icon_state = "lockermech" + initial_icon = "lockermech" + // It's made of scraps + max_integrity = 100 + lights_power = 5 + // Same speed as Ripley + step_in = 4 + armor = list(melee = 20, bullet = 10, laser = 10, energy = 0, bomb = 10, rad = 0, fire = 70, acid = 60) + internal_damage_threshold = 30 + max_equip = 2 + wreckage = /obj/structure/mecha_wreckage/lockermech + /// step_in while in normal pressure conditions + var/fast_pressure_step_in = 2 + /// step_in while in better pressure conditions + var/slow_pressure_step_in = 4 + var/list/cargo + /// You can fit a few things in this locker but not much. + var/cargo_capacity = 5 + +/obj/mecha/lockermech/go_out() + ..() + update_icon(UPDATE_OVERLAYS) + +/obj/mecha/lockermech/moved_inside(mob/living/carbon/human/H) + ..() + update_icon(UPDATE_OVERLAYS) + +/obj/mecha/lockermech/mmi_moved_inside(obj/item/mmi/mmi_as_oc, mob/user) + ..() + update_icon(UPDATE_OVERLAYS) + +/obj/mecha/lockermech/Move() + . = ..() + update_pressure() + +/obj/mecha/lockermech/proc/update_pressure() + if(thrusters_active) + return // Don't calculate this if they have thrusters on, this is calculated right after domove because of course it is + + var/turf/target_turf = get_turf(loc) + + if(lavaland_equipment_pressure_check(target_turf)) + step_in = fast_pressure_step_in + for(var/obj/item/mecha_parts/mecha_equipment/drill/lockermech/drill in equipment) + drill.equip_cooldown = initial(drill.equip_cooldown)/2 + else + step_in = slow_pressure_step_in + for(var/obj/item/mecha_parts/mecha_equipment/drill/lockermech/drill in equipment) + drill.equip_cooldown = initial(drill.equip_cooldown) + +/obj/mecha/lockermech/Exit(atom/movable/object) + LAZYINITLIST(cargo) + if(object in cargo) + return FALSE + return ..() + +/obj/mecha/lockermech/get_stats_part() + LAZYINITLIST(cargo) + var/output = ..() + output += "Cargo Compartment Contents: