/turf/closed/wall/r_wall name = "reinforced wall" desc = "A huge chunk of reinforced metal used to separate rooms." icon = 'icons/turf/walls/reinforced_wall.dmi' icon_state = "r_wall" opacity = 1 density = TRUE var/d_state = INTACT hardness = 10 sheet_type = /obj/item/stack/sheet/plasteel sheet_amount = 1 girder_type = /obj/structure/girder/reinforced explosion_block = 2 rad_insulation = RAD_HEAVY_INSULATION /turf/closed/wall/r_wall/deconstruction_hints(mob/user) switch(d_state) if(INTACT) return "The outer grille is fully intact." if(SUPPORT_LINES) return "The outer grille has been cut, and the support lines are screwed securely to the outer cover." if(COVER) return "The support lines have been unscrewed, and the metal cover is welded firmly in place." if(CUT_COVER) return "The metal cover has been sliced through, and is connected loosely to the girder." if(ANCHOR_BOLTS) return "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place." if(SUPPORT_RODS) return "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder." if(SHEATH) return "The support rods have been sliced through, and the outer sheath is connected loosely to the girder." /turf/closed/wall/r_wall/devastate_wall() new sheet_type(src, sheet_amount) new /obj/item/stack/sheet/metal(src, 2) /turf/closed/wall/r_wall/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) if(!M.environment_smash) return if(M.environment_smash & ENVIRONMENT_SMASH_RWALLS) dismantle_wall(1) playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1) else playsound(src, 'sound/effects/bang.ogg', 50, 1) to_chat(M, "This wall is far too strong for you to destroy.") /turf/closed/wall/r_wall/try_destroy(obj/item/I, mob/user, turf/T) if(istype(I, /obj/item/pickaxe/drill/jackhammer)) to_chat(user, "You begin to smash though [src]...") if(do_after(user, 150, target = src)) if(!istype(src, /turf/closed/wall/r_wall)) return TRUE I.play_tool_sound(src) visible_message("[user] smashes through [src] with [I]!", "You hear the grinding of metal.") dismantle_wall() return TRUE return FALSE /turf/closed/wall/r_wall/try_decon(obj/item/W, mob/user, turf/T) //DECONSTRUCTION switch(d_state) if(INTACT) if(istype(W, /obj/item/wirecutters)) W.play_tool_sound(src, 100) d_state = SUPPORT_LINES update_icon() to_chat(user, "You cut the outer grille.") return 1 if(SUPPORT_LINES) if(istype(W, /obj/item/screwdriver)) to_chat(user, "You begin unsecuring the support lines...") if(W.use_tool(src, user, 40, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != SUPPORT_LINES) return 1 d_state = COVER update_icon() to_chat(user, "You unsecure the support lines.") return 1 else if(istype(W, /obj/item/wirecutters)) W.play_tool_sound(src, 100) d_state = INTACT update_icon() to_chat(user, "You repair the outer grille.") return 1 if(COVER) if(istype(W, /obj/item/weldingtool) || istype(W, /obj/item/gun/energy/plasmacutter)) if(!W.tool_start_check(user, amount=0)) return to_chat(user, "You begin slicing through the metal cover...") if(W.use_tool(src, user, 60, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != COVER) return 1 d_state = CUT_COVER update_icon() to_chat(user, "You press firmly on the cover, dislodging it.") return 1 if(istype(W, /obj/item/screwdriver)) to_chat(user, "You begin securing the support lines...") if(W.use_tool(src, user, 40, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != COVER) return 1 d_state = SUPPORT_LINES update_icon() to_chat(user, "The support lines have been secured.") return 1 if(CUT_COVER) if(istype(W, /obj/item/crowbar)) to_chat(user, "You struggle to pry off the cover...") if(W.use_tool(src, user, 100, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != CUT_COVER) return 1 d_state = ANCHOR_BOLTS update_icon() to_chat(user, "You pry off the cover.") return 1 if(istype(W, /obj/item/weldingtool)) if(!W.tool_start_check(user, amount=0)) return to_chat(user, "You begin welding the metal cover back to the frame...") if(W.use_tool(src, user, 60, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != CUT_COVER) return TRUE d_state = COVER update_icon() to_chat(user, "The metal cover has been welded securely to the frame.") return 1 if(ANCHOR_BOLTS) if(istype(W, /obj/item/wrench)) to_chat(user, "You start loosening the anchoring bolts which secure the support rods to their frame...") if(W.use_tool(src, user, 40, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != ANCHOR_BOLTS) return 1 d_state = SUPPORT_RODS update_icon() to_chat(user, "You remove the bolts anchoring the support rods.") return 1 if(istype(W, /obj/item/crowbar)) to_chat(user, "You start to pry the cover back into place...") if(W.use_tool(src, user, 20, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != ANCHOR_BOLTS) return 1 d_state = CUT_COVER update_icon() to_chat(user, "The metal cover has been pried back into place.") return 1 if(SUPPORT_RODS) if(istype(W, /obj/item/weldingtool) || istype(W, /obj/item/gun/energy/plasmacutter)) if(!W.tool_start_check(user, amount=0)) return to_chat(user, "You begin slicing through the support rods...") if(W.use_tool(src, user, 100, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != SUPPORT_RODS) return 1 d_state = SHEATH update_icon() to_chat(user, "You slice through the support rods.") return 1 if(istype(W, /obj/item/wrench)) to_chat(user, "You start tightening the bolts which secure the support rods to their frame...") W.play_tool_sound(src, 100) if(W.use_tool(src, user, 40)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != SUPPORT_RODS) return 1 d_state = ANCHOR_BOLTS update_icon() to_chat(user, "You tighten the bolts anchoring the support rods.") return 1 if(SHEATH) if(istype(W, /obj/item/crowbar)) to_chat(user, "You struggle to pry off the outer sheath...") if(W.use_tool(src, user, 100, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != SHEATH) return 1 to_chat(user, "You pry off the outer sheath.") dismantle_wall() return 1 if(istype(W, /obj/item/weldingtool)) if(!W.tool_start_check(user, amount=0)) return to_chat(user, "You begin welding the support rods back together...") if(W.use_tool(src, user, 100, volume=100)) if(!istype(src, /turf/closed/wall/r_wall) || d_state != SHEATH) return TRUE d_state = SUPPORT_RODS update_icon() to_chat(user, "You weld the support rods back together.") return 1 return 0 /turf/closed/wall/r_wall/proc/update_icon() if(d_state != INTACT) smooth = SMOOTH_FALSE clear_smooth_overlays() icon_state = "r_wall-[d_state]" else smooth = SMOOTH_TRUE queue_smooth_neighbors(src) queue_smooth(src) icon_state = "r_wall" /turf/closed/wall/r_wall/singularity_pull(S, current_size) ..() if(current_size >= STAGE_FIVE) if(prob(30)) dismantle_wall() /turf/closed/wall/r_wall/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) if(the_rcd.canRturf) return ..() /turf/closed/wall/r_wall/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode) if(the_rcd.canRturf) return ..() /turf/closed/wall/r_wall/syndicate name = "hull" desc = "The armored hull of an ominous looking ship." icon = 'icons/turf/walls/plastitanium_wall.dmi' icon_state = "map-shuttle" explosion_block = 20 sheet_type = /obj/item/stack/sheet/mineral/plastitanium smooth = SMOOTH_MORE|SMOOTH_DIAGONAL canSmoothWith = list(/turf/closed/wall/r_wall/syndicate, /turf/closed/wall/mineral/plastitanium, /obj/machinery/door/airlock/shuttle, /obj/machinery/door/airlock, /obj/structure/window/plastitanium, /obj/structure/shuttle/engine, /obj/structure/falsewall/plastitanium) /turf/closed/wall/r_wall/syndicate/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) return FALSE /turf/closed/wall/r_wall/syndicate/nodiagonal smooth = SMOOTH_MORE icon_state = "map-shuttle_nd" /turf/closed/wall/r_wall/syndicate/nosmooth icon = 'icons/turf/shuttle.dmi' icon_state = "wall" smooth = SMOOTH_FALSE /turf/closed/wall/r_wall/syndicate/overspace icon_state = "map-overspace" fixed_underlay = list("space"=1)