Merge remote-tracking branch 'citrp/master' into hardsync2

This commit is contained in:
kevinz000
2020-04-09 03:47:28 -07:00
43 changed files with 41060 additions and 3054 deletions
+4 -2
View File
@@ -1,3 +1,5 @@
// More for our custom races
#define IS_CHIMERA 12
#define IS_ALRAUNE 13
#define IS_SERGAL 10
#define IS_AKULA 11
#define IS_NEVREAN 12
#define IS_ALRAUNE 13
+1 -32
View File
@@ -18,35 +18,4 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204
#define DF_ISPROCESSING (1<<1)
#define DF_USE_TAG (1<<2)
// /atom/movable movement_type
#define UNSTOPPABLE (1<<0) //Can not be stopped from moving from Cross(), CanPass(), or Uncross() failing. Still bumps everything it passes through, though.
// Flags bitmasks. - Used in /atom/var/flags
#define NOBLUDGEON (1<<0) // When an item has this it produces no "X has been hit by Y with Z" message with the default handler.
#define NOCONDUCT (1<<1) // Conducts electricity. (metal etc.)
#define ON_BORDER (1<<2) // Item has priority to check when entering or leaving.
#define NOBLOODY (1<<3) // Used for items if they don't want to get a blood overlay.
#define OPENCONTAINER (1<<4) // Is an open container for chemistry purposes.
#define PHORONGUARD (1<<5) // Does not get contaminated by phoron.
#define NOREACT (1<<6) // Reagents don't react inside this container.
#define PROXMOVE (1<<7)// Does this object require proximity checking in Enter()?
#define OVERLAY_QUEUED (1<<8)// Atom queued to SSoverlay for COMPILE_OVERLAYS
/// Atom is initialized
#define INITIALIZED (1<<9)
/// Atom is admin spawned
#define ADMIN_SPAWNED (1<<10)
//Flags for items (equipment) - Used in /obj/item/var/item_flags
#define THICKMATERIAL (1<<0) // Prevents syringes, parapens and hyposprays if equipped to slot_suit or slot_head.
#define AIRTIGHT (1<<1) // Functions with internals.
#define NOSLIP (1<<2) // Prevents from slipping on wet floors, in space, etc.
#define BLOCK_GAS_SMOKE_EFFECT (1<<3) // Blocks the effect that chemical clouds would have on a mob -- glasses, mask and helmets ONLY! (NOTE: flag shared with ONESIZEFITSALL)
#define FLEXIBLEMATERIAL (1<<4) // At the moment, masks with this flag will not prevent eating even if they are covering your face.
#define ALLOW_SURVIVALFOOD (1<<5) // Allows special survival food items to be eaten through it
// Flags for pass_flags. - Used in /atom/var/pass_flags
#define PASSTABLE (1<<0)
#define PASSGLASS (1<<1)
#define PASSGRILLE (1<<2)
#define PASSBLOB (1<<3)
#define PASSMOB (1<<4)
// /atom flags var
+2 -1
View File
@@ -155,7 +155,8 @@
name = "Collector crate"
contains = list(/obj/machinery/power/rad_collector = 3)
containertype = /obj/structure/closet/crate/secure/engineering
containername = "Collector crate"
containername = "collector crate"
access = access_engine
/datum/supply_pack/eng/engine/PA
name = "Particle Accelerator crate"
+3 -2
View File
@@ -59,9 +59,10 @@
access = access_medical
/datum/supply_pack/misc/rations
name = "Emergency LiquidFood Rations"
name = "Emergency LiquidFood and Protein Rations"
contains = list(
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 10
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 10,
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein = 10
)
cost = 10
containertype = /obj/structure/closet/crate/freezer
+7 -6
View File
@@ -107,35 +107,35 @@
if(!priv_all_access)
priv_all_access = get_access_ids()
return priv_all_access
return priv_all_access.Copy()
/var/list/priv_station_access
/proc/get_all_station_access()
if(!priv_station_access)
priv_station_access = get_access_ids(ACCESS_TYPE_STATION)
return priv_station_access
return priv_station_access.Copy()
/var/list/priv_centcom_access
/proc/get_all_centcom_access()
if(!priv_centcom_access)
priv_centcom_access = get_access_ids(ACCESS_TYPE_CENTCOM)
return priv_centcom_access
return priv_centcom_access.Copy()
/var/list/priv_syndicate_access
/proc/get_all_syndicate_access()
if(!priv_syndicate_access)
priv_syndicate_access = get_access_ids(ACCESS_TYPE_SYNDICATE)
return priv_syndicate_access
return priv_syndicate_access.Copy()
/var/list/priv_private_access
/proc/get_all_private_access()
if(!priv_private_access)
priv_private_access = get_access_ids(ACCESS_TYPE_PRIVATE)
return priv_syndicate_access
return priv_syndicate_access.Copy()
/var/list/priv_region_access
/proc/get_region_accesses(var/code)
@@ -149,7 +149,8 @@
priv_region_access["[A.region]"] = list()
priv_region_access["[A.region]"] += A.id
return priv_region_access["[code]"]
var/list/L = priv_region_access["[code]"]
return L.Copy()
/proc/get_region_accesses_name(var/code)
switch(code)
+5
View File
@@ -54,6 +54,11 @@
var/orders[0]
var/receipts[0]
if(!allowed(user))
authorization = 0
else
authorization = SUP_SEND_SHUTTLE | SUP_ACCEPT_ORDERS
var/datum/shuttle/ferry/supply/shuttle = supply_controller.shuttle
if(shuttle)
if(shuttle.has_arrive_time())
+6 -4
View File
@@ -790,7 +790,7 @@
/obj/item/weapon/reagent_containers/food/drinks/cans/gingerale = 1)
idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan.
/obj/machinery/vending/fitness
/obj/machinery/vending/fitness // Added Liquid Protein and slightly adjusted price of liquid food items due to buff.
name = "SweatMAX"
desc = "Fueled by your inner inadequacy!"
icon_state = "fitness"
@@ -799,17 +799,19 @@
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake = 8,
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 8,
/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 10,
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein = 10,
/obj/item/weapon/reagent_containers/pill/diet = 8,
///obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/glucose = 5, //VOREStation Removal,
/obj/item/weapon/towel/random = 8)
prices = list(/obj/item/weapon/reagent_containers/food/drinks/smallmilk = 3,
/obj/item/weapon/reagent_containers/food/drinks/smallchocmilk = 3,
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake = 40, //VOREStation Edit,
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask/proteinshake = 35,
/obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 5,
/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5,
/obj/item/weapon/reagent_containers/food/snacks/liquidfood = 10,
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein = 10,
/obj/item/weapon/reagent_containers/pill/diet = 25,
///obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/glucose = 5, //VOREStation Removal,
/obj/item/weapon/towel/random = 40)
@@ -8,7 +8,10 @@
subspace_transmission = 1
canhear_range = 0 // can't hear headsets from very far away
slot_flags = SLOT_EARS
sprite_sheets = list(SPECIES_TESHARI = 'icons/mob/species/seromi/ears.dmi')
sprite_sheets = list(
SPECIES_TESHARI = 'icons/mob/species/seromi/ears.dmi',
SPECIES_VOX = 'icons/mob/species/vox/ears.dmi'
)
var/translate_binary = 0
var/translate_hive = 0
@@ -141,3 +141,28 @@
/datum/gear/eyes/glasses/prescriptionthin
display_name = "Glasses, prescription thin frame"
path = /obj/item/clothing/glasses/regular/thin
// April 2020 Drof's Additions Begin Below
/datum/gear/eyes/jamjar
display_name = "jamjar glasses"
path = /obj/item/clothing/glasses/jamjar
/datum/gear/eyes/jensenshades
display_name = "augmented shades"
path = /obj/item/clothing/glasses/augmentedshades
/datum/gear/eyes/whiteblindfold
display_name = "white blindfold"
path = /obj/item/clothing/glasses/sunglasses/whiteblindfold
/datum/gear/eyes/redglasses
display_name = "red glasses"
path = /obj/item/clothing/glasses/redglasses
/datum/gear/eyes/badglasses
display_name = "poorly made glasses"
path = /obj/item/clothing/glasses/badglasses
/datum/gear/eyes/orangeglasses
display_name = "orange glasses"
path = /obj/item/clothing/glasses/orangeglasses
@@ -382,4 +382,9 @@
/datum/gear/head/jingasa
display_name = "jingasa"
path = /obj/item/clothing/head/jingasa
path = /obj/item/clothing/head/jingasa
/datum/gear/head/bohat
display_name = "bohat"
path = /obj/item/clothing/head/bohat
allowed_roles = list("Command Secretary")
@@ -231,3 +231,7 @@
/datum/gear/shoes/circuitry
display_name = "boots, circuitry (empty)"
path = /obj/item/clothing/shoes/circuitry
/datum/gear/shoes/cowboy/black
display_name = "black cowboy boots"
path = /obj/item/clothing/shoes/cowboyboots/black
@@ -520,4 +520,9 @@ datum/gear/suit/duster
/datum/gear/suit/miscellaneous/cardigan/New()
..()
gear_tweaks = list(gear_tweak_free_color_choice)
gear_tweaks = list(gear_tweak_free_color_choice)
/datum/gear/suit/miscellaneous/storage/lawyer/bridgeofficer
display_name = "bridge officer dress jacket"
path = /obj/item/clothing/under/bridgeofficer
allowed_roles = list("Command Secretary")
@@ -625,3 +625,25 @@
/datum/gear/uniform/lilacdress
display_name = "lilac dress"
path = /obj/item/clothing/under/dress/lilacdress
// April 2020 - Drof's Additions Begin Below
/datum/gear/uniform/stripeddress
display_name = "striped dress"
path = /obj/item/clothing/under/dress/stripeddress
/datum/gear/uniform/festivedress
display_name = "festive dress"
path = /obj/item/clothing/under/festivedress
/datum/gear/uniform/haltertop
display_name = "halter top"
path = /obj/item/clothing/under/haltertop
/datum/gear/uniform/littleblackdress
display_name = "little black dress"
path = /obj/item/clothing/under/littleblackdress
/datum/gear/uniform/bridgeofficer
display_name = "bridge officer uniform"
path = /obj/item/clothing/under/bridgeofficer
allowed_roles = list("Command Secretary")
+45 -1
View File
@@ -493,7 +493,7 @@ BLIND // can't see anything
/obj/item/clothing/glasses/thermal/plain/jensen
name = "optical thermal implants"
desc = "A set of implantable lenses designed to augment your vision"
desc = "A set of implantable lenses designed to augment your vision."
icon_state = "thermalimplants"
item_state_slots = list(slot_r_hand_str = "sunglasses", slot_l_hand_str = "sunglasses")
@@ -531,3 +531,47 @@ BLIND // can't see anything
to_chat(usr, "You push \the [src] up from in front of your eyes.")
update_clothing_icon()
usr.update_action_buttons()
// April 2020 Drof's Additions Begin Below
/obj/item/clothing/glasses/jamjar
name = "jamjar glasses"
desc = "A staple of the neo-otaku's wardrobe."
icon_state = "jamjar_glasses"
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
prescription = 1
body_parts_covered = 0
/obj/item/clothing/glasses/augmentedshades
name = "augmented shades"
desc = "A pair of retractable sunglasses lenses."
icon_state = "jensenshades"
off_state = "jensenshades_off"
toggleable = 1
action_button_name = "Toggle Out/In"
/obj/item/clothing/glasses/sunglasses/whiteblindfold
name = "white blindfold"
desc = "A white blindfold that covers the eyes, preventing sight."
icon_state = "blindfoldwhite"
item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold")
flash_protection = FLASH_PROTECTION_MAJOR
vision_flags = BLIND
/obj/item/clothing/glasses/redglasses
name = "red glasses"
desc = "A pair of glasses with red lenses that swirl and pulse hypnotically."
icon_state = "redglasses"
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
/obj/item/clothing/glasses/badglasses
name = "poorly made glasses"
desc = "A pair of glasses that look cheaply made. The lenses are prescription, at least...?"
icon_state = "glasses_bad"
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
prescription = 1
/obj/item/clothing/glasses/orangeglasses
name = "orange glasses"
desc = "A pair of orange glasses."
icon_state = "orangeglasses"
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
+5
View File
@@ -439,3 +439,8 @@
desc = "A gold-lined white cowl. It gives off uncomfortable cult vibes, but fancy."
icon_state = "whitecowl"
body_parts_covered = 0
/obj/item/clothing/head/bohat
name = "bridge officer hat"
desc = "For a person with no authority who takes themselves very seriously."
icon_state = "bridgeofficersoft"
+5
View File
@@ -171,3 +171,8 @@
icon_state = "jackboots"
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 10, rad = 0)
siemens_coefficient = 0.6
/obj/item/clothing/shoes/cowboyboots/black
name = "black cowboy boots"
desc = "A pair of black cowboy boots, pretty easy to scuff up."
icon_state = "cowboyboots_black"
+6
View File
@@ -232,6 +232,12 @@
/obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency/oxygen,/obj/item/weapon/surgical/scalpel,/obj/item/weapon/surgical/retractor,/obj/item/weapon/surgical/hemostat, \
/obj/item/weapon/surgical/cautery,/obj/item/weapon/surgical/bonegel,/obj/item/weapon/surgical/FixOVein)
/obj/item/clothing/suit/toggle/labcoat/paramedic
name = "paramedic vest"
desc = "A dark blue vest with reflective strips for emergency medical technicians."
icon_state = "paramedic-vest"
item_state = "paramedic-vest"
//Mime
/obj/item/clothing/suit/suspenders
name = "suspenders"
@@ -875,3 +875,9 @@ obj/item/clothing/suit/kamishimo
/obj/item/clothing/suit/storage/snowsuit/science
name = "science snowsuit"
icon_state = "snowsuit_science"
/obj/item/clothing/under/bridgeofficer
name = "bridge officer uniform"
desc = "A jumpsuit for those ranked high enough to stand at the bridge, but not high enough to touch any buttons."
icon_state = "bridgeofficer"
item_state = "bridgeofficer"
+25 -2
View File
@@ -771,7 +771,7 @@
/obj/item/clothing/under/swimsuit/stripper/mankini
name = "mankini"
desc = "No honest man would wear this abomination"
desc = "No honest man would wear this abomination."
icon_state = "mankini"
/*
@@ -909,6 +909,7 @@
desc = "An orange cohesion suit with yellow hazard stripes intended to assist Prometheans in maintaining their form and prevent direct skin exposure."
icon_state = "cohesionsuit_hazard"
<<<<<<< HEAD
//Uniforms
//On-mob sprites go in icons\mob\uniform.dmi with the format "white_ranger_uniform_s" - with 'white' replaced with green, cyan, etc... of course! Note the _s - this is not optional.
//Item sprites go in icons\obj\clothing\ranger.dmi with the format "white_ranger_uniform"
@@ -944,4 +945,26 @@
unicolor = "orange"
/obj/item/clothing/under/color/ranger/yellow
unicolor = "yellow"
unicolor = "yellow"
// April 2020 - Drof's Additions Begin Below
/obj/item/clothing/under/haltertop
name = "halter top"
desc = "A black halter top with denim jean shorts."
icon_state = "haltertop"
/obj/item/clothing/under/festivedress
name = "festive dress"
desc = "A red dress with a fur-like white trim that is associated with the Christmas season."
icon_state = "festivedress"
/obj/item/clothing/under/littleblackdress
name = "little black dress"
desc = "A small black dress with a red sash."
icon_state = "littleblackdress"
/obj/item/clothing/under/bridgeofficer
name = "bridge officer uniform"
desc = "A jumpsuit for those ranked high enough to stand at the bridge, but not high enough to touch any buttons."
icon_state = "bridgeofficer"
item_state = "bridgeofficer"
@@ -557,6 +557,7 @@ Drinks Data
/datum/reagent/ethanol/mintjulep
glass_icon_state = "mintjulep"
glass_center_of_mass = list("x"=16, "y"=16)
/datum/reagent/ethanol/oldfashioned
glass_icon_state = "oldfashioned"
@@ -574,12 +575,14 @@ Drinks Data
/datum/reagent/ethanol/sazerac
glass_icon_state = "sazerac"
glass_center_of_mass = list("x"=16, "y"=16)
/datum/reagent/ethanol/junglejuice
glass_icon_state = "junglejuice"
/datum/reagent/ethanol/gimlet
glass_icon_state = "gimlet"
glass_center_of_mass = list("x"=16, "y"=16)
/datum/reagent/ethanol/chrysanthemum
glass_icon_state = "chrysanthemum"
@@ -598,3 +601,7 @@ Drinks Data
/datum/reagent/ethanol/paloma
glass_icon_state = "paloma"
/datum/reagent/ethanol/euphoria
glass_icon_state = "euphoria"
glass_center_of_mass = list("x"=16, "y"=16)
+24 -11
View File
@@ -928,18 +928,18 @@
reagents.add_reagent("protein", 8)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger // Buff 6 >> 15
name = "burger"
desc = "The cornerstone of every nutritious breakfast."
icon_state = "hburger"
filling_color = "#D63C3C"
nutriment_amt = 3
nutriment_amt = 7
nutriment_desc = list("bun" = 2)
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger/Initialize()
. = ..()
reagents.add_reagent("protein", 3)
bitesize = 2
reagents.add_reagent("protein", 8)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/fishburger // Buff 6 >> 15
name = "Fillet -o- Carp Sandwich"
@@ -3390,15 +3390,15 @@ END CITADEL CHANGE */
/obj/item/weapon/reagent_containers/food/snacks/rawsticks/Initialize()
. = ..()
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein
/obj/item/weapon/reagent_containers/food/snacks/liquidfood
name = "\improper LiquidProtein Ration"
desc = "A variant of the liquidfood ration, designed for obligate carnivore species. Only barely more appealing than regular liquidfood. Should this be crunchy?"
icon_state = "liquidprotein"
icon_state = "liquidfood"
trash = /obj/item/trash/liquidprotein
filling_color = "#A8A8A8"
survivalfood = TRUE
center_of_mass = list("x"=16, "y"=15)
nutriment_amt = 22
nutriment_amt = 30
nutriment_desc = list("chalk" = 6)
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein/Initialize()
@@ -3423,7 +3423,6 @@ END CITADEL CHANGE */
reagents.add_reagent("paracetamol", 5)
reagents.add_reagent("enzyme", 1)
reagents.add_reagent("iron", 3)
reagents.add_reagent("protein", 8)
bitesize = 6
/obj/item/weapon/reagent_containers/food/snacks/meatcube
@@ -3438,6 +3437,20 @@ END CITADEL CHANGE */
reagents.add_reagent("protein", 15)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein // Added Protein only version of LiquidFood + added custom sprite for it
name = "\improper LiquidProtein Ration"
desc = "A variant of the liquidfood ration, designed for obligate carnivore species. Only barely more appealing than regular liquidfood. Should this be crunchy?"
icon_state = "liquidprotein"
trash = /obj/item/trash/liquidprotein
filling_color = "#A8A8A8"
center_of_mass = list("x"=16, "y"=15)
/obj/item/weapon/reagent_containers/food/snacks/liquidprotein/Initialize()
..()
reagents.add_reagent("protein", 30)
reagents.add_reagent("iron", 3)
bitesize = 4
/obj/item/weapon/reagent_containers/food/snacks/tastybread
name = "bread tube"
desc = "Bread in a tube. Chewy...and surprisingly tasty."
@@ -3615,7 +3628,7 @@ END CITADEL CHANGE */
reagents.add_reagent("protein", 5)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/porkbowl // Buff 10 >> 15
/obj/item/weapon/reagent_containers/food/snacks/porkbowl // Buff 10 >> 16
name = "pork bowl"
desc = "A bowl of fried rice with cuts of meat."
icon_state = "porkbowl"
@@ -3625,8 +3638,8 @@ END CITADEL CHANGE */
/obj/item/weapon/reagent_containers/food/snacks/porkbowl/Initialize()
. = ..()
reagents.add_reagent("nutriment", 12)
reagents.add_reagent("protein", 4)
reagents.add_reagent("nutriment", 11)
reagents.add_reagent("protein", 5)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/tortilla
+152 -13
View File
@@ -79,20 +79,21 @@
/datum/disease2/effect/gibbingtons/activate(var/mob/living/carbon/mob,var/multiplier)
// Probabilities have been tweaked to kill in ~2-3 minutes, giving 5-10 messages.
// Probably needs more balancing, but it's better than LOL U GIBBED NOW, especially now that viruses can potentially have no signs up until Gibbingtons.
// Tweaking this further cause WTF for a "~2-3 minutes" window god damn holy hell.
mob.adjustBruteLoss(10*multiplier)
if(istype(mob, /mob/living/carbon/human))
var/mob/living/carbon/human/H = mob
var/obj/item/organ/external/O = pick(H.organs)
if(prob(25))
mob << "<span class='warning'>Your [O.name] feels as if it might burst!</span>"
if(prob(10))
if(prob(3))
spawn(50)
if(O)
O.droplimb(0,DROPLIMB_BLUNT)
else
if(prob(75))
mob << "<span class='warning'>Your whole body feels like it might fall apart!</span>"
if(prob(10))
if(prob(3))
mob.adjustBruteLoss(25*multiplier)
/datum/disease2/effect/radian
@@ -101,8 +102,9 @@
maxm = 3
badness = 2
// Nerfing the value of the base rad to adjust and not cause immediate rad poisoning to a crew member.
/datum/disease2/effect/radian/activate(var/mob/living/carbon/mob,var/multiplier)
mob.apply_effect(2*multiplier, IRRADIATE, check_protection = 0)
mob.apply_effect(1.10*multiplier, IRRADIATE, check_protection = 0)
/datum/disease2/effect/deaf
name = "Deafness"
@@ -112,6 +114,8 @@
/datum/disease2/effect/deaf/activate(var/mob/living/carbon/mob,var/multiplier)
mob.ear_deaf += 20
// This will either be removed cause, god damn why do we need to have stuff that changes a person's model to something.
// Going to make this similar to gibbingtons' to make sure it's not an instant monkifying
/datum/disease2/effect/monkey
name = "Genome Regression"
stage = 4
@@ -120,8 +124,16 @@
/datum/disease2/effect/monkey/activate(var/mob/living/carbon/mob,var/multiplier)
if(istype(mob,/mob/living/carbon/human))
var/mob/living/carbon/human/h = mob
h.monkeyize()
if(prob(25))
mob << "<span class='warning'> You feel as if your body is trying to rapidly regress...</span>"
if(prob(3))
h.monkeyize()
else
mob << "<span class='warning'>You feel an odd attraction to consume banana's...</span>"
// Yeah no just turning this to constant ticking oxyloss from a dying windpipe with the name
/datum/disease2/effect/suicide
name = "Windpipe Contraction"
stage = 4
@@ -129,20 +141,20 @@
/datum/disease2/effect/suicide/activate(var/mob/living/carbon/mob,var/multiplier)
var/datum/gender/TM = gender_datums[mob.get_visible_gender()]
mob.suiciding = 30
//instead of killing them instantly, just put them at -175 health and let 'em gasp for a while
viewers(mob) << "<font color='red'><b>[mob.name] is holding [TM.his] breath. It looks like [TM.he] [TM.is] trying to commit suicide.</b></font>"
mob.adjustOxyLoss(175 - mob.getToxLoss() - mob.getFireLoss() - mob.getBruteLoss() - mob.getOxyLoss())
mob.updatehealth()
if(prob(25))
viewers(mob) << "<font color='red'><b>[mob.name] is holding [TM.his] breath. It looks like [TM.his] ability to breath [TM.is] constricted!</b></font>"
mob.apply_damage(15, OXY)
// Nerfing from 15 to 10
/datum/disease2/effect/killertoxins
name = "Autoimmune Reponse"
stage = 4
badness = 2
/datum/disease2/effect/killertoxins/activate(var/mob/living/carbon/mob,var/multiplier)
mob.adjustToxLoss(15*multiplier)
mob.adjustToxLoss(10*multiplier)
// DNA Damage
/datum/disease2/effect/dna
name = "Catastrophic DNA Degeneration"
stage = 4
@@ -180,6 +192,7 @@
C.status &= ~ORGAN_DEAD
H.update_icons_body()
// Added a delay into how fast this will act
/datum/disease2/effect/internalorgan
name = "Organ Shutdown"
stage = 4
@@ -191,8 +204,11 @@
var/organ = pick(list("heart","kidney","liver", "lungs"))
var/obj/item/organ/internal/O = H.organs_by_name[organ]
if (O.robotic != ORGAN_ROBOT)
O.damage += (5*multiplier)
H << "<span class='notice'>You feel a cramp in your guts.</span>"
if(prob(15))
O.damage += (5*multiplier)
H << "<span class='notice'>You feel a cramp in your guts.</span>"
else
H << "<span class='warning'>You feel like doom is coming.. you should head to medical!</span>"
/datum/disease2/effect/immortal
name = "Hyperaccelerated Aging"
@@ -216,10 +232,28 @@
var/backlash_amt = 5*multiplier
mob.apply_damages(backlash_amt,backlash_amt,backlash_amt,backlash_amt)
/datum/disease2/effect/better_bones
name = "Better Bones"
stage = 4
chance_maxm = 10
/datum/disease2/effect/better_bones/activate(var/mob/living/carbon/mob,var/multiplier)
if(istype(mob, /mob/living/carbon/human))
var/mob/living/carbon/human/H = mob
for (var/obj/item/organ/external/E in H.organs)
E.min_broken_damage = max(5, E.min_broken_damage + 30)
/datum/disease2/effect/better_bones/deactivate(var/mob/living/carbon/mob,var/multiplier)
if(istype(mob, /mob/living/carbon/human))
var/mob/living/carbon/human/H = mob
for (var/obj/item/organ/external/E in H.organs)
E.min_broken_damage = initial(E.min_broken_damage)
/datum/disease2/effect/bones
name = "Brittle Bones"
stage = 4
badness = 2
/datum/disease2/effect/bones/activate(var/mob/living/carbon/mob,var/multiplier)
if(istype(mob, /mob/living/carbon/human))
var/mob/living/carbon/human/H = mob
@@ -249,9 +283,47 @@
H.adjust_fire_stacks(2)
H.IgniteMob()
// Upgraded Chem Synth. Provided only good meds to heal a patient
/datum/disease2/effect/improved_chem_synthesis
name = "Improved Chemical Synthesis"
stage = 4
chance_maxm = 45
/datum/disease2/effect/improved_chem_synthesis/generate(c_data)
if(c_data)
data = c_data
else
data = pick("bicaridine", "kelotane", "anti_toxin", "tricordrazine")
var/datum/reagent/R = chemical_reagents_list[data]
name = "[initial(name)] ([initial(R.name)])"
/datum/disease2/effect/improved_chem_synthesis/activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount(data) < 5)
mob.reagents.add_reagent(data, 4)
////////////////////////STAGE 3/////////////////////////////////
// Organ Repair
/datum/disease2/effect/organ_repair
name = "Minor Organ Repair"
stage = 3
chance_maxm = 20
/datum/disease2/effect/organ_repair/generate(c_data)
if(c_data)
data = c_data
else
data = "peridaxon"
var/datum/reagent/R = data
name = "[initial(name)] ([initial(R.name)])"
/datum/disease2/effect/organ_repair/activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount(data) < 8)
mob << "<span class='notice'>You feel like your insides relaxed and you feel healthier after.</span>"
mob.reagents.add_reagent(data, 3)
/datum/disease2/effect/toxins
name = "Hyperacidity"
stage = 3
@@ -384,6 +456,19 @@
/datum/disease2/effect/scream/activate(var/mob/living/carbon/mob,var/multiplier)
mob.say("*scream")
// Will provide energy to the user
/datum/disease2/effect/energy_boost
name = "Increased Energy"
stage = 2
chance_maxm = 30
/datum/disease2/effect/energy_boost/activate(var/mob/living/carbon/mob,var/multiplier)
if(prob(30))
if(mob.drowsyness < 10)
mob.drowsyness = 0
else
mob.drowsyness -= 8
/datum/disease2/effect/drowsness
name = "Excessive Sleepiness"
stage = 2
@@ -479,8 +564,62 @@
if (prob(50))
mob.say("*vomit")
// Feeds protein slowly over time.
/datum/disease2/effect/protein_synthesis
name = "Protein Synthesis"
stage = 2
chance_maxm = 15
/datum/disease2/effect/protein_synthesis/generate(c_data)
if(c_data)
data = c_data
else
data = "protein"
var/datum/reagent/R = data
name = "[initial(name)] ([initial(R.name)])"
/datum/disease2/effect/protein_synthesis/activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount(data) < 30)
mob.reagents.add_reagent(data, 5)
// Feeds nutriment slowly over time.
/datum/disease2/effect/nutriment_synthesis
name = "Nutriment Synthesis"
stage = 2
chance_maxm = 15
/datum/disease2/effect/nutriment_synthesis/generate(c_data)
if(c_data)
data = c_data
else
data = "protein"
var/datum/reagent/R = data
name = "[initial(name)] ([initial(R.name)])"
/datum/disease2/effect/nutriment_synthesis/activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount(data) < 30)
mob.reagents.add_reagent(data, 5)
////////////////////////STAGE 1/////////////////////////////////
// Feeds sugar VERY slowly over time.
/datum/disease2/effect/sugar_synthesis
name = "Sugar Synthesis"
stage = 1
chance_maxm = 5
/datum/disease2/effect/sugar_synthesis/generate(c_data)
if(c_data)
data = c_data
else
data = "sugar"
var/datum/reagent/R = data
name = "[initial(name)] ([initial(R.name)])"
/datum/disease2/effect/sugar_synthesis/activate(var/mob/living/carbon/mob,var/multiplier)
if (mob.reagents.get_reagent_amount(data) < 30)
mob.reagents.add_reagent(data, 5)
/datum/disease2/effect/sneeze
name = "Sneezing"
stage = 1
@@ -531,4 +670,4 @@
stage = 1
/datum/disease2/effect/headache/activate(var/mob/living/carbon/mob,var/multiplier)
mob << "<span class='warning'>Your head hurts a bit.</span>"
mob << "<span class='warning'>Your head hurts a bit.</span>"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 205 KiB

After

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 163 KiB

After

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 KiB

After

Width:  |  Height:  |  Size: 369 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 378 KiB

After

Width:  |  Height:  |  Size: 399 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 KiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 KiB

After

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 126 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 728 B

After

Width:  |  Height:  |  Size: 716 B

File diff suppressed because it is too large Load Diff
+139 -89
View File
@@ -139,8 +139,10 @@
/turf/simulated/floor/wood,
/area/tether/midpoint)
"an" = (
/obj/structure/table/woodentable,
/turf/simulated/floor/wood,
/obj/structure/bed/chair/comfy/black{
dir = 4
},
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"ao" = (
/obj/machinery/light{
@@ -150,8 +152,9 @@
/turf/simulated/floor/wood,
/area/tether/midpoint)
"ap" = (
/obj/structure/bed/chair/comfy/black,
/turf/simulated/floor/wood,
/obj/structure/table/woodentable,
/obj/structure/flora/pottedplant/small,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aq" = (
/turf/simulated/floor/wood,
@@ -288,14 +291,18 @@
/turf/simulated/floor/wood,
/area/tether/midpoint)
"aF" = (
/obj/structure/table/woodentable,
/obj/machinery/light{
dir = 1
/obj/structure/bed/chair/comfy/black{
dir = 8
},
/turf/simulated/floor/wood,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aG" = (
/obj/machinery/vending/snack,
/obj/item/device/radio/intercom{
dir = 4;
icon_state = "intercom";
pixel_x = 24
},
/turf/simulated/floor/wood,
/area/tether/midpoint)
"aH" = (
@@ -318,10 +325,12 @@
/turf/simulated/floor/plating,
/area/maintenance/tether_midpoint)
"aJ" = (
/obj/structure/bed/chair/comfy/black{
/obj/structure/table/woodentable,
/obj/machinery/light{
dir = 1
},
/turf/simulated/floor/wood,
/obj/structure/flora/pottedplant/flower,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aK" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
@@ -337,10 +346,8 @@
/turf/simulated/floor/wood,
/area/tether/midpoint)
"aL" = (
/obj/structure/bed/chair/comfy/black{
dir = 8
},
/turf/simulated/floor/wood,
/obj/structure/table/woodentable,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aM" = (
/obj/structure/cable{
@@ -366,13 +373,8 @@
/turf/simulated/floor/plating,
/area/tether/midpoint)
"aO" = (
/obj/structure/cable{
d1 = 1;
d2 = 2;
icon_state = "1-2";
pixel_y = 0
},
/turf/simulated/floor/wood,
/obj/structure/bed/chair/comfy/black,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aP" = (
/obj/machinery/light,
@@ -415,18 +417,16 @@
/turf/simulated/floor/wood,
/area/tether/midpoint)
"aU" = (
/obj/structure/bed/chair/comfy/black{
dir = 4
/obj/structure/cable{
d1 = 1;
d2 = 2;
icon_state = "1-2";
pixel_y = 0
},
/turf/simulated/floor/wood,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aV" = (
/obj/structure/table/woodentable,
/obj/machinery/light{
dir = 4;
icon_state = "tube1"
},
/turf/simulated/floor/wood,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"aW" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
@@ -496,9 +496,59 @@
/area/tether/midpoint)
"be" = (
/obj/structure/table/woodentable,
/obj/machinery/light,
/obj/machinery/light{
dir = 4;
icon_state = "tube1"
},
/obj/structure/flora/pottedplant/small,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bf" = (
/obj/structure/table/woodentable,
/obj/item/weapon/dice/d20,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bg" = (
/obj/structure/bed/chair/comfy/black{
dir = 1
},
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bh" = (
/obj/machinery/hologram/holopad,
/turf/simulated/floor/wood,
/area/tether/midpoint)
"bi" = (
/obj/structure/table/woodentable,
/obj/machinery/light{
dir = 4;
icon_state = "tube1"
},
/obj/structure/flora/pottedplant/flower,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bj" = (
/obj/structure/table/woodentable,
/obj/structure/flora/pottedplant/flower,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bk" = (
/obj/structure/table/woodentable,
/obj/machinery/light,
/obj/structure/flora/pottedplant/small,
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
"bl" = (
/obj/structure/table/woodentable,
/obj/machinery/camera/network/northern_star{
dir = 5
},
/obj/item/device/radio/intercom{
dir = 8;
pixel_x = -24
},
/turf/simulated/floor/carpet/bcarpet,
/area/tether/midpoint)
(1,1,1) = {"
aa
@@ -10504,10 +10554,10 @@ ay
ay
at
aM
aO
aO
aO
aO
aU
aU
aU
aU
aY
bd
ay
@@ -10646,10 +10696,10 @@ ak
ao
aq
aq
aq
aq
aq
aq
aV
aV
aV
aV
aq
aE
aR
@@ -10784,8 +10834,8 @@ au
au
au
aH
aU
aU
an
an
aq
aq
aT
@@ -10794,8 +10844,8 @@ ba
bb
aq
aq
aU
aU
an
an
aH
au
au
@@ -10926,8 +10976,8 @@ au
au
au
aH
an
an
ap
aL
aq
aP
ay
@@ -10936,8 +10986,8 @@ ay
ay
bc
aq
an
an
aL
bj
aH
au
au
@@ -11068,18 +11118,18 @@ au
au
au
aH
aL
aL
aF
aF
aq
aq
ap
an
an
aJ
aO
bf
bl
bg
aq
aq
aL
aL
aF
aF
aH
au
au
@@ -11214,10 +11264,10 @@ ak
aq
aq
aq
ap
an
an
aJ
aO
aL
aL
bg
aq
aq
aq
@@ -11352,18 +11402,18 @@ au
au
au
aH
aU
aU
an
an
aq
aq
aq
bh
aq
aq
aq
aq
aq
aq
aq
aq
aU
aU
an
an
aH
au
au
@@ -11494,8 +11544,8 @@ au
au
au
aH
aF
an
aJ
aL
aq
aq
aq
@@ -11504,8 +11554,8 @@ aq
aq
aq
aq
an
be
aL
bk
aH
au
au
@@ -11636,18 +11686,18 @@ au
au
au
aH
aL
aL
aF
aF
aq
ap
an
aJ
ap
an
aJ
aO
aL
bg
aO
aL
bg
aq
aL
aL
aF
aF
aH
au
au
@@ -11779,16 +11829,16 @@ au
au
aH
ak
aL
aq
ap
aV
aJ
ap
aV
aJ
aq
aL
aO
be
bg
aO
bi
bg
aq
aq
ak
aH
au
File diff suppressed because it is too large Load Diff