/turf/closed/wall/mineral/cult name = "runed metal wall" desc = "A cold metal wall engraved with indecipherable symbols. Studying them causes your head to pound." icon = 'icons/turf/walls/cult_wall.dmi' icon_state = "cult" walltype = "cult" builtin_sheet = null canSmoothWith = null /turf/closed/wall/mineral/cult/New() PoolOrNew(/obj/effect/overlay/temp/cult/turf, src) ..() /turf/closed/wall/mineral/cult/break_wall() new/obj/item/stack/sheet/runed_metal(get_turf(src), 1) return (new /obj/structure/girder/cult(src)) /turf/closed/wall/mineral/cult/devastate_wall() new/obj/item/stack/sheet/runed_metal(get_turf(src), 1) /turf/closed/wall/mineral/cult/narsie_act() return /turf/closed/wall/mineral/cult/ratvar_act() ..() if(istype(src, /turf/closed/wall/mineral/cult)) //if we haven't changed type var/previouscolor = color color = "#FAE48C" animate(src, color = previouscolor, time = 8) /turf/closed/wall/mineral/cult/artificer name = "runed stone wall" desc = "A cold stone wall engraved with indecipherable symbols. Studying them causes your head to pound." /turf/closed/wall/mineral/cult/artificer/break_wall() PoolOrNew(/obj/effect/overlay/temp/cult/turf, get_turf(src)) return null //excuse me we want no runed metal here /turf/closed/wall/mineral/cult/artificer/devastate_wall() PoolOrNew(/obj/effect/overlay/temp/cult/turf, get_turf(src)) //Clockwork wall: Causes nearby tinkerer's caches to generate components. /turf/closed/wall/clockwork name = "clockwork wall" desc = "A huge chunk of warm metal. The clanging of machinery emanates from within." icon = 'icons/turf/walls/clockwork_wall.dmi' icon_state = "clockwork_wall" canSmoothWith = list(/turf/closed/wall/clockwork) smooth = SMOOTH_MORE explosion_block = 2 /turf/closed/wall/clockwork/New() ..() PoolOrNew(/obj/effect/overlay/temp/ratvar/wall, src) PoolOrNew(/obj/effect/overlay/temp/ratvar/beam, src) clockwork_construction_value += 5 /turf/closed/wall/clockwork/Destroy() clockwork_construction_value -= 5 ..() /turf/closed/wall/clockwork/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = I if(!WT.isOn()) return 0 user.visible_message("[user] begins slowly breaking down [src]...", "You begin painstakingly destroying [src]...") if(!do_after(user, 120 / WT.toolspeed, target = src)) return 0 if(!WT.remove_fuel(1, user)) return 0 user.visible_message("[user] breaks apart [src]!", "You break apart [src]!") dismantle_wall() return 1 return ..() /turf/closed/wall/clockwork/ratvar_act() return 0 /turf/closed/wall/clockwork/narsie_act() ..() if(istype(src, /turf/closed/wall/clockwork)) //if we haven't changed type var/previouscolor = color color = "#960000" animate(src, color = previouscolor, time = 8) /turf/closed/wall/clockwork/dismantle_wall(devastated=0, explode=0) if(devastated) devastate_wall() ChangeTurf(/turf/open/floor/plating) else playsound(src, 'sound/items/Welder.ogg', 100, 1) var/newgirder = break_wall() if(newgirder) //maybe we want a gear! transfer_fingerprints_to(newgirder) ChangeTurf(/turf/open/floor/clockwork) for(var/obj/O in src) //Eject contents! if(istype(O,/obj/structure/sign/poster)) var/obj/structure/sign/poster/P = O P.roll_and_drop(src) else O.loc = src /turf/closed/wall/clockwork/break_wall() return new/obj/structure/clockwork/wall_gear(src) /turf/closed/wall/clockwork/devastate_wall() new/obj/item/clockwork/alloy_shards(src) /turf/closed/wall/vault icon = 'icons/turf/walls.dmi' icon_state = "rockvault" /turf/closed/wall/ice icon = 'icons/turf/walls/icedmetal_wall.dmi' icon_state = "iced" desc = "A wall covered in a thick sheet of ice." walltype = "iced" canSmoothWith = null hardness = 35 slicing_duration = 150 //welding through the ice+metal /turf/closed/wall/rust name = "rusted wall" desc = "A rusted metal wall." icon = 'icons/turf/walls/rusty_wall.dmi' icon_state = "arust" walltype = "arust" hardness = 45 /turf/closed/wall/r_wall/rust name = "rusted reinforced wall" desc = "A huge chunk of rusted reinforced metal." icon = 'icons/turf/walls/rusty_reinforced_wall.dmi' icon_state = "rrust" walltype = "rrust" hardness = 15 /turf/closed/wall/shuttle name = "wall" icon = 'icons/turf/shuttle.dmi' icon_state = "wall" walltype = "shuttle" smooth = SMOOTH_FALSE /turf/closed/wall/shuttle/proc/update_icon() ..() /turf/closed/wall/shuttle/smooth name = "wall" icon = 'icons/turf/walls/shuttle_wall.dmi' icon_state = "shuttle" walltype = "shuttle" smooth = SMOOTH_MORE|SMOOTH_DIAGONAL canSmoothWith = list(/turf/closed/wall/shuttle/smooth, /obj/structure/window/shuttle, /obj/structure/shuttle/engine) /turf/closed/wall/shuttle/smooth/nodiagonal smooth = SMOOTH_MORE icon_state = "shuttle_nd" /turf/closed/wall/shuttle/smooth/overspace icon_state = "overspace" fixed_underlay = list("space"=1) //sub-type to be used for interior shuttle walls //won't get an underlay of the destination turf on shuttle move /turf/closed/wall/shuttle/interior/copyTurf(turf/T) if(T.type != type) T.ChangeTurf(type) if(underlays.len) T.underlays = underlays if(T.icon_state != icon_state) T.icon_state = icon_state if(T.icon != icon) T.icon = icon if(T.color != color) T.color = color if(T.dir != dir) T.setDir(dir) T.transform = transform return T /turf/closed/wall/shuttle/copyTurf(turf/T) . = ..() T.transform = transform //why don't shuttle walls habe smoothwall? now i gotta do rotation the dirty way <- DOUBLE GOOFBALL FOR NOT CALLING PARENT /turf/closed/wall/shuttle/shuttleRotate(rotation) if(smooth) return ..() var/matrix/M = transform M.Turn(rotation) transform = M