Upstream Sync
Syncs with ParadiseSS13/Paradise and fixes merge conflicts.
@@ -317,6 +317,7 @@
|
||||
if(STATE_CANCELSHUTTLE)
|
||||
dat = confirm_menu("cancel the shuttle","cancelshuttle2")
|
||||
if(STATE_MESSAGELIST)
|
||||
dat += "\[ <A HREF='?src=\ref[src];main'>Back</A> \]<BR>"
|
||||
dat += "Messages:"
|
||||
for(var/i = 1; i<=messagetitle.len; i++)
|
||||
dat += "<BR><A HREF='?src=\ref[src];viewmessage;message-num=[i]'>[messagetitle[i]]</A>"
|
||||
|
||||
@@ -40,13 +40,14 @@
|
||||
|
||||
face_atom(A) // change direction to face what you clicked on
|
||||
|
||||
if(aiCamera.in_camera_mode)
|
||||
aiCamera.camera_mode_off()
|
||||
if(is_component_functioning("camera"))
|
||||
aiCamera.captureimage(A, usr)
|
||||
else
|
||||
src << "<span class='userdanger'>Your camera isn't functional.</span>"
|
||||
return
|
||||
if(aiCamera)
|
||||
if(aiCamera.in_camera_mode)
|
||||
aiCamera.camera_mode_off()
|
||||
if(is_component_functioning("camera"))
|
||||
aiCamera.captureimage(A, usr)
|
||||
else
|
||||
src << "<span class='userdanger'>Your camera isn't functional.</span>"
|
||||
return
|
||||
|
||||
/*
|
||||
cyborg restrained() currently does nothing
|
||||
|
||||
@@ -1114,11 +1114,28 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee
|
||||
/datum/supply_packs/autodrobe
|
||||
name = "Autodrobe Supply crate"
|
||||
contains = list(/obj/item/weapon/vending_refill/autodrobe,
|
||||
/obj/item/weapon/vending_refill/autodrobe,
|
||||
/obj/item/weapon/vending_refill/autodrobe)
|
||||
cost = 15
|
||||
containertype = /obj/structure/closet/crate
|
||||
containername = "autodrobe supply crate"
|
||||
group = "Operations"
|
||||
|
||||
/datum/supply_packs/clothingvendor
|
||||
name = "Clothing Vendor Supply crate"
|
||||
contains = list(/obj/item/weapon/vending_refill/hatdispenser,
|
||||
/obj/item/weapon/vending_refill/hatdispenser,
|
||||
/obj/item/weapon/vending_refill/hatdispenser,
|
||||
/obj/item/weapon/vending_refill/suitdispenser,
|
||||
/obj/item/weapon/vending_refill/suitdispenser,
|
||||
/obj/item/weapon/vending_refill/suitdispenser,
|
||||
/obj/item/weapon/vending_refill/shoedispenser,
|
||||
/obj/item/weapon/vending_refill/shoedispenser,
|
||||
/obj/item/weapon/vending_refill/shoedispenser)
|
||||
cost = 30
|
||||
containertype = /obj/structure/closet/crate
|
||||
containername = "clothing vendor supply crate"
|
||||
group = "Operations"
|
||||
|
||||
/datum/supply_packs/mafia
|
||||
name = "Mafia Supply crate"
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
M << "<B>Your service has not gone unrewarded, however. Studying under [H.real_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap."
|
||||
M.update_power_buttons()
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(M), slot_head)
|
||||
|
||||
@@ -163,7 +163,7 @@
|
||||
del(wizard_mob.l_store)
|
||||
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/device/radio/headset(wizard_mob), slot_l_ear)
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/under/lightpurple(wizard_mob), slot_w_uniform)
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(wizard_mob), slot_w_uniform)
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(wizard_mob), slot_shoes)
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(wizard_mob), slot_wear_suit)
|
||||
wizard_mob.equip_to_slot_or_del(new /obj/item/clothing/head/wizard(wizard_mob), slot_head)
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
/datum/job/civilian/equip(var/mob/living/carbon/human/H)
|
||||
if(!H) return 0
|
||||
H.equip_or_collect(new /obj/item/clothing/under/color/grey(H), slot_w_uniform)
|
||||
H.equip_or_collect(new /obj/item/clothing/under/color/random(H), slot_w_uniform)
|
||||
H.equip_or_collect(new /obj/item/clothing/shoes/black(H), slot_shoes)
|
||||
if(H.backbag == 1)
|
||||
H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H), slot_r_hand)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
dir = 8
|
||||
idle_power_usage = 250
|
||||
active_power_usage = 500
|
||||
|
||||
|
||||
/obj/machinery/sleep_console/power_change()
|
||||
if(stat & BROKEN)
|
||||
icon_state = "console-p"
|
||||
@@ -24,7 +24,7 @@
|
||||
spawn(rand(0, 15))
|
||||
src.icon_state = "console-p"
|
||||
stat |= NOPOWER
|
||||
|
||||
|
||||
/obj/machinery/sleep_console/New()
|
||||
..()
|
||||
component_parts = list()
|
||||
@@ -35,8 +35,8 @@
|
||||
RefreshParts()
|
||||
findsleeper()
|
||||
|
||||
/obj/machinery/sleep_console/RefreshParts()
|
||||
|
||||
/obj/machinery/sleep_console/RefreshParts()
|
||||
|
||||
/obj/machinery/sleep_console/process()
|
||||
if(stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
@@ -67,16 +67,16 @@
|
||||
src.connected = sleepernew
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
/obj/machinery/sleep_console/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
|
||||
if (istype(G, /obj/item/weapon/screwdriver))
|
||||
default_deconstruction_screwdriver(user, "console-p", "console", G)
|
||||
return
|
||||
|
||||
return
|
||||
|
||||
if (istype(G, /obj/item/weapon/wrench))
|
||||
if(panel_open)
|
||||
user << "<span class='notice'>Close the maintenance panel first.</span>"
|
||||
return
|
||||
return
|
||||
if(dir == 4)
|
||||
orient = "LEFT"
|
||||
dir = 8
|
||||
@@ -84,11 +84,11 @@
|
||||
orient = "RIGHT"
|
||||
dir = 4
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
|
||||
|
||||
if(exchange_parts(user, G))
|
||||
return
|
||||
|
||||
default_deconstruction_crowbar(G)
|
||||
default_deconstruction_crowbar(G)
|
||||
|
||||
/obj/machinery/sleep_console/attack_ai(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
@@ -102,7 +102,7 @@
|
||||
if(stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
if (panel_open)
|
||||
user << "<span class='notice'>Close the maintenance panel first.</span>"
|
||||
user << "<span class='notice'>Close the maintenance panel first.</span>"
|
||||
return
|
||||
if (!src.connected)
|
||||
findsleeper()
|
||||
@@ -213,9 +213,9 @@
|
||||
var/injection_chems = list()
|
||||
idle_power_usage = 1250
|
||||
active_power_usage = 2500
|
||||
|
||||
|
||||
l_color = "#7BF9FF"
|
||||
|
||||
|
||||
power_change()
|
||||
..()
|
||||
if(!(stat & (BROKEN|NOPOWER)))
|
||||
@@ -249,8 +249,8 @@
|
||||
|
||||
injection_chems = possible_chems[I]
|
||||
efficiency = E
|
||||
min_health = -E * 25
|
||||
|
||||
min_health = -E * 25
|
||||
|
||||
/obj/machinery/sleeper/process()
|
||||
if(filtering > 0)
|
||||
if(beaker)
|
||||
@@ -285,21 +285,21 @@
|
||||
else
|
||||
user << "\red The sleeper has a beaker already."
|
||||
return
|
||||
|
||||
|
||||
if (istype(G, /obj/item/weapon/screwdriver))
|
||||
if(src.occupant)
|
||||
user << "<span class='notice'>The maintenance panel is locked.</span>"
|
||||
return
|
||||
return
|
||||
default_deconstruction_screwdriver(user, "sleeper-o", "sleeper-open", G)
|
||||
return
|
||||
|
||||
return
|
||||
|
||||
if (istype(G, /obj/item/weapon/wrench))
|
||||
if(src.occupant)
|
||||
user << "<span class='notice'>The scanner is occupied.</span>"
|
||||
return
|
||||
return
|
||||
if(panel_open)
|
||||
user << "<span class='notice'>Close the maintenance panel first.</span>"
|
||||
return
|
||||
return
|
||||
if(dir == 4)
|
||||
orient = "LEFT"
|
||||
dir = 8
|
||||
@@ -307,16 +307,16 @@
|
||||
orient = "RIGHT"
|
||||
dir = 4
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
|
||||
|
||||
if(exchange_parts(user, G))
|
||||
return
|
||||
|
||||
default_deconstruction_crowbar(G)
|
||||
|
||||
default_deconstruction_crowbar(G)
|
||||
|
||||
if(istype(G, /obj/item/weapon/grab))
|
||||
if(panel_open)
|
||||
user << "\blue <b>Close the maintenance panel first.</b>"
|
||||
return
|
||||
return
|
||||
if(!ismob(G:affecting))
|
||||
return
|
||||
if(src.occupant)
|
||||
@@ -374,7 +374,7 @@
|
||||
qdel(src)
|
||||
return
|
||||
return
|
||||
|
||||
|
||||
/obj/machinery/sleeper/emp_act(severity)
|
||||
if(filtering)
|
||||
toggle_filter()
|
||||
@@ -396,9 +396,6 @@
|
||||
M.AdjustParalysis(-4)
|
||||
M.AdjustWeakened(-4)
|
||||
M.AdjustStunned(-4)
|
||||
M.Paralyse(1)
|
||||
M.Weaken(1)
|
||||
M.Stun(1)
|
||||
if (M:reagents.get_reagent_amount("inaprovaline") < 5)
|
||||
M:reagents.add_reagent("inaprovaline", 5)
|
||||
return
|
||||
@@ -512,7 +509,7 @@
|
||||
return
|
||||
if(panel_open)
|
||||
user << "\blue <B>Close the maintenance panel first.</B>"
|
||||
return
|
||||
return
|
||||
if(occupant)
|
||||
user << "\blue <B>The sleeper is already occupied!</B>"
|
||||
return
|
||||
|
||||
@@ -265,7 +265,10 @@ to destroy them and players will be able to make replacements.
|
||||
/obj/machinery/vending/snack = "Getmore Chocolate Corp",
|
||||
/obj/machinery/vending/cola = "Robust Softdrinks",
|
||||
/obj/machinery/vending/cigarette = "ShadyCigs Deluxe",
|
||||
/obj/machinery/vending/autodrobe = "AutoDrobe")
|
||||
/obj/machinery/vending/autodrobe = "AutoDrobe",
|
||||
/obj/machinery/vending/hatdispenser = "Hatlord 9000",
|
||||
/obj/machinery/vending/suitdispenser = "Suitlord 9000",
|
||||
/obj/machinery/vending/shoedispenser = "Shoelord 9000")
|
||||
|
||||
/obj/item/weapon/circuitboard/vendor/attackby(obj/item/I, mob/user)
|
||||
if(istype(I, /obj/item/weapon/screwdriver))
|
||||
|
||||
@@ -718,15 +718,6 @@
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sosjerky = 30,/obj/item/weapon/reagent_containers/food/snacks/no_raisin = 20,/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie = 30,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers = 25)
|
||||
refill_canister = /obj/item/weapon/vending_refill/snack
|
||||
/obj/machinery/vending/chinese
|
||||
name = "Mr. Chang"
|
||||
desc = "A self-serving chinese food machine, for all your chinese food needs."
|
||||
product_slogans = "Taste 5000 years of culture!"
|
||||
icon_state = "snack"
|
||||
products = list(/obj/item/weapon/reagent_containers/food/snacks/chinese/chowmein = 5, /obj/item/weapon/reagent_containers/food/snacks/chinese/tao = 5, /obj/item/weapon/reagent_containers/food/snacks/chinese/newdles = 5,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chinese/rice = 5, /obj/item/weapon/reagent_containers/food/snacks/wingfangchu = 5)
|
||||
prices = list(/obj/item/weapon/reagent_containers/food/snacks/chinese/chowmein = 50, /obj/item/weapon/reagent_containers/food/snacks/chinese/tao = 50, /obj/item/weapon/reagent_containers/food/snacks/chinese/newdles = 50,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chinese/rice = 50, /obj/item/weapon/reagent_containers/food/snacks/wingfangchu = 50)
|
||||
|
||||
/obj/machinery/vending/snack/New()
|
||||
..()
|
||||
@@ -738,6 +729,16 @@
|
||||
component_parts += new /obj/item/weapon/vending_refill/snack(0)
|
||||
component_parts += new /obj/item/weapon/vending_refill/snack(0)
|
||||
|
||||
/obj/machinery/vending/chinese
|
||||
name = "Mr. Chang"
|
||||
desc = "A self-serving chinese food machine, for all your chinese food needs."
|
||||
product_slogans = "Taste 5000 years of culture!"
|
||||
icon_state = "snack"
|
||||
products = list(/obj/item/weapon/reagent_containers/food/snacks/chinese/chowmein = 5, /obj/item/weapon/reagent_containers/food/snacks/chinese/tao = 5, /obj/item/weapon/reagent_containers/food/snacks/chinese/newdles = 5,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chinese/rice = 5, /obj/item/weapon/reagent_containers/food/snacks/wingfangchu = 5)
|
||||
prices = list(/obj/item/weapon/reagent_containers/food/snacks/chinese/chowmein = 50, /obj/item/weapon/reagent_containers/food/snacks/chinese/tao = 50, /obj/item/weapon/reagent_containers/food/snacks/chinese/newdles = 50,
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chinese/rice = 50, /obj/item/weapon/reagent_containers/food/snacks/wingfangchu = 50)
|
||||
|
||||
/obj/machinery/vending/cola
|
||||
name = "Robust Softdrinks"
|
||||
desc = "A softdrink vendor provided by Robust Industries, LLC."
|
||||
@@ -752,16 +753,6 @@
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb = 20,/obj/item/weapon/reagent_containers/food/drinks/cans/starkist = 20,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up = 20)
|
||||
refill_canister = /obj/item/weapon/vending_refill/cola
|
||||
//This one's from bay12
|
||||
/obj/machinery/vending/cart
|
||||
name = "PTech"
|
||||
desc = "Cartridges for PDAs"
|
||||
product_slogans = "Carts to go!"
|
||||
icon_state = "cart"
|
||||
icon_deny = "cart-deny"
|
||||
products = list(/obj/item/weapon/cartridge/medical = 10,/obj/item/weapon/cartridge/engineering = 10,/obj/item/weapon/cartridge/security = 10,
|
||||
/obj/item/weapon/cartridge/janitor = 10,/obj/item/weapon/cartridge/signal/toxins = 10,/obj/item/device/pda/heads = 10,
|
||||
/obj/item/weapon/cartridge/captain = 3,/obj/item/weapon/cartridge/quartermaster = 10)
|
||||
|
||||
/obj/machinery/vending/cola/New()
|
||||
..()
|
||||
@@ -773,6 +764,17 @@
|
||||
component_parts += new /obj/item/weapon/vending_refill/cola(0)
|
||||
component_parts += new /obj/item/weapon/vending_refill/cola(0)
|
||||
|
||||
//This one's from bay12
|
||||
/obj/machinery/vending/cart
|
||||
name = "PTech"
|
||||
desc = "Cartridges for PDAs"
|
||||
product_slogans = "Carts to go!"
|
||||
icon_state = "cart"
|
||||
icon_deny = "cart-deny"
|
||||
products = list(/obj/item/weapon/cartridge/medical = 10,/obj/item/weapon/cartridge/engineering = 10,/obj/item/weapon/cartridge/security = 10,
|
||||
/obj/item/weapon/cartridge/janitor = 10,/obj/item/weapon/cartridge/signal/toxins = 10,/obj/item/device/pda/heads = 10,
|
||||
/obj/item/weapon/cartridge/captain = 3,/obj/item/weapon/cartridge/quartermaster = 10)
|
||||
|
||||
/obj/machinery/vending/cigarette
|
||||
name = "Cigarette machine" //OCD had to be uppercase to look nice with the new formating
|
||||
desc = "If you want to get cancer, might as well do it in style"
|
||||
@@ -933,16 +935,6 @@
|
||||
premium = list(/obj/item/clothing/suit/hgpirate = 1, /obj/item/clothing/head/hgpiratecap = 1, /obj/item/clothing/head/helmet/roman = 1, /obj/item/clothing/head/helmet/roman/legionaire = 1, /obj/item/clothing/under/roman = 1, /obj/item/clothing/shoes/roman = 1)
|
||||
refill_canister = /obj/item/weapon/vending_refill/autodrobe
|
||||
|
||||
/obj/machinery/vending/cigarette/New()
|
||||
..()
|
||||
component_parts = list()
|
||||
var/obj/item/weapon/circuitboard/vendor/V = new(null)
|
||||
V.set_type(type)
|
||||
component_parts += V
|
||||
component_parts += new /obj/item/weapon/vending_refill/cigarette(0)
|
||||
component_parts += new /obj/item/weapon/vending_refill/cigarette(0)
|
||||
component_parts += new /obj/item/weapon/vending_refill/cigarette(0)
|
||||
|
||||
/obj/machinery/vending/dinnerware
|
||||
name = "Dinnerware"
|
||||
desc = "A kitchen and restaurant equipment vendor"
|
||||
@@ -1036,6 +1028,7 @@
|
||||
products = list(/obj/item/clothing/head/bowlerhat = 10,/obj/item/clothing/head/beaverhat = 10,/obj/item/clothing/head/boaterhat = 10,/obj/item/clothing/head/fedora = 10,/obj/item/clothing/head/fez = 10)
|
||||
contraband = list(/obj/item/clothing/head/bearpelt = 5)
|
||||
premium = list(/obj/item/clothing/head/soft/rainbow = 1)
|
||||
refill_canister = /obj/item/weapon/vending_refill/hatdispenser
|
||||
|
||||
/obj/machinery/vending/suitdispenser
|
||||
name = "Suitlord 9000"
|
||||
@@ -1043,10 +1036,11 @@
|
||||
icon_state = "suits"
|
||||
product_ads = "Pre-Ironed, Pre-Washed, Pre-Wor-*BZZT*;Blood of your enemys washes right out!;Who are YOU wearing?;Look dapper! Look like an idiot!;Dont carry your size? How about you shave off some pounds you fat lazy- *BZZT*"
|
||||
products = list(/obj/item/clothing/under/color/black = 10,/obj/item/clothing/under/color/blue = 10,/obj/item/clothing/under/color/green = 10,/obj/item/clothing/under/color/grey = 10,/obj/item/clothing/under/color/pink = 10,/obj/item/clothing/under/color/red = 10,
|
||||
/obj/item/clothing/under/color/white = 10, /obj/item/clothing/under/color/yellow = 10,/obj/item/clothing/under/lightblue = 10,/obj/item/clothing/under/aqua = 10,/obj/item/clothing/under/purple = 10,/obj/item/clothing/under/lightgreen = 10,
|
||||
/obj/item/clothing/under/lightblue = 10,/obj/item/clothing/under/lightbrown = 10,/obj/item/clothing/under/brown = 10,/obj/item/clothing/under/yellowgreen = 10,/obj/item/clothing/under/darkblue = 10,/obj/item/clothing/under/lightred = 10, /obj/item/clothing/under/darkred = 10)
|
||||
/obj/item/clothing/under/color/white = 10, /obj/item/clothing/under/color/yellow = 10,/obj/item/clothing/under/color/lightblue = 10,/obj/item/clothing/under/color/aqua = 10,/obj/item/clothing/under/color/purple = 10,/obj/item/clothing/under/color/lightgreen = 10,
|
||||
/obj/item/clothing/under/color/lightblue = 10,/obj/item/clothing/under/color/lightbrown = 10,/obj/item/clothing/under/color/brown = 10,/obj/item/clothing/under/color/yellowgreen = 10,/obj/item/clothing/under/color/darkblue = 10,/obj/item/clothing/under/color/lightred = 10, /obj/item/clothing/under/color/darkred = 10)
|
||||
contraband = list(/obj/item/clothing/under/syndicate/tacticool = 5,/obj/item/clothing/under/color/orange = 5,/obj/item/clothing/under/psyche = 5)
|
||||
premium = list(/obj/item/clothing/under/rainbow = 1)
|
||||
refill_canister = /obj/item/weapon/vending_refill/suitdispenser
|
||||
|
||||
/obj/machinery/vending/shoedispenser
|
||||
name = "Shoelord 9000"
|
||||
@@ -1056,6 +1050,7 @@
|
||||
products = list(/obj/item/clothing/shoes/black = 10,/obj/item/clothing/shoes/brown = 10,/obj/item/clothing/shoes/blue = 10,/obj/item/clothing/shoes/green = 10,/obj/item/clothing/shoes/yellow = 10,/obj/item/clothing/shoes/purple = 10,/obj/item/clothing/shoes/red = 10,/obj/item/clothing/shoes/white = 10)
|
||||
contraband = list(/obj/item/clothing/shoes/jackboots = 5,/obj/item/clothing/shoes/orange = 5)
|
||||
premium = list(/obj/item/clothing/shoes/rainbow = 1)
|
||||
refill_canister = /obj/item/weapon/vending_refill/shoedispenser
|
||||
|
||||
/obj/machinery/vending/syndicigs
|
||||
name = "Suspicious Cigarette Machine"
|
||||
|
||||
@@ -52,6 +52,59 @@
|
||||
|
||||
/obj/effect/decal/warning_stripes/New()
|
||||
. = ..()
|
||||
|
||||
loc.overlays += src
|
||||
del src
|
||||
del src
|
||||
|
||||
// Credit to Neinhaus for making these into individual decals.
|
||||
|
||||
/obj/effect/decal/warning_stripes/arrow
|
||||
icon_state = "4"
|
||||
|
||||
/obj/effect/decal/warning_stripes/yellow
|
||||
icon_state = "5"
|
||||
|
||||
/obj/effect/decal/warning_stripes/yellow/partial
|
||||
icon_state = "3"
|
||||
|
||||
/obj/effect/decal/warning_stripes/yellow/hollow
|
||||
icon_state = "6"
|
||||
|
||||
|
||||
/obj/effect/decal/warning_stripes/red
|
||||
icon_state = "8"
|
||||
|
||||
/obj/effect/decal/warning_stripes/red/partial
|
||||
icon_state = "7"
|
||||
|
||||
/obj/effect/decal/warning_stripes/red/hollow
|
||||
icon_state = "9"
|
||||
|
||||
|
||||
/obj/effect/decal/warning_stripes/green
|
||||
icon_state = "11"
|
||||
|
||||
/obj/effect/decal/warning_stripes/green/partial
|
||||
icon_state = "10"
|
||||
|
||||
/obj/effect/decal/warning_stripes/green/hollow
|
||||
icon_state = "12"
|
||||
|
||||
|
||||
/obj/effect/decal/warning_stripes/white
|
||||
icon_state = "14"
|
||||
|
||||
/obj/effect/decal/warning_stripes/white/partial
|
||||
icon_state = "13"
|
||||
|
||||
/obj/effect/decal/warning_stripes/white/hollow
|
||||
icon_state = "15"
|
||||
|
||||
|
||||
/obj/effect/decal/warning_stripes/blue
|
||||
icon_state = "17"
|
||||
|
||||
/obj/effect/decal/warning_stripes/blue/partial
|
||||
icon_state = "16"
|
||||
|
||||
/obj/effect/decal/warning_stripes/blue/hollow
|
||||
icon_state = "18"
|
||||
@@ -64,6 +64,7 @@
|
||||
sleep(1)
|
||||
new /obj/item/clothing/mask/breath( src )
|
||||
new /obj/item/weapon/tank/emergency_oxygen( src )
|
||||
new /obj/item/weapon/reagent_containers/hypospray/autoinjector( src )
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/box/engineer/
|
||||
@@ -73,6 +74,7 @@
|
||||
sleep(1)
|
||||
new /obj/item/clothing/mask/breath( src )
|
||||
new /obj/item/weapon/tank/emergency_oxygen/engi( src )
|
||||
new /obj/item/weapon/reagent_containers/hypospray/autoinjector( src )
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -95,7 +95,8 @@
|
||||
item_state = "syringe_kit"
|
||||
w_class = 3
|
||||
max_w_class = 2
|
||||
storage_slots = 6
|
||||
max_combined_w_class = 20
|
||||
storage_slots = 12
|
||||
req_access = list(access_captain)
|
||||
icon_locked = "medalbox+l"
|
||||
icon_closed = "medalbox"
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
w_class = 2.0
|
||||
force = 4.0
|
||||
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
|
||||
volume = 2 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
|
||||
volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
|
||||
|
||||
|
||||
New()
|
||||
@@ -197,4 +197,23 @@
|
||||
..()
|
||||
if(air_contents.nitrogen < 10)
|
||||
usr << text("\red <B>The meter on the [src.name] indicates you are almost out of air!</B>")
|
||||
//playsound(usr, 'sound/effects/alert.ogg', 50, 1)
|
||||
//playsound(usr, 'sound/effects/alert.ogg', 50, 1)
|
||||
|
||||
|
||||
/obj/item/weapon/tank/emergency_oxygen/vox
|
||||
name = "vox specialized nitrogen tank"
|
||||
desc = "A high-tech nitrogen tank designed specifically for Vox."
|
||||
icon_state = "emergency_vox"
|
||||
item_state = "emergency_vox"
|
||||
icon_override = 'icons/mob/in-hand/tools.dmi'
|
||||
volume = 25
|
||||
|
||||
|
||||
New()
|
||||
..()
|
||||
src.air_contents.oxygen -= (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
src.air_contents.nitrogen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
//
|
||||
src.air_contents.update_values()
|
||||
|
||||
return
|
||||
@@ -57,3 +57,18 @@
|
||||
machine_name = "AutoDrobe"
|
||||
icon_state = "refill_costume"
|
||||
charges = 19// of 58
|
||||
|
||||
/obj/item/weapon/vending_refill/hatdispenser
|
||||
machine_name = "hat"
|
||||
icon_state = "refill_costume"
|
||||
charges = 18// of 56
|
||||
|
||||
/obj/item/weapon/vending_refill/suitdispenser
|
||||
machine_name = "suit"
|
||||
icon_state = "refill_costume"
|
||||
charges = 68// of 206
|
||||
|
||||
/obj/item/weapon/vending_refill/shoedispenser
|
||||
machine_name = "shoe"
|
||||
icon_state = "refill_costume"
|
||||
charges = 30// of 91
|
||||
@@ -312,7 +312,7 @@
|
||||
var/id = null
|
||||
|
||||
New()
|
||||
new /obj/item/clothing/under/color/orange( src )
|
||||
new /obj/item/clothing/under/color/orange/prison( src )
|
||||
new /obj/item/clothing/shoes/orange( src )
|
||||
return
|
||||
|
||||
|
||||
@@ -136,9 +136,9 @@
|
||||
icon_closed = "orange"
|
||||
|
||||
/obj/structure/closet/wardrobe/orange/New()
|
||||
new /obj/item/clothing/under/color/orange(src)
|
||||
new /obj/item/clothing/under/color/orange(src)
|
||||
new /obj/item/clothing/under/color/orange(src)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/under/color/orange/prison(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
new /obj/item/clothing/shoes/orange(src)
|
||||
|
||||
@@ -1025,7 +1025,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
|
||||
if("blue wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
@@ -1037,7 +1037,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/box(M), slot_in_backpack)
|
||||
|
||||
if("red wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/red(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
@@ -1049,7 +1049,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/storage/box(M), slot_in_backpack)
|
||||
|
||||
if("marisa wizard")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/marisa(M), slot_wear_suit)
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal/marisa(M), slot_shoes)
|
||||
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
|
||||
|
||||
@@ -171,77 +171,6 @@
|
||||
else
|
||||
src.DB_species_unlock("Slime People",45)
|
||||
return
|
||||
if(href_list["KarmaBuy3"])
|
||||
var/karma=verify_karma()
|
||||
switch(href_list["KarmaBuy3"])
|
||||
if("1")
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Tajaran Ambassador",30)
|
||||
return
|
||||
if("2")
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Unathi Ambassador",30)
|
||||
return
|
||||
if("3")
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Skrell Ambassador",30)
|
||||
return
|
||||
if("4")
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Diona Ambassador",30)
|
||||
return
|
||||
if("5")
|
||||
if(!is_alien_whitelisted(usr,"Kidan"))
|
||||
usr << "You need to have unlocked Kidan first!"
|
||||
return
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Kidan Ambassador",30)
|
||||
return
|
||||
if("6")
|
||||
if(!is_alien_whitelisted(usr,"Slime People"))
|
||||
usr << "You need to have unlocked Slime People first!"
|
||||
return
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Slime People Ambassador",30)
|
||||
return
|
||||
if("7")
|
||||
if(!is_alien_whitelisted(usr,"Grey"))
|
||||
usr << "You need to have unlocked Grey first!"
|
||||
return
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Grey Ambassador",30)
|
||||
return
|
||||
if("8")
|
||||
if(!is_alien_whitelisted(usr,"Vox"))
|
||||
usr << "You need to have unlocked Vox first!"
|
||||
return
|
||||
if(karma <30)
|
||||
usr << "You do not have enough karma!"
|
||||
return
|
||||
else
|
||||
src.DB_job_unlock("Vox Ambassador",30)
|
||||
return
|
||||
|
||||
|
||||
switch(href_list["_src_"])
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
process_med_hud(M,1)
|
||||
|
||||
/obj/item/clothing/glasses/hud/health_advanced/process_hud(var/mob/M)
|
||||
process_sec_hud(M,1)
|
||||
process_med_hud(M,1)
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/hud/security
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
var/slowdown_active = 2
|
||||
action_button_name = "Toggle Magboots"
|
||||
icon_action_button = "action_magboots"
|
||||
species_restricted = list("Skrell","Human","Unathi","Tajaran","Machine","Slime People","Kidan","Grey","Diona") //Vox get their own booties doubt they'd fix on talons anyway.
|
||||
species_restricted = null
|
||||
|
||||
/obj/item/clothing/shoes/magboots/attack_self(mob/user)
|
||||
if(src.magpulse)
|
||||
|
||||
@@ -1,3 +1,15 @@
|
||||
/obj/item/clothing/under/color
|
||||
desc = "A standard issue colored jumpsuit. Variety is the spice of life!"
|
||||
|
||||
/obj/item/clothing/under/color/random/New()
|
||||
..()
|
||||
var/list/excluded = list(/obj/item/clothing/under/color/random, /obj/item/clothing/under/color, /obj/item/clothing/under/color/blackf, /obj/item/clothing/under/color/blue/dodgeball, /obj/item/clothing/under/color/orange/prison, /obj/item/clothing/under/color/red/dodgeball)
|
||||
var/obj/item/clothing/under/color/C = pick(typesof(/obj/item/clothing/under/color) - excluded)
|
||||
name = initial(C.name)
|
||||
icon_state = initial(C.icon_state)
|
||||
item_state = initial(C.item_state)
|
||||
_color = initial(C._color)
|
||||
|
||||
/obj/item/clothing/under/color/black
|
||||
name = "black jumpsuit"
|
||||
icon_state = "black"
|
||||
@@ -31,6 +43,7 @@
|
||||
|
||||
/obj/item/clothing/under/color/grey
|
||||
name = "grey jumpsuit"
|
||||
desc = "A tasteful grey jumpsuit that reminds you of the good old days."
|
||||
icon_state = "grey"
|
||||
item_state = "gy_suit"
|
||||
_color = "grey"
|
||||
@@ -38,6 +51,14 @@
|
||||
species_fit = list("Vox")
|
||||
|
||||
/obj/item/clothing/under/color/orange
|
||||
name = "orange jumpsuit"
|
||||
desc = "Don't wear this near paranoid security officers"
|
||||
icon_state = "orange"
|
||||
item_state = "o_suit"
|
||||
_color = "orange"
|
||||
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
||||
|
||||
/obj/item/clothing/under/color/orange/prison
|
||||
name = "orange jumpsuit"
|
||||
desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
|
||||
icon_state = "orange"
|
||||
@@ -49,6 +70,7 @@
|
||||
|
||||
/obj/item/clothing/under/color/pink
|
||||
name = "pink jumpsuit"
|
||||
desc = "Just looking at this makes you feel <i>fabulous</i>."
|
||||
icon_state = "pink"
|
||||
item_state = "p_suit"
|
||||
_color = "pink"
|
||||
@@ -84,78 +106,78 @@
|
||||
icon_state = "psyche"
|
||||
_color = "psyche"
|
||||
|
||||
/obj/item/clothing/under/lightblue
|
||||
/obj/item/clothing/under/color/lightblue
|
||||
name = "lightblue"
|
||||
desc = "lightblue"
|
||||
icon_state = "lightblue"
|
||||
_color = "lightblue"
|
||||
|
||||
/obj/item/clothing/under/aqua
|
||||
/obj/item/clothing/under/color/aqua
|
||||
name = "aqua"
|
||||
desc = "aqua"
|
||||
icon_state = "aqua"
|
||||
_color = "aqua"
|
||||
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
||||
|
||||
/obj/item/clothing/under/purple
|
||||
/obj/item/clothing/under/color/purple
|
||||
name = "purple"
|
||||
desc = "purple"
|
||||
icon_state = "purple"
|
||||
item_state = "p_suit"
|
||||
_color = "purple"
|
||||
|
||||
/obj/item/clothing/under/lightpurple
|
||||
/obj/item/clothing/under/color/lightpurple
|
||||
name = "lightpurple"
|
||||
desc = "lightpurple"
|
||||
icon_state = "lightpurple"
|
||||
_color = "lightpurple"
|
||||
|
||||
/obj/item/clothing/under/lightgreen
|
||||
/obj/item/clothing/under/color/lightgreen
|
||||
name = "lightgreen"
|
||||
desc = "lightgreen"
|
||||
icon_state = "lightgreen"
|
||||
_color = "lightgreen"
|
||||
|
||||
/obj/item/clothing/under/lightblue
|
||||
/obj/item/clothing/under/color/lightblue
|
||||
name = "lightblue"
|
||||
desc = "lightblue"
|
||||
icon_state = "lightblue"
|
||||
_color = "lightblue"
|
||||
|
||||
/obj/item/clothing/under/lightbrown
|
||||
/obj/item/clothing/under/color/lightbrown
|
||||
name = "lightbrown"
|
||||
desc = "lightbrown"
|
||||
icon_state = "lightbrown"
|
||||
_color = "lightbrown"
|
||||
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
||||
|
||||
/obj/item/clothing/under/brown
|
||||
/obj/item/clothing/under/color/brown
|
||||
name = "brown"
|
||||
desc = "brown"
|
||||
icon_state = "brown"
|
||||
_color = "brown"
|
||||
flags = FPRINT | TABLEPASS
|
||||
|
||||
/obj/item/clothing/under/yellowgreen
|
||||
/obj/item/clothing/under/color/yellowgreen
|
||||
name = "yellowgreen"
|
||||
desc = "yellowgreen"
|
||||
icon_state = "yellowgreen"
|
||||
_color = "yellowgreen"
|
||||
|
||||
/obj/item/clothing/under/darkblue
|
||||
/obj/item/clothing/under/color/darkblue
|
||||
name = "darkblue"
|
||||
desc = "darkblue"
|
||||
icon_state = "darkblue"
|
||||
_color = "darkblue"
|
||||
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
|
||||
|
||||
/obj/item/clothing/under/lightred
|
||||
/obj/item/clothing/under/color/lightred
|
||||
name = "lightred"
|
||||
desc = "lightred"
|
||||
icon_state = "lightred"
|
||||
_color = "lightred"
|
||||
|
||||
/obj/item/clothing/under/darkred
|
||||
/obj/item/clothing/under/color/darkred
|
||||
name = "darkred"
|
||||
desc = "darkred"
|
||||
icon_state = "darkred"
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
/proc/EquipRacialItems(mob/living/carbon/human/M)
|
||||
if(M.species.name == "Vox" || M.species.name == "Vox Armalis")
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/magboots/vox(M), slot_shoes) // REPLACE THESE WITH CODED VOX ALTERNATIVES.
|
||||
M.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(M), slot_wear_mask)
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/tank/nitrogen(M), slot_back)
|
||||
M << "\blue You are now running on nitrogen internals from the [M.back] in your suit storage. Your species finds oxygen toxic, so you must breathe nitrogen only."
|
||||
M.internal = M.back
|
||||
M.equip_to_slot_or_del(new /obj/item/weapon/tank/emergency_oxygen/vox(M), slot_l_hand)
|
||||
M << "\blue You are now running on nitrogen internals from your [M.l_hand]. Your species finds oxygen toxic, so you must breathe nitrogen only."
|
||||
M.internal = M.l_hand
|
||||
if (M.internals)
|
||||
M.internals.icon_state = "internal1"
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
//NOTE: Breathing happens once per FOUR TICKS, unless the last breath fails. In which case it happens once per ONE TICK! So oxyloss healing is done once per 4 ticks while oxyloss damage is applied once per tick!
|
||||
#define HUMAN_MAX_OXYLOSS 1 //Defines how much oxyloss humans can get per tick. A tile with no air at all (such as space) applies this value, otherwise it's a percentage of it.
|
||||
#define HUMAN_MAX_OXYLOSS 3 //Defines how much oxyloss humans can get per tick. A tile with no air at all (such as space) applies this value, otherwise it's a percentage of it.
|
||||
#define HUMAN_CRIT_MAX_OXYLOSS ( (last_tick_duration) /5) //The amount of damage you'll get when in critical condition. We want this to be a 5 minute deal = 300s. There are 100HP to get through, so (1/3)*last_tick_duration per second. Breaths however only happen every 4 ticks.
|
||||
|
||||
#define HEAT_DAMAGE_LEVEL_1 2 //Amount of damage applied when your body temperature just passes the 360.15k safety point
|
||||
#define HEAT_DAMAGE_LEVEL_2 4 //Amount of damage applied when your body temperature passes the 400K point
|
||||
#define HEAT_DAMAGE_LEVEL_2 3 //Amount of damage applied when your body temperature passes the 400K point
|
||||
#define HEAT_DAMAGE_LEVEL_3 8 //Amount of damage applied when your body temperature passes the 1000K point
|
||||
|
||||
#define COLD_DAMAGE_LEVEL_1 0.5 //Amount of damage applied when your body temperature just passes the 260.15k safety point
|
||||
|
||||
@@ -377,7 +377,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
var/datum/gas_mixture/breath
|
||||
|
||||
// HACK NEED CHANGING LATER
|
||||
if(health < config.health_threshold_crit && !reagents.has_reagent("inaprovaline"))
|
||||
if(health < config.health_threshold_crit)
|
||||
losebreath++
|
||||
|
||||
if(losebreath>0) //Suffocating so do not take a breath
|
||||
@@ -487,6 +487,8 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
return 0
|
||||
|
||||
if(!breath || (breath.total_moles() == 0) || suiciding)
|
||||
if(reagents.has_reagent("inaprovaline"))
|
||||
return
|
||||
if(suiciding)
|
||||
adjustOxyLoss(2)//If you are suiciding, you should die a little bit faster
|
||||
failed_last_breath = 1
|
||||
@@ -1672,7 +1674,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
|
||||
proc/handle_decay()
|
||||
var/decaytime = world.time - timeofdeath
|
||||
|
||||
|
||||
if(species.flags & IS_SYNTHETIC)
|
||||
return
|
||||
|
||||
@@ -1687,7 +1689,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
|
||||
if(decaytime > 18000 && decaytime <= 27000)//45 minutes for decaylevel4 -- skeleton
|
||||
decaylevel = 3
|
||||
|
||||
|
||||
if(decaytime > 27000)
|
||||
decaylevel = 4
|
||||
makeSkeleton()
|
||||
@@ -1697,7 +1699,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
|
||||
for(var/mob/living/carbon/human/H in range(decaylevel, src))
|
||||
if(prob(5))
|
||||
if(airborne_can_reach(get_turf(src), get_turf(H)))
|
||||
if(istype(loc,/obj/item/bodybag))
|
||||
if(istype(loc,/obj/item/bodybag))
|
||||
return
|
||||
var/obj/item/clothing/mask/M = H.wear_mask
|
||||
if(M && (M.flags & MASKCOVERSMOUTH))
|
||||
|
||||
@@ -24,7 +24,8 @@
|
||||
"Cat" = "cat",
|
||||
"Mouse" = "mouse",
|
||||
"Monkey" = "monkey",
|
||||
"Corgi" = "corgi"
|
||||
"Corgi" = "corgi",
|
||||
"Fox" = "fox"
|
||||
)
|
||||
|
||||
var/global/list/possible_say_verbs = list(
|
||||
@@ -33,7 +34,7 @@
|
||||
"Beep" = list("beeps","beeps loudly","boops"),
|
||||
"Chirp" = list("chirps","chirrups","cheeps"),
|
||||
"Feline" = list("purrs","yowls","meows"),
|
||||
"Canine" = list("barks","growls","whines")
|
||||
"Canine" = list("yaps","barks","growls")
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
owner.drip(10)
|
||||
if(prob(4))
|
||||
spawn owner.emote("me", 1, "gasps for air!")
|
||||
owner.losebreath += 15
|
||||
owner.losebreath += 5
|
||||
|
||||
/datum/organ/internal/lungs/robotic
|
||||
damagelevel = 0.8
|
||||
|
||||
@@ -70,19 +70,18 @@
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector
|
||||
name = "emergency autoinjector"
|
||||
desc = "A potent mix of pain killers and muscle stimulants."
|
||||
desc = "A rapid and safe way to stabilize patients in critical condition for personnel without advanced medical knowledge."
|
||||
icon_state = "autoinjector"
|
||||
item_state = "autoinjector"
|
||||
amount_per_transfer_from_this = 5
|
||||
possible_transfer_amounts = list(5)
|
||||
volume = 5
|
||||
amount_per_transfer_from_this = 10
|
||||
possible_transfer_amounts = list(10)
|
||||
volume = 10
|
||||
var/emagged = 0
|
||||
|
||||
/obj/item/weapon/reagent_containers/hypospray/autoinjector/New()
|
||||
..()
|
||||
reagents.remove_reagent("doctorsdelight", 30)
|
||||
reagents.add_reagent("tramadol", 4)
|
||||
reagents.add_reagent("hyperzine", 1)
|
||||
reagents.add_reagent("inaprovaline", 10)
|
||||
update_icon()
|
||||
return
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
user.visible_message("\red [user]'s hand slips, slicing [target]'s throat wth \the [tool]!" , \
|
||||
"\red Your hand slips, slicing [target]'s throat wth \the [tool]!" )
|
||||
affected.createwound(CUT, 60)
|
||||
target.losebreath += 10
|
||||
target.losebreath += 4
|
||||
|
||||
/datum/surgery_step/face/mend_vocal
|
||||
allowed_tools = list(
|
||||
@@ -70,7 +70,7 @@
|
||||
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
user.visible_message("\red [user]'s hand slips, clamping [target]'s trachea shut for a moment with \the [tool]!", \
|
||||
"\red Your hand slips, clamping [user]'s trachea shut for a moment with \the [tool]!")
|
||||
target.losebreath += 10
|
||||
target.losebreath += 4
|
||||
|
||||
/datum/surgery_step/face/fix_face
|
||||
allowed_tools = list(
|
||||
|
||||
@@ -317,6 +317,7 @@
|
||||
if(STATE_CANCELSHUTTLE)
|
||||
dat = confirm_menu("cancel the shuttle","cancelshuttle2")
|
||||
if(STATE_MESSAGELIST)
|
||||
dat += "\[ <A HREF='?src=\ref[src];main'>Back</A> \]<BR>"
|
||||
dat += "Messages:"
|
||||
for(var/i = 1; i<=messagetitle.len; i++)
|
||||
dat += "<BR><A HREF='?src=\ref[src];viewmessage;message-num=[i]'>[messagetitle[i]]</A>"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 460 B After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 7.0 KiB |
@@ -897,7 +897,7 @@
|
||||
"arm" = (/obj/machinery/door_control{desc = "A remote control switch for the brig foyer."; id = "BrigFoyer"; name = "Brig Foyer Doors"; normaldoorcontrol = 1; pixel_x = -5; pixel_y = -35; range = 10},/obj/machinery/door_control{desc = "A remote control switch for the brig doors leading to cells 1-4."; id = "BrigEast"; name = "Brig Cells 1-4 Hallway Doors"; normaldoorcontrol = 1; pixel_x = 5; pixel_y = -25; range = 10},/obj/machinery/door_control{desc = "A remote control switch for the brig doors leading to cells 5 and 6."; id = "BrigWest"; name = "Brig Cells 5-6 Hallway Doors"; normaldoorcontrol = 1; pixel_x = -5; pixel_y = -25; range = 20},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = 30; pixel_y = 0},/obj/structure/stool/bed/chair/office/dark{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "redfull"; tag = "icon-redfull (NORTHWEST)"},/area/security/lobby)
|
||||
"arn" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison/cell_block/C)
|
||||
"aro" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison/cell_block/C)
|
||||
"arp" = (/obj/machinery/door/window/brigdoor{dir = 2; name = "Secure Door"; req_access_txt = "61"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{pixel_x = 28},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor,/area/security/prison/cell_block/C)
|
||||
"arp" = (/obj/machinery/door/window/brigdoor{dir = 2; name = "Secure Door"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{pixel_x = 28},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor,/area/security/prison/cell_block/C)
|
||||
"arq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/prison/cell_block/C)
|
||||
"arr" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office)
|
||||
"ars" = (/obj/structure/stool,/turf/simulated/floor/carpet,/area/security/detectives_office)
|
||||
@@ -909,10 +909,10 @@
|
||||
"ary" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
|
||||
"arz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/wall/r_wall,/area)
|
||||
"arA" = (/obj/machinery/light{dir = 1},/obj/structure/closet/wardrobe/grey,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arB" = (/obj/structure/closet/wardrobe/black,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arB" = (/obj/machinery/camera{c_tag = "Locker Room"; network = list("SS13")},/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/structure/closet/wardrobe/black,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arC" = (/obj/structure/closet/wardrobe/xenos,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arD" = (/obj/structure/closet/wardrobe/mixed,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arE" = (/obj/machinery/washing_machine,/obj/machinery/camera{c_tag = "Locker Room"; network = list("SS13")},/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arE" = (/obj/machinery/vending/autodrobe,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arF" = (/obj/machinery/washing_machine,/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arG" = (/obj/machinery/washing_machine,/obj/machinery/light{dir = 1},/turf/simulated/floor{dir = 2; icon_state = "barber"},/area/crew_quarters/locker)
|
||||
"arH" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/brigdoor{dir = 1; req_access_txt = "63"},/turf/simulated/floor,/area/security/prisonershuttle)
|
||||
@@ -10246,7 +10246,7 @@
|
||||
"dPb" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/research_outpost/power)
|
||||
"dPc" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/wall/r_wall,/area/research_outpost/power)
|
||||
"dPd" = (/obj/structure/transit_tube{icon_state = "N-S"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
"dPe" = (/turf/simulated/floor,/area/research_outpost/longtermstorage)
|
||||
"dPe" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet,/turf/simulated/floor,/area/research_outpost/longtermstorage)
|
||||
"dPf" = (/turf/simulated/mineral,/area/research_outpost/power)
|
||||
"dPg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
"dPh" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/mine/abandoned)
|
||||
@@ -12546,6 +12546,7 @@
|
||||
"eHn" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/decal/cleanable/dirt,/obj/machinery/light,/turf/simulated/floor,/area/engiestation)
|
||||
"eHo" = (/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/engiestation)
|
||||
"eHp" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor,/area/engiestation)
|
||||
"eHq" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet,/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -12633,7 +12634,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaaaaafoaabaiNaiOaiOaiOaiOaiPaiQaiRaiSaiSaiSaiSaiTaaaafoaaaafpamaanGanGanGamaaaaaaaaaiaaqaoqaoraaJaaJamLamLaaqaaqaaqaaqaosaotaaqaaqaaqaouaovaowaouaaqaaqaaqaoxaoyaaqaozaoAaaqaoBaoyaaqaaqaaqaoCaoDaaqaaJaoEaoFaoGaoHaaqamwaokaoIaaiaaiaaiaoJaoKaoLaaiaoMaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafpaabaoNaoOaoOaoOaoOaoPaoQaoRaoSaoSaoSaoSaoTaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZaaaalZalZalZalZalZalZalZalZalZaaaalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaafoaabajrajrajrajrajraabaoUaabajrajrajrajrajraabafoaaaafXaoVaoWanGanGamaaaaaaaaaiaoXaoYaoZaiZapbamLapcaaqapdapeapfapgaphapiapjapkaplapmapnapoappapqapiaprapsaptapuapvapwapxapsaaqapyapzapAapBaaqapCapDapEapFapGapHamwaokapIapJapKapLapMapMapNaaiapOaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafpaabapPapPapPapPapPaabapQaabapPapPapPapPapPaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZaaaalZalZalZalZalZalZalZalZalZaaaalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaafoaaaaabaabaabaabaabaaaapRapSapSapSapSapSapTaabafoaaaafpamaapUapVapWapXaaaaaaaaiapYapZaqaaqbaaJaqcamLaaqaqdaqeaqfaqgaqhaqiaqjaqkaqlaqmaqnaqoaqkaqpaqqaqraqsaqtaquaqvaqwaqxaqyaqzaqAaqBaqCaqDaaqaqEaqFaqFaqGaqFaqHamwaokanAanAanAanAaqIanAaqJaqKaqLaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaafoaaaaaaaaaaabaaaaaaaabapQaaaaaaaaaaabaaaaaaaaaafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaafoafoafoafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqMaaaafoaaaafpaqNaqOaqPaqPamaaaaaaaaaiapYaqQaqRaqSaaJaqTaqUaaqaqVaqWaqXaqYaqZaraarbarcardarearfargarhariaraarjaqyarkarlarmarkaqxaqyaaqarnaroarparqaaqarrarsaqFaqGaqFartamwaruarvarwarxarwarvaryacfarzaaqaaiarBarAarDarCarEarFarGarFarFaaiaaaaaaaaaafpaabaooaooaooaooaooaabapQaabaooaooaooaooaooaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaafoafoafoafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqMaaaafoaaaafpaqNaqOaqPaqPamaaaaaaaaaiapYaqQaqRaqSaaJaqTaqUaaqaqVaqWaqXaqYaqZaraarbarcardarearfargarhariaraarjaqyarkarlarmarkaqxaqyaaqarnaroarparqaaqarrarsaqFaqGaqFartamwaruarvarwarxarwarvaryacfarzaaqaaiarEarAarDarCarBarFarGarFarFaaiaaaaaaaaaafpaabaooaooaooaooaooaabapQaabaooaooaooaooaooaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqMaaaaaaaaaafpamaaqPaqPaqPamaaaaaaaaaiaaiabnaaiaaiafjaaiarHaaiaaqaaqaaqarIarJaaqaaqaaqaaqarKarLaaqaaqaaqaaiarMarNarOarParQarRaqxarSaaqarTarUarVadEabIarXarYarZadzaqFasaamwasbascasdaseasfasganAaaiashasiaaiasjaskaslasmasmasmasmasmasnaaiaaaaaaaaaafpaabaoNaoOaoOaoOaoOaoPaoQaoRaoSaoSaoSaoSaoTaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaqMaaaaaaaaaafoamaaqPaqPaqPamaaaiaaiaaiasoaspasqasrassastasuaaiasvapeapfapgaphapiaswapkasxasyaszasAasBasCapiasDasEasFasGasHasHasIasJaaqasKasLasMasNaaqasOasPasQaqGaqFasRamwasbaqIascascascasSasTasUasVasWaaiasXasYahwataatbatcatdatdateaaiaaaaaaaaaafpaabapPapPapPapPapPaabapQaabapPapPapPapPapPaabafpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanFanFanFanFanFanFanFanFanFanFanFanFanFanFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiatfatgathatiatjaaiaaaaaaaaaaaaaaaaqMaaaaaaaabafpamaaqPaqPaqPatkamIatlamKatmatnatoatpatqatoatraaiaqdatsattatuatvatwatxatyatzatAatBatCatDatEatFatGatHatHatIatHatHatJatKatLatMatNatOatPaaqatQatRatSatTatUatVamwasbatWatXatXatXatYatZauaaubaucaaiaudaueaufataataataataataataaaiaaaaaaaaaamFaaaaaaaaaaabaaaaaaaaaapQaaaaaaaaaaabaaaaaaaaaafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZalZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -13635,7 +13636,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadMKdMLdMMdMNdMOdMPdMQaabaabdKkdKkdJadJadKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdMRdMRdMSaabdJQaaaaabaabaabaabaabdJadJLdJLdJLdJLdJLdMTdMUdJLdKEdKEdMVdMWdMXdMadMYdMZdNadNbdNcdNddMadNedNfdNgdNhdNidNjdNkdKLdNldNmaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadJbdJbdJbdJbdJbaaadJbdJbdJbdJbdJbaaadJbdJbdJbdJbdJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNndMjdNodNpdNqdMmdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdMRdMRdMRaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdKbdNtdNudNvdNwdNxdNydNzdNAdNBdNCdNDdNEdMadNFdNGdNHdNIdNJdNKdNLdNMdNNdNOdNOdNOdNPdNQdNRdNSdNTdNTdNUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadJbdJbdJbdJbdJbaaadJbdJbdJbdJbdJbaaadJbdJbdJbdJbdJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdNVdNWdNXdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdMRaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdNYdNZdOadObdOcdOddOedOfdOgdOhdOidOjdOkdOldOmdOndOodOpdOqdOrdOsdOtdOudNOdZqdOwdOxdOydNOdOzdNmdNmdNmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadJbdJbdJbdJbdJbaaaaaaaaaaaaaaaaaaaaadJbdJbdJbdJbdJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdOAdOBdOCdODdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkaaaaaaaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdOEdOFdNudOGdOHdOIdOJdOKdOLdOMdJLdONdOOdOPdOQdORdSFdOTdSDdOVdMadOWdOXdOYdOZdOZdPadPbdPcdPddPDdPfdPfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdOAdOBdOCdODdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkaaaaaaaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdOEdOFdNudOGdOHdOIdOJdOKdOLdOMdJLdONdOOdOPdOQdORdSFdOTdSDdOVdMadOWdOXdOYdOZdOZdPadPbdPcdPdeHqdPfdPfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdPgdPhdPidNrdPjdPkdNrdNrdNrdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkaaaaaaaaaaaaaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdPldOFdNudOGdOHdPmdPndOKdPodPpdJLdPqdPrdMadPsdMadMadMadMadPtdMadPudPvdNOdPwdPxdPydPzdPAdPBdPCdPDdPDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdPEdPFdPGdPHdPIdPJdKPdMPdPKdNrdPLdPMdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkaaaaaaaaaaaaaaaaaadJQdNsdNsdNsdNsdNsdNsdNsdKbdOFdNudTRdOHdPNdPOdOKdPQdPRdJLdPSdPTdTTdPVeGHdPXdPYdMadPZdQadQbdQcdQddQedQfdQgdQhdQidPBdPfdPfdPfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdQjdQkdPFdQldQmdQndQodQpdPKdQqdPMdQrdPLdNrdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkdKkaaaaaaaaaaaaaaaaaadQsdQtdQudQvdQwdQxdQudQydQzdQAdQBdKbdQCdQDdJLdJLdJLdJLdJLdQEdQFdQGdPVdQHdPXdQIdMadQJdQKdQLdQMdQNdQOdQPdSGdQRdQSdQTdQUdJLdQVdKzdJAdJAdJAdJAdJAdJAdJBdQWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
|
||||