mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +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:
@@ -21,7 +21,7 @@
|
||||
var/atom/result = new dry_result
|
||||
if(!atom_target.compare_materials(result))
|
||||
var/warning = "custom_materials of [result.type] when dried compared to just spawned don't match"
|
||||
var/what_it_should_be = atom_target.get_materials_english_list()
|
||||
var/what_it_should_be = atom_target.transcribe_materials_list()
|
||||
stack_trace("[warning]. custom_materials should be [what_it_should_be].")
|
||||
qdel(result)
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
var/atom/result = new result_typepath
|
||||
if(!target.compare_materials(result))
|
||||
var/warning = "custom_materials of [result.type] when microwaved compared to just spawned don't match"
|
||||
var/what_it_should_be = target.get_materials_english_list()
|
||||
var/what_it_should_be = target.transcribe_materials_list()
|
||||
stack_trace("[warning]. custom_materials should be [what_it_should_be].")
|
||||
qdel(result)
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
var/atom/movable/result = new result_atom_type
|
||||
if(!prototype.compare_materials(result))
|
||||
var/warning = "custom_materials of [result.type] when processed compared to just spawned don't match"
|
||||
var/what_it_should_be = prototype.get_materials_english_list()
|
||||
var/what_it_should_be = prototype.transcribe_materials_list()
|
||||
//compose a text string containing the syntax and paths to use for editing the custom_materials var
|
||||
if(result.custom_materials)
|
||||
what_it_should_be += " (you can round values a bit)"
|
||||
|
||||
Reference in New Issue
Block a user