Ports Iconforge, uses for kitchen recipes (#16747)

* Port iconforge

* Convert kitchen_icons for the microwave to iconforge

* Fix to pass lint

* brings thsoe back

* Re-enable cross round caching for normal spritesheets

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
ShadowLarkens
2024-12-29 14:39:40 +01:00
committed by GitHub
co-authored by Kashargul
parent 845d0caffe
commit 6ab8ea768d
23 changed files with 838 additions and 153 deletions
@@ -1,26 +1,13 @@
/datum/asset/spritesheet/kitchen_recipes
/datum/asset/spritesheet_batched/kitchen_recipes
name = "kitchen_recipes"
/datum/asset/spritesheet/kitchen_recipes/create_spritesheets()
/datum/asset/spritesheet_batched/kitchen_recipes/create_spritesheets()
for(var/datum/recipe/R as anything in subtypesof(/datum/recipe))
add_atom_icon(R.result, sanitize_css_class_name("[R.type]"))
var/key = sanitize_css_class_name("[R.type]")
/datum/asset/spritesheet/kitchen_recipes/proc/add_atom_icon(typepath, id)
var/icon_file
var/icon_state
var/obj/preview_item = typepath
var/atom/item = R.result
var/datum/universal_icon/icon = get_display_icon_for(item)
if(!icon || !icon.icon_file)
continue
// if(ispath(ingredient_typepath, /datum/reagent))
// var/datum/reagent/reagent = ingredient_typepath
// preview_item = initial(reagent.default_container)
// var/datum/glass_style/style = GLOB.glass_style_singletons[preview_item]?[reagent]
// if(istype(style))
// icon_file = style.icon
// icon_state = style.icon_state
// icon_file ||= initial(preview_item.icon_preview) || initial(preview_item.icon)
// icon_state ||= initial(preview_item.icon_state_preview) || initial(preview_item.icon_state)
icon_file = initial(preview_item.icon)
icon_state = initial(preview_item.icon_state)
Insert("[id]", icon_file, icon_state)
insert_icon(key, icon)