mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Vox and Space
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
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.
|
||||
|
||||
/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))
|
||||
|
||||
@@ -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(
|
||||
|
||||
Reference in New Issue
Block a user