Merge pull request #922 from Kabramen/walls

Walls and poker tables for the new wood types
This commit is contained in:
QuoteFox
2021-01-26 11:54:40 +00:00
committed by GitHub
14 changed files with 249 additions and 7 deletions

View File

@@ -97,6 +97,90 @@
new /obj/item/stack/sheet/mineral/wood(get_turf(src), drop_amount)
/obj/structure/barricade/shadoww
name = "Shadow barricade"
desc = "This space is blocked off by a shadow wood barricade."
icon = 'icons/obj/structures.dmi'
icon_state = "shadowwbarricade"
max_integrity = 50
material = WOOD
var/drop_amount = 3
/obj/structure/barricade/shadoww/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/stack/sheet/mineral/shadoww))
var/obj/item/stack/sheet/mineral/shadoww/W = I
if(W.amount < 5)
to_chat(user, "<span class='warning'>You need at least five shadown planks to make a wall!</span>")
return
else
to_chat(user, "<span class='notice'>You start adding [I] to [src]...</span>")
if(do_after(user, 50, target=src))
W.use(5)
new /turf/closed/wall/mineral/shadoww/nonmetal(get_turf(src))
qdel(src)
return
return ..()
/obj/structure/barricade/shadoww/make_debris()
new /obj/item/stack/sheet/mineral/shadoww(get_turf(src), drop_amount)
/obj/structure/barricade/plaswood
name = "Plaswood barricade"
desc = "This space is blocked off by a plaswood barricade."
icon = 'icons/obj/structures.dmi'
icon_state = "plaswoodwbarricade"
max_integrity = 180
material = WOOD
var/drop_amount = 3
/obj/structure/barricade/plaswood/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/stack/sheet/mineral/plaswood))
var/obj/item/stack/sheet/mineral/plaswood/W = I
if(W.amount < 5)
to_chat(user, "<span class='warning'>You need at least five plaswood planks to make a wall!</span>")
return
else
to_chat(user, "<span class='notice'>You start adding [I] to [src]...</span>")
if(do_after(user, 50, target=src))
W.use(5)
new /turf/closed/wall/mineral/plaswood/nonmetal(get_turf(src))
qdel(src)
return
return ..()
/obj/structure/barricade/plaswood/make_debris()
new /obj/item/stack/sheet/mineral/plaswood(get_turf(src), drop_amount)
/obj/structure/barricade/gmushroom
name = "Mushroom barricade"
desc = "This space is blocked off by a mushroom barricade."
icon = 'icons/obj/structures.dmi'
icon_state = "gmushroombarricade"
max_integrity = 50
material = WOOD
var/drop_amount = 3
/obj/structure/barricade/gmushroom/attackby(obj/item/I, mob/user)
if(istype(I,/obj/item/stack/sheet/mineral/gmushroom))
var/obj/item/stack/sheet/mineral/gmushroom/W = I
if(W.amount < 5)
to_chat(user, "<span class='warning'>You need at least five mushroom planks to make a wall!</span>")
return
else
to_chat(user, "<span class='notice'>You start adding [I] to [src]...</span>")
if(do_after(user, 50, target=src))
W.use(5)
new /turf/closed/wall/mineral/gmushroom/nonmetal(get_turf(src))
qdel(src)
return
return ..()
/obj/structure/barricade/gmushroom/make_debris()
new /obj/item/stack/sheet/mineral/gmushroom(get_turf(src), drop_amount)
/obj/structure/barricade/sandbags
name = "sandbags"
desc = "Bags of sand. Self explanatory."

View File

@@ -780,6 +780,8 @@ GLOBAL_LIST_INIT(shadoww_recipes, list ( \
new/datum/stack_recipe("Shadow wood floor tile", /obj/item/stack/tile/shadoww, 1, 4, 20), \
new/datum/stack_recipe("Shadow wood table frame", /obj/structure/table_frame/shadoww, 2, time = 10), \
null, \
new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/shadoww, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
null, \
))
/obj/item/stack/sheet/mineral/shadoww
@@ -810,6 +812,8 @@ GLOBAL_LIST_INIT(gmushroom_recipes, list ( \
new/datum/stack_recipe("Mushroom floor tile", /obj/item/stack/tile/gmushroom, 1, 4, 20), \
new/datum/stack_recipe("Mushroom table frame", /obj/structure/table_frame/gmushroom, 2, time = 10), \
null, \
new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/gmushroom, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
null, \
))
/obj/item/stack/sheet/mineral/gmushroom
@@ -840,6 +844,8 @@ GLOBAL_LIST_INIT(plaswood_recipes, list ( \
new/datum/stack_recipe("Plaswood floor tile", /obj/item/stack/tile/plaswood, 1, 4, 20), \
new/datum/stack_recipe("Plaswood table frame", /obj/structure/table_frame/plaswood, 2, time = 10), \
null, \
new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/plaswood, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
null, \
))
/obj/item/stack/sheet/mineral/plaswood

View File

@@ -282,6 +282,33 @@
walltype = /turf/closed/wall/mineral/wood
canSmoothWith = list(/obj/structure/falsewall/wood, /turf/closed/wall/mineral/wood)
/obj/structure/falsewall/gmushroom
name = "mushroom wall"
desc = "A wall with mushroom plating."
icon = 'icons/turf/walls/gmushroom_wall.dmi'
icon_state = "gmushroom"
mineral = /obj/item/stack/sheet/mineral/gmushroom
walltype = /turf/closed/wall/mineral/gmushroom
canSmoothWith = list(/obj/structure/falsewall/gmushroom, /turf/closed/wall/mineral/gmushroom)
/obj/structure/falsewall/plaswood
name = "plaswood wall"
desc = "A wall with plaswood plating."
icon = 'icons/turf/walls/plaswood_wall.dmi'
icon_state = "plaswood"
mineral = /obj/item/stack/sheet/mineral/plaswood
walltype = /turf/closed/wall/mineral/plaswood
canSmoothWith = list(/obj/structure/falsewall/plaswood, /turf/closed/wall/mineral/plaswood)
/obj/structure/falsewall/shadoww
name = "shadow wall"
desc = "A wall with shadow wood plating."
icon = 'icons/turf/walls/shadoww_wall.dmi'
icon_state = "shadoww"
mineral = /obj/item/stack/sheet/mineral/shadoww
walltype = /turf/closed/wall/mineral/shadoww
canSmoothWith = list(/obj/structure/falsewall/shadoww, /turf/closed/wall/mineral/shadoww)
/obj/structure/falsewall/iron
name = "rough metal wall"
desc = "A wall with rough metal plating."

View File

@@ -148,6 +148,8 @@
var/toConstruct // stores the table variant
if(istype(I, /obj/item/stack/sheet/mineral/plaswood))
toConstruct = /obj/structure/table/plaswood
else if(istype(I, /obj/item/stack/tile/carpet))
toConstruct = /obj/structure/table/plaswood/plaswoodpoker
if (toConstruct)
if(material.get_amount() < 1)
@@ -177,6 +179,8 @@
var/toConstruct // stores the table variant
if(istype(I, /obj/item/stack/sheet/mineral/gmushroom))
toConstruct = /obj/structure/table/gmushroom
else if(istype(I, /obj/item/stack/tile/carpet))
toConstruct = /obj/structure/table/gmushroom/gmushroompoker
if (toConstruct)
if(material.get_amount() < 1)
@@ -206,6 +210,8 @@
var/toConstruct // stores the table variant
if(istype(I, /obj/item/stack/sheet/mineral/shadoww))
toConstruct = /obj/structure/table/shadoww
else if(istype(I, /obj/item/stack/tile/carpet))
toConstruct = /obj/structure/table/shadoww/shadowwpoker
if (toConstruct)
if(material.get_amount() < 1)

View File

@@ -326,13 +326,22 @@
name = "Shadow wood table"
desc = "Do not apply fire to this. Rumour says it burns easily."
icon = 'icons/obj/smooth_structures/shadoww_table.dmi'
icon_state = "wood_table"
icon_state = "shadoww_table"
frame = /obj/structure/table_frame/shadoww
framestack = /obj/item/stack/sheet/mineral/shadoww
buildstack = /obj/item/stack/sheet/mineral/shadoww
resistance_flags = FLAMMABLE
max_integrity = 70
canSmoothWith = null
canSmoothWith = list(/obj/structure/table/shadoww,
/obj/structure/table/shadoww/shadowwpoker)
/obj/structure/table/shadoww/shadowwpoker
name = "gambling table"
desc = "A seedy table for seedy dealings in seedy places."
icon = 'icons/obj/smooth_structures/shadowwpoker_table.dmi'
icon_state = "shadowwpoker_table"
frame = /obj/structure/table_frame/shadoww
buildstack = /obj/item/stack/tile/carpet
/*
* Plaswood tables
@@ -342,15 +351,24 @@
name = "plaswood table"
desc = "An strong and grey wooden table."
icon = 'icons/obj/smooth_structures/plaswood_table.dmi'
icon_state = "wood_table"
frame = /obj/structure/table_frame/wood
icon_state = "plaswood_table"
frame = /obj/structure/table_frame/plaswood
framestack = /obj/item/stack/sheet/mineral/plaswood
buildstack = /obj/item/stack/sheet/mineral/plaswood
resistance_flags = FLAMMABLE
max_integrity = 200
integrity_failure = 50
armor = list("melee" = 10, "bullet" = 30, "laser" = 30, "energy" = 100, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 70)
canSmoothWith = null
canSmoothWith = list(/obj/structure/table/plaswood,
/obj/structure/table/plaswood/plaswoodpoker)
/obj/structure/table/plaswood/plaswoodpoker
name = "gambling table"
desc = "A seedy table for seedy dealings in seedy places."
icon = 'icons/obj/smooth_structures/plaswoodpoker_table.dmi'
icon_state = "plaswoodpoker_table"
frame = /obj/structure/table_frame/plaswood
buildstack = /obj/item/stack/tile/carpet
/*
* Mushroom tables
@@ -366,7 +384,16 @@
buildstack = /obj/item/stack/sheet/mineral/gmushroom
resistance_flags = FIRE_PROOF
max_integrity = 70
canSmoothWith = null
canSmoothWith = list(/obj/structure/table/gmushroom,
/obj/structure/table/gmushroom/gmushroompoker)
/obj/structure/table/gmushroom/gmushroompoker
name = "gambling table"
desc = "A seedy table for seedy dealings in seedy places."
icon = 'icons/obj/smooth_structures/gmushroompoker_table.dmi'
icon_state = "gmushroompoker_table"
frame = /obj/structure/table_frame/gmushroom
buildstack = /obj/item/stack/tile/carpet
/*
* Wooden tables

View File

@@ -149,6 +149,84 @@
hardness = 50
canSmoothWith = list(/turf/closed/wall/mineral/wood, /obj/structure/falsewall/wood, /turf/closed/wall/mineral/wood/nonmetal)
/turf/closed/wall/mineral/gmushroom
name = "mushroom wall"
desc = "A wall with mushroom plating."
icon = 'icons/turf/walls/gmushroom_wall.dmi'
icon_state = "gmushroom"
sheet_type = /obj/item/stack/sheet/mineral/gmushroom
hardness = 70
explosion_block = 0
canSmoothWith = list(/turf/closed/wall/mineral/gmushroom, /obj/structure/falsewall/gmushroom, /turf/closed/wall/mineral/gmushroom/nonmetal)
/turf/closed/wall/mineral/gmushroom/attackby(obj/item/W, mob/user)
if(W.sharpness && W.force)
var/duration = (48/W.force) * 2 //In seconds, for now.
if(istype(W, /obj/item/hatchet) || istype(W, /obj/item/twohanded/fireaxe))
duration /= 4 //Much better with hatchets and axes.
if(do_after(user, duration*10, target=src)) //Into deciseconds.
dismantle_wall(FALSE,FALSE)
return
return ..()
/turf/closed/wall/mineral/gmushroom/nonmetal
desc = "A solidly mushroom wall. It's a bit weaker than a wall made with metal."
girder_type = /obj/structure/barricade/gmushroom
hardness = 50
canSmoothWith = list(/turf/closed/wall/mineral/gmushroom, /obj/structure/falsewall/gmushroom, /turf/closed/wall/mineral/gmushroom/nonmetal)
/turf/closed/wall/mineral/plaswood
name = "plaswood wall"
desc = "A wall with plaswood plating."
icon = 'icons/turf/walls/plaswood_wall.dmi'
icon_state = "plaswood"
sheet_type = /obj/item/stack/sheet/mineral/plaswood
hardness = 90
explosion_block = 35
canSmoothWith = list(/turf/closed/wall/mineral/plaswood, /obj/structure/falsewall/plaswood, /turf/closed/wall/mineral/plaswood/nonmetal)
/turf/closed/wall/mineral/plaswood/attackby(obj/item/W, mob/user)
if(W.sharpness && W.force)
var/duration = (48/W.force) * 2 //In seconds, for now.
if(istype(W, /obj/item/hatchet) || istype(W, /obj/item/twohanded/fireaxe))
duration /= 4 //Much better with hatchets and axes.
if(do_after(user, duration*10, target=src)) //Into deciseconds.
dismantle_wall(FALSE,FALSE)
return
return ..()
/turf/closed/wall/mineral/plaswood/nonmetal
desc = "A solidly plaswood wall. It's a bit weaker than a wall made with metal."
girder_type = /obj/structure/barricade/plaswood
hardness = 70
canSmoothWith = list(/turf/closed/wall/mineral/plaswood, /obj/structure/falsewall/plaswood, /turf/closed/wall/mineral/plaswood/nonmetal)
/turf/closed/wall/mineral/shadoww
name = "shadow wall"
desc = "A wall with shadow wood plating."
icon = 'icons/turf/walls/shadoww_wall.dmi'
icon_state = "shadoww"
sheet_type = /obj/item/stack/sheet/mineral/shadoww
hardness = 70
explosion_block = 0
canSmoothWith = list(/turf/closed/wall/mineral/shadoww, /obj/structure/falsewall/shadoww, /turf/closed/wall/mineral/shadoww/nonmetal)
/turf/closed/wall/mineral/shadoww/attackby(obj/item/W, mob/user)
if(W.sharpness && W.force)
var/duration = (48/W.force) * 2 //In seconds, for now.
if(istype(W, /obj/item/hatchet) || istype(W, /obj/item/twohanded/fireaxe))
duration /= 4 //Much better with hatchets and axes.
if(do_after(user, duration*10, target=src)) //Into deciseconds.
dismantle_wall(FALSE,FALSE)
return
return ..()
/turf/closed/wall/mineral/shadoww/nonmetal
desc = "A solidly shadow wall. It's a bit weaker than a wall made with metal."
girder_type = /obj/structure/barricade/shadoww
hardness = 50
canSmoothWith = list(/turf/closed/wall/mineral/shadoww, /obj/structure/falsewall/shadoww, /turf/closed/wall/mineral/shadoww/nonmetal)
/turf/closed/wall/mineral/iron
name = "rough metal wall"
desc = "A wall with rough metal plating."

View File

@@ -68,5 +68,19 @@ datum/bounty/item/mining/plaswood
name = "Plaswood Planks"
description = "Central Command's carpentry department needs more exotic wood, send us some plaswood planks!"
reward = 5500
required_count = 50
required_count = 100
wanted_types = list(/obj/item/stack/sheet/mineral/plaswood)
datum/bounty/item/mining/gmushroom
name = "Mushroom Planks"
description = "Central Command's carpentry department needs more exotic 'wood', send us some mushroom planks!"
reward = 1100
required_count = 100
wanted_types = list(/obj/item/stack/sheet/mineral/gmushroom)
datum/bounty/item/mining/shadoww
name = "Shadow Planks"
description = "Central Command's carpentry department needs more exotic wood, send us some shadow planks!"
reward = 900
required_count = 100
wanted_types = list(/obj/item/stack/sheet/mineral/shadoww)

Binary file not shown.

After

Width:  |  Height:  |  Size: 796 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 794 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 KiB

After

Width:  |  Height:  |  Size: 165 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB