Merge pull request #10353 from VOREStation/master

May 18 2021 Hotfix
This commit is contained in:
Novacat
2021-05-18 08:38:23 -04:00
committed by GitHub
44 changed files with 1966 additions and 847 deletions
+7
View File
@@ -37,3 +37,10 @@
**License:** [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)<br>
**URL:** [Forum Thread](http://fractalsoftworks.com/forum/index.php?topic=14935.0)<br>
**Notes:** Permission to use assets also given in writing.<br>
<br>
**File:** `icons/mecha/fighters64x64.dmi`<br>
**Icon-States:** `gunpod`, derivs by VerySoft.<br>
**Creator:** Tartiflette & FlashFrozen<br>
**License:** [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)<br>
**URL:** [Patreon Post](https://www.patreon.com/posts/diable-avionics-44573931)<br>
**Notes:** Permission to use assets also given in writing.<br>
+1
View File
@@ -91,6 +91,7 @@
#define COLOR_DARK_TEAL "#2db5b5"
#define COLOR_LIGHT_VIOLET "#e7bfff"
#define COLOR_SAN_MARINO_BLUE "#4b75ab"
#define COLOR_OLIVE "#52613b" //VOREStation Addition
#define PIPE_COLOR_GREY "#808080"
#define PIPE_COLOR_RED "#ff0000"
+1 -1
View File
@@ -1,5 +1,5 @@
/obj/machinery/computer/arcade
list/prizes = list( /obj/item/weapon/storage/box/snappops = 2,
prizes = list( /obj/item/weapon/storage/box/snappops = 2,
/obj/item/toy/blink = 2,
/obj/item/clothing/under/syndicate/tacticool = 2,
/obj/item/toy/sword = 2,
@@ -145,7 +145,7 @@
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-red")
/obj/item/weapon/card/id/civilian/pilot
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-darkgreen")
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-olive")
/obj/item/weapon/card/id/civilian/entertainer
initial_sprite_stack = list("base-stamp", "top-generic", "stamp-n", "stripe-brown")
@@ -179,13 +179,13 @@
//Exploration
/obj/item/weapon/card/id/exploration
initial_sprite_stack = list("base-stamp", "top-darkgreen", "stamp-n")
initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n")
/obj/item/weapon/card/id/exploration/fm
initial_sprite_stack = list("base-stamp", "top-darkgreen", "stamp-n", "stripe-medblu")
initial_sprite_stack = list("base-stamp", "top-olive", "stamp-n", "stripe-medblu")
/obj/item/weapon/card/id/exploration/head
initial_sprite_stack = list("base-stamp-silver", "top-darkgreen", "stamp-n", "pips-white")
initial_sprite_stack = list("base-stamp-silver", "top-olive", "stamp-n", "pips-white")
//Talon
+49
View File
@@ -464,6 +464,18 @@
/obj/random/multiple/ore_pile/item_to_spawn()
return pick(
prob(10);list(
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite,
/obj/item/weapon/ore/bauxite
),
prob(10);list(
/obj/item/weapon/ore/coal,
/obj/item/weapon/ore/coal,
@@ -476,6 +488,18 @@
/obj/item/weapon/ore/coal,
/obj/item/weapon/ore/coal
),
prob(10);list(
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper,
/obj/item/weapon/ore/copper
),
prob(3);list(
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
@@ -552,6 +576,13 @@
/obj/item/weapon/ore/phoron,
/obj/item/weapon/ore/phoron
),
prob(5);list(
/obj/item/weapon/ore/rutile,
/obj/item/weapon/ore/rutile,
/obj/item/weapon/ore/rutile,
/obj/item/weapon/ore/rutile,
/obj/item/weapon/ore/rutile
),
prob(5);list(
/obj/item/weapon/ore/silver,
/obj/item/weapon/ore/silver,
@@ -568,6 +599,10 @@
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium
),
prob(2);list(
/obj/item/weapon/ore/void_opal,
/obj/item/weapon/ore/void_opal
),
)
/obj/random/multiple/corp_crate
@@ -849,6 +884,13 @@
/obj/random/grenade,
/obj/structure/closet/crate/secure/saare //SAARE GRENADES
),
prob(1);list(
/obj/random/material/precious,
/obj/random/material/precious,
/obj/random/material/precious,
/obj/random/material/precious,
/obj/structure/closet/crate/secure/saare //SAARE BULLION CRATE
),
prob(1);list(
/obj/random/cash/big,
/obj/random/cash/big,
@@ -1093,6 +1135,13 @@
/obj/item/weapon/tank/phoron/pressurized,
/obj/structure/closet/crate/secure/phoron //HQ FUEL TANKS
),
prob(1);list(
/obj/random/material/precious,
/obj/random/material/precious,
/obj/random/material/precious,
/obj/random/material/precious,
/obj/structure/closet/crate/secure/saare //SAARE BULLION CRATE
),
prob(1);list(
/obj/random/cash/big,
/obj/random/cash/big,
+18
View File
@@ -498,8 +498,11 @@
/obj/item/stack/material/glass/reinforced{amount = 10},
/obj/item/stack/material/plastic{amount = 10},
/obj/item/stack/material/wood{amount = 10},
/obj/item/stack/material/wood/sif{amount = 10},
/obj/item/stack/material/cardboard{amount = 10},
/obj/item/stack/rods{amount = 10},
/obj/item/stack/material/sandstone{amount = 10},
/obj/item/stack/material/marble{amount = 10},
/obj/item/stack/material/plasteel{amount = 10})
/obj/random/material/refined //Random materials for building stuff
@@ -518,6 +521,8 @@
/obj/item/stack/material/durasteel{amount = 5},
/obj/item/stack/material/gold{amount = 5},
/obj/item/stack/material/iron{amount = 10},
/obj/item/stack/material/copper{amount = 10},
/obj/item/stack/material/aluminium{amount = 10},
/obj/item/stack/material/lead{amount = 10},
/obj/item/stack/material/diamond{amount = 3},
/obj/item/stack/material/deuterium{amount = 5},
@@ -531,6 +536,19 @@
/obj/item/stack/material/tritium{amount = 3},
/obj/item/stack/material/verdantium{amount = 2})
/obj/random/material/precious //Precious metals, go figure
name = "random precious metal"
desc = "This is a small stack of a random precious metal."
icon = 'icons/obj/stacks.dmi'
icon_state = "sheet-gold_2"
/obj/random/material/precious/item_to_spawn()
return pick(/obj/item/stack/material/gold{amount = 5},
/obj/item/stack/material/copper{amount = 5},
/obj/item/stack/material/silver{amount = 5},
/obj/item/stack/material/platinum{amount = 5},
/obj/item/stack/material/osmium{amount = 5})
/obj/random/tank
name = "random tank"
desc = "This is a tank."
@@ -65,7 +65,7 @@
)
/decl/closet_appearance/secure_closet/expedition
color = COLOR_BRASS
color = COLOR_OLIVE
decals = list(
"lower_side_vent"
)
@@ -84,15 +84,13 @@
/decl/closet_appearance/secure_closet/expedition/explorer
extra_decals = list(
"stripe_vertical_left_full" = COLOR_PURPLE,
"stripe_vertical_right_full" = COLOR_PURPLE,
"exped" = COLOR_PURPLE
"stripe_vertical_mid_full" = COLOR_GRAY40,
"exped" = COLOR_GRAY40
)
/decl/closet_appearance/secure_closet/expedition/pathfinder
extra_decals = list(
"stripe_vertical_left_full" = COLOR_PURPLE,
"stripe_vertical_mid_full" = COLOR_GRAY40,
"stripe_vertical_right_full" = COLOR_PURPLE,
"exped" = COLOR_GRAY40
"stripe_vertical_left_full" = COLOR_GRAY20,
"stripe_vertical_right_full" = COLOR_GRAY20,
"exped" = COLOR_GRAY20
)
@@ -124,7 +124,7 @@
/obj/item/weapon/storage/backpack/parachute,
/obj/item/weapon/material/knife/tacknife/survival,
/obj/item/weapon/gun/energy/locked/frontier/holdout,
/obj/item/clothing/head/ompilot,
/obj/item/clothing/head/pilot_vr,
/obj/item/clothing/under/rank/pilot1,
/obj/item/clothing/suit/storage/toggle/bomber/pilot,
/obj/item/clothing/shoes/boots/winter/explorer,
+58 -11
View File
@@ -7,27 +7,30 @@
if(conserve_ammo || !holder.ICheckRangedAttack(target_last_seen_turf))
if(get_dist(holder, target_last_seen_turf) > 1) // We last saw them over there.
// Go to where you last saw the enemy.
give_destination(target_last_seen_turf, 1, TRUE) // Sets stance as well
else if(lose_target_time == world.time) // We last saw them next to us, so do a blind attack on that tile.
melee_on_tile(target_last_seen_turf)
return give_destination(target_last_seen_turf, 1, TRUE) // Sets stance as well
else if(lose_target_time < world.time) // We last saw them next to us, so do a blind attack on that tile.
if(melee_on_tile(target_last_seen_turf) != ATTACK_SUCCESSFUL && intelligence_level >= AI_NORMAL)
var/obj/O = find_escape_route()
if(istype(O))
return give_destination(get_turf(O), 0, TRUE)
else
find_target()
return find_target()
else
shoot_near_turf(target_last_seen_turf)
return shoot_near_turf(target_last_seen_turf)
// This shoots semi-randomly near a specific turf.
/datum/ai_holder/proc/shoot_near_turf(turf/targeted_turf)
if(get_dist(holder, targeted_turf) > max_range(targeted_turf))
return // Too far to shoot.
return ATTACK_FAILED// Too far to shoot.
var/turf/T = pick(RANGE_TURFS(2, targeted_turf)) // The turf we're actually gonna shoot at.
on_engagement(T)
if(firing_lanes && !test_projectile_safety(T))
step_rand(holder)
holder.face_atom(T)
return
return ATTACK_FAILED
ranged_attack(T)
return ranged_attack(T)
// Attempts to attack something on a specific tile.
// TODO: Put on mob/living?
@@ -36,9 +39,53 @@
var/mob/living/L = locate() in T
if(!L)
T.visible_message("\The [holder] attacks nothing around \the [T].")
return
return ATTACK_FAILED
if(holder.IIsAlly(L)) // Don't hurt our ally.
return
return ATTACK_FAILED
melee_attack(L)
return melee_attack(L)
// Attempts to locate any possible avenues that the target might have escaped via
// Could be an open door, could be a stairwell or a ladder
// Returns object to path to. If multiple targets are equidistant, picks randomly
/datum/ai_holder/proc/find_escape_route()
ai_log("find_escape_route() : Entering.", AI_LOG_DEBUG)
var/list/closest_escape = list()
var/closest_dist = world.view // We can't see any further than this
var/list/possible_escape_types = list(
/obj/machinery/door,
/obj/structure/stairs/top,
/obj/structure/stairs/bottom
)
if(intelligence_level >= AI_SMART)
possible_escape_types += /obj/structure/ladder
for(var/atom/A in view(world.view, holder))
if(!is_type_in_list(A, possible_escape_types))
continue // Not something they could have escaped through
if(turn(holder.dir, 180) & get_dir(get_turf(holder), get_turf(A)))
continue // Surely, they couldn't have escaped *behind* us!
if(istype(A, /obj/machinery/door))
var/obj/machinery/door/D = A
if(D.glass) // Surely, they couldn't hide behind a transparent door!
continue
if(D.density && intelligence_level < AI_SMART) // Surely, they couldn't have escaped through a *closed* door
continue
var/dist = get_dist(holder, A)
if(dist == closest_dist)
closest_escape += A
else if(dist < closest_dist)
closest_escape.Cut()
closest_escape += A
closest_dist = dist
ai_log("find_escape_route() : Found [closest_escape.len] candidates [closest_dist] tiles away.", AI_LOG_DEBUG)
if(closest_escape.len)
return pick(closest_escape)
return null
+36 -5
View File
@@ -27,19 +27,19 @@
ai_log("walk_to_destination() : Exiting.", AI_LOG_TRACE)
return
var/get_to = min_distance_to_destination
var/distance = get_dist(holder, destination)
ai_log("walk_to_destination() : get_to is [get_to].", AI_LOG_TRACE)
ai_log("walk_to_destination() : get_to is [min_distance_to_destination].", AI_LOG_TRACE)
// We're here!
if(distance <= get_to)
// We're here! Or we're horribly lost
if(distance <= min_distance_to_destination || holder.z != destination.z)
check_use_ladder()
give_up_movement()
set_stance(stance == STANCE_REPOSITION ? STANCE_APPROACH : STANCE_IDLE)
ai_log("walk_to_destination() : Destination reached. Exiting.", AI_LOG_INFO)
return
ai_log("walk_to_destination() : Walking.", AI_LOG_TRACE)
walk_path(destination, get_to)
walk_path(destination, min_distance_to_destination)
ai_log("walk_to_destination() : Exiting.",AI_LOG_TRACE)
/datum/ai_holder/proc/should_go_home()
@@ -159,3 +159,34 @@
holder.IMove(get_step(holder,moving_to))
wander_delay = base_wander_delay
ai_log("handle_wander_movement() : Exited.", AI_LOG_TRACE)
/datum/ai_holder/proc/check_use_ladder()
// No target, don't use the ladder
// Target is visible, don't use the ladder
if(!target || can_see_target(target))
return
var/has_hands = TRUE
if(istype(holder, /mob/living/simple_mob))
var/mob/living/simple_mob/S = holder
has_hands = S.has_hands
// Don't have means to use a ladder or the space around it, don't use the ladder
if(!has_hands && !holder.hovering)
return
var/obj/structure/ladder/L = locate() in get_turf(holder)
if(!istype(L))
return // No ladder, can't use it
if(!holder.may_climb_ladders(L))
return // Can't climb the ladder for other reasons (Probably inconsequential?)
var/list/directions = list()
if(L.allowed_directions & DOWN)
directions += L.target_down
if(L.allowed_directions & UP)
directions += L.target_up
if(directions.len)
L.climbLadder(holder, pick(directions))
+2 -7
View File
@@ -165,19 +165,14 @@
target = null
lose_target_time = world.time
give_up_movement()
if(target_last_seen_turf && intelligence_level >= AI_SMART)
if(target_last_seen_turf && intelligence_level >= AI_NORMAL)
ai_log("lose_target() : Going into 'engage unseen enemy' mode.", AI_LOG_INFO)
engage_unseen_enemy()
return TRUE //We're still working on it
return engage_unseen_enemy() //We're still working on it
else
ai_log("lose_target() : Can't chase target, so giving up.", AI_LOG_INFO)
remove_target()
return find_target() //Returns if we found anything else to do
return FALSE //Nothing new to do
// 'Hard' loss of target. Clean things up and return to idle.
/datum/ai_holder/proc/remove_target()
ai_log("remove_target() : Entering.", AI_LOG_TRACE)
@@ -50,7 +50,7 @@
/datum/gear/accessory/holster
display_name = "holster selection (Security, SM, HoP, Exploration)"
allowed_roles = list("Site Manager", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective","Explorer","Pathfinder","Talon Guard")
allowed_roles = list("Site Manager", "Head of Personnel", "Security Officer", "Warden", "Head of Security","Detective","Field Medic","Explorer","Pathfinder","Talon Captain","Talon Guard")
/datum/gear/accessory/brown_vest
display_name = "webbing, brown (Eng, Sec, Med, Exploration, Miner)"
@@ -2,7 +2,7 @@
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
/datum/gear/eyes/meson
display_name = "Optical Meson Scanners (Engineering, Science)"
display_name = "Optical Meson Scanners (Eng, Sci, Explo)"
allowed_roles = list("Station Engineer","Chief Engineer","Atmospheric Technician", "Scientist", "Research Director", "Explorer", "Pathfinder")
/datum/gear/eyes/arglasses
@@ -55,7 +55,7 @@
path = /obj/item/clothing/glasses/fluff/science_proper
/datum/gear/eyes/meson/retinal
display_name = "retinal projector, meson (Eng, Sci, Mining)"
display_name = "retinal projector, meson (Eng, Sci, Explo)"
path = /obj/item/clothing/glasses/omnihud/eng/meson
/datum/gear/eyes/security/secpatch
@@ -1,3 +1,8 @@
/datum/gear/head/cap/med
display_name = "cap, medical (Medical)"
path = /obj/item/clothing/head/soft/med
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Psychiatrist","Paramedic","Field Medic")
/*/datum/gear/head/cap/sol
display_name = "cap, sol"
path = /obj/item/clothing/head/soft/sol*/
@@ -1,6 +1,3 @@
/datum/gear/shoes/boots/winter/science
allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Explorer", "Pathfinder")
/datum/gear/shoes/boots/winter/medical
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
@@ -337,6 +337,8 @@ datum/gear/suit/duster
path = /obj/item/clothing/suit/storage/forensics/red
allowed_roles = list("Detective")
// winter coats go here
/datum/gear/suit/wintercoat
display_name = "winter coat"
path = /obj/item/clothing/suit/storage/hooded/wintercoat
@@ -346,38 +348,134 @@ datum/gear/suit/duster
path = /obj/item/clothing/suit/storage/hooded/wintercoat/captain
allowed_roles = list("Site Manager")
/datum/gear/suit/wintercoat/hop
display_name = "winter coat, head of personnel"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/hop
allowed_roles = list("Head of Personnel")
/datum/gear/suit/wintercoat/security
display_name = "winter coat, security"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/security
allowed_roles = list("Security Officer", "Head of Security", "Warden", "Detective")
/datum/gear/suit/wintercoat/security/hos
display_name = "winter coat, head of security"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/security/hos
allowed_roles = list("Head of Security")
/datum/gear/suit/wintercoat/medical
display_name = "winter coat, medical"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
/datum/gear/suit/wintercoat/medical/alt
display_name = "winter coat, medical alt"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/alt
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
/datum/gear/suit/wintercoat/medical/viro
display_name = "winter coat, virologist"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/viro
allowed_roles = list("Medical Doctor","Chief Medical Officer")
/datum/gear/suit/wintercoat/medical/para
display_name = "winter coat, paramedic"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/para
allowed_roles = list("Medical Doctor","Chief Medical Officer","Paramedic")
/datum/gear/suit/wintercoat/medical/chemist
display_name = "winter coat, chemist"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/chemist
allowed_roles = list("Chief Medical Officer","Chemist")
/datum/gear/suit/wintercoat/medical/cmo
display_name = "winter coat, chief medical officer"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/cmo
allowed_roles = list("Chief Medical Officer")
/datum/gear/suit/wintercoat/medical/sar
display_name = "winter coat, search and rescue"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar
allowed_roles = list("Chief Medical Officer", "Field Medic")
/datum/gear/suit/wintercoat/science
display_name = "winter coat, science"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/science
allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist")
/datum/gear/suit/wintercoat/science/robotics
display_name = "winter coat, robotics"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/science/robotics
allowed_roles = list("Research Director", "Roboticist")
/datum/gear/suit/wintercoat/science/rd
display_name = "winter coat, research director"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/science/rd
allowed_roles = list("Research Director")
/datum/gear/suit/wintercoat/engineering
display_name = "winter coat, engineering"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering
allowed_roles = list("Chief Engineer","Atmospheric Technician", "Station Engineer")
/datum/gear/suit/wintercoat/atmos
/datum/gear/suit/wintercoat/engineering/atmos
display_name = "winter coat, atmospherics"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering/atmos
allowed_roles = list("Chief Engineer", "Atmospheric Technician")
/datum/gear/suit/wintercoat/engineering/ce
display_name = "winter coat, chief engineer"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/engineering/ce
allowed_roles = list("Chief Engineer")
/datum/gear/suit/wintercoat/hydro
display_name = "winter coat, hydroponics"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/hydro
allowed_roles = list("Botanist", "Xenobotanist")
/datum/gear/suit/wintercoat/cargo
display_name = "winter coat, cargo"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/cargo
allowed_roles = list("Quartermaster","Cargo Technician")
/datum/gear/suit/wintercoat/miner
display_name = "winter coat, mining"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/miner
allowed_roles = list("Shaft Miner")
/datum/gear/suit/wintercoat/cargo/qm
display_name = "winter coat, quartermaster"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/cargo/qm
allowed_roles = list("Quartermaster")
/datum/gear/suit/wintercoat/bar
display_name = "winter coat, bartender"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/bar
allowed_roles = list("Bartender")
/datum/gear/suit/wintercoat/janitor
display_name = "winter coat, janitor"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/janitor
allowed_roles = list("Janitor")
/datum/gear/suit/wintercoat/aformal
display_name = "winter coat, assistant formal"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/aformal
/datum/gear/suit/wintercoat/ratvar
display_name = "winter coat, brassy"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/ratvar
/datum/gear/suit/wintercoat/narsie
display_name = "winter coat, runed"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/narsie
/datum/gear/suit/wintercoat/cosmic
display_name = "winter coat, cosmic"
path = /obj/item/clothing/suit/storage/hooded/wintercoat/cosmic
// winter coats end here
/datum/gear/suit/varsity
display_name = "varsity jacket selection"
@@ -1,15 +1,6 @@
/datum/gear/suit/wintercoat/medical
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
/datum/gear/suit/wintercoat/science
allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Explorer", "Pathfinder")
/datum/gear/suit/snowsuit/medical
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist", "Field Medic")
/datum/gear/suit/snowsuit/science
allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Explorer", "Pathfinder")
/datum/gear/suit/labcoat_colorable
display_name = "labcoat, colorable"
path = /obj/item/clothing/suit/storage/toggle/labcoat
@@ -55,7 +46,7 @@
/datum/gear/suit/roles/medical/ems_jacket
display_name = "first responder jacket"
path = /obj/item/clothing/suit/storage/toggle/fr_jacket
allowed_roles = list("Chief Medical Officer","Paramedic","Medical Doctor")
allowed_roles = list("Chief Medical Officer","Paramedic","Medical Doctor","Field Medic")
//imo-superior 'martian' style jacket with the star-of-life design
/datum/gear/suit/roles/medical/ems_jacket/alt
@@ -66,7 +57,7 @@
/datum/gear/suit/roles/medical/paramedic_vest
display_name = "paramedic vest"
path = /obj/item/clothing/suit/storage/toggle/paramedic
allowed_roles = list("Chief Medical Officer","Paramedic","Medical Doctor")
allowed_roles = list("Chief Medical Officer","Paramedic","Medical Doctor","Field Medic")
//greek thing
/datum/gear/suit/chiton
@@ -13,6 +13,10 @@
/datum/gear/uniform/job_turtle/science
allowed_roles = list("Research Director", "Scientist", "Roboticist", "Xenobiologist", "Xenobotanist")
/datum/gear/uniform/job_turtle/medical
display_name = "turtleneck, medical"
path = /obj/item/clothing/under/rank/medical/turtleneck
allowed_roles = list("Chief Medical Officer", "Paramedic", "Medical Doctor", "Psychiatrist", "Field Medic", "Chemist")
//KHI Uniforms
/datum/gear/uniform/job_khi/cmd
@@ -38,7 +42,7 @@
/datum/gear/uniform/job_khi/sci
display_name = "khi uniform, sci"
path = /obj/item/clothing/under/rank/khi/sci
allowed_roles = list("Research Director", "Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer")
allowed_roles = list("Research Director", "Scientist", "Roboticist", "Xenobiologist", "Xenobotanist")
/datum/gear/uniform/job_khi/crg
display_name = "khi uniform, cargo"
@@ -58,7 +62,7 @@
/datum/gear/suit/job_fed/medsci
display_name = "fed uniform, med/sci"
path = /obj/item/clothing/suit/storage/fluff/fedcoat/fedblue
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist","Xenobotanist","Pathfinder","Explorer","Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist","Xenobotanist","Field Medic")
/datum/gear/suit/job_fed/eng
display_name = "fed uniform, eng"
@@ -75,7 +79,7 @@
/datum/gear/uniform/job_trek/medsci/tos
display_name = "TOS uniform, med/sci"
path = /obj/item/clothing/under/rank/trek/medsci
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer", "Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Field Medic")
/datum/gear/uniform/job_trek/eng/tos
display_name = "TOS uniform, eng/sec"
@@ -91,7 +95,7 @@
/datum/gear/uniform/job_trek/medsci/tng
display_name = "TNG uniform, med/sci"
path = /obj/item/clothing/under/rank/trek/medsci/next
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer", "Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Field Medic")
/datum/gear/uniform/job_trek/eng/tng
display_name = "TNG uniform, eng/sec"
@@ -107,7 +111,7 @@
/datum/gear/uniform/job_trek/medsci/voy
display_name = "VOY uniform, med/sci"
path = /obj/item/clothing/under/rank/trek/medsci/voy
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer", "Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Field Medic")
/datum/gear/uniform/job_trek/eng/voy
display_name = "VOY uniform, eng/sec"
@@ -133,7 +137,7 @@
/datum/gear/uniform/job_trek/medsci/ds9
display_name = "DS9 uniform, med/sci"
path = /obj/item/clothing/under/rank/trek/medsci/ds9
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer", "Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Field Medic")
/datum/gear/uniform/job_trek/eng/ds9
display_name = "DS9 uniform, eng/sec"
@@ -150,7 +154,7 @@
/datum/gear/uniform/job_trek/medsci/ent
display_name = "ENT uniform, med/sci"
path = /obj/item/clothing/under/rank/trek/medsci/ent
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Pathfinder", "Explorer", "Field Medic")
allowed_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Paramedic","Geneticist","Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist", "Field Medic")
/datum/gear/uniform/job_trek/eng/ent
display_name = "ENT uniform, eng/sec"
@@ -54,7 +54,7 @@
/datum/gear/utility/dufflebag/sci
display_name = "science dufflebag"
path = /obj/item/weapon/storage/backpack/dufflebag/sci
allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Xenobotanist","Explorer","Pathfinder")
allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Xenobotanist")
/datum/gear/utility/ID
display_name = "contractor identification card"
+119 -2
View File
@@ -10,42 +10,159 @@
/obj/item/clothing/head/hood/winter
name = "winter hood"
desc = "A hood attached to a heavy winter jacket."
icon_state = "generic_hood"
icon_state = "winterhood"
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
/obj/item/clothing/head/hood/winter/captain
name = "site manager's winter hood"
desc = "A blue and yellow hood attached to a heavy winter jacket."
icon_state = "winterhood_captain"
armor = list(melee = 20, bullet = 15, laser = 20, energy = 10, bomb = 15, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/hop
name = "head of personnel's winter hood"
desc = "A cozy winter hood attached to a heavy winter jacket."
icon_state = "winterhood_hop"
/obj/item/clothing/head/hood/winter/security
name = "security winter hood"
desc = "A red, armor-padded winter hood."
icon_state = "winterhood_security"
armor = list(melee = 25, bullet = 20, laser = 20, energy = 15, bomb = 20, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/security/hos
name = "head of security's winter hood"
desc = "A red, armor-padded winter hood, lovingly woven with a Kevlar interleave. Definitely not bulletproof, especially not the part where your face goes."
icon_state = "winterhood_hos"
armor = list(melee = 25, bullet = 20, laser = 20, energy = 15, bomb = 20, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/medical
name = "medical winter hood"
desc = "A white winter coat hood."
icon_state = "winterhood_medical"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/medical/alt
name = "medical winter hood, alt"
desc = "A white winter coat hood. It's warm."
icon_state = "winterhood_medicalalt"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/medical/viro
name = "virologist winter hood"
desc = "A white winter coat hood with green markings."
icon_state = "winterhood_viro"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/medical/para
name = "paramedic winter hood"
desc = "A white winter coat hood with blue markings."
icon_state = "winterhood_para"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/medical/chemist
name = "chemist winter hood"
desc = "A white winter coat hood."
icon_state = "winterhood_chemist"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/medical/cmo
name = "chief medical officer's winter hood"
desc = "A white winter coat hood."
icon_state = "winterhood_cmo"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
/obj/item/clothing/head/hood/winter/science
name = "science winter hood"
desc = "A white winter coat hood. This one will keep your brain warm. About as much as the others, really."
icon_state = "winterhood_science"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/science/robotics
name = "science winter hood"
desc = "A black winter coat hood. You can pull it down over your eyes and pretend that you're an outdated, late 1980s interpretation of a futuristic mechanized police force. They'll fix you. They fix everything."
icon_state = "winterhood_robotics"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/science/rd
name = "research director's winter hood"
desc = "A white winter coat hood. It smells faintly of slightly unethical ideas."
icon_state = "winterhood_rd"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/engineering
name = "engineering winter hood"
desc = "A yellow winter coat hood. Definitely not a replacement for a hard hat."
icon_state = "winterhood_engineer"
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
/obj/item/clothing/head/hood/winter/engineering/atmos
name = "atmospherics winter hood"
desc = "A yellow and blue winter coat hood."
icon_state = "winterhood_atmos"
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
/obj/item/clothing/head/hood/winter/engineering/ce
name = "chief engineer's winter hood"
desc = "A white winter coat hood. Feels surprisingly heavy. The tag says that it's not child safe."
icon_state = "winterhood_ce"
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
/obj/item/clothing/head/hood/winter/hydro
name = "hydroponics winter hood"
desc = "A green winter coat hood."
icon_state = "winterhood_hydro"
/obj/item/clothing/head/hood/winter/cargo
name = "cargo winter hood"
desc = "A grey hood for a winter coat."
icon_state = "winterhood_cargo"
/obj/item/clothing/head/hood/winter/miner
/obj/item/clothing/head/hood/winter/cargo/miner
name = "mining winter hood"
desc = "A dusty winter coat hood."
icon_state = "winterhood_miner"
armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
/obj/item/clothing/head/hood/winter/cargo/qm
name = "quartermaster's winter hood"
desc = "A dark brown winter coat hood."
icon_state = "winterhood_qm"
/obj/item/clothing/head/hood/winter/bar
name = "bartender winter hood"
desc = "A white winter coat hood."
icon_state = "winterhood_bar"
/obj/item/clothing/head/hood/winter/janitor
name = "janitor winter hood"
desc = "A purple hood that smells of space cleaner."
icon_state = "winterhood_janitor"
/obj/item/clothing/head/hood/winter/aformal
name = "assistant formal winter hood"
desc = "A black winter coat hood."
icon_state = "winterhood_aformal"
/obj/item/clothing/head/hood/winter/ratvar
name = "brassy winter hood"
desc = "A brass-plated winter hood that glows softly, hinting at its divinity."
icon_state = "winterhood_ratvar"
light_range = 3
light_power = 1
light_color = "#B18B25" //clockwork slab background top color
/obj/item/clothing/head/hood/winter/narsie
name = "runed winter hood"
desc = "A black winter hood full of whispering secrets that only She shall ever know."
icon_state = "winterhood_narsie"
/obj/item/clothing/head/hood/winter/cosmic
name = "cosmic winter hood"
desc = "A starry winter hood."
icon_state = "winterhood_cosmic"
// Explorer gear
/obj/item/clothing/head/hood/explorer
name = "explorer hood"
+31 -18
View File
@@ -1,14 +1,9 @@
//Overmap pilots. Same gear, without the dumb interface.
/obj/item/clothing/head/ompilot
name = "pilot helmet"
desc = "Standard pilot gear. Protects the head from impacts."
icon_state = "pilot_helmet1"
item_icons = list(slot_head_str = 'icons/mob/pilot_helmet.dmi')
sprite_sheets = list(
SPECIES_TESHARI = 'icons/mob/species/teshari/pilot_helmet.dmi'
)
flags = THICKMATERIAL
//Pilot helmets
/obj/item/clothing/head/pilot_vr
name = "standard pilot helmet"
desc = "Standard pilot gear. Protects the head from impacts. This one has a retractable visor"
icon = 'icons/obj/clothing/helmets_vr.dmi'
icon_state = "pilot1"
armor = list(melee = 20, bullet = 10, laser = 10, energy = 5, bomb = 10, bio = 0, rad = 0)
flags_inv = HIDEEARS
cold_protection = HEAD
@@ -16,18 +11,36 @@
heat_protection = HEAD
max_heat_protection_temperature = HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
w_class = ITEMSIZE_NORMAL
/obj/item/clothing/head/ompilot/alt
name = "pilot helmet"
desc = "Standard pilot gear. Protects the head from impacts. This one has a retractable visor"
icon_state = "pilot_helmet2"
item_icons = list(slot_head_str = 'icons/mob/head_vr.dmi')
sprite_sheets = list(
SPECIES_TESHARI = 'icons/mob/species/teshari/helmet_vr.dmi'
)
action_button_name = "Toggle Visor"
/obj/item/clothing/head/ompilot/alt/attack_self(mob/user as mob)
/obj/item/clothing/head/pilot_vr/attack_self(mob/user as mob)
if(src.icon_state == initial(icon_state))
src.icon_state = "[icon_state]up"
to_chat(user, "You raise the visor on the pilot helmet.")
else
src.icon_state = initial(icon_state)
to_chat(user, "You lower the visor on the pilot helmet.")
update_clothing_icon() //so our mob-overlays update
update_clothing_icon() //so our mob-overlays update
/obj/item/clothing/head/pilot_vr/alt
name = "colored pilot helmet"
desc = "A colored version of the standard pilot helmet. Protects the head from impacts. This one has a retractable visor"
icon_state = "pilot2"
item_icons = list(slot_head_str = 'icons/mob/head_vr.dmi')
sprite_sheets = list(
SPECIES_TESHARI = 'icons/mob/species/teshari/helmet_vr.dmi'
)
action_button_name = "Toggle Visor"
/obj/item/clothing/head/pilot_vr/alt/attack_self(mob/user as mob)
if(src.icon_state == initial(icon_state))
src.icon_state = "[icon_state]up"
to_chat(user, "You raise the visor on the pilot helmet.")
else
src.icon_state = initial(icon_state)
to_chat(user, "You lower the visor on the pilot helmet.")
update_clothing_icon() //so our mob-overlays update
+177 -24
View File
@@ -85,6 +85,8 @@
action_button_name = "Toggle Ian Hood"
hoodtype = /obj/item/clothing/head/hood/ian_hood
// winter coats go here
/obj/item/clothing/suit/storage/hooded/wintercoat
name = "winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs."
@@ -94,97 +96,248 @@
flags_inv = HIDEHOLSTER
cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit)
/obj/item/clothing/suit/storage/hooded/wintercoat/captain
name = "site manager's winter coat"
desc = "A heavy jacket made from the most expensive animal furs on the market and sewn with the finest of jewels. Truly a coat befitting a Manager."
icon_state = "coatcaptain"
item_state_slots = list(slot_r_hand_str = "coatcaptain", slot_l_hand_str = "coatcaptain")
armor = list(melee = 20, bullet = 15, laser = 20, energy = 10, bomb = 15, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/captain
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/gun/energy,
/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs,/obj/item/clothing/head/helmet)
/obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs, /obj/item/clothing/head/helmet)
/obj/item/clothing/suit/storage/hooded/wintercoat/hop
name = "head of personnel's winter coat"
desc = "A cozy winter coat, covered in thick fur. The breast features a proud yellow chevron, reminding everyone that you're the second banana."
icon_state = "coathop"
armor = list(melee = 5, bullet = 0, laser = 0, energy = 0, bomb = 5, bio = 5, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/hop
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/gun/energy,
/obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs, /obj/item/clothing/head/helmet)
/obj/item/clothing/suit/storage/hooded/wintercoat/security
name = "security winter coat"
desc = "A heavy jacket made from greyshirt hide. There seems to be a sewed in holster, as well as a thin weave of protection against most damage."
icon_state = "coatsecurity"
item_state_slots = list(slot_r_hand_str = "coatsecurity", slot_l_hand_str = "coatsecurity")
armor = list(melee = 25, bullet = 20, laser = 20, energy = 15, bomb = 20, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/security
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/gun/energy,
/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs,/obj/item/clothing/head/helmet)
/obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs, /obj/item/clothing/head/helmet)
/obj/item/clothing/suit/storage/hooded/wintercoat/security/hos
name = "head of security's winter coat"
desc = "A heavy jacket made from greyshirt hide. There seems to be a sewed in holster, as well as a thin weave of protection against most damage."
icon_state = "coathos"
armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 20, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/security/hos
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/gun/energy,
/obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs, /obj/item/clothing/head/helmet)
/obj/item/clothing/suit/storage/hooded/wintercoat/medical
name = "medical winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. There's a thick weave of sterile material, good for virus outbreaks!"
icon_state = "coatmedical"
item_state_slots = list(slot_r_hand_str = "coatmedical", slot_l_hand_str = "coatmedical")
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer,/obj/item/stack/medical,
/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle)
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer, /obj/item/stack/medical,
/obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill, /obj/item/weapon/storage/pill_bottle)
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/alt
name = "medical winter coat, alt"
desc = "A heavy jacket made from 'synthetic' animal furs. There's a thick weave of sterile material, good for virus outbreaks!"
icon_state = "coatmedicalalt"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical/alt
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/viro
name = "virologist winter coat"
desc = "A white winter coat with green markings. Warm, but wont fight off the common cold or any other disease. Might make people stand far away from you in the hallway. The zipper tab looks like an oversized bacteriophage."
icon_state = "coatviro"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical/viro
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/para
name = "paramedic winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs.It has an aura of underappreciation."
icon_state = "coatpara"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical/para
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/chemist
name = "chemist winter coat"
desc = "A lab-grade winter coat made with acid resistant polymers. For the enterprising chemist who was exiled to a frozen wasteland on the go."
icon_state = "coatchemist"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical/chemist
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/cmo
name = "chief medical officer's winter coat"
desc = "A lab-grade winter coat made with acid resistant polymers. For the enterprising chemist who was exiled to a frozen wasteland on the go."
icon_state = "coatcmo"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/medical/cmo
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar
name = "search and rescue winter coat"
desc = "A heavy winter jacket. A white star of life is emblazoned on the back, with the words search and rescue written underneath."
icon_state = "coatsar"
armor = list(melee = 15, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 5)
hoodtype = /obj/item/clothing/head/hood/winter/medical
allowed = list (/obj/item/weapon/gun, /obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer, /obj/item/stack/medical,
/obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill, /obj/item/weapon/storage/pill_bottle)
/obj/item/clothing/suit/storage/hooded/wintercoat/science
name = "science winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. It has a small tag that says 'Bomb Proof! (Not fully bomb proof)'."
icon_state = "coatscience"
item_state_slots = list(slot_r_hand_str = "coatscience", slot_l_hand_str = "coatscience")
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/science
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer,/obj/item/stack/medical,
/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle)
/obj/item/weapon/dnainjector, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill, /obj/item/weapon/storage/pill_bottle)
/obj/item/clothing/suit/storage/hooded/wintercoat/science/robotics
name = "robotics winter coat"
desc = "A black winter coat with a badass flaming robotic skull for the zipper tab. This one has bright red designs and a few useless buttons."
icon_state = "coatrobotics"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/science/robotics
/obj/item/clothing/suit/storage/hooded/wintercoat/science/rd
name = "research director's winter coat"
desc = "A thick arctic winter coat with an outdated atomic model instead of a plastic zipper tab. Most in the know are heavily aware that Bohr's model of the atom was outdated by the time of the 1930s when the Heisenbergian and Schrodinger models were generally accepted for true. Nevertheless, we still see its use in anachronism, roleplaying, and, in this case, as a zipper tab. At least it should keep you warm on your ivory pillar."
icon_state = "coatrd"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 20, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/science/rd
/obj/item/clothing/suit/storage/hooded/wintercoat/engineering
name = "engineering winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. There seems to be a thin weave of lead on the inside."
icon_state = "coatengineer"
item_state_slots = list(slot_r_hand_str = "coatengineer", slot_l_hand_str = "coatengineer")
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
hoodtype = /obj/item/clothing/head/hood/winter/engineering
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer, /obj/item/device/flashlight,
/obj/item/device/multitool, /obj/item/device/pipe_painter, /obj/item/device/radio, /obj/item/device/t_scanner, /obj/item/weapon/tool/crowbar, /obj/item/weapon/tool/screwdriver,
/obj/item/weapon/weldingtool, /obj/item/weapon/tool/wirecutters, /obj/item/weapon/tool/wrench, /obj/item/weapon/tank/emergency/oxygen, /obj/item/clothing/mask/gas, /obj/item/taperoll/engineering)
/obj/item/clothing/suit/storage/hooded/wintercoat/engineering/atmos
name = "atmospherics winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. It seems to have burn marks on the inside from a phoron fire."
icon_state = "coatatmos"
item_state_slots = list(slot_r_hand_str = "coatatmos", slot_l_hand_str = "coatatmos")
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
hoodtype = /obj/item/clothing/head/hood/winter/engineering/atmos
/obj/item/clothing/suit/storage/hooded/wintercoat/engineering/ce
name = "atmospherics winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. It seems to have burn marks on the inside from a phoron fire."
icon_state = "coatce"
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20)
hoodtype = /obj/item/clothing/head/hood/winter/engineering/ce
/obj/item/clothing/suit/storage/hooded/wintercoat/hydro
name = "hydroponics winter coat"
desc = "A heavy jacket made from synthetic animal furs. There's a small tag that says 'Vegan Friendly'."
icon_state = "coathydro"
item_state_slots = list(slot_r_hand_str = "coathydro", slot_l_hand_str = "coathydro")
hoodtype = /obj/item/clothing/head/hood/winter/hydro
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/reagent_containers/spray/plantbgone,
/obj/item/device/analyzer/plant_analyzer, /obj/item/seeds, /obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/material/minihoe)
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/tank/emergency/oxygen,
/obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask,
/obj/item/device/suit_cooling_unit, /obj/item/weapon/reagent_containers/spray/plantbgone, /obj/item/device/analyzer/plant_analyzer, /obj/item/seeds,
/obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/material/minihoe)
/obj/item/clothing/suit/storage/hooded/wintercoat/cargo
name = "cargo winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. It seems to be rather rugged, from the back-breaking work of pushing crates."
icon_state = "coatcargo"
item_state_slots = list(slot_r_hand_str = "coatcargo", slot_l_hand_str = "coatcargo")
hoodtype = /obj/item/clothing/head/hood/winter/cargo
/obj/item/clothing/suit/storage/hooded/wintercoat/cargo/qm
name = "quartermaster's winter coat"
desc = "A dark brown winter coat that has a golden crate pin for its zipper pully."
icon_state = "coatqm"
armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/cargo/qm
/obj/item/clothing/suit/storage/hooded/wintercoat/miner
name = "mining winter coat"
desc = "A heavy jacket made from real animal furs. The miner who made this must have been through the Underdark."
icon_state = "coatminer"
item_state_slots = list(slot_r_hand_str = "coatminer", slot_l_hand_str = "coatminer")
armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0)
hoodtype = /obj/item/clothing/head/hood/winter/miner
allowed = list (/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/storage/fancy/cigarettes, /obj/item/weapon/storage/box/matches,
/obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/weapon/tank, /obj/item/device/radio, /obj/item/weapon/pickaxe, /obj/item/weapon/storage/bag/ore)
hoodtype = /obj/item/clothing/head/hood/winter/cargo/miner
allowed = list(/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit,
/obj/item/weapon/tank, /obj/item/device/radio, /obj/item/weapon/pickaxe, /obj/item/weapon/storage/bag/ore)
/obj/item/clothing/suit/storage/hooded/wintercoat/bar
name = "bartender winter coat"
desc = "A heavy jacket made from 'synthetic' animal furs. It smells of booze."
icon_state = "coatbar"
hoodtype = /obj/item/clothing/head/hood/winter/bar
/obj/item/clothing/suit/storage/hooded/wintercoat/janitor
name = "janitor winter coat"
desc = "A purple-and-beige winter coat that smells of space cleaner."
icon_state = "coatjanitor"
hoodtype = /obj/item/clothing/head/hood/winter/janitor
/obj/item/clothing/suit/storage/hooded/wintercoat/aformal
name = "assistant formal winter coat"
desc = "A black button up winter coat."
icon_state = "coataformal"
hoodtype = /obj/item/clothing/head/hood/winter/aformal
/obj/item/clothing/suit/storage/hooded/wintercoat/ratvar
name = "brassy winter coat"
desc = "A softly-glowing, brass-colored button up winter coat. Instead of a zipper tab, it has a brass cog with a tiny red gemstone inset."
icon_state = "coatratvar"
hoodtype = /obj/item/clothing/head/hood/winter/ratvar
light_range = 3
light_power = 1
light_color = "#B18B25" //clockwork slab background top color
/obj/item/clothing/suit/storage/hooded/wintercoat/narsie
name = "runed winter coat"
desc = "A somber button-up in tones of grey entropy and a wicked crimson zipper. When pulled all the way up, the zipper looks like a bloody gash. The zipper pull looks like a single drop of blood."
icon_state = "coatnarsie"
hoodtype = /obj/item/clothing/head/hood/winter/narsie
/obj/item/clothing/suit/storage/hooded/wintercoat/cosmic
name = "cosmic winter coat"
desc = "A starry winter coat that even glows softly."
icon_state = "coatcosmic"
hoodtype = /obj/item/clothing/head/hood/winter/cosmic
light_power = 1.8
light_range = 1.2
// winter coats end here
/obj/item/clothing/suit/storage/hooded/explorer
name = "explorer suit"
@@ -47,9 +47,10 @@
attack_armor_pen = 25
pixel_x = -16
pixel_y = -16
pixel_y = 0
default_pixel_x = -16
old_x = -16
old_y = -16
old_y = 0
/mob/living/simple_mob/animal/giant_spider/nurse/eggless/lay_eggs(turf/T)
return FALSE
+3 -3
View File
@@ -1,6 +1,6 @@
/mob/living/handle_fall(var/turf/landing)
var/mob/drop_mob = locate(/mob, landing)
var/mob/drop_mob = locate(/mob/living, landing)
if(locate(/obj/structure/stairs) in landing)
for(var/atom/A in landing)
@@ -17,7 +17,7 @@
if(!O.CanFallThru(src, landing))
return 1
if(drop_mob && !(drop_mob == src) && ismob(drop_mob) && isliving(drop_mob)) //Shitload of checks. This is because the game finds various ways to screw me over.
if(drop_mob && !(drop_mob == src)) //Shitload of checks. This is because the game finds various ways to screw me over.
var/mob/living/drop_living = drop_mob
if(drop_living.dropped_onto(src))
return
@@ -105,4 +105,4 @@
if(direction == UP) //on a turf below, trying to enter
return 0
if(direction == DOWN) //on a turf above, trying to enter
return 1
return 1
Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 KiB

After

Width:  |  Height:  |  Size: 339 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 232 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 KiB

After

Width:  |  Height:  |  Size: 349 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 693 B

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 61 KiB

+25 -18
View File
@@ -47,7 +47,7 @@ var/global/list/latejoin_talon = list()
vessel_mass = 10000
vessel_size = SHIP_SIZE_LARGE
initial_generic_waypoints = list("talon_v2_near_fore_port", "talon_v2_near_fore_star", "talon_v2_near_aft_port", "talon_v2_near_aft_star", "talon_v2_wing_port", "talon_v2_wing_star")
initial_restricted_waypoints = list("Talon's boat" = list("offmap_spawn_talonboat"))
initial_restricted_waypoints = list("Talon's Shuttle" = list("offmap_spawn_talonboat"))
skybox_icon = 'talon.dmi' //Art by Gwyvern, distributed under Creative Commons license
skybox_icon_state = "skybox"
@@ -56,20 +56,20 @@ var/global/list/latejoin_talon = list()
// The shuttle's 'shuttle' computer
/obj/machinery/computer/shuttle_control/explore/talonboat
name = "boat control console"
shuttle_tag = "Talon's boat"
name = "shuttle control console"
shuttle_tag = "Talon's Shuttle"
req_one_access = list(access_talon)
/obj/effect/overmap/visitable/ship/landable/talon_boat
name = "Talon's Boat"
name = "ITV Talon Shuttle"
desc = "A small shuttle from the ITV Talon."
vessel_mass = 1000
vessel_size = SHIP_SIZE_TINY
shuttle = "Talon's boat"
shuttle = "Talon's Shuttle"
// A shuttle lateloader landmark
/obj/effect/shuttle_landmark/shuttle_initializer/talonboat
name = "Talon's boat bay"
name = "Talon's shuttle bay"
base_area = /area/talon_v2/hangar
base_turf = /turf/simulated/floor/reinforced
landmark_tag = "offmap_spawn_talonboat"
@@ -78,7 +78,7 @@ var/global/list/latejoin_talon = list()
// The talon's boat
/datum/shuttle/autodock/overmap/talonboat
name = "Talon's boat"
name = "Talon's Shuttle"
current_location = "offmap_spawn_talonboat"
docking_controller_tag = "talonboat_docker"
shuttle_area = /area/shuttle/talonboat
@@ -86,7 +86,10 @@ var/global/list/latejoin_talon = list()
defer_initialisation = TRUE
/area/shuttle/talonboat
name = "Talon's Boat"
name = "Talon's Shuttle"
requires_power = 1
icon = 'icons/turf/areas_vr_talon.dmi'
icon_state = "green"
///////////////////////////
//// The Various Machines
@@ -113,18 +116,20 @@ good luck<br>\
info = {"to whoever's saddled with running this rustbucket this week,<br>\
good news! you may have noticed the entire ship was replaced pretty much overnight.<br>\
that or it changed shape or something? whatever, not important.<br>\
what <b>is</b> important is that it no longer runs off solar arrays. now we have a pair of tritium generators.<br>\
they're in the shielded compartment just across from the big white SMES bricks.<br>\
jam the tritium pucks in the hoppers (not too rough and messy though) and fire them up!<br>\
you shouldn't need to push power generation past 50kW per generator unless it's an emergency, so let it run slow and save the fuel.<br>\
congrats, power is good to go!<br>\
what <b>is</b> important is that it no longer runs off solar arrays. now we have a pair of radioisotope thermoelectric generators (or 'RTGs' as the kids call them) and a PTTO (or 'potato'... don't ask) mini reactor.<br>\
they're all in the shielded compartment just across from the big white SMES bricks.<br>\
the radioisotope buggers are basically reserves; they'll run themselves pretty much forever and provide just enough juice to run cryosupport plus allow you to kickstart power for the ship in an emergency, whilst the PTTO eats sheet uranium and puts out the big watts that keeps all the major stuff running.<br>\
you shouldn't need to push power generation past 100kW unless it's an emergency or you've been drifting dark for a while, so let it run slow and save the fuel. initial draw will be a little high but once all the APCs are charged up it should settle down to about two-thirds 'peak'. <b>do not</b> push the PTTO past 200kW, or it'll start to overheat. too much heat and it'll explode. I don't need to tell you why that's bad.<br>\
congrats, power is good to go! just keep in mind that the PTTO puts out hard rads whilst it's in use, so don't stand in the chamber too long whilst it's running. legal assures me it's fine but as far as I'm concerned any level of ionizing radiation is bad, y'know?<br>\
<br>\
just remember to actually go anywhere you'll also need to flip the output of each engine room's pumps up.<br>\
if you somehow, <i>somehow</i>, start to run low on fuel, there are two reserve tanks and twelve(!) empty tanks.<br>\
pray you can make it to the fuel depot on what gas you have left and fill up the tanks there.<br>\
also! remember to actually go anywhere you'll also need to flip the output of each engine room's pumps up.<br>\
if you somehow, <i>somehow</i>, start to run low on fuel, there are two reserve tanks in port engineering behind the atmos rig and twelve(!) empty tanks in the tail spars.<br>\
the two reserve tanks are mostly for the shuttle, but if you're low then pray you can make it to the fuel depot on what gas you have left and fill up the tanks there.<br>\
alternately maybe you can trade some off those nanotrasen corpos down on 3B. atmosphere's full of the stuff, I'm sure they won't miss a little.<br>\
<br>\
<i>Harry Townes</i>"}
<i>Harry Townes</i><br>\
<br>\
p.s. speaking of shit that's bad for your health for the love of <i>fuck</i> do not smoke in the main engineering compartments, and <b>definitely</b> don't smoke in the engine rooms! if the ass-end of the ship ends up blown off because you went for a smoke break in a room full of crazy-flammable phoron they'll stick your reconstituted atoms so far in debt-prison you won't see daylight for a century."}
/obj/item/weapon/paper/talon_doctor
name = "new medical bay"
@@ -171,9 +176,11 @@ what is important is that the shuttle has been replaced. it is now capable of fu
but the rear airlock is a bit fussy. be sure to use the manual switches on each side of the airlock if you're matching another airlock and one side is exposed to vacuum or a hostile atmosphere!<br>\
also be sure that it's locked down before you take off, the automatic switch is a bit stupid sometimes!<br>\
<br>\
finally, make sure you check the shuttle's APC power level before you head out! it can be fussy about (re)charging off the main ship grid sometimes. despite having someone in to look at the cables, we couldn't figure out why.<br>\
finally, make sure you check the shuttle's APC power level before you head out! it used to be fussy, so we had a pro come in to double-check our setup and he yanked some weird gubbin I'd never seen before out of a wall panel, nodded to himself, and then walked off without saying anything else. weird but now it seems to behave.<br>\
I recommend packing a spare battery (there should be a few in engineering you can borrow and charge up) to be safe. don't wanna get stranded!<br>\
<br>\
speaking of, if some dumbass does take it and fly off solo then get themselves killed, you can use the remote console in the little spot north of the hangar to initiate basic remote maneuvers. it can't do long-range flight, but the shuttle has some basic autopilot routines for stable orbit and docking that you can ping. this won't help if the shuttle's grounded <b>and</b> out of battery, but better than nothing, right?<br>\
<br>\
<i>Harry Townes</i>"}
//Prevents remote control of drones
File diff suppressed because it is too large Load Diff
+7 -7
View File
@@ -80,8 +80,8 @@
/area/talon_v2/anomaly_storage
name = "\improper Talon - Anomaly Storage"
icon_state = "gray"
/area/talon_v2/unused
name = "\improper Talon - Unused Room"
/area/talon_v2/gen_store
name = "\improper Talon - General Storage"
icon_state = "gray"
/area/talon_v2/armory
@@ -95,19 +95,19 @@
icon_state = "blue"
/area/talon_v2/crew_quarters/pilot_room
name = "\improper Talon - Pilot Cabin"
name = "\improper Talon - Pilot's Cabin"
icon_state = "gray"
/area/talon_v2/crew_quarters/med_room
name = "\improper Talon - Doctor Cabin"
name = "\improper Talon - Doctor's Cabin"
icon_state = "green"
/area/talon_v2/crew_quarters/eng_room
name = "\improper Talon - Engineer Cabin"
name = "\improper Talon - Engineer's Cabin"
icon_state = "yellow"
/area/talon_v2/crew_quarters/sec_room
name = "\improper Talon - Guard Cabin"
name = "\improper Talon - Guard's Cabin"
icon_state = "red"
/area/talon_v2/crew_quarters/cap_room
name = "\improper Talon - Captain Cabin"
name = "\improper Talon - Captain's Cabin"
icon_state = "blue"
/area/talon_v2/crew_quarters/bar
name = "\improper Talon - Bar"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 719 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 702 B

After

Width:  |  Height:  |  Size: 411 B

+1 -17
View File
@@ -10,20 +10,4 @@
sprite_sheets = list(
SPECIES_TESHARI = 'maps/southern_cross/icons/mob/species/teshari/sc_suit.dmi'
)
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
//Misc
/obj/item/clothing/suit/storage/hooded/wintercoat/medical/sar
name = "search and rescue winter coat"
desc = "A heavy winter jacket. A white star of life is emblazoned on the back, with the words search and rescue written underneath."
icon_state = "coatsar"
item_icons = list(slot_wear_suit_str = 'maps/southern_cross/icons/mob/sc_suit.dmi')
icon = 'maps/southern_cross/icons/obj/sc_suit.dmi'
armor = list(melee = 15, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 5)
valid_accessory_slots = (ACCESSORY_SLOT_INSIGNIA)
allowed = list (/obj/item/weapon/gun,/obj/item/weapon/pen, /obj/item/weapon/paper, /obj/item/device/flashlight,/obj/item/weapon/tank/emergency/oxygen, /obj/item/weapon/storage/fancy/cigarettes,
/obj/item/weapon/storage/box/matches, /obj/item/weapon/reagent_containers/food/drinks/flask, /obj/item/device/suit_cooling_unit, /obj/item/device/analyzer,/obj/item/stack/medical,
/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,
/obj/item/device/healthanalyzer,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,
/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle)
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
+1 -1
View File
@@ -1,4 +1,4 @@
/datum/gear/head/pilot
display_name = "helmet, pilot (Pilot)"
path = /obj/item/clothing/head/ompilot/alt //VOREStation Edit
allowed_roles = list("Pilot")
allowed_roles = list("Pilot")
@@ -0,0 +1,9 @@
/datum/gear/head/pilot/standard
display_name = "helmet, standard pilot (Pilot)"
path = /obj/item/clothing/head/pilot_vr
allowed_roles = list("Pilot")
/datum/gear/head/pilot/colored
display_name = "helmet, colored pilot (Pilot)"
path = /obj/item/clothing/head/pilot_vr/alt
allowed_roles = list("Pilot")
@@ -1495,6 +1495,12 @@
},
/turf/simulated/floor,
/area/engineering/engine_room)
"di" = (
/obj/item/modular_computer/console/preset/engineering{
dir = 1
},
/turf/template_noop,
/area/template_noop)
"dj" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
@@ -2573,7 +2579,7 @@ aa
aa
aa
aa
aa
di
aa
aa
aa
+1 -1
View File
@@ -3966,9 +3966,9 @@
#include "maps\southern_cross\items\clothing\sc_accessory.dm"
#include "maps\southern_cross\items\clothing\sc_suit.dm"
#include "maps\southern_cross\items\clothing\sc_under.dm"
#include "maps\southern_cross\loadout\loadout_head.dm"
#include "maps\southern_cross\loadout\loadout_suit.dm"
#include "maps\southern_cross\loadout\loadout_uniform.dm"
#include "maps\southern_cross\loadout\loadout_vr.dm"
#include "maps\submaps\_helpers.dm"
#include "maps\submaps\_readme.dm"
#include "maps\submaps\engine_submaps\engine.dm"