mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-09 00:13:55 +00:00
## About The Pull Request Revival of #72881 A new alt click window with a tarkov-y loading spinner. Replaces the object item window in stat panel. ## Videos <details> <summary>vids</summary> toggleable grouping:  now lists the floor as first obj:  in action:  </details> ## features: - search by name - 515 image generator is much faster than alt click menu - opening a gargantuan amount of items shouldnt freeze your screen - groups similar items together in stacks by default, toggleable - shows tile as first item - <kbd>Shift</kbd> and <kbd>Ctrl</kbd> compatible with LMB 🖱️ - RMB points points at items (sry i could not get MMB working) - key <kbd>Esc</kbd> to exit the window. For devs: - A new image generation tech. - An error refetch mechanic to the Image component - It does not "smart track" the items being added to the pile, just reopen or refresh. This was a design decision. ## Why It's Good For The Game Honestly I just dislike the stat panel Fixes #53824 Fixes  ## Changelog 🆑 add: Added a loot window for alt-clicking tiles. del: Removed the item browser from the stat panel. /🆑 --------- Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Co-authored-by: AnturK <AnturK@users.noreply.github.com> Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
29 lines
801 B
Plaintext
29 lines
801 B
Plaintext
/// Maps icon names to ref values
|
|
/datum/asset/json/icon_ref_map
|
|
name = "icon_ref_map"
|
|
early = TRUE
|
|
|
|
/datum/asset/json/icon_ref_map/generate()
|
|
var/list/data = list() //"icons/obj/drinks.dmi" => "[0xc000020]"
|
|
|
|
//var/start = "0xc000000"
|
|
var/value = 0
|
|
|
|
while(TRUE)
|
|
value += 1
|
|
var/ref = "\[0xc[num2text(value,6,16)]\]"
|
|
var/mystery_meat = locate(ref)
|
|
|
|
if(isicon(mystery_meat))
|
|
if(!isfile(mystery_meat)) // Ignore the runtime icons for now
|
|
continue
|
|
var/path = get_icon_dmi_path(mystery_meat) //Try to get the icon path
|
|
if(path)
|
|
data[path] = ref
|
|
else if(mystery_meat)
|
|
continue; //Some other non-icon resource, ogg/json/whatever
|
|
else //Out of resources end this, could also try to end this earlier as soon as runtime generated icons appear but eh
|
|
break;
|
|
|
|
return data
|