This commit is contained in:
Neerti
2017-11-26 12:08:05 -05:00
parent 54f4ad7198
commit 7497aef295
36 changed files with 509 additions and 16 deletions
@@ -247,6 +247,7 @@
icon = 'icons/obj/abductor.dmi'
icon_state = "belt"
item_state = "security"
storage_slots = 8
can_hold = list(
/obj/item/device/healthanalyzer,
/obj/item/weapon/dnainjector,
@@ -284,6 +285,7 @@
new /obj/item/weapon/surgical/FixOVein/alien(src)
new /obj/item/weapon/surgical/bone_clamp/alien(src)
new /obj/item/weapon/surgical/cautery/alien(src)
new /obj/item/weapon/surgical/surgicaldrill/alien(src)
/obj/item/weapon/storage/belt/champion
name = "championship belt"
@@ -0,0 +1,79 @@
// These contain structures to make certain 'alien' (as in the ayyy ones, not xenomorphs) submaps more filled, and don't really do anything.
/obj/structure/prop/alien
name = "some alien thing"
desc = "My description is broken, bug a developer."
icon = 'icons/obj/abductor.dmi'
density = TRUE
anchored = TRUE
var/interaction_message = null
/obj/structure/prop/alien/attack_hand(mob/living/user) // Used to tell the player that this isn't useful for anything.
if(!istype(user))
return FALSE
if(!interaction_message)
return ..()
else
to_chat(user, interaction_message)
/obj/structure/prop/alien/computer
name = "alien console"
desc = "The console flashes what appear to be symbols you've never seen before."
icon_state = "console-c"
interaction_message = "<span class='warning'>The console flashes a series of unknown symbols as you press a button on what is presumably a keyboard. It probably some sort of \
authentication error. Since you're not an alien, you should probably leave it alone.</span>"
/obj/structure/prop/alien/computer/camera
desc = "This console is briefly flashing video feeds of various locations close by."
icon_state = "camera"
/obj/structure/prop/alien/computer/camera/flipped
icon_state = "camera_flipped"
/obj/structure/prop/alien/dispenser
name = "alien dispenser"
desc = "This looks like it dispenses... something?"
icon_state = "dispenser"
interaction_message = "<span class='warning'>You don't see any mechanism to operate this. Probably for the best.</span>"
/obj/structure/prop/alien/pod
name = "alien pod"
desc = "This seems to be a container for something."
icon_state = "experiment"
interaction_message = "<span class='warning'>You don't see any mechanism to open this thing. Probably for the best.</span>"
/obj/structure/prop/alien/pod/open
name = "opened alien pod"
desc = "At one point, this probably contained something interesting..."
icon_state = "experiment-open"
interaction_message = "<span class='warning'>You don't see any mechanism to close this thing.</span>"
/obj/structure/prop/alien/power
name = "void core"
icon_state = "core"
desc = "An alien machine that seems to be producing energy seemingly out of nowhere."
interaction_message = "<span class='warning'>Messing with something that makes energy out of nowhere seems very unwise.</span>"
/obj/item/prop/alien
name = "some alien item"
desc = "My description is broken, bug a developer."
icon = 'icons/obj/abductor.dmi'
// Mostly useless. Research might like it, however.
/obj/item/prop/alien/junk
name = "alien object"
desc = "You have no idea what this thing does."
icon_state = "health"
w_class = ITEMSIZE_SMALL
var/static/list/possible_states = list("health", "spider", "slime", "emp", "species", "egg", "vent", "mindshock", "viral", "gland")
var/static/list/possible_tech = list(TECH_MATERIAL, TECH_ENGINEERING, TECH_PHORON, TECH_POWER, TECH_BIO, TECH_COMBAT, TECH_MAGNET, TECH_DATA)
/obj/item/prop/alien/junk/initialize()
..()
icon_state = pick(possible_states)
var/list/techs = possible_tech.Copy()
origin_tech = list()
for(var/i = 1 to rand(1, 4))
var/new_tech = pick(techs)
techs -= new_tech
origin_tech[new_tech] = rand(5, 9)
@@ -134,3 +134,12 @@
new /obj/item/clothing/head/helmet/thunderdome(src)
new /obj/item/clothing/head/helmet/thunderdome(src)
new /obj/item/clothing/head/helmet/thunderdome(src)
/obj/structure/closet/alien
name = "alien container"
desc = "Contains secrets of the universe."
icon = 'icons/obj/abductor.dmi'
icon_state = "alien_locker"
icon_closed = "alien_locker"
icon_opened = "alien_locker_open"
anchored = TRUE
@@ -117,6 +117,12 @@
base_icon_state = "voidcraft_vertical"
airlock_type = "/voidcraft/vertical"
/obj/structure/door_assembly/door_assembly_alien
base_icon_state = "alien"
base_name = "alien airlock"
airlock_type = "/alien"
glass = -1
/obj/structure/door_assembly/multi_tile
icon = 'icons/obj/doors/door_assembly2x1.dmi'
dir = EAST
@@ -435,3 +435,77 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
loot_depletion = TRUE
loot_left = 5 // This is to prevent people from asking the whole station to go down to some alien ruin to get massive amounts of phat lewt.
// Base type for alien piles.
/obj/structure/loot_pile/surface/alien
name = "alien pod"
desc = "A pod which looks bigger on the inside. Something quiet shiny might be inside?"
icon_state = "alien_pile1"
/obj/structure/loot_pile/surface/alien
common_loot = list(
/obj/item/prop/alien/junk
)
// May contain alien tools.
/obj/structure/loot_pile/surface/alien/engineering
uncommon_loot = list(
/obj/item/device/multitool/alien,
/obj/item/stack/cable_coil/alien,
/obj/item/weapon/crowbar/alien,
/obj/item/weapon/screwdriver/alien,
/obj/item/weapon/weldingtool/alien,
/obj/item/weapon/wirecutters/alien,
/obj/item/weapon/wrench/alien
)
rare_loot = list(
/obj/item/weapon/storage/belt/utility/alien/full
)
// May contain alien surgery equipment or powerful medication.
/obj/structure/loot_pile/surface/alien/medical
uncommon_loot = list(
/obj/item/weapon/surgical/FixOVein/alien,
/obj/item/weapon/surgical/bone_clamp/alien,
/obj/item/weapon/surgical/cautery/alien,
/obj/item/weapon/surgical/circular_saw/alien,
/obj/item/weapon/surgical/hemostat/alien,
/obj/item/weapon/surgical/retractor/alien,
/obj/item/weapon/surgical/scalpel/alien,
/obj/item/weapon/surgical/surgicaldrill/alien
)
rare_loot = list(
/obj/item/weapon/storage/belt/medical/alien
)
// May contain powercells or alien weaponry.
/obj/structure/loot_pile/surface/alien/security
uncommon_loot = list(
/obj/item/weapon/cell/device/weapon/recharge/alien
)
// The pile found at the very end, and as such has the best loot.
/obj/structure/loot_pile/surface/alien/end
common_loot = list(
/obj/item/device/multitool/alien,
/obj/item/stack/cable_coil/alien,
/obj/item/weapon/crowbar/alien,
/obj/item/weapon/screwdriver/alien,
/obj/item/weapon/weldingtool/alien,
/obj/item/weapon/wirecutters/alien,
/obj/item/weapon/wrench/alien,
/obj/item/weapon/surgical/FixOVein/alien,
/obj/item/weapon/surgical/bone_clamp/alien,
/obj/item/weapon/surgical/cautery/alien,
/obj/item/weapon/surgical/circular_saw/alien,
/obj/item/weapon/surgical/hemostat/alien,
/obj/item/weapon/surgical/retractor/alien,
/obj/item/weapon/surgical/scalpel/alien,
/obj/item/weapon/surgical/surgicaldrill/alien,
/obj/item/weapon/cell/device/weapon/recharge/alien,
)
uncommon_loot = list(
/obj/item/weapon/storage/belt/medical/alien,
/obj/item/weapon/storage/belt/utility/alien/full
)
@@ -174,13 +174,6 @@
/obj/structure/bed/padded/New(var/newloc)
..(newloc,"plastic","cotton")
/obj/structure/bed/alien
name = "resting contraption"
desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?"
/obj/structure/bed/alien/New(var/newloc)
..(newloc,"resin")
/obj/structure/bed/double
name = "double bed"
icon_state = "doublebed"
@@ -305,3 +298,15 @@
spawn(0)
qdel(src)
return
/obj/structure/bed/alien
name = "resting contraption"
desc = "Whatever species designed this must've enjoyed relaxation as well. Looks vaguely comfy."
icon = 'icons/obj/abductor.dmi'
icon_state = "bed"
/obj/structure/bed/alien/update_icon()
return // Doesn't care about material or anything else.
/obj/structure/bed/alien/attackby(obj/item/weapon/W, mob/user)
return // No deconning.