mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-31 00:49:06 +01:00
Shuttle update: Part Three: The Merchants Invest (#7591)
This is part 3 of the work of the big shuttle update started by Poze (#5771, description not up to date.) with more to come as that pr is split up into more manageable chunks. (Previous part: #7457)
This commit is contained in:
@@ -411,6 +411,7 @@
|
||||
/obj/random/voidsuit
|
||||
name = "random voidsuit"
|
||||
var/damaged = 0
|
||||
var/for_vox = FALSE
|
||||
var/list/suitmap = list(
|
||||
/obj/item/clothing/suit/space/void = /obj/item/clothing/head/helmet/space/void,
|
||||
/obj/item/clothing/suit/space/void/engineering = /obj/item/clothing/head/helmet/space/void/engineering,
|
||||
@@ -419,7 +420,13 @@
|
||||
/obj/item/clothing/suit/space/void/security = /obj/item/clothing/head/helmet/space/void/security,
|
||||
/obj/item/clothing/suit/space/void/atmos = /obj/item/clothing/head/helmet/space/void/atmos,
|
||||
/obj/item/clothing/suit/space/void/merc = /obj/item/clothing/head/helmet/space/void/merc,
|
||||
/obj/item/clothing/suit/space/void/captain = /obj/item/clothing/head/helmet/space/void/captain
|
||||
/obj/item/clothing/suit/space/void/captain = /obj/item/clothing/head/helmet/space/void/captain,
|
||||
/obj/item/clothing/suit/space/void/cruiser = /obj/item/clothing/head/helmet/space/void/cruiser,
|
||||
/obj/item/clothing/suit/space/void/frontier = /obj/item/clothing/head/helmet/space/void/frontier,
|
||||
/obj/item/clothing/suit/space/void/hos = /obj/item/clothing/head/helmet/space/void/hos,
|
||||
/obj/item/clothing/suit/space/void/lancer = /obj/item/clothing/head/helmet/space/void/lancer,
|
||||
/obj/item/clothing/suit/space/void/sci = /obj/item/clothing/head/helmet/space/void/sci,
|
||||
/obj/item/clothing/suit/space/void/sol = /obj/item/clothing/head/helmet/space/void/sol
|
||||
)
|
||||
problist = list(
|
||||
/obj/item/clothing/suit/space/void = 2,
|
||||
@@ -429,7 +436,13 @@
|
||||
/obj/item/clothing/suit/space/void/security = 1,
|
||||
/obj/item/clothing/suit/space/void/atmos = 1.5,
|
||||
/obj/item/clothing/suit/space/void/merc = 0.5,
|
||||
/obj/item/clothing/suit/space/void/captain = 0.3
|
||||
/obj/item/clothing/suit/space/void/captain = 0.3,
|
||||
/obj/item/clothing/suit/space/void/cruiser = 0.5,
|
||||
/obj/item/clothing/suit/space/void/frontier = 1,
|
||||
/obj/item/clothing/suit/space/void/hos = 0.3,
|
||||
/obj/item/clothing/suit/space/void/lancer = 0.3,
|
||||
/obj/item/clothing/suit/space/void/sci = 2,
|
||||
/obj/item/clothing/suit/space/void/sol = 0.5
|
||||
)
|
||||
has_postspawn = TRUE
|
||||
|
||||
@@ -437,16 +450,36 @@
|
||||
damaged = _damaged
|
||||
. = ..(mapload)
|
||||
|
||||
/obj/random/voidsuit/post_spawn(obj/item/clothing/suit/space/void/suit)
|
||||
/obj/random/voidsuit/post_spawn(obj/item/clothing/suit/space/suit)
|
||||
var/helmet = suitmap[suit.type]
|
||||
if (helmet)
|
||||
new helmet(loc)
|
||||
else
|
||||
log_debug("random_obj (voidsuit): Type [suit.type] was unable to spawn a matching helmet!")
|
||||
new /obj/item/clothing/shoes/magboots(loc)
|
||||
if(!for_vox)
|
||||
new /obj/item/clothing/shoes/magboots(loc)
|
||||
else
|
||||
new /obj/item/clothing/shoes/magboots/vox(loc)
|
||||
new /obj/item/clothing/gloves/yellow/vox(loc)
|
||||
if (damaged && prob(60))
|
||||
suit.create_breaches(pick(BRUTE, BURN), rand(1, 5))
|
||||
|
||||
/obj/random/voidsuit/vox
|
||||
name = "random vox voidsuit"
|
||||
for_vox = TRUE
|
||||
suitmap = list(
|
||||
/obj/item/clothing/suit/space/vox/carapace = /obj/item/clothing/head/helmet/space/vox/carapace,
|
||||
/obj/item/clothing/suit/space/vox/medic = /obj/item/clothing/head/helmet/space/vox/medic,
|
||||
/obj/item/clothing/suit/space/vox/pressure = /obj/item/clothing/head/helmet/space/vox/pressure,
|
||||
/obj/item/clothing/suit/space/vox/stealth = /obj/item/clothing/head/helmet/space/vox/stealth
|
||||
)
|
||||
problist = list(
|
||||
/obj/item/clothing/suit/space/vox/carapace = 1,
|
||||
/obj/item/clothing/suit/space/vox/medic = 1,
|
||||
/obj/item/clothing/suit/space/vox/pressure = 1,
|
||||
/obj/item/clothing/suit/space/vox/stealth = 1
|
||||
)
|
||||
|
||||
/obj/random/vendor
|
||||
name = "random vendor"
|
||||
var/depleted = 0
|
||||
|
||||
@@ -676,14 +676,13 @@
|
||||
"trashcart" = "trashcartopen",
|
||||
"critter" = "critteropen",
|
||||
"largemetal" = "largemetalopen",
|
||||
"medicalcrate" = "medicalcrateopen"
|
||||
"medicalcrate" = "medicalcrateopen",
|
||||
"tcflcrate" = "tcflcrateopen"
|
||||
)
|
||||
|
||||
|
||||
/obj/structure/closet/crate/loot/Initialize(mapload, var/_rarity = 1, var/_quantity = 10)
|
||||
/obj/structure/closet/crate/loot/Initialize(mapload)
|
||||
. = ..()
|
||||
rarity = _rarity
|
||||
quantity = _quantity
|
||||
|
||||
spawntypes = list(
|
||||
"1" = STOCK_RARE_PROB * rarity,
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
|
||||
/obj/structure/mirror/merchant/attack_hand(var/mob/living/carbon/human/user)
|
||||
if(istype(get_area(src),/area/merchant_station))
|
||||
if(istype(user) && user.mind && user.mind.assigned_role == "Merchant" && user.species.name != "Vox")
|
||||
if(istype(user) && user.mind && (user.mind.assigned_role == "Merchant" || user.mind.assigned_role == "Merchants Assistant") && user.species.name != "Vox")
|
||||
var/choice = input("Do you wish to become a Vox? This is not reversible.") as null|anything in list("No","Yes")
|
||||
if(choice == "Yes")
|
||||
user.set_species("Vox")
|
||||
|
||||
Reference in New Issue
Block a user