mirror of
https://github.com/Yawn-Wider/YWPolarisVore.git
synced 2026-08-25 22:17:21 +01:00
Merge pull request #11423 from VOREStation/master
August 15th 2021 Update
This commit is contained in:
@@ -16,7 +16,8 @@ Pipelines + Other Objects -> Pipe network
|
||||
power_channel = ENVIRON
|
||||
var/nodealert = 0
|
||||
var/power_rating //the maximum amount of power the machine can use to do work, affects how powerful the machine is, in Watts
|
||||
|
||||
|
||||
unacidable = TRUE
|
||||
layer = ATMOS_LAYER
|
||||
plane = PLATING_PLANE
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
icon = 'icons/obj/power.dmi'
|
||||
icon_state = "circ-unassembled"
|
||||
anchored = FALSE
|
||||
unacidable = TRUE
|
||||
pipe_flags = PIPING_DEFAULT_LAYER_ONLY|PIPING_ONE_PER_TURF
|
||||
|
||||
var/kinetic_efficiency = 0.04 //combined kinetic and kinetic-to-electric efficiency
|
||||
|
||||
@@ -70,6 +70,7 @@ var/datum/antagonist/raider/raiders
|
||||
/obj/item/weapon/gun/energy/mindflayer,
|
||||
/obj/item/weapon/gun/energy/toxgun,
|
||||
/obj/item/weapon/gun/energy/stunrevolver,
|
||||
/obj/item/weapon/gun/energy/stunrevolver/vintage,
|
||||
/obj/item/weapon/gun/energy/ionrifle,
|
||||
/obj/item/weapon/gun/energy/taser,
|
||||
/obj/item/weapon/gun/energy/crossbow/largecrossbow,
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "table2-idle"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 1
|
||||
active_power_usage = 5
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
var/obj/machinery/sleeper/sleeper
|
||||
anchored = TRUE //About time someone fixed this.
|
||||
density = TRUE //VOREStation Edit - Big console
|
||||
unacidable = TRUE
|
||||
dir = 8
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 40
|
||||
@@ -89,6 +90,7 @@
|
||||
icon_state = "sleeper_0"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
circuit = /obj/item/weapon/circuitboard/sleeper
|
||||
var/mob/living/carbon/human/occupant = null
|
||||
var/list/available_chemicals = list()
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
icon_state = "body_scanner_0"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
circuit = /obj/item/weapon/circuitboard/body_scanner
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 60
|
||||
@@ -547,6 +548,7 @@
|
||||
dir = 8
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
circuit = /obj/item/weapon/circuitboard/scanner_console
|
||||
var/printing = null
|
||||
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
layer = ABOVE_WINDOW_LAYER
|
||||
vis_flags = VIS_HIDE // They have an emissive that looks bad in openspace due to their wall-mounted nature
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 80
|
||||
active_power_usage = 1000 //For heating/cooling rooms. 1000 joules equates to about 1 degree every 2 seconds for a single tile of air.
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/obj/structure/AIcore
|
||||
density = TRUE
|
||||
anchored = FALSE
|
||||
unacidable = TRUE
|
||||
name = "\improper AI core"
|
||||
icon = 'icons/mob/AI.dmi'
|
||||
icon_state = "0"
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
icon_state = "computer"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 300
|
||||
active_power_usage = 300
|
||||
|
||||
@@ -194,6 +194,7 @@
|
||||
icon_state = "cryopod_0" //VOREStation Edit - New Icon
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
dir = WEST
|
||||
|
||||
var/base_icon_state = "cryopod_0" //VOREStation Edit - New Icon
|
||||
|
||||
@@ -15,6 +15,7 @@ FIRE ALARM
|
||||
var/timing = 0.0
|
||||
var/lockdownbyai = 0
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 6
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "pipe_d"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
var/unwrenched = 0
|
||||
var/wait = 0
|
||||
var/p_layer = PIPING_LAYER_REGULAR
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "borgcharger0"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
circuit = /obj/item/weapon/circuitboard/recharge_station
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 50
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
name = "status display"
|
||||
anchored = TRUE
|
||||
density = FALSE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 10
|
||||
circuit = /obj/item/weapon/circuitboard/status_display
|
||||
|
||||
@@ -17,6 +17,7 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list()
|
||||
|
||||
/obj/machinery/telecomms
|
||||
icon = 'icons/obj/stationobjs_vr.dmi' //VOREStation Add
|
||||
unacidable = TRUE
|
||||
var/list/links = list() // list of machines this machine is linked to
|
||||
var/traffic = 0 // value increases as traffic increases
|
||||
var/netspeed = 5 // how much traffic to lose per tick (50 gigabytes/second * netspeed)
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
icon_state = "control_standby"
|
||||
anchored = TRUE
|
||||
density = FALSE
|
||||
unacidable = TRUE
|
||||
var/enabled = FALSE
|
||||
var/lethal = FALSE
|
||||
var/lethal_is_configurable = TRUE
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
desc = "A machine used for construction of prosthetics."
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 20
|
||||
active_power_usage = 5000
|
||||
|
||||
@@ -164,6 +164,7 @@
|
||||
icon_state = "weeds"
|
||||
anchored = TRUE
|
||||
density = FALSE
|
||||
unacidable = TRUE
|
||||
plane = TURF_PLANE
|
||||
layer = ABOVE_TURF_LAYER
|
||||
|
||||
@@ -402,10 +403,13 @@
|
||||
for(var/mob/O in hearers(src, null))
|
||||
O.show_message("<span class='alium'>[src.target] collapses under its own weight into a puddle of goop and undigested debris!</span>", 1)
|
||||
|
||||
if(istype(target, /turf/simulated/wall)) // I hate turf code.
|
||||
if(iswall(target)) //Gurgs : Spruced up corrosive acid
|
||||
var/turf/simulated/wall/W = target
|
||||
W.dismantle_wall(1)
|
||||
else
|
||||
if(isfloor(target))
|
||||
var/turf/simulated/floor/T = target
|
||||
T.ex_act(1)
|
||||
else if(isobj(target))
|
||||
qdel(target)
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
closet_appearance = null
|
||||
open_sound = 'sound/items/zip.ogg'
|
||||
close_sound = 'sound/items/zip.ogg'
|
||||
door_anim_time = 0 //Unsupported
|
||||
var/item_path = /obj/item/bodybag
|
||||
density = FALSE
|
||||
storage_capacity = (MOB_MEDIUM * 2) - 1
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
throwforce = 6
|
||||
preserve_item = 1
|
||||
w_class = ITEMSIZE_LARGE
|
||||
unacidable = TRUE
|
||||
origin_tech = list(TECH_BIO = 4, TECH_POWER = 2)
|
||||
action_button_name = "Remove/Replace Paddles"
|
||||
|
||||
|
||||
@@ -65,7 +65,6 @@
|
||||
closet_appearance = null
|
||||
catalogue_data = list(/datum/category_item/catalogue/information/objects/oldreactor)
|
||||
climbable = FALSE
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/fuel_assembly/deuterium = 6)
|
||||
|
||||
@@ -167,6 +167,7 @@
|
||||
/obj/item/weapon/melee/baton,
|
||||
/obj/item/weapon/gun/energy/taser,
|
||||
/obj/item/weapon/gun/energy/stunrevolver,
|
||||
/obj/item/weapon/gun/energy/stunrevolver/vintage,
|
||||
/obj/item/weapon/gun/magnetic/railgun/heater/pistol,
|
||||
/obj/item/weapon/gun/energy/gun,
|
||||
/obj/item/weapon/flame/lighter,
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
prob(4);/obj/item/weapon/gun/energy/taser,
|
||||
prob(2);/obj/item/weapon/gun/energy/crossbow/largecrossbow,
|
||||
prob(4);/obj/item/weapon/gun/energy/stunrevolver,
|
||||
prob(2);/obj/item/weapon/gun/energy/stunrevolver/vintage,
|
||||
prob(3);/obj/item/weapon/gun/energy/gun/compact)
|
||||
|
||||
/obj/random/energy/sec
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
icon = 'icons/mob/alien.dmi'
|
||||
layer = ABOVE_JUNK_LAYER
|
||||
var/health = 50
|
||||
unacidable = TRUE
|
||||
|
||||
/obj/structure/alien/proc/healthcheck()
|
||||
if(health <=0)
|
||||
|
||||
@@ -33,6 +33,7 @@ two tiles on initialization, and which way a cliff is facing may change during m
|
||||
opacity = FALSE
|
||||
climbable = TRUE
|
||||
climb_delay = 10 SECONDS
|
||||
unacidable = TRUE
|
||||
block_turf_edges = TRUE // Don't want turf edges popping up from the cliff edge.
|
||||
plane = TURF_PLANE
|
||||
|
||||
|
||||
@@ -34,19 +34,11 @@
|
||||
|
||||
var/list/starts_with // List of type = count (or just type for 1)
|
||||
|
||||
var/closet_appearance = /decl/closet_appearance // The /decl that defines what decals we end up with, that makes our look unique
|
||||
var/decl/closet_appearance/closet_appearance = /decl/closet_appearance // The /decl that defines what decals we end up with, that makes our look unique
|
||||
|
||||
/// Currently animating the door transform
|
||||
var/is_animating_door = FALSE
|
||||
/// Length of time (ds) to animate the door transform
|
||||
var/door_anim_time = 2.0
|
||||
/// Amount to 'squish' the full width of the door by
|
||||
var/door_anim_squish = 0.30
|
||||
/// Virtual angle at which the door is opened to (136 by default, so not a full 180)
|
||||
var/door_anim_angle = 136
|
||||
/// Offset for the door hinge location from centerline
|
||||
var/door_hinge = -6.5
|
||||
/// Our visual object for the closet door
|
||||
/// Our visual object for the closet door, if we're animating
|
||||
var/obj/effect/overlay/closet_door/door_obj
|
||||
|
||||
/obj/structure/closet/Initialize()
|
||||
@@ -73,15 +65,16 @@
|
||||
storage_capacity = content_size + 5
|
||||
|
||||
if(ispath(closet_appearance))
|
||||
var/decl/closet_appearance/app = GLOB.closet_appearances[closet_appearance]
|
||||
if(app)
|
||||
icon = app.icon
|
||||
closet_appearance = GLOB.closet_appearances[closet_appearance]
|
||||
if(istype(closet_appearance))
|
||||
icon = closet_appearance.icon
|
||||
color = null
|
||||
update_icon()
|
||||
|
||||
/obj/structure/closet/Destroy()
|
||||
. = ..()
|
||||
qdel_null(door_obj)
|
||||
closet_appearance = null
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/examine(mob/user)
|
||||
. = ..()
|
||||
@@ -500,7 +493,7 @@
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/proc/animate_door(closing = FALSE)
|
||||
if(!door_anim_time)
|
||||
if(!closet_appearance?.door_anim_time)
|
||||
update_icon()
|
||||
return
|
||||
if(!door_obj)
|
||||
@@ -511,9 +504,9 @@
|
||||
is_animating_door = TRUE
|
||||
if(!closing)
|
||||
update_icon()
|
||||
var/num_steps = door_anim_time / world.tick_lag
|
||||
var/num_steps = closet_appearance.door_anim_time / world.tick_lag
|
||||
for(var/I in 0 to num_steps)
|
||||
var/angle = door_anim_angle * (closing ? 1 - (I/num_steps) : (I/num_steps))
|
||||
var/angle = closet_appearance.door_anim_angle * (closing ? 1 - (I/num_steps) : (I/num_steps))
|
||||
var/matrix/M = get_door_transform(angle)
|
||||
var/door_state = angle >= 90 ? "door_back" : "door_front"
|
||||
var/door_layer = angle >= 90 ? FLOAT_LAYER : ABOVE_MOB_LAYER
|
||||
@@ -526,7 +519,7 @@
|
||||
animate(door_obj, transform = M, icon_state = door_state, layer = door_layer, time = world.tick_lag, flags = ANIMATION_END_NOW)
|
||||
else
|
||||
animate(transform = M, icon_state = door_state, layer = door_layer, time = world.tick_lag)
|
||||
addtimer(CALLBACK(src,.proc/end_door_animation,closing),door_anim_time,TIMER_UNIQUE|TIMER_OVERRIDE)
|
||||
addtimer(CALLBACK(src, .proc/end_door_animation,closing), closet_appearance.door_anim_time, TIMER_UNIQUE|TIMER_OVERRIDE)
|
||||
|
||||
/obj/structure/closet/proc/end_door_animation(closing = FALSE)
|
||||
is_animating_door = FALSE
|
||||
@@ -537,7 +530,9 @@
|
||||
|
||||
/obj/structure/closet/proc/get_door_transform(angle)
|
||||
var/matrix/M = matrix()
|
||||
M.Translate(-door_hinge, 0)
|
||||
M.Multiply(matrix(cos(angle), 0, 0, -sin(angle) * door_anim_squish, 1, 0))
|
||||
M.Translate(door_hinge, 0)
|
||||
if(!closet_appearance)
|
||||
return M
|
||||
M.Translate(-closet_appearance.door_hinge, 0)
|
||||
M.Multiply(matrix(cos(angle), 0, 0, -sin(angle) * closet_appearance.door_anim_squish, 1, 0))
|
||||
M.Translate(closet_appearance.door_hinge, 0)
|
||||
return M
|
||||
|
||||
@@ -14,6 +14,15 @@
|
||||
var/decal_icon = 'icons/obj/closets/decals/closet.dmi'
|
||||
var/can_lock = FALSE
|
||||
|
||||
/// Length of time (ds) to animate the door transform
|
||||
var/door_anim_time = 2.0
|
||||
/// Amount to 'squish' the full width of the door by
|
||||
var/door_anim_squish = 0.30
|
||||
/// Virtual angle at which the door is opened to (136 by default, so not a full 180)
|
||||
var/door_anim_angle = 136
|
||||
/// Offset for the door hinge location from centerline
|
||||
var/door_hinge = -6.5
|
||||
|
||||
/decl/closet_appearance/New()
|
||||
// Build our colour and decal lists.
|
||||
if(LAZYLEN(extra_decals))
|
||||
@@ -725,6 +734,7 @@
|
||||
base_icon = 'icons/obj/closets/bases/crate.dmi'
|
||||
decal_icon = 'icons/obj/closets/decals/crate.dmi'
|
||||
color = COLOR_GRAY40
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/crate/plastic
|
||||
color = COLOR_GRAY80
|
||||
@@ -1237,6 +1247,7 @@
|
||||
decal_icon = 'icons/obj/closets/decals/large_crate.dmi'
|
||||
decals = null
|
||||
extra_decals = null
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/large_crate/critter
|
||||
color = COLOR_BEIGE
|
||||
@@ -1349,6 +1360,7 @@
|
||||
color = WOOD_COLOR_RICH
|
||||
decals = null
|
||||
extra_decals = null
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/cabinet/secure
|
||||
can_lock = TRUE
|
||||
@@ -1361,6 +1373,7 @@
|
||||
"vent"
|
||||
)
|
||||
extra_decals = null
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/wall/emergency
|
||||
color = COLOR_LIGHT_CYAN
|
||||
@@ -1402,6 +1415,7 @@
|
||||
"vent"
|
||||
)
|
||||
extra_decals = null
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/wall_double/kitchen
|
||||
decals = null
|
||||
@@ -1431,6 +1445,7 @@
|
||||
decal_icon = 'icons/obj/closets/decals/cart.dmi'
|
||||
decals = null
|
||||
extra_decals = null
|
||||
door_anim_time = 0
|
||||
|
||||
/decl/closet_appearance/cart/trash
|
||||
color = COLOR_BOTTLE_GREEN
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
seal_tool = /obj/item/weapon/tool/screwdriver
|
||||
breakout_sound = 'sound/weapons/tablehit1.ogg'
|
||||
closet_appearance = null // Special icon for us
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
/* Graves */
|
||||
/obj/structure/closet/grave
|
||||
@@ -21,7 +20,6 @@
|
||||
max_closets = 1
|
||||
opened = 1
|
||||
closet_appearance = null // Special icon for us
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
/obj/structure/closet/grave/attack_hand(mob/user as mob)
|
||||
if(opened)
|
||||
|
||||
@@ -2,4 +2,3 @@
|
||||
name = "critter crate"
|
||||
desc = "A crate which can sustain life for a while."
|
||||
closet_appearance = /decl/closet_appearance/large_crate/critter
|
||||
door_anim_time = 0 //Unsupported
|
||||
@@ -13,7 +13,6 @@
|
||||
opened = 0
|
||||
sealed = 0 //Don't touch this.
|
||||
health = 100
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
/obj/structure/closet/secure_closet/egg/update_icon()
|
||||
if(opened)
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
desc = "Old will forever be in fashion."
|
||||
icon = 'icons/obj/closets/bases/cabinet.dmi'
|
||||
closet_appearance = /decl/closet_appearance/cabinet
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
/obj/structure/closet/acloset
|
||||
name = "strange closet"
|
||||
|
||||
@@ -231,7 +231,8 @@
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/badge/holo/detective,
|
||||
/obj/item/clothing/gloves/black,
|
||||
///obj/item/gunbox, //VOREStation Removal,
|
||||
///obj/item/gunbox, // VOREStation Removal
|
||||
///obj/item/weapon/gun/energy/stunrevolver/vintage, // VOREStation Removal
|
||||
/obj/item/weapon/storage/belt/detective,
|
||||
/obj/item/weapon/storage/box/evidence,
|
||||
/obj/item/device/radio/headset/headset_sec,
|
||||
@@ -301,4 +302,3 @@ GLOBAL_LIST_BOILERPLATE(all_brig_closets, /obj/structure/closet/secure_closet/br
|
||||
|
||||
//too small to put a man in
|
||||
large = 0
|
||||
door_anim_time = 0 // Unsupported
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
anchored = TRUE
|
||||
health = 0 //destroying the statue kills the mob within
|
||||
blocks_emissive = EMISSIVE_BLOCK_UNIQUE
|
||||
door_anim_time = 0 // Why is this a closet??
|
||||
var/intialTox = 0 //these are here to keep the mob from taking damage from things that logically wouldn't affect a rock
|
||||
var/intialFire = 0 //it's a little sloppy I know but it was this or the GODMODE flag. Lesser of two evils.
|
||||
var/intialBrute = 0
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
anchored = TRUE
|
||||
store_mobs = 0
|
||||
wall_mounted = 1
|
||||
door_anim_time = 0 // Unsupported
|
||||
|
||||
//spawns 2 sets of breathmask, emergency oxy tank and crowbar
|
||||
|
||||
@@ -92,7 +91,6 @@
|
||||
wall_mounted = 1
|
||||
plane = TURF_PLANE
|
||||
layer = ABOVE_TURF_LAYER
|
||||
door_anim_time = 0 //Unsupported
|
||||
|
||||
/obj/structure/closet/walllocker_double/north
|
||||
pixel_y = 32
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
closet_appearance = /decl/closet_appearance/crate
|
||||
climbable = TRUE
|
||||
dir = 4 //Spawn facing 'forward' by default.
|
||||
door_anim_time = 0 //Unsupported until appropriate sprites are available
|
||||
var/points_per_crate = 5
|
||||
var/rigged = 0
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
var/used = FALSE
|
||||
var/busy = FALSE // Don't spam ghosts by spamclicking.
|
||||
var/needscharger //For drone pods that want their pod to turn into a charger.
|
||||
unacidable = TRUE
|
||||
|
||||
// Call this to get a ghost volunteer.
|
||||
/obj/structure/ghost_pod/proc/trigger(var/alert, var/adminalert)
|
||||
|
||||
@@ -21,6 +21,7 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
|
||||
icon_state = "randompile"
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
|
||||
var/list/icon_states_to_use = list() // List of icon states the pile can choose from on initialization. If empty or null, it will stay the initial icon_state.
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
var/obj/structure/m_tray/connected = null
|
||||
var/list/occupants = list()
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
|
||||
/obj/structure/morgue/Destroy()
|
||||
if(connected)
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
/obj/structure/prop/esoteric
|
||||
name = "some esoteric thing"
|
||||
desc = "Perhaps it's of ritual significance?"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
|
||||
/obj/structure/prop/esoteric/nt_pedestal0_old
|
||||
name = "pedestal"
|
||||
desc = "A pedestal with a mysterious slot at its center."
|
||||
icon_state = "nt_pedestal0_old"
|
||||
|
||||
/obj/structure/prop/esoteric/nt_pedestal1_old
|
||||
name = "pedestal"
|
||||
desc = "A pedestal with some kind of sword slotted securely in the center."
|
||||
icon_state = "nt_pedestal1_old"
|
||||
|
||||
// eye of the protector from Eris
|
||||
/obj/structure/prop/esoteric/eotp
|
||||
icon = 'icons/obj/props/decor32x64.dmi'
|
||||
icon_state = "eotp"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Looks boring and off
|
||||
* on: candles lit and stuff
|
||||
* no_cruciform: No cruciform (the little triangle thing) inserted
|
||||
* red_cruciform: Red light cruciform inserted
|
||||
* green_cruciform: Green light cruciform inserted
|
||||
* panel_open: The panel is open (wiring)
|
||||
* panel_closed: The panel is closed
|
||||
*/
|
||||
// neotheology cruciform reader from Eris
|
||||
/obj/structure/prop/esoteric/reader
|
||||
name = "electronic altar"
|
||||
desc = "It looks like you're meant to scan something here."
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "nt_reader_off"
|
||||
|
||||
/obj/structure/prop/esoteric/reader/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "nt_reader_off"
|
||||
if("on")
|
||||
icon_state = "nt_reader_on"
|
||||
if("no_cruciform")
|
||||
cut_overlay("nt_reader_c_green")
|
||||
cut_overlay("nt_reader_c_red")
|
||||
if("red_cruciform")
|
||||
cut_overlay("nt_reader_c_green")
|
||||
cut_overlay("nt_reader_c_red")
|
||||
add_overlay("nt_reader_c_red")
|
||||
if("green_cruciform")
|
||||
cut_overlay("nt_reader_c_red")
|
||||
cut_overlay("nt_reader_c_green")
|
||||
add_overlay("nt_reader_c_green")
|
||||
if("panel_open")
|
||||
cut_overlay("nt_reader_panel")
|
||||
add_overlay("nt_reader_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("nt_reader_panel")
|
||||
@@ -0,0 +1,7 @@
|
||||
// fences from TGMC
|
||||
// You'll need to 'create instances from icon_states' in an editor to use these well
|
||||
/obj/structure/prop/fence
|
||||
name = "fence"
|
||||
desc = "It's a fence! Not much else to say about it."
|
||||
icon = 'icons/obj/props/decor_fences.dmi'
|
||||
|
||||
@@ -0,0 +1,686 @@
|
||||
/obj/structure/prop/machine
|
||||
name = "doodad"
|
||||
desc = "Some kind of machine."
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
|
||||
//Eris Bluespace Beacon
|
||||
|
||||
/obj/structure/prop/machine/bsb_off
|
||||
name = "beacon"
|
||||
icon_state = "bsb_off"
|
||||
|
||||
/obj/structure/prop/machine/bsb_on
|
||||
name = "beacon"
|
||||
icon_state = "bsb_on"
|
||||
|
||||
/obj/structure/prop/machine/biosyphon
|
||||
icon_state = "biosyphon"
|
||||
|
||||
/obj/structure/prop/machine/von_krabin
|
||||
icon_state = "von_krabin"
|
||||
|
||||
/obj/structure/prop/machine/last_shelter
|
||||
icon_state = "last_shelter"
|
||||
|
||||
/obj/structure/prop/machine/complicator
|
||||
icon_state = "complicator"
|
||||
|
||||
/obj/structure/prop/machine/random_radio
|
||||
name = "radio"
|
||||
icon_state = "random_radio"
|
||||
|
||||
// vatgrowing thing from /tg/
|
||||
/obj/structure/prop/machine/green_egg
|
||||
icon_state = "gel_cocoon"
|
||||
|
||||
// gravity generator from Eris
|
||||
/obj/structure/prop/machine/gravygen
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "bigdice"
|
||||
bound_width = 64
|
||||
bound_height = 64
|
||||
|
||||
// dna vault from /tg/
|
||||
/obj/structure/prop/dna_vault
|
||||
icon = 'icons/obj/props/decor96x96.dmi'
|
||||
icon_state = "vault"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* panel_open: The panel is opened
|
||||
* panel_closed: The panel is closed
|
||||
*/
|
||||
// neotheology cloning biocan from Eris
|
||||
/obj/structure/prop/machine/nt_biocan
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "nt_biocan"
|
||||
|
||||
/obj/structure/prop/nt_biocan/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("panel_open")
|
||||
cut_overlay("nt_biocan_panel")
|
||||
add_overlay("nt_biocan_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("nt_biocan_panel")
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* blue, red, orange, yellow, green, purple: Set that color
|
||||
* damaged: add damage overlay
|
||||
* undamaged: remove damage overlay
|
||||
* broken: become damaged
|
||||
* plain: undamaged white version, otherwise use a color
|
||||
*/
|
||||
// dominator console from /tg/
|
||||
/obj/structure/prop/dominator
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "dominator"
|
||||
|
||||
/obj/structure/prop/dominator/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("blue")
|
||||
icon_state = "dominator-blue"
|
||||
if("red")
|
||||
icon_state = "dominator-red"
|
||||
if("orange")
|
||||
icon_state = "dominator-orange"
|
||||
if("yellow")
|
||||
icon_state = "dominator-yellow"
|
||||
if("green")
|
||||
icon_state = "dominator-green"
|
||||
if("purple")
|
||||
icon_state = "dominator-purple"
|
||||
if("damaged")
|
||||
add_overlay("dom_damage")
|
||||
if("undamaged")
|
||||
cut_overlay("dom_damage")
|
||||
if("broken")
|
||||
icon_state = "dominator-broken"
|
||||
if("plain")
|
||||
icon_state = "dominator"
|
||||
|
||||
/obj/structure/prop/dominator/blue
|
||||
icon_state = "dominator-blue"
|
||||
/obj/structure/prop/dominator/red
|
||||
icon_state = "dominator-red"
|
||||
/obj/structure/prop/dominator/orange
|
||||
icon_state = "dominator-orange"
|
||||
/obj/structure/prop/dominator/yellow
|
||||
icon_state = "dominator-yellow"
|
||||
/obj/structure/prop/dominator/green
|
||||
icon_state = "dominator-green"
|
||||
/obj/structure/prop/dominator/purple
|
||||
icon_state = "dominator-purple"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Pumping or something
|
||||
*/
|
||||
// some neotheology thing from Eris
|
||||
/obj/structure/prop/machine/solifier
|
||||
icon_state = "nt_solidifier"
|
||||
|
||||
/obj/structure/prop/machine/solifier/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "nt_solidifier"
|
||||
if("on")
|
||||
icon_state = "nt_solidifier_on"
|
||||
|
||||
/obj/structure/prop/machine/solifier/starts_on
|
||||
icon_state = "nt_solidifier_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Boring, round
|
||||
* on: Spinny glowy
|
||||
*/
|
||||
// conduit of soul from Eris
|
||||
/obj/structure/prop/machine/conduit
|
||||
icon_state = "conduit_off"
|
||||
|
||||
/obj/structure/prop/machine/conduit/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("on")
|
||||
icon_state = "conduit_spin"
|
||||
flick("conduit_starting", src)
|
||||
if("off")
|
||||
icon_state = "conduit_off"
|
||||
flick("conduit_stopping", src)
|
||||
|
||||
/obj/structure/prop/machine/conduit/starts_on
|
||||
icon_state = "conduit_spin"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* on: Doing some kinda worky thing
|
||||
* off: Not doing much of anything
|
||||
* empty: No blue crystal thingy
|
||||
* loaded: off but without the animation
|
||||
*/
|
||||
// some kinda NT thing from Eris
|
||||
/obj/structure/prop/machine/core
|
||||
icon_state = "core_inactive"
|
||||
|
||||
/obj/structure/prop/machine/core/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("on")
|
||||
icon_state = "core_active"
|
||||
flick("core_warmup", src)
|
||||
if("off")
|
||||
icon_state = "core_inactive"
|
||||
flick("core_shutdown", src)
|
||||
if("empty")
|
||||
icon_state = "core_empty"
|
||||
if("loaded")
|
||||
icon_state = "core_inactive"
|
||||
|
||||
/obj/structure/prop/machine/core/starts_on
|
||||
icon_state = "core_active"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* down: In the ground, glowing
|
||||
* up: Out of the ground, open
|
||||
*/
|
||||
// experimental science destructor from /tg/
|
||||
/obj/structure/prop/machine/tube
|
||||
icon = 'icons/obj/props/decor32x64.dmi'
|
||||
icon_state = "tube_open"
|
||||
|
||||
/obj/structure/prop/machine/tube/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("down")
|
||||
icon_state = "tube_on"
|
||||
flick("tube_down", src)
|
||||
if("up")
|
||||
icon_state = "tube_open"
|
||||
flick("tube_up", src)
|
||||
|
||||
/obj/structure/prop/machine/tube/starts_down
|
||||
icon_state = "tube_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Boring, static
|
||||
* on: Turny and blinky
|
||||
*/
|
||||
// experimental science destructor from /tg/
|
||||
/obj/structure/prop/machine/comm_tower
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon = 'icons/obj/props/decor96x96.dmi'
|
||||
icon_state = "comm_tower"
|
||||
|
||||
/obj/structure/prop/machine/comm_tower/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("on")
|
||||
icon_state = "comm_tower_on"
|
||||
if("off")
|
||||
icon_state = "comm_tower"
|
||||
|
||||
/obj/structure/prop/machine/comm_tower/starts_on
|
||||
icon_state = "comm_tower_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Not doing much
|
||||
* on: Stamping mysterious substances
|
||||
*/
|
||||
// sheetizer from /tg/
|
||||
/obj/structure/prop/machine/stamper
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "stamper"
|
||||
|
||||
/obj/structure/prop/machine/stamper/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
cut_overlays()
|
||||
if("on")
|
||||
add_overlay("stamper_proc")
|
||||
add_overlay("stamper_but")
|
||||
|
||||
/obj/structure/prop/machine/stamper/starts_on
|
||||
icon_state = "stamper_on"
|
||||
|
||||
/obj/structure/prop/machine/stamper/starts_on/Initialize()
|
||||
add_overlay("stamper_proc")
|
||||
add_overlay("stamper_but")
|
||||
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* whole: Not doing much
|
||||
* broken: Stamping mysterious substances
|
||||
*/
|
||||
// alien autopsy thing from TGMC
|
||||
/obj/structure/prop/machine/alien_tank
|
||||
icon_state = "tank_larva"
|
||||
|
||||
/obj/structure/prop/machine/alien_tank/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("whole")
|
||||
icon_state = "tank_larva"
|
||||
if("broken")
|
||||
icon_state = "tank_broken"
|
||||
|
||||
/obj/structure/prop/machine/alien_tank/starts_broken
|
||||
icon_state = "tank_broken"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* idle: The default look
|
||||
* active: Glowy lights underneath
|
||||
* panel_open: Opened panel (wiring)
|
||||
* panel_closed: Closed panel
|
||||
*/
|
||||
// neotheology optable from Eris
|
||||
/obj/structure/prop/machine/nt_optable
|
||||
icon_state = "nt_optable-idle"
|
||||
|
||||
/obj/structure/prop/machine/nt_optable/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("idle")
|
||||
icon_state = "nt_optable-idle"
|
||||
if("active")
|
||||
icon_state = "nt_optable-active"
|
||||
if("panel_open")
|
||||
cut_overlay("nt_optable_panel")
|
||||
add_overlay("nt_optable_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("nt_optable_panel")
|
||||
|
||||
/obj/structure/prop/nt_optable/starts_active
|
||||
icon_state = "nt_optable-active"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* idle: The default look
|
||||
* active: Glowy lights in the center
|
||||
* panel_open: Opened panel (wiring)
|
||||
* panel_closed: Closed panel
|
||||
*/
|
||||
// trade beacon from Eris
|
||||
/obj/structure/prop/machine/tradebeacon
|
||||
icon_state = "tradebeacon"
|
||||
|
||||
/obj/structure/prop/machine/tradebeacon/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("idle")
|
||||
icon_state = "tradebeacon"
|
||||
if("active")
|
||||
icon_state = "tradebeacon_active"
|
||||
if("panel_open")
|
||||
cut_overlay("tradebeacon_panel")
|
||||
add_overlay("tradebeacon_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("tradebeacon_panel")
|
||||
|
||||
/obj/structure/prop/machine/tradebeacon/starts_active
|
||||
icon_state = "tradebeacon_active"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* idle: The default look
|
||||
* active: Glowy lights in the center
|
||||
* panel_open: Opened panel (wiring)
|
||||
* panel_closed: Closed panel
|
||||
*/
|
||||
// another trade beacon from Eris
|
||||
/obj/structure/prop/machine/tradebeacon2
|
||||
icon_state = "tradebeacon"
|
||||
|
||||
/obj/structure/prop/machine/tradebeacon2/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("idle")
|
||||
icon_state = "tradebeacon_sending"
|
||||
if("active")
|
||||
icon_state = "tradebeacon_sending_active"
|
||||
if("panel_open")
|
||||
cut_overlay("tradebeacon_sending_panel")
|
||||
add_overlay("tradebeacon_sending_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("tradebeacon_sending_panel")
|
||||
|
||||
/obj/structure/prop/machine/tradebeacon2/starts_active
|
||||
icon_state = "tradebeacon_sending_active"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Non-spinny
|
||||
* on: Spinny and floaty
|
||||
*/
|
||||
// neotheology decorative(?) obelisk from Eris
|
||||
/obj/structure/prop/machine/nt_obelisk
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "nt_obelisk"
|
||||
|
||||
/obj/structure/prop/machine/nt_obelisk/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "nt_obelisk"
|
||||
if("on")
|
||||
icon_state = "nt_obelisk_on"
|
||||
|
||||
/obj/structure/prop/machine/nt_obelisk/starts_on
|
||||
icon_state = "nt_obelisk_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Inert
|
||||
* on: Hand destroying machinery
|
||||
*/
|
||||
// 'sorter' from Eris
|
||||
/obj/structure/prop/machine/sorter
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "sorter"
|
||||
|
||||
/obj/structure/prop/machine/sorter/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "sorter"
|
||||
if("on")
|
||||
icon_state = "sorter-process"
|
||||
|
||||
/obj/structure/prop/machine/sorter/starts_on
|
||||
icon_state = "sorter-process"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Inert
|
||||
* on: Hand destroying machinery
|
||||
*/
|
||||
// 'smelter' from Eris
|
||||
/obj/structure/prop/machine/smelter
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "smelter"
|
||||
|
||||
/obj/structure/prop/machine/smelter/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "smelter"
|
||||
if("on")
|
||||
icon_state = "smelter-process"
|
||||
|
||||
/obj/structure/prop/machine/smelter/starts_on
|
||||
icon_state = "smelter-process"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* idle: Not doing anything, with yellow template exposed
|
||||
* work: busy doing work
|
||||
* pause: paused work
|
||||
*/
|
||||
// cruciform forge from Eris
|
||||
/obj/structure/prop/machine/nt_cruciforge
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "nt_cruciforge"
|
||||
|
||||
/obj/structure/prop/machine/nt_cruciforge/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("idle")
|
||||
icon_state = "nt_cruciforge"
|
||||
flick("nt_cruciforge_finish", src) // 8ds
|
||||
if("work")
|
||||
icon_state = "nt_cruciforge_work"
|
||||
flick("nt_cruciforge_start", src) // 8ds
|
||||
if("pause")
|
||||
icon_state = "nt_cruciforge_pause"
|
||||
|
||||
/obj/structure/prop/machine/nt_cruciforge/starts_working
|
||||
icon_state = "nt_cruciforge_work"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Showing a display/powered up
|
||||
*/
|
||||
// A console from TGMC
|
||||
/obj/structure/prop/machine/tgmc_console1
|
||||
name = "console"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "tgmc_console1"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console1/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "tgmc_console1"
|
||||
if("on")
|
||||
icon_state = "tgmc_console1_on"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console1/starts_on
|
||||
icon_state = "tgmc_console1_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Showing a display/powered up
|
||||
*/
|
||||
// A console from TGMC
|
||||
/obj/structure/prop/machine/tgmc_console2
|
||||
name = "console"
|
||||
icon_state = "tgmc_console2"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console2/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "tgmc_console2"
|
||||
if("on")
|
||||
icon_state = "tgmc_console2_on"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console2/starts_on
|
||||
icon_state = "tgmc_console2_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Showing a display/powered up
|
||||
*/
|
||||
// A console from TGMC
|
||||
/obj/structure/prop/machine/tgmc_console3
|
||||
name = "console"
|
||||
icon_state = "tgmc_console3"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console3/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "tgmc_console3"
|
||||
if("on")
|
||||
icon_state = "tgmc_console3_on"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console3/starts_on
|
||||
icon_state = "tgmc_console3_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Showing a display/powered up
|
||||
*/
|
||||
// A console from TGMC
|
||||
/obj/structure/prop/machine/tgmc_console4
|
||||
name = "console"
|
||||
icon_state = "tgmc_console4"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console4/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "tgmc_console4"
|
||||
if("on")
|
||||
icon_state = "tgmc_console4_on"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console4/starts_on
|
||||
icon_state = "tgmc_console4_on"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* off: Default, boring
|
||||
* on: Showing a display/powered up
|
||||
*/
|
||||
// A console from TGMC
|
||||
/obj/structure/prop/machine/tgmc_console5
|
||||
name = "console"
|
||||
icon_state = "tgmc_console5"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console5/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("off")
|
||||
icon_state = "tgmc_console5"
|
||||
if("on")
|
||||
icon_state = "tgmc_console5_on"
|
||||
|
||||
/obj/structure/prop/machine/tgmc_console5/starts_on
|
||||
icon_state = "tgmc_console5_on"
|
||||
|
||||
/**
|
||||
* This one is a bit more fancy than others. Anything in the contents (PLEASE LIMIT TO ONE THING)
|
||||
* will show up inside it! Also if you map in an item on it, it will grab that at mapload and start
|
||||
* in the 'closed, full of fluid' state, so you can put a body on it or whatever.
|
||||
*
|
||||
* As an aghost you can also dragdrop something into it (you have to be ghosted next to it)
|
||||
*
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* open: Open, no fluid or anything. At the end the contents are ejected.
|
||||
* closed: Closed, full of liquid
|
||||
* panel_open: Shows panel
|
||||
* panel_closed: Unshows panel
|
||||
*/
|
||||
// neotheology cloning pod from Eris
|
||||
/obj/structure/prop/machine/nt_pod
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon = 'icons/obj/props/decor32x64.dmi'
|
||||
icon_state = "nt_pod_mappreview"
|
||||
bound_height = 64
|
||||
|
||||
var/obj/effect/overlay/vis/outside
|
||||
var/obj/effect/overlay/vis/door
|
||||
var/obj/effect/overlay/vis/fluid
|
||||
|
||||
var/contents_vis_flags = NONE
|
||||
var/contents_original_pixel_y = 0
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/Initialize(mapload)
|
||||
// Our non-map-preview state
|
||||
icon_state = "nt_pod"
|
||||
|
||||
// Alpha mask to make sure things don't sneak out
|
||||
var/obj/effect/overlay/vis/mask = new
|
||||
mask.icon = icon
|
||||
mask.icon_state = "nt_pod_mask"
|
||||
mask.render_target = "*nt_podmask[REF(src)]"
|
||||
mask.vis_flags = VIS_INHERIT_ID
|
||||
vis_contents += mask
|
||||
|
||||
outside = add_vis_overlay(icon, "nt_pod_over", ABOVE_MOB_LAYER, MOB_PLANE, unique = TRUE)
|
||||
door = add_vis_overlay(icon, "nothing", ABOVE_MOB_LAYER, MOB_PLANE, unique = TRUE)
|
||||
fluid = add_vis_overlay(icon, "nothing", ABOVE_MOB_LAYER, MOB_PLANE, unique = TRUE)
|
||||
|
||||
// Gather up our friends
|
||||
if(mapload)
|
||||
var/atom/movable/AM = locate() in loc
|
||||
AM?.forceMove(src)
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/Entered(atom/movable/mover)
|
||||
abduct(mover)
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/proc/abduct(var/atom/movable/AM)
|
||||
// Save old settings
|
||||
contents_vis_flags = AM.vis_flags
|
||||
contents_original_pixel_y = AM.pixel_y
|
||||
|
||||
// Arrange
|
||||
AM.add_filter("podmask", 1, alpha_mask_filter(render_source = "nt_podmask[REF(src)]", flags = MASK_INVERSE))
|
||||
AM.pixel_y = 12
|
||||
AM.vis_flags = VIS_INHERIT_ID|VIS_INHERIT_DIR
|
||||
vis_contents += AM
|
||||
if(ismob(AM))
|
||||
var/mob/M = AM
|
||||
buckle_mob(M, TRUE, FALSE)
|
||||
|
||||
// TRAP THEM
|
||||
change_state("closed")
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/proc/unduct(var/atom/movable/AM)
|
||||
// Geddout
|
||||
vis_contents -= AM
|
||||
if(ismob(AM))
|
||||
var/mob/M = AM
|
||||
unbuckle_mob(M, TRUE)
|
||||
// Cleanup
|
||||
AM.remove_filter("podmask")
|
||||
AM.forceMove(drop_location())
|
||||
AM.vis_flags = contents_vis_flags
|
||||
AM.pixel_y = contents_original_pixel_y
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/MouseDrop_T(var/atom/movable/AM, var/mob/user)
|
||||
if(contents.len)
|
||||
return
|
||||
if(!ismovable(AM))
|
||||
return
|
||||
if(!user.client?.holder)
|
||||
return
|
||||
|
||||
AM.forceMove(src)
|
||||
|
||||
/obj/structure/prop/machine/nt_pod/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("open")
|
||||
cut_overlay("nt_pod_top_on")
|
||||
cut_overlay("nt_pod_under")
|
||||
|
||||
// Fluid drains
|
||||
fluid.icon_state = "nothing"
|
||||
flick("nt_pod_emptying", fluid) // 8ds
|
||||
sleep(8)
|
||||
|
||||
// Door opens
|
||||
door.icon_state = "nothing"
|
||||
flick("nt_pod_opening", door) // 9ds
|
||||
sleep(9)
|
||||
|
||||
// GET OUT
|
||||
outside.layer = BELOW_MOB_LAYER
|
||||
if(contents.len)
|
||||
for(var/atom/movable/AM as anything in contents)
|
||||
unduct(AM)
|
||||
|
||||
if("closed")
|
||||
outside.layer = ABOVE_MOB_LAYER
|
||||
cut_overlay("nt_pod_top_on")
|
||||
add_overlay("nt_pod_top_on")
|
||||
add_overlay("nt_pod_under")
|
||||
|
||||
// Door closes
|
||||
door.icon_state = "nt_pod_glass"
|
||||
flick("nt_pod_closing", door) // 9ds
|
||||
sleep(9)
|
||||
// Fluid fills
|
||||
fluid.icon_state = "nt_pod_liquid"
|
||||
flick("nt_pod_filling", fluid) // 8ds
|
||||
|
||||
if("panel_open")
|
||||
cut_overlay("nt_pod_panel")
|
||||
add_overlay("nt_pod_panel")
|
||||
if("panel_closed")
|
||||
cut_overlay("nt_pod_panel")
|
||||
File diff suppressed because it is too large
Load Diff
@@ -38,4 +38,15 @@
|
||||
density = FALSE
|
||||
|
||||
/obj/structure/prop/rock/small/wateralt
|
||||
icon_state = "waterrocks2"
|
||||
icon_state = "waterrocks2"
|
||||
|
||||
// bluespace crystal from Eris
|
||||
/obj/structure/prop/rock/crystal
|
||||
name = "crystal"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "bsc"
|
||||
|
||||
/obj/structure/prop/rock/crystal_dust
|
||||
name = "crystal dust"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "bsc_dust"
|
||||
@@ -0,0 +1,65 @@
|
||||
//Eris statues
|
||||
|
||||
/obj/structure/prop/statue
|
||||
name = "statue"
|
||||
desc = "It's art!"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "artwork_statue"
|
||||
|
||||
/obj/structure/prop/statue/statue1
|
||||
icon_state = "artwork_statue_1"
|
||||
|
||||
/obj/structure/prop/statue/statue2
|
||||
icon_state = "artwork_statue_2"
|
||||
|
||||
/obj/structure/prop/statue/statue3
|
||||
icon_state = "artwork_statue_3"
|
||||
|
||||
/obj/structure/prop/statue/statue4
|
||||
icon_state = "artwork_statue_4"
|
||||
|
||||
/obj/structure/prop/statue/statue5
|
||||
icon_state = "artwork_statue_5"
|
||||
|
||||
//TGMC Ship Mast
|
||||
|
||||
/obj/structure/prop/statue/stump_plaque
|
||||
name = "commemorative stump"
|
||||
desc = "A wooden stump adorned with a little plaque."
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "stump"
|
||||
|
||||
//World Server statues
|
||||
|
||||
/obj/structure/prop/statue
|
||||
name = "statue"
|
||||
desc = "A statue."
|
||||
icon = 'icons/obj/props/decor32x64.dmi'
|
||||
icon_state = "venus"
|
||||
|
||||
/obj/structure/prop/statue/lion
|
||||
icon_state = "lion"
|
||||
|
||||
/obj/structure/prop/statue/angel
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
icon_state = "angel"
|
||||
|
||||
/obj/structure/prop/statue/phoron
|
||||
name = "phoronic cascade"
|
||||
desc = "A sculpture made of pure phoron. It is covered in a lacquer that prevents erosion and renders it fireproof. It's safe. Probably."
|
||||
icon_state = "phoronic"
|
||||
layer = ABOVE_WINDOW_LAYER
|
||||
interaction_message = "<span class = 'notice'>Cool to touch and unbelievable smooth. You can almost see your reflection in it.</span>"
|
||||
|
||||
/obj/structure/prop/statue/phoron/New()
|
||||
set_light(2, 3, "#cc66ff")
|
||||
|
||||
/obj/structure/prop/statue/pillar
|
||||
name = "pillar"
|
||||
desc = "A pillar."
|
||||
icon_state = "pillar"
|
||||
|
||||
/obj/structure/prop/statue/pillar/dark
|
||||
name = "pillar"
|
||||
desc = "A dark pillar."
|
||||
icon_state = "dark_pillar"
|
||||
@@ -0,0 +1,167 @@
|
||||
/obj/structure/prop/war
|
||||
name = "military hardware"
|
||||
desc = "What is it good for?"
|
||||
icon = 'icons/obj/props/decor.dmi'
|
||||
|
||||
// warheads from TGMC
|
||||
/obj/structure/prop/war/warhead1
|
||||
name = "nuclear warhead"
|
||||
icon_state = "ob_warhead_1"
|
||||
|
||||
/obj/structure/prop/war/warhead2
|
||||
name = "incindiary warhead"
|
||||
icon_state = "ob_warhead_2"
|
||||
|
||||
/obj/structure/prop/war/warhead3
|
||||
name = "bluespace warhead"
|
||||
icon_state = "ob_warhead_3"
|
||||
|
||||
/obj/structure/prop/war/warhead4
|
||||
name = "phoron warhead"
|
||||
icon_state = "ob_warhead_4"
|
||||
|
||||
// minirocket pod from TGMC
|
||||
/obj/structure/prop/war/minirocket_pod
|
||||
name = "rocket pod"
|
||||
icon_state = "minirocket_pod"
|
||||
|
||||
// sentry console from TGMC
|
||||
/obj/structure/prop/war/sentry_control
|
||||
name = "portable sentry gun"
|
||||
desc = "Needs a dispenser."
|
||||
icon_state = "tgmc_sentry"
|
||||
|
||||
// various weapons from TGMC
|
||||
/obj/structure/prop/war/tgmc_missile
|
||||
name = "missile"
|
||||
desc = "It seems to be some sort of spacecraft-tier ordinance."
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "single"
|
||||
bound_width = 64
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile/double
|
||||
icon_state = "widowmaker"
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile/banshee
|
||||
icon_state = "banshee"
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile/keeper
|
||||
icon_state = "keeper"
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile/fatty
|
||||
icon_state = "fatty"
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile/napalm
|
||||
icon_state = "napalm"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* empty, single, banshee, keeper, fatty, napalm
|
||||
*/
|
||||
// ship weapons from TGMC
|
||||
/obj/structure/prop/war/tgmc_missile_rack
|
||||
name = "missile launcher"
|
||||
desc = "Some sort of spacecraft-tier missile weapon."
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "rocket_pod"
|
||||
bound_height = 64
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile_rack/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("empty")
|
||||
icon_state = "rocket_pod"
|
||||
if("single")
|
||||
icon_state = "rocket_pod_loaded"
|
||||
if("banshee")
|
||||
icon_state = "rocket_pod_loadedb"
|
||||
if("keeper")
|
||||
icon_state = "rocket_pod_loadedk"
|
||||
if("fatty")
|
||||
icon_state = "rocket_pod_loadedf"
|
||||
if("napalm")
|
||||
icon_state = "rocket_pod_loadedn"
|
||||
|
||||
/obj/structure/prop/war/tgmc_missile_rack/single
|
||||
icon_state = "rocket_pod_loaded"
|
||||
/obj/structure/prop/war/tgmc_missile_rack/banshee
|
||||
icon_state = "rocket_pod_loadedb"
|
||||
/obj/structure/prop/war/tgmc_missile_rack/keeper
|
||||
icon_state = "rocket_pod_loadedk"
|
||||
/obj/structure/prop/war/tgmc_missile_rack/fatty
|
||||
icon_state = "rocket_pod_loadedf"
|
||||
/obj/structure/prop/war/tgmc_missile_rack/napalm
|
||||
icon_state = "rocket_pod_loadedn"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* empty, loaded
|
||||
*/
|
||||
// ship weapons from TGMC
|
||||
/obj/structure/prop/war/tgmc_minirockets
|
||||
name = "rocket pod"
|
||||
desc = "Some sort of spacecraft-tier rocket weapon."
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "minirocket_pod"
|
||||
bound_height = 64
|
||||
|
||||
/obj/structure/prop/war/tgmc_minirockets/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("empty")
|
||||
icon_state = "minirocket_pod"
|
||||
if("loaded")
|
||||
icon_state = "minirocket_pod_loaded"
|
||||
|
||||
/obj/structure/prop/war/tgmc_minirockets/loaded
|
||||
icon_state = "minirocket_pod_loaded"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* empty, loaded
|
||||
*/
|
||||
// ship weapons from TGMC
|
||||
/obj/structure/prop/war/tgmc_laser
|
||||
name = "laser cannon"
|
||||
desc = "Some sort of spacecraft-tier energy weapon."
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "laser_beam"
|
||||
bound_height = 64
|
||||
|
||||
/obj/structure/prop/war/tgmc_laser/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("empty")
|
||||
icon_state = "laser_beam"
|
||||
if("loaded")
|
||||
icon_state = "laser_beam_loaded"
|
||||
|
||||
/obj/structure/prop/war/tgmc_laser/loaded
|
||||
icon_state = "laser_beam_loaded"
|
||||
|
||||
/**
|
||||
* Possible 'state' options for change_state(state) are:
|
||||
* empty, loaded, loadedempty
|
||||
*/
|
||||
// ship weapons from TGMC
|
||||
/obj/structure/prop/war/tgmc_30mm
|
||||
name = "30mm cannon"
|
||||
desc = "Some sort of spacecraft-tier rotary cannon weapon."
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "30mm_cannon"
|
||||
bound_height = 64
|
||||
|
||||
/obj/structure/prop/war/tgmc_30mm/change_state(state)
|
||||
. = ..()
|
||||
switch(state)
|
||||
if("empty")
|
||||
icon_state = "30mm_cannon"
|
||||
if("loaded")
|
||||
icon_state = "30mm_cannon_loaded1"
|
||||
if("loadedempty")
|
||||
icon_state = "30mm_cannon_loaded0"
|
||||
|
||||
/obj/structure/prop/war/tgmc_30mm/loaded
|
||||
icon_state = "30mm_cannon_loaded1"
|
||||
/obj/structure/prop/war/tgmc_30mm/loadedempty
|
||||
icon_state = "30mm_cannon_loaded0"
|
||||
@@ -4,6 +4,7 @@
|
||||
icon = 'icons/obj/storage_vr.dmi' //VOREStation Edit
|
||||
icon_state = "critteropen"
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
|
||||
var/mob/living/simple_mob/contained
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
icon = 'icons/mob/alien.dmi'
|
||||
icon_state = "nest"
|
||||
var/health = 100
|
||||
unacidable = TRUE
|
||||
|
||||
/obj/structure/bed/nest/update_icon()
|
||||
return
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/obj/structure/shuttle
|
||||
name = "shuttle"
|
||||
icon = 'icons/turf/shuttle_parts.dmi'
|
||||
unacidable = TRUE
|
||||
|
||||
/obj/structure/shuttle/window
|
||||
name = "shuttle window"
|
||||
|
||||
@@ -202,7 +202,7 @@ var/list/flooring_types
|
||||
desc = "Gritty and unpleasant."
|
||||
icon = 'icons/turf/flooring/asteroid.dmi'
|
||||
icon_base = "asteroid"
|
||||
flags = TURF_REMOVE_SHOVEL
|
||||
flags = TURF_REMOVE_SHOVEL | TURF_ACID_IMMUNE
|
||||
build_type = null
|
||||
footstep_sounds = list("human" = list(
|
||||
'sound/effects/footstep/asteroid1.ogg',
|
||||
@@ -543,7 +543,7 @@ var/list/flooring_types
|
||||
icon = 'icons/turf/outdoors.dmi'
|
||||
icon_base = "lava"
|
||||
is_plating = TRUE
|
||||
flags = 0
|
||||
flags = TURF_ACID_IMMUNE
|
||||
footstep_sounds = list("human" = list(
|
||||
'sound/effects/footstep/lava1.ogg',
|
||||
'sound/effects/footstep/lava2.ogg',
|
||||
|
||||
@@ -76,6 +76,7 @@
|
||||
icon = 'icons/turf/shuttle_white.dmi'
|
||||
thermal_conductivity = 0.05
|
||||
heat_capacity = 0
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
var/obj/landed_holder/landed_holder
|
||||
var/interior_corner = 0
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
can_build_into_floor = TRUE
|
||||
can_dirty = FALSE
|
||||
initial_flooring = /decl/flooring/lava // Defining this in case someone DOES step on lava and survive. Somehow.
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
/turf/simulated/floor/lava/outdoors
|
||||
outdoors = OUTDOORS_YES
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
edge_blending_priority = -1
|
||||
movement_cost = 4
|
||||
outdoors = OUTDOORS_YES
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
layer = WATER_FLOOR_LAYER
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
icon_state = "default"
|
||||
dynamic_lighting = 0
|
||||
plane = SPACE_PLANE
|
||||
|
||||
flags = TURF_ACID_IMMUNE
|
||||
temperature = T20C
|
||||
thermal_conductivity = OPEN_HEAT_TRANSFER_COEFFICIENT
|
||||
can_build_into_floor = TRUE
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
oxygen = MOLES_O2STANDARD
|
||||
nitrogen = MOLES_N2STANDARD
|
||||
var/skip_init = TRUE // Don't call down the chain, apparently for performance when loading maps at runtime.
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
/turf/unsimulated/Initialize(mapload)
|
||||
if(skip_init)
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "off"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
var/active = 0
|
||||
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ var/list/_client_preferences_by_type
|
||||
key = "SOUND_AIRPUMP"
|
||||
enabled_description = "Audible"
|
||||
disabled_description = "Silent"
|
||||
|
||||
|
||||
/datum/client_preference/old_door_sounds
|
||||
description ="Old Door Sounds"
|
||||
key = "SOUND_OLDDOORS"
|
||||
@@ -304,13 +304,13 @@ var/list/_client_preferences_by_type
|
||||
key = "RUNECHAT_BORDER"
|
||||
enabled_description = "Show"
|
||||
disabled_description = "Hide"
|
||||
enabled_by_default = FALSE
|
||||
enabled_by_default = TRUE
|
||||
|
||||
/datum/client_preference/runechat_long_messages
|
||||
description = "Runechat Message Length"
|
||||
key = "RUNECHAT_LONG"
|
||||
enabled_description = "ERP KING"
|
||||
disabled_description = "Normie"
|
||||
enabled_description = "Long"
|
||||
disabled_description = "Short"
|
||||
enabled_by_default = FALSE
|
||||
|
||||
/datum/client_preference/status_indicators/toggled(mob/preference_mob, enabled)
|
||||
|
||||
@@ -677,3 +677,14 @@
|
||||
whitelisted = SPECIES_TESHARI
|
||||
sort_category = "Xenowear"
|
||||
cost = 4
|
||||
|
||||
/datum/gear/shoes/teshwrap
|
||||
display_name = "Teshari legwraps"
|
||||
path = /obj/item/clothing/shoes/footwraps/teshari
|
||||
sort_category = "Xenowear"
|
||||
whitelisted = SPECIES_TESHARI
|
||||
cost = 1
|
||||
|
||||
/datum/gear/shoes/teshwrap/New()
|
||||
..()
|
||||
gear_tweaks += gear_tweak_free_color_choice
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
/obj/item/clothing/shoes/footwraps/teshari
|
||||
name = "Teshari legwraps"
|
||||
desc = "Traditional Teshari footwear, consisting of a cloth wrapping to cover the foot and lower leg."
|
||||
icon = 'icons/inventory/feet/item_teshari.dmi'
|
||||
icon_state = "teshwrap"
|
||||
item_state = "teshwrap"
|
||||
shoes_under_pants = 1 //these are thin and wrapped around the leg, clothing would go over it
|
||||
species_restricted = list(SPECIES_TESHARI)
|
||||
@@ -13,6 +13,7 @@
|
||||
icon_state = "generic"
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
clicksound = "button"
|
||||
|
||||
// Power
|
||||
|
||||
@@ -137,3 +137,7 @@
|
||||
key = "spiderpurr"
|
||||
emote_message_3p = "purrs."
|
||||
emote_sound = 'sound/voice/spiderpurr.ogg'
|
||||
/decl/emote/audible/squeaky
|
||||
key = "squeaky"
|
||||
emote_message_3p = "squeaks."
|
||||
emote_sound = 'sound/items/drop/plushie.ogg'
|
||||
@@ -6,6 +6,7 @@
|
||||
icon_state = "grinder"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
req_access = list(access_kitchen,access_morgue)
|
||||
|
||||
var/operating = 0 //Is it on?
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
layer = 2.9
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 5
|
||||
active_power_usage = 2000
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
/turf/simulated/floor/holofloor
|
||||
thermal_conductivity = 0
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
/turf/simulated/floor/holofloor/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
return
|
||||
@@ -129,12 +130,14 @@
|
||||
icon = 'icons/obj/furniture_vr.dmi'
|
||||
icon_state = "stool_padded_preview"
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
pressure_resistance = 15
|
||||
|
||||
/obj/item/clothing/gloves/boxing/hologlove
|
||||
name = "boxing gloves"
|
||||
desc = "Because you really needed another excuse to punch your crewmates."
|
||||
icon_state = "boxing"
|
||||
unacidable = TRUE
|
||||
item_icons = list(
|
||||
slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi',
|
||||
slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi',
|
||||
@@ -291,6 +294,7 @@
|
||||
throwforce = 0
|
||||
w_class = ITEMSIZE_SMALL
|
||||
flags = NOBLOODY
|
||||
unacidable = TRUE
|
||||
var/active = 0
|
||||
|
||||
/obj/item/weapon/holo/esword/green/New()
|
||||
@@ -359,6 +363,7 @@
|
||||
name = "basketball"
|
||||
desc = "Here's your chance, do your dance at the Space Jam."
|
||||
w_class = ITEMSIZE_LARGE //Stops people from hiding it in their bags/pockets
|
||||
unacidable = TRUE
|
||||
drop_sound = 'sound/items/drop/basketball.ogg'
|
||||
pickup_sound = 'sound/items/pickup/basketball.ogg'
|
||||
|
||||
@@ -369,6 +374,7 @@
|
||||
icon_state = "hoop"
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
throwpass = 1
|
||||
|
||||
/obj/structure/holohoop/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
@@ -411,6 +417,7 @@
|
||||
var/area/currentarea = null
|
||||
var/eventstarted = 0
|
||||
|
||||
unacidable = TRUE
|
||||
anchored = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 2
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
icon_state = "hydrotray3"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
flags = OPENCONTAINER
|
||||
volume = 100
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
initial_flooring = /decl/flooring/looking_glass
|
||||
appearance_flags = TILE_BOUND
|
||||
dynamic_lighting = FALSE
|
||||
flags = TURF_ACID_IMMUNE
|
||||
|
||||
var/center = FALSE
|
||||
var/optional = FALSE
|
||||
|
||||
@@ -141,3 +141,4 @@
|
||||
stack_origin_tech = list(TECH_MATERIAL = 2)
|
||||
composite_material = list(MAT_STEEL = SHEET_MATERIAL_AMOUNT / 2, "borosilicate glass" = SHEET_MATERIAL_AMOUNT)
|
||||
rod_product = null
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
icon_base = "hull"
|
||||
icon_reinf = "reinf_mesh"
|
||||
icon_colour = "#666677"
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/steel/hull/place_sheet(var/turf/target) //Deconstructed into normal steel sheets.
|
||||
new /obj/item/stack/material/steel(target)
|
||||
@@ -18,6 +19,7 @@
|
||||
icon_reinf = "reinf_mesh"
|
||||
icon_colour = "#777788"
|
||||
explosion_resistance = 40
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/plasteel/hull/place_sheet(var/turf/target) //Deconstructed into normal plasteel sheets.
|
||||
new /obj/item/stack/material/plasteel(target)
|
||||
@@ -30,6 +32,7 @@
|
||||
icon_colour = "#45829a"
|
||||
explosion_resistance = 90
|
||||
reflectivity = 0.9
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/durasteel/hull/place_sheet(var/turf/target) //Deconstructed into normal durasteel sheets.
|
||||
new /obj/item/stack/material/durasteel(target)
|
||||
@@ -39,6 +42,7 @@
|
||||
stack_type = /obj/item/stack/material/titanium/hull
|
||||
icon_base = "hull"
|
||||
icon_reinf = "reinf_mesh"
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/titanium/hull/place_sheet(var/turf/target) //Deconstructed into normal titanium sheets.
|
||||
new /obj/item/stack/material/titanium(target)
|
||||
@@ -48,6 +52,7 @@
|
||||
stack_type = /obj/item/stack/material/morphium/hull
|
||||
icon_base = "hull"
|
||||
icon_reinf = "reinf_mesh"
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/morphium/hull/place_sheet(var/turf/target)
|
||||
new /obj/item/stack/material/morphium(target)
|
||||
@@ -16,6 +16,7 @@
|
||||
sheet_plural_name = "crystals"
|
||||
is_fusion_fuel = 1
|
||||
stack_origin_tech = list(TECH_MATERIAL = 8, TECH_PHORON = 5, TECH_BLUESPACE = 4)
|
||||
flags = MATERIAL_UNMELTABLE
|
||||
|
||||
/datum/material/supermatter/generate_recipes()
|
||||
recipes = list(
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
name = "mining equipment vendor"
|
||||
desc = "An equipment vendor for miners, points collected at an ore redemption machine can be spent here."
|
||||
icon = 'icons/obj/vending.dmi'
|
||||
icon_state = "adh-tool"
|
||||
icon_state = "minevend"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
var/icon_deny = "adh-tool-deny"
|
||||
var/icon_vend = "adh-tool-vend"
|
||||
var/icon_deny = "minevend-deny"
|
||||
var/icon_vend = "minevend-vend"
|
||||
circuit = /obj/item/weapon/circuitboard/mining_equipment_vendor
|
||||
var/obj/item/weapon/card/id/inserted_id
|
||||
var/list/prize_list = list(
|
||||
@@ -46,7 +46,7 @@
|
||||
new /datum/data/mining_equipment("Hardsuit - Intelligence Storage", /obj/item/rig_module/ai_container, 2500),
|
||||
new /datum/data/mining_equipment("Hardsuit - Smoke Bomb Deployer", /obj/item/rig_module/grenade_launcher/smoke, 2000),
|
||||
new /datum/data/mining_equipment("Industrial Equipment - Phoron Bore", /obj/item/weapon/gun/magnetic/matfed/phoronbore/loaded, 3000),
|
||||
new /datum/data/mining_equipment("Industrial Equipment - Sheet-Snatcher",/obj/item/weapon/storage/bag/sheetsnatcher, 500), new /datum/data/mining_equipment("Digital Tablet - Standard", /obj/item/modular_computer/tablet/preset/custom_loadout/standard, 500),
|
||||
new /datum/data/mining_equipment("Industrial Equipment - Sheet-Snatcher",/obj/item/weapon/storage/bag/sheetsnatcher, 500), new /datum/data/mining_equipment("Digital Tablet - Standard", /obj/item/modular_computer/tablet/preset/custom_loadout/standard, 500),
|
||||
new /datum/data/mining_equipment("Digital Tablet - Advanced", /obj/item/modular_computer/tablet/preset/custom_loadout/advanced, 1000),
|
||||
new /datum/data/mining_equipment("Fine Excavation Kit - Chisels",/obj/item/weapon/storage/excavation, 500),
|
||||
new /datum/data/mining_equipment("Fine Excavation Kit - Measuring Tape",/obj/item/device/measuring_tape, 125),
|
||||
|
||||
@@ -96,18 +96,9 @@
|
||||
turn_on()
|
||||
. = TRUE
|
||||
|
||||
switch(action)
|
||||
if("power")
|
||||
if(!access_scanner.allowed(src))
|
||||
return FALSE
|
||||
if(on)
|
||||
turn_off()
|
||||
else
|
||||
turn_on()
|
||||
. = TRUE
|
||||
|
||||
if(locked)
|
||||
return TRUE
|
||||
|
||||
switch(action)
|
||||
if("water")
|
||||
waters_trays = !waters_trays
|
||||
|
||||
@@ -127,10 +127,10 @@ var/list/_human_default_emotes = list(
|
||||
/decl/emote/audible/squish,
|
||||
/decl/emote/audible/spiderchitter,
|
||||
/decl/emote/audible/spiderpurr,
|
||||
|
||||
/decl/emote/audible/squeaky,
|
||||
/decl/emote/visible/mlem,
|
||||
/decl/emote/visible/blep,
|
||||
|
||||
|
||||
/decl/emote/helper/vwag,
|
||||
/decl/emote/helper/vflap
|
||||
//VOREStation Add End
|
||||
@@ -256,6 +256,7 @@ var/list/_simple_mob_default_emotes = list(
|
||||
/decl/emote/audible/squish,
|
||||
/decl/emote/audible/spiderchitter,
|
||||
/decl/emote/audible/spiderpurr,
|
||||
/decl/emote/audible/squeaky,
|
||||
/decl/emote/visible/mlem,
|
||||
/decl/emote/visible/blep
|
||||
)
|
||||
|
||||
@@ -158,21 +158,20 @@
|
||||
// OBJ CHECK
|
||||
var/cannot_melt
|
||||
if(isobj(O))
|
||||
var/obj/I = O
|
||||
var/obj/I = O //Gurgs : Melts pretty much any object that isn't considered unacidable = TRUE
|
||||
if(I.unacidable)
|
||||
cannot_melt = 1
|
||||
else
|
||||
if(istype(O, /turf/simulated/wall))
|
||||
var/turf/simulated/wall/W = O
|
||||
var/turf/simulated/wall/W = O //Gurgs : Walls are deconstructed into girders.
|
||||
if(W.material.flags & MATERIAL_UNMELTABLE)
|
||||
cannot_melt = 1
|
||||
else if(istype(O, /turf/simulated/floor))
|
||||
/* var/turf/simulated/floor/F = O //Turfs are qdel'd to space (Even asteroid tiles), will need to be touched by someone smarter than myself. -Mech
|
||||
var/turf/simulated/floor/F = O //Gurgs : Floors are destroyed with ex_act(1), turning them into whatever tile it would be if empty. Z-Level Friendly, does not destroy pipes.
|
||||
if(F.flooring && (F.flooring.flags & TURF_ACID_IMMUNE))
|
||||
*/
|
||||
cannot_melt = 1
|
||||
cannot_melt = 1
|
||||
else
|
||||
cannot_melt = 1
|
||||
cannot_melt = 1 //Gurgs : Everything that isn't a object, simulated wall, or simulated floor is assumed to be acid immune. Includes weird things like unsimulated floors and space.
|
||||
|
||||
if(cannot_melt)
|
||||
to_chat(src, "<span class='alium'>You cannot dissolve this object.</span>")
|
||||
|
||||
@@ -57,7 +57,8 @@
|
||||
icon_living = "mouse_[body_color]"
|
||||
icon_dead = "mouse_[body_color]_dead"
|
||||
icon_rest = "mouse_[body_color]_sleep"
|
||||
desc = "A small [body_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself."
|
||||
if (body_color != "rat")
|
||||
desc = "A small [body_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself."
|
||||
|
||||
/mob/living/simple_mob/animal/passive/mouse/Crossed(atom/movable/AM as mob|obj)
|
||||
if(AM.is_incorporeal())
|
||||
@@ -106,6 +107,8 @@
|
||||
|
||||
/mob/living/simple_mob/animal/passive/mouse/rat
|
||||
name = "rat"
|
||||
tt_desc = "E Rattus rattus"
|
||||
desc = "A large rodent, often seen hiding in maintenance areas and making a nuisance of itself."
|
||||
body_color = "rat"
|
||||
icon_state = "mouse_rat"
|
||||
maxHealth = 20
|
||||
|
||||
@@ -100,6 +100,7 @@ I think I covered everything.
|
||||
say_list_type = /datum/say_list/bigdragon
|
||||
devourable = 0 //No
|
||||
universal_understand = 1 //So they can hear synth speach
|
||||
max_tox = 0 // for virgo3b survivability
|
||||
|
||||
special_attack_min_range = 1
|
||||
special_attack_max_range = 10
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
can_buckle = TRUE
|
||||
buckle_movable = TRUE
|
||||
buckle_lying = FALSE
|
||||
max_tox = 0 // for virgo3b survivability
|
||||
|
||||
/mob/living/simple_mob/vore/greatwolf
|
||||
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
vore_default_mode = DM_HEAL
|
||||
vore_pounce_maxhealth = 125
|
||||
vore_bump_emote = "tries to snap up"
|
||||
max_tox = 0 // for virgo3b survivability
|
||||
|
||||
/datum/category_item/catalogue/fauna/leopardmander
|
||||
name = "Sivian Fauna - Va'aen Drake"
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
opacity = 0
|
||||
density = FALSE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
layer = STAIRS_LAYER
|
||||
|
||||
/obj/structure/stairs/Initialize()
|
||||
|
||||
@@ -21,6 +21,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable
|
||||
|
||||
icon = 'icons/obj/device_alt.dmi'
|
||||
icon_state = "nif_0"
|
||||
unacidable = TRUE
|
||||
|
||||
w_class = ITEMSIZE_TINY
|
||||
var/known_implant = TRUE
|
||||
|
||||
@@ -92,6 +92,7 @@ GLOBAL_LIST_EMPTY(apcs)
|
||||
icon_state = "apc0"
|
||||
layer = ABOVE_WINDOW_LAYER
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_OFF
|
||||
clicksound = "switch"
|
||||
req_access = list(access_engine_equip)
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
var/icon_state_off = "bbox_off"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
circuit = /obj/item/weapon/circuitboard/breakerbox
|
||||
var/on = 0
|
||||
var/busy = 0
|
||||
|
||||
@@ -46,6 +46,7 @@ var/list/possible_cable_coil_colours = list(
|
||||
/obj/structure/cable
|
||||
level = 1
|
||||
anchored =TRUE
|
||||
unacidable = TRUE
|
||||
var/datum/powernet/powernet
|
||||
name = "power cable"
|
||||
desc = "A flexible superconducting cable for heavy-duty power transfer."
|
||||
|
||||
@@ -6,6 +6,7 @@ GLOBAL_LIST_EMPTY(all_turbines)
|
||||
icon_state = "teg-unassembled"
|
||||
density = TRUE
|
||||
anchored = FALSE
|
||||
unacidable = TRUE
|
||||
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 100 //Watts, I hope. Just enough to do the computer and display things.
|
||||
|
||||
@@ -24,6 +24,7 @@ GLOBAL_LIST_EMPTY(gravity_generators)
|
||||
icon = 'icons/obj/machines/gravity_generator.dmi'
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_OFF
|
||||
var/sprite_number = 0
|
||||
|
||||
|
||||
@@ -247,7 +247,7 @@
|
||||
/obj/machinery/power/rtg/kugelblitz
|
||||
name = "kugelblitz generator"
|
||||
desc = "A power source harnessing a small black hole."
|
||||
icon = 'icons/obj/structures/decor64x64.dmi'
|
||||
icon = 'icons/obj/props/decor64x64.dmi'
|
||||
icon_state = "bigdice"
|
||||
bound_width = 64
|
||||
bound_height = 64
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
icon_state = "emitter"
|
||||
anchored = FALSE
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
req_access = list(access_engine_equip)
|
||||
var/id = null
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ GLOBAL_LIST_EMPTY(smeses)
|
||||
icon_state = "smes"
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_OFF
|
||||
circuit = /obj/item/weapon/circuitboard/smes
|
||||
clicksound = "switch"
|
||||
|
||||
@@ -13,6 +13,7 @@ GLOBAL_LIST_EMPTY(solars_list)
|
||||
icon_state = "sp_base"
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_OFF
|
||||
idle_power_usage = 0
|
||||
active_power_usage = 0
|
||||
|
||||
@@ -55,6 +55,7 @@
|
||||
layer = ABOVE_MOB_LAYER // So people can walk behind the top part
|
||||
density = TRUE
|
||||
anchored = FALSE
|
||||
unacidable = TRUE
|
||||
light_range = 4
|
||||
|
||||
var/gasefficency = 0.25
|
||||
|
||||
@@ -159,6 +159,7 @@
|
||||
force = 5
|
||||
slot_flags = SLOT_BELT
|
||||
w_class = ITEMSIZE_NORMAL
|
||||
unacidable = TRUE
|
||||
projectile_type = /obj/item/projectile/beam
|
||||
origin_tech = null
|
||||
fire_delay = 10 //Old pistol
|
||||
|
||||
@@ -30,18 +30,6 @@
|
||||
charge_cost = 800
|
||||
recharge_time = 0.5 SECONDS
|
||||
|
||||
/obj/item/weapon/gun/energy/stunrevolver
|
||||
name = "stun revolver"
|
||||
desc = "A LAEP20 Aktzin. Designed and produced by Lawson Arms under the wing of Hephaestus, several TSCs have been trying to get a hold of the blueprints for half a decade."
|
||||
description_fluff = "Lawson Arms is Hephaestus Industries’ main personal-energy-weapon branding, often sold alongside MarsTech projectile weapons to security and law enforcement agencies. \
|
||||
The Aktzin's capsule-based stun ammunition is a closely guarded Hephaestus Industries patent, and the company has been particularly litigious towards any attempted imitators."
|
||||
icon = 'icons/obj/guns/energy/stunrevolver.dmi'
|
||||
icon_state = "stunrevolver"
|
||||
item_state = "stunrevolver"
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
projectile_type = /obj/item/projectile/energy/electrode/strong
|
||||
charge_cost = 300
|
||||
|
||||
/obj/item/weapon/gun/energy/crossbow
|
||||
name = "mini energy-crossbow"
|
||||
desc = "A weapon favored by many mercenary stealth specialists."
|
||||
@@ -81,4 +69,45 @@
|
||||
origin_tech = list(TECH_COMBAT = 2, TECH_MATERIAL = 2, TECH_POWER = 3)
|
||||
fire_delay = 20
|
||||
charge_cost = 600
|
||||
projectile_type = /obj/item/projectile/energy/plasmastun
|
||||
projectile_type = /obj/item/projectile/energy/plasmastun
|
||||
|
||||
//Stun Revolvers
|
||||
|
||||
/obj/item/weapon/gun/energy/stunrevolver
|
||||
name = "stun revolver"
|
||||
desc = "A LAEP20 Aktzin. Designed and produced by Lawson Arms under the wing of Hephaestus, \
|
||||
several TSCs have been trying to get a hold of the blueprints for half a decade."
|
||||
description_fluff = "Lawson Arms is Hephaestus Industries’ main personal-energy-weapon branding, \
|
||||
often sold alongside MarsTech projectile weapons to security and law enforcement agencies. \
|
||||
The Aktzin's capsule-based stun ammunition is a closely guarded Hephaestus Industries patent, \
|
||||
and the company has been particularly litigious towards any attempted imitators."
|
||||
icon_state = "stunrevolver"
|
||||
item_state = "stunrevolver"
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
projectile_type = /obj/item/projectile/energy/electrode/strong
|
||||
charge_cost = 300
|
||||
|
||||
/obj/item/weapon/gun/energy/stunrevolver/vintage
|
||||
name = "vintage stun revolver"
|
||||
desc = "An older model stun revolver that is still in service across the frontier."
|
||||
description_fluff = "The LTX1020 Bolter, a Firefly Co. staple from when the company was in its hayday. \
|
||||
While Firefly Co. has sadly been dissmantled due to bankruptcy, their iconic weapons can still be found \
|
||||
across the frontier as anything from collectors items to surplus equipment. The LTX1020 falls under \
|
||||
the latter category. Several companies have been known to use the base tech within the Bolter to create \
|
||||
their own variants of the Stun Revolver."
|
||||
icon_state = "vinstunrevolver"
|
||||
item_state = "stunrevolver"
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
|
||||
/obj/item/weapon/gun/energy/stunrevolver/snubnose
|
||||
name = "snub stun revolver"
|
||||
desc = "A snub nose stun revolver sporting a rather elegant look."
|
||||
description_fluff = "The LTX1010 Stubby, a Firefly Co. staple from when the company was in its hayday. \
|
||||
While Firefly Co. has sadly been dissmantled due to bankruptcy, their iconic weapons can still be found \
|
||||
across the frontier as anything from collectors items to surplus equipment. The LTX1010 falls under \
|
||||
the latter category. Gangsters and other gentlemanly criminals alike use the Stubby as a means of policing \
|
||||
within their ranks."
|
||||
icon_state = "snubstunrevolver"
|
||||
item_state = "stunrevolver"
|
||||
w_class = ITEMSIZE_SMALL
|
||||
origin_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
@@ -3,6 +3,7 @@
|
||||
desc = "Used to seperate and package chemicals in to patches, pills, or bottles. Warranty void if used to create Space Drugs."
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "mixer0"
|
||||
circuit = /obj/item/weapon/circuitboard/chem_master
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 100
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
|
||||
/obj/machinery/chemical_dispenser/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -752,6 +752,7 @@
|
||||
desc = "An underfloor disposal pipe."
|
||||
anchored = TRUE
|
||||
density = FALSE
|
||||
unacidable = TRUE
|
||||
|
||||
level = 1 // underfloor only
|
||||
var/dpdir = 0 // bitmask of pipe directions
|
||||
|
||||
@@ -70,6 +70,13 @@
|
||||
build_path = /obj/item/weapon/gun/energy/floragun
|
||||
sort_string = "MAAAG"
|
||||
|
||||
/datum/design/item/weapon/energy/vinstunrevolver
|
||||
id = "vinstunrevolver"
|
||||
req_tech = list(TECH_COMBAT = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
||||
materials = list(MAT_STEEL = 4000)
|
||||
build_path = /obj/item/weapon/gun/energy/stunrevolver/vintage
|
||||
sort_string = "MAAAH"
|
||||
|
||||
// Ballistic weapons
|
||||
|
||||
/datum/design/item/weapon/ballistic/AssembleDesignName()
|
||||
|
||||
@@ -54,6 +54,7 @@ var/global/list/obj/machinery/message_server/message_servers = list()
|
||||
desc = "Facilitates both PDA messages and request console functions."
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 10
|
||||
active_power_usage = 100
|
||||
@@ -239,6 +240,7 @@ var/obj/machinery/blackbox_recorder/blackbox
|
||||
desc = "Records all radio communications, as well as various other information in case of the worst."
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
unacidable = TRUE
|
||||
use_power = USE_POWER_IDLE
|
||||
idle_power_usage = 10
|
||||
active_power_usage = 100
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
//This controller goes on the escape pod itself
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller/escape_pod
|
||||
name = "escape pod controller"
|
||||
unacidable = TRUE
|
||||
program = /datum/embedded_program/docking/simple
|
||||
var/datum/shuttle/autodock/ferry/escape_pod/pod
|
||||
valid_actions = list("toggle_override", "force_door")
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
name = "Elevator Door"
|
||||
desc = "Ding."
|
||||
req_access = list(access_maint_tunnels)
|
||||
unacidable = TRUE
|
||||
opacity = 0
|
||||
autoclose = 0
|
||||
glass = 1
|
||||
|
||||
@@ -109,3 +109,4 @@ xonkon - Protean
|
||||
zalvine - Shadekin Empathy
|
||||
zammyman215 - Vox
|
||||
zeracyfr - Xenochimera
|
||||
spirit1299 - Black-Eyed Shadekin
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.6 KiB |
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user