mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-25 16:45:42 +00:00
## About The Pull Request - Gets rid of the item addition copypaste code (Why nobody did this for 7 years is beyond me) - Adds variable and proper checks for if a module is already installed (Borgs will no longer eat up unlimited masses of lavaproof track upgrades, among others) (Technically this never allows duplicates, at least currently, as I don't recall any modules being capable to used multiple times intentionally without also deleting themselves with single_use) - Unsingleletters most if not all of `robot_upgrades.dm` ## Why It's Good For The Game Makes the borg module code much cleaner, makes it significantly easier for new ones to be added. Fixes unintended behaviour with some modules being able to stack, which until now was always solved by copypasting code. ## Changelog 🆑 fix: Fixed some borg modules just being constantly eaten up by borgs even when they shouldn't allow duplicates refactor: Borg module code now has better handling for adding/removing items, and to prevent duplicate module usage (Unless one wishes to override the behaviour. /🆑 --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: san7890 <the@san7890.com>
92 lines
3.0 KiB
Plaintext
92 lines
3.0 KiB
Plaintext
/obj/effect/spawner/random/exotic
|
|
name = "exotic spawner"
|
|
desc = "Super duper rare stuff."
|
|
|
|
/obj/effect/spawner/random/exotic/technology
|
|
name = "technology spawner"
|
|
icon_state = "disk"
|
|
spawn_loot_count = 2
|
|
loot = list( // Space loot spawner. Couple of random bits of technology-adjacent stuff including anomaly cores and BEPIS techs.
|
|
/obj/item/raw_anomaly_core/random,
|
|
/obj/item/disk/design_disk/bepis,
|
|
/obj/item/computer_disk/syndicate/camera_app,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/languagebook
|
|
name = "language book spawner"
|
|
icon_state = "book"
|
|
loot = list( // A single roundstart species language book.
|
|
/obj/item/language_manual/roundstart_species = 100,
|
|
/obj/item/book/granter/sign_language = 10,
|
|
/obj/item/language_manual/roundstart_species/five = 3,
|
|
/obj/item/language_manual/roundstart_species/unlimited = 1,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/tool
|
|
name = "exotic tool spawner"
|
|
icon_state = "wrench"
|
|
loot = list( // Some sort of random and rare tool.
|
|
/obj/effect/spawner/random/engineering/tool_alien,
|
|
/obj/effect/spawner/random/medical/surgery_tool_alien,
|
|
/obj/effect/spawner/random/engineering/tool_advanced,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/syndie
|
|
name = "syndie cosmetic spawner"
|
|
icon_state = "syndicate"
|
|
spawn_loot_count = 2
|
|
loot = list( // A selection of cosmetic syndicate items. Just a couple. No space suits or weapons.
|
|
/obj/effect/spawner/random/clothing/syndie = 8,
|
|
/obj/item/storage/fancy/cigarettes/cigpack_syndicate = 1,
|
|
/obj/effect/spawner/random/entertainment/cigarette_pack = 1,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/antag_gear_weak
|
|
name = "antag gear weak"
|
|
icon_state = "syndi_toolbox"
|
|
loot = list(
|
|
/obj/item/storage/medkit/regular = 45,
|
|
/obj/item/storage/medkit/toxin = 35,
|
|
/obj/item/storage/medkit/brute = 27,
|
|
/obj/item/storage/medkit/fire = 27,
|
|
/obj/item/storage/toolbox/syndicate = 12,
|
|
/obj/item/borg/upgrade/diamond_drill = 3,
|
|
/obj/item/knife/butcher = 14,
|
|
/obj/item/clothing/glasses/night = 10,
|
|
/obj/item/pickaxe/drill/diamonddrill = 6,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/antag_gear
|
|
name = "antag gear"
|
|
icon_state = "esword"
|
|
loot = list(
|
|
/obj/item/clothing/glasses/science/night = 15,
|
|
/obj/item/shield/riot = 12,
|
|
/obj/item/stack/sheet/mineral/diamond{amount = 15} = 5,
|
|
/obj/item/stack/sheet/mineral/uranium{amount = 15} = 5,
|
|
/obj/item/stack/sheet/mineral/plasma{amount = 15} = 5,
|
|
/obj/item/stack/sheet/mineral/gold{amount = 15} = 5,
|
|
/obj/item/grenade/clusterbuster/smoke = 15,
|
|
/obj/item/clothing/under/chameleon = 13,
|
|
/obj/item/knife/combat = 10,
|
|
/obj/item/implantcase/deathrattle = 5,
|
|
/obj/item/storage/fancy/cigarettes/cigpack_syndicate = 1,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/snow_gear
|
|
name = "snow gear"
|
|
icon_state = "snowman"
|
|
loot = list(
|
|
/obj/item/toy/snowball = 6,
|
|
/obj/item/stack/sheet/mineral/snow{amount = 25} = 2,
|
|
/obj/item/shovel = 2,
|
|
)
|
|
|
|
/obj/effect/spawner/random/exotic/ripley
|
|
name = "ripley spawner"
|
|
icon_state = "ripley"
|
|
loot = list(
|
|
/obj/structure/mecha_wreckage/ripley = 3,
|
|
/obj/vehicle/sealed/mecha/ripley/mining = 1,
|
|
)
|