mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
Unit test material checks are now performed on all crafting recipes by default. All stack recipes now transfer mats to the results (#92620)
## About The Pull Request Extends the part of the crafting unit test that ensures consistency between the total mats of the components of a recipe (or rather, the result of said recipe) and a generic instance of the same type as its result, previously only implemented on food recipes. ## Why It's Good For The Game This ensures a degree of consistency with the material composition of various objects in the game. I couldn't do it in the original PR as that one was too big already and it took months to get it merged, and have the relative bugs fixed. Currently a WIP as I slowly deal with the unit test reports. ## Changelog 🆑 refactor: Follow-up to the crafting/material refactor from months ago. All objects crafted with stacks now inherit their mat composition (not necessarily the effects and color) by default, while previously only a few things like chair, sinks and toilets did. Report any object looking or behaving weirdly as a result. fix: The material composition of ammo boxes is no longer a 1/10 of what it's supposed to be. It was a shitty hack to make it harder to recycle empty ammo boxes. Instead, they lose materials as they're emptied now. /🆑
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
set_dir_on_move = FALSE
|
||||
flags_ricochet = RICOCHET_HARD
|
||||
receive_ricochet_chance_mod = 0.5
|
||||
custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT)
|
||||
var/state = WINDOW_OUT_OF_FRAME
|
||||
var/reinf = FALSE
|
||||
var/heat_resistance = 800
|
||||
@@ -495,6 +496,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/unanchored/spawner, 0)
|
||||
glass_type = /obj/item/stack/sheet/rglass
|
||||
rad_insulation = RAD_LIGHT_INSULATION
|
||||
receive_ricochet_chance_mod = 1.1
|
||||
custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT)
|
||||
|
||||
//this is shitcode but all of construction is shitcode and needs a refactor, it works for now
|
||||
//If you find this like 4 years later and construction still hasn't been refactored, I'm so sorry for this
|
||||
@@ -630,6 +632,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/unanchored/spawner,
|
||||
glass_type = /obj/item/stack/sheet/plasmaglass
|
||||
rad_insulation = RAD_MEDIUM_INSULATION
|
||||
glass_material_datum = /datum/material/alloy/plasmaglass
|
||||
custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT)
|
||||
|
||||
/datum/armor/window_plasma
|
||||
melee = 80
|
||||
@@ -660,6 +663,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/plasma/spawner, 0)
|
||||
glass_type = /obj/item/stack/sheet/plasmarglass
|
||||
rad_insulation = RAD_HEAVY_INSULATION
|
||||
glass_material_datum = /datum/material/alloy/plasmaglass
|
||||
custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT)
|
||||
|
||||
/datum/armor/reinforced_plasma
|
||||
melee = 80
|
||||
@@ -705,6 +709,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw
|
||||
smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
glass_amount = 2
|
||||
custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 2)
|
||||
|
||||
/obj/structure/window/fulltile/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
if(the_rcd.mode == RCD_DECONSTRUCT)
|
||||
@@ -726,6 +731,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw
|
||||
smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
glass_amount = 2
|
||||
custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT * 2)
|
||||
|
||||
/obj/structure/window/plasma/fulltile/unanchored
|
||||
anchored = FALSE
|
||||
@@ -743,6 +749,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw
|
||||
smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
glass_amount = 2
|
||||
custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = SHEET_MATERIAL_AMOUNT)
|
||||
|
||||
/obj/structure/window/reinforced/plasma/fulltile/unanchored
|
||||
anchored = FALSE
|
||||
@@ -763,6 +770,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw
|
||||
smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE
|
||||
glass_amount = 2
|
||||
custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = SHEET_MATERIAL_AMOUNT)
|
||||
|
||||
/obj/structure/window/reinforced/fulltile/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
if(the_rcd.mode == RCD_DECONSTRUCT)
|
||||
@@ -1000,6 +1008,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw
|
||||
icon = 'icons/obj/smooth_structures/structure_variations.dmi'
|
||||
icon_state = "clockwork_window-single"
|
||||
glass_type = /obj/item/stack/sheet/bronze
|
||||
custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 1)
|
||||
|
||||
MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/bronze/spawner, 0)
|
||||
|
||||
@@ -1018,6 +1027,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/bronze/spawner, 0)
|
||||
obj_flags = CAN_BE_HIT
|
||||
max_integrity = 50
|
||||
glass_amount = 2
|
||||
custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 2)
|
||||
|
||||
/obj/structure/window/bronze/fulltile/unanchored
|
||||
anchored = FALSE
|
||||
|
||||
Reference in New Issue
Block a user