Skip to content

Commit

Permalink
Merge branch 'ss220club:master' into перевод-культа
Browse files Browse the repository at this point in the history
  • Loading branch information
VERG-SS220 authored Jan 25, 2024
2 parents 1f20cfd + 888644a commit b803dfc
Show file tree
Hide file tree
Showing 14 changed files with 218 additions and 22 deletions.
4 changes: 2 additions & 2 deletions _build_dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
4 changes: 2 additions & 2 deletions _maps/map_files220/MetaStation/MetaStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -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{
Expand Down Expand Up @@ -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{
Expand Down
8 changes: 4 additions & 4 deletions _maps/map_files220/cyberiad/cyberiad.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -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{
Expand Down Expand Up @@ -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{
Expand Down Expand Up @@ -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{
Expand Down Expand Up @@ -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{
Expand Down
16 changes: 8 additions & 8 deletions _maps/map_files220/delta/delta.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down Expand Up @@ -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"
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -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;
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files220/generic/centcomm.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down
1 change: 1 addition & 0 deletions code/modules/food_and_drinks/food_base.dm
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions modular_ss220/balance/_balance.dme
Original file line number Diff line number Diff line change
Expand Up @@ -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"
14 changes: 14 additions & 0 deletions modular_ss220/balance/code/items/storage/surgical_tray.dm
Original file line number Diff line number Diff line change
@@ -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)
4 changes: 4 additions & 0 deletions modular_ss220/objects/_objects.dme
Original file line number Diff line number Diff line change
@@ -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"
Expand Down
176 changes: 176 additions & 0 deletions modular_ss220/objects/code/mecha/lockermech.dm
Original file line number Diff line number Diff line change
@@ -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 += "<b>Cargo Compartment Contents:</b><div style='margin-left: 15px;'>"
if(length(cargo))
for(var/obj/cargo_item as anything in cargo)
output += "<a href='?src=[UID()];drop_from_cargo=[cargo_item.UID()]'>Unload</a> : [cargo_item]<br>"
else
output += "Nothing"
output += "</div>"
return output

/obj/mecha/lockermech/Topic(href, href_list)
. = ..()
LAZYINITLIST(cargo)
if(!href_list["drop_from_cargo"])
return

var/obj/cargo_to_unload = locateUID(href_list["drop_from_cargo"])
if(!cargo_to_unload || !(cargo_to_unload in cargo))
return

occupant_message("<span class='notice'>You unload [cargo_to_unload].</span>")
cargo_to_unload.forceMove(get_turf(src))
cargo -= cargo_to_unload
log_message("Unloaded [cargo_to_unload]. Cargo compartment capacity: [cargo_capacity - length(cargo)]")

/obj/mecha/lockermech/Destroy()
LAZYINITLIST(cargo)
for(var/atom/movable/thing in cargo)
thing.forceMove(loc)
step_rand(thing)
cargo.Cut()
return ..()

/obj/mecha/lockermech/ex_act(severity)
. = ..()
LAZYINITLIST(cargo)
for(var/thing in cargo)
var/obj/object = thing
if(prob(30 / severity))
cargo -= object
object.forceMove(drop_location())

/obj/mecha/lockermech/emag_act(mob/user)
if(!emagged)
emagged = TRUE
desc += "</br><span class='danger'>The mech's equipment slots spark dangerously!</span>"
return ..()

// Crafting
/datum/crafting_recipe/lockermech
name = "Locker Mech"
result = list(/obj/mecha/lockermech)
reqs = list(/obj/item/stack/cable_coil = 20,
/obj/item/stack/sheet/metal = 10,
/obj/item/storage/toolbox = 2, // For feet
/obj/item/tank/internals/oxygen = 1, // For air
/obj/item/airlock_electronics = 1, // You are stealing the motors from airlocks
/obj/item/extinguisher = 1, // For bastard pnumatics
/obj/item/c_tube = 1, // To make it airtight
/obj/item/flashlight = 1, // For the mech light
/obj/item/stack/tape_roll = 25, // ¯\_(ツ)_/¯
/obj/item/stock_parts/cell/high = 1,
/obj/item/stack/rods = 4) // To mount the equipment
tools = list(TOOL_WELDER, TOOL_SCREWDRIVER)
time = 200
category = CAT_ROBOT

/datum/crafting_recipe/lockermech_drill
name = "Locker Mech Exosuit Drill"
result = list(/obj/item/mecha_parts/mecha_equipment/drill/lockermech)
reqs = list(/obj/item/stack/cable_coil = 5,
/obj/item/stack/sheet/metal = 2,
/obj/item/surgicaldrill = 1)
tools = list(TOOL_SCREWDRIVER)
time = 50
category = CAT_ROBOT

/datum/crafting_recipe/lockermech_clamp
name = "Locker Mech Exosuit Clamp"
result = list(/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp/lockermech)
reqs = list(/obj/item/stack/cable_coil = 5,
/obj/item/stack/sheet/metal = 2,
/obj/item/wirecutters = 1) // Don't ask, its just for the grabby grabby thing
tools = list(TOOL_SCREWDRIVER)
time = 50
category = CAT_ROBOT

// Wreckage
/obj/structure/mecha_wreckage/lockermech
name = "\improper Обломки Шкафомеха"
desc = "Владелец данного изделия, на что он надеялся?..."
icon = 'modular_ss220/objects/icons/mech.dmi'
icon_state = "lockermech-broken"

// Equipment
/obj/item/mecha_parts/mecha_equipment/drill/lockermech
name = "locker mech exosuit drill"
desc = "Собранная из, скорее всего, краденых деталей, эта дрель не сравнится по эффективности с настоящей."
equip_cooldown = 60 // Its slow as shit
force = 10 // Its not very strong
drill_delay = 15

/obj/item/mecha_parts/mecha_equipment/drill/lockermech/can_attach(obj/mecha/M)
return istype(M, /obj/mecha/lockermech) && M.equipment.len < M.max_equip

/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp/lockermech
name = "locker mech clamp"
desc = "Беспорядочное расположение собранных вместе деталей, напоминающее зажим."
equip_cooldown = 25
dam_force = 10

/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp/lockermech/can_attach(obj/mecha/M)
return istype(M, /obj/mecha/lockermech) && M.equipment.len < M.max_equip
Binary file added modular_ss220/objects/icons/mech.dmi
Binary file not shown.
4 changes: 2 additions & 2 deletions tools/UpdatePaths/Scripts/23063_patch_pill.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
/obj/item/reagent_containers/food/pill/patch : /obj/item/reagent_containers/patch/@SUBTYPES{OLD}
/obj/item/reagent_containers/food/pill : /obj/item/reagent_containers/pill/@SUBTYPES{OLD}
/obj/item/reagent_containers/food/pill/patch : /obj/item/reagent_containers/patch/@SUBTYPES{@OLD}
/obj/item/reagent_containers/food/pill : /obj/item/reagent_containers/pill/@SUBTYPES{@OLD}
4 changes: 2 additions & 2 deletions tools/UpdatePaths/Scripts/23379_food_containers.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
/obj/item/reagent_containers/food/drinks/@SUBTYPES : /obj/item/reagent_containers/drinks/@SUBTYPES{OLD}
/obj/item/reagent_containers/food/@SUBTYPES : /obj/item/food/@SUBTYPES{OLD}
/obj/item/reagent_containers/food/drinks/@SUBTYPES : /obj/item/reagent_containers/drinks/@SUBTYPES{@OLD}
/obj/item/reagent_containers/food/@SUBTYPES : /obj/item/food/@SUBTYPES{@OLD}
2 changes: 1 addition & 1 deletion tools/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
pygit2==1.13.1
bidict==0.22.1
Pillow==10.0.1
Pillow==10.2.0
json5==0.9.14

# changelogs
Expand Down

0 comments on commit b803dfc

Please sign in to comment.