Files
Bubberstation/code/_globalvars/lists/cargo.dm
SmArtKar 2c0f5d181a Datumizes pod types (#85033)
## About The Pull Request

Changes supply pods to use datums instead of a massive nested list to
store data and index defines as styles. Complete feature parity.

## Why It's Good For The Game
this is nightmare fuel to work with

![image](https://github.com/user-attachments/assets/851ea009-508b-4958-996e-d46a758b2f62)

and this is a sin against nature and god

![image](https://github.com/user-attachments/assets/6b0cd374-1305-4fe6-9ab6-4912c9cb4461)

![image](https://github.com/user-attachments/assets/88c83f60-af9d-4ea9-af5f-c0810a6d9c66)
ends up as

![image](https://github.com/user-attachments/assets/2cb9e264-895d-49b9-b228-e04ac1353ba1)
which is ???

Using a nested list to store pod data is a very bad idea, it has
horrible formatting, is unreadable without having index defines open in
a second tab and is not extendable. And as you can see above, if someone
added another pod type before 14th everything would break because other
pod type lists **__only have 8 elements__** instead of 10 like the
seethrough one does.

## Changelog
🆑
refactor: Pod code now uses datums instead of being a huge nested list
/🆑
2024-07-21 13:52:21 -07:00

18 lines
537 B
Plaintext

GLOBAL_LIST_INIT(discountable_packs, init_discountable_packs())
/proc/init_discountable_packs()
var/list/packs = list()
for(var/datum/supply_pack/prototype as anything in subtypesof(/datum/supply_pack))
var/discountable = initial(prototype.discountable)
if(discountable)
LAZYADD(packs[discountable], prototype)
return packs
GLOBAL_LIST_INIT(pack_discount_odds, list(
SUPPLY_PACK_STD_DISCOUNTABLE = 45,
SUPPLY_PACK_UNCOMMON_DISCOUNTABLE = 4,
SUPPLY_PACK_RARE_DISCOUNTABLE = 1,
))
GLOBAL_LIST_EMPTY(supplypod_loading_bays)