Adds Alien Alloys

This commit is contained in:
c0
2016-03-12 15:06:03 +03:00
parent 86565471a8
commit f3ecb132ba
11 changed files with 173 additions and 15 deletions
@@ -589,17 +589,88 @@ Congratulations! You are now trained for xenobiology research!"}
name = "resting contraption"
desc = "This looks similar to contraptions from earth. Could aliens be stealing our technology?"
icon = 'icons/obj/abductor.dmi'
buildstacktype = /obj/item/stack/sheet/mineral/abductor
icon_state = "bed"
/obj/structure/table_frame/abductor
name = "alien table frame"
desc = "A strudy table frame made from alien alloy."
icon_state = "alien_frame"
framestack = /obj/item/stack/sheet/mineral/abductor
framestackamount = 1
density = 1
/obj/structure/table_frame/abductor/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/wrench))
user << "<span class='notice'>You start disassembling [src]...</span>"
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
if(do_after(user, 30/I.toolspeed, target = src))
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
for(var/i = 1, i <= framestackamount, i++)
new framestack(get_turf(src))
qdel(src)
return
if(istype(I, /obj/item/stack/sheet/mineral/abductor))
var/obj/item/stack/sheet/P = I
if(P.get_amount() < 1)
user << "<span class='warning'>You need one alien alloy sheet to do this!</span>"
return
user << "<span class='notice'>You start adding [P] to [src]...</span>"
if(do_after(user, 50, target = src))
P.use(1)
new /obj/structure/table/abductor(src.loc)
qdel(src)
return
/obj/structure/table/abductor
name = "alien table"
desc = "Advanced flat surface technology at work!"
icon = 'icons/obj/smooth_structures/alien_table.dmi'
icon_state = "alien_table"
buildstack = /obj/item/stack/sheet/mineral/abductor
framestack = /obj/item/stack/sheet/mineral/abductor
buildstackamount = 1
framestackamount = 1
canSmoothWith = null
frame = /obj/structure/table_frame/abductor
/obj/structure/closet/abductor
name = "alien locker"
desc = "Contains secrets of the universe."
icon_state = "abductor"
icon_door = "abductor"
icon_door = "abductor"
can_weld_shut = FALSE
material_drop = /obj/item/stack/sheet/mineral/abductor
/obj/structure/door_assembly/door_assembly_abductor
name = "alien airlock assembly"
icon = 'icons/obj/doors/airlocks/abductor/abductor_airlock.dmi'
overlays_file = 'icons/obj/doors/airlocks/abductor/overlays.dmi'
typetext = "abductor"
icontext = "abductor"
airlock_type = /obj/machinery/door/airlock/abductor
anchored = 1
state = 1
/obj/structure/door_assembly/door_assembly_abductor/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/weldingtool) && !anchored )
var/obj/item/weapon/weldingtool/WT = W
if(WT.remove_fuel(0,user))
user.visible_message("<span class='warning'>[user] disassembles the airlock assembly.</span>", \
"You start to disassemble the airlock assembly...")
playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1)
if(do_after(user, 40/W.toolspeed, target = src))
if( !WT.isOn() )
return
user << "<span class='notice'>You disassemble the airlock assembly.</span>"
new /obj/item/stack/sheet/mineral/abductor(get_turf(src), 4)
qdel(src)
else
return
else if(istype(W, /obj/item/weapon/airlock_painter))
return // no repainting
else if(istype(W, /obj/item/stack/sheet))
return // no material modding
else
..()
+4 -1
View File
@@ -299,11 +299,14 @@
/obj/machinery/door/airlock/abductor
name = "alien airlock"
desc = "With humanity's current technological level, it could take years to hack this advanced airlock... or maybe we should give screwdriver a try?"
icon = 'icons/obj/doors/airlocks/abductor/abductor_airlock.dmi'
overlays_file = 'icons/obj/doors/airlocks/abductor/overlays.dmi'
doortype = /obj/structure/door_assembly/door_assembly_abductor
opacity = 1
explosion_block = 2
explosion_block = 3
hackProof = 1
aiControlDisabled = 1
//////////////////////////////////
/*
@@ -265,7 +265,7 @@ var/global/list/datum/stack_recipe/snow_recipes = list ( \
/obj/item/stack/sheet/mineral/snow/New(var/loc, var/amount=null)
recipes = snow_recipes
pixel_x = rand(0,4)-4
pixel_y = rand(0,4)-4
pixel_y = rand(,4)-4
..()
/****************************** Others ****************************/
@@ -311,4 +311,37 @@ var/global/list/datum/stack_recipe/snow_recipes = list ( \
w_class = 3
throw_speed = 1
throw_range = 3
origin_tech = "materials=4"
origin_tech = "materials=4"
/*
* Alien Alloy
*/
/obj/item/stack/sheet/mineral/abductor
name = "alien alloy"
icon = 'icons/obj/abductor.dmi'
icon_state = "sheet-abductor"
singular_name = "alien alloy sheet"
force = 5
throwforce = 5
w_class = 3
throw_speed = 1
throw_range = 3
origin_tech = "materials=6;abductor=1"
sheettype = "abductor"
var/global/list/datum/stack_recipe/abductor_recipes = list ( \
new/datum/stack_recipe("alien chair", /obj/structure/chair, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("alien bed", /obj/structure/bed/abductor, 2, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("alien locker", /obj/structure/closet/abductor, 1, time = 15, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("alien table frame", /obj/structure/table_frame/abductor, 1, time = 15, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("alien airlock assembly", /obj/structure/door_assembly/door_assembly_abductor, 4, time = 20, one_per_turf = 1, on_floor = 1), \
null, \
new/datum/stack_recipe("alien floor tile", /obj/item/stack/tile/mineral/abductor, 1, 4, 20), \
/* null, \
new/datum/stack_recipe("Abductor Agent Statue", /obj/structure/statue/bananium/clown, 5, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("Abductor Sciencist Statue", /obj/structure/statue/bananium/clown, 5, one_per_turf = 1, on_floor = 1)*/
)
/obj/item/stack/sheet/mineral/abductor/New(var/loc, var/amount=null)
recipes = abductor_recipes
..()
@@ -58,3 +58,12 @@
mineralType = "bananium"
materials = list(MAT_BANANIUM=500)
/obj/item/stack/tile/mineral/abductor
name = "alien floor tile"
singular_name = "alien floor tile"
desc = "A tile made out of alien alloy."
icon = 'icons/obj/abductor.dmi'
icon_state = "tile_abductor"
origin_tech = "materials=6;abductor=1"
turf_type = /turf/simulated/floor/mineral/abductor
mineralType = "abductor"
@@ -292,16 +292,6 @@
anchored = 1
state = 1
/obj/structure/door_assembly/door_assembly_abductor
name = "alien airlock assembly"
icon = 'icons/obj/doors/airlocks/abductor/abductor_airlock.dmi'
overlays_file = 'icons/obj/doors/airlocks/abductor/overlays.dmi'
typetext = "abductor"
icontext = "abductor"
airlock_type = /obj/machinery/door/airlock/abductor
anchored = 1
state = 1
/obj/structure/door_assembly/door_assembly_wood
name = "wooden airlock assembly"
icon = 'icons/obj/doors/airlocks/station/wood.dmi'
@@ -271,3 +271,12 @@
mineral = "metal"
walltype = "iron"
canSmoothWith = list(/obj/structure/falsewall/iron, /turf/simulated/wall/mineral/iron)
/obj/structure/falsewall/abductor
name = "alien wall"
desc = "A wall with alien alloy plating."
icon = 'icons/turf/walls/abductor_wall.dmi'
icon_state = "abductor"
mineral = "abductor"
walltype = "abductor"
canSmoothWith = list(/obj/structure/falsewall/abductor, /turf/simulated/wall/mineral/abductor)
@@ -169,3 +169,34 @@
last_event = world.time
active = 0
return
// ALIEN ALLOY
/turf/simulated/floor/mineral/abductor
name = "alien floor"
icon_state = "alienpod1"
floor_tile = /obj/item/stack/tile/mineral/abductor
icons = list("alienpod1", "alienpod2", "alienpod3", "alienpod4", "alienpod5", "alienpod6", "alienpod7", "alienpod8", "alienpod9")
/turf/simulated/floor/mineral/abductor/New()
..()
icon_state = "alienpod[rand(1,9)]"
/turf/simulated/floor/mineral/abductor/break_tile()
return //unbreakable
/turf/simulated/floor/mineral/abductor/burn_tile()
return //unburnable
/turf/simulated/floor/mineral/abductor/make_plating()
return ChangeTurf(/turf/simulated/floor/plating/abductor2)
/turf/simulated/floor/plating/abductor2
name = "alien plating"
icon_state = "alienplating"
/turf/simulated/floor/plating/abductor2/break_tile()
return //unbreakable
/turf/simulated/floor/plating/abductor2/burn_tile()
return //unburnable
+13 -1
View File
@@ -173,4 +173,16 @@
mineral = "snow"
hardness = 80
sheet_type = /obj/item/stack/sheet/mineral/snow
canSmoothWith = null
canSmoothWith = null
/turf/simulated/wall/mineral/abductor
name = "alien wall"
desc = "A wall with alien alloy plating."
icon = 'icons/turf/walls/abductor_wall.dmi'
icon_state = "abductor"
walltype = "abductor"
mineral = "abductor"
sheet_type = /obj/item/stack/sheet/mineral/abductor
slicing_duration = 200 //alien wall takes twice as much time to slice
explosion_block = 3
canSmoothWith = list(/turf/simulated/wall/mineral/abductor, /obj/structure/falsewall/abductor)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 KiB

After

Width:  |  Height:  |  Size: 379 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB