Buffs the Pirate Ship to be bomb proof
Title, also makes a few computers/machines indestructible and buffs turret health. It also allows turrets to be repairable now.
This commit is contained in:
@@ -89,7 +89,7 @@
|
||||
/turf/open/floor/pod/dark,
|
||||
/area/shuttle/pirate)
|
||||
"aj" = (
|
||||
/turf/closed/wall/mineral/plastitanium/nodiagonal,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/nodiagonal,
|
||||
/area/shuttle/pirate)
|
||||
"ak" = (
|
||||
/obj/machinery/airalarm/all_access{
|
||||
@@ -469,7 +469,7 @@
|
||||
icon_state = "standard_lethal";
|
||||
mode = 1
|
||||
},
|
||||
/turf/closed/wall/mineral/plastitanium/nodiagonal,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/nodiagonal,
|
||||
/area/shuttle/pirate)
|
||||
"aR" = (
|
||||
/obj/machinery/porta_turret/syndicate/energy{
|
||||
@@ -477,7 +477,7 @@
|
||||
icon_state = "standard_lethal";
|
||||
mode = 1
|
||||
},
|
||||
/turf/closed/wall/mineral/plastitanium,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate,
|
||||
/area/shuttle/pirate)
|
||||
"aS" = (
|
||||
/obj/effect/turf_decal/stripes/line,
|
||||
@@ -486,7 +486,7 @@
|
||||
/area/shuttle/pirate)
|
||||
"aU" = (
|
||||
/obj/structure/sign/departments/engineering,
|
||||
/turf/closed/wall/mineral/plastitanium/nodiagonal,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/nodiagonal,
|
||||
/area/shuttle/pirate)
|
||||
"aV" = (
|
||||
/obj/effect/mob_spawn/human/pirate{
|
||||
@@ -897,7 +897,7 @@
|
||||
icon_state = "standard_lethal";
|
||||
mode = 1
|
||||
},
|
||||
/turf/closed/wall/mineral/plastitanium,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate,
|
||||
/area/shuttle/pirate)
|
||||
"dy" = (
|
||||
/obj/structure/chair/wood/normal,
|
||||
@@ -948,7 +948,8 @@
|
||||
/turf/open/floor/pod/light,
|
||||
/area/shuttle/pirate)
|
||||
"ep" = (
|
||||
/obj/structure/window/reinforced{
|
||||
/obj/structure/window/plastitaniumpirate{
|
||||
//obj/structure/window/reinforced{
|
||||
dir = 1;
|
||||
pixel_y = 1
|
||||
},
|
||||
@@ -978,7 +979,8 @@
|
||||
/turf/open/floor/plating/airless,
|
||||
/area/shuttle/pirate)
|
||||
"ex" = (
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/structure/window/plastitaniumpirate
|
||||
//obj/structure/window/reinforced,
|
||||
/obj/structure/frame/machine,
|
||||
/obj/item/wrench,
|
||||
/turf/open/floor/plating/airless,
|
||||
@@ -988,17 +990,19 @@
|
||||
id = "piratebridge"
|
||||
},
|
||||
/obj/structure/grille,
|
||||
/obj/structure/window/plastitanium,
|
||||
/obj/structure/window/plastitaniumpirate,
|
||||
/turf/open/floor/plating,
|
||||
/area/shuttle/pirate)
|
||||
"ez" = (
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/structure/window/plastitaniumpirate
|
||||
//obj/structure/window/reinforced,
|
||||
/obj/structure/frame/machine,
|
||||
/obj/item/stack/cable_coil/cut/red,
|
||||
/turf/open/floor/plating/airless,
|
||||
/area/shuttle/pirate)
|
||||
"eA" = (
|
||||
/obj/structure/window/reinforced{
|
||||
/obj/structure/window/plastitaniumpirate
|
||||
//obj/structure/window/reinforced{
|
||||
dir = 1;
|
||||
pixel_y = 1
|
||||
},
|
||||
@@ -1016,7 +1020,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/shuttle/pirate)
|
||||
"fW" = (
|
||||
/turf/closed/wall/mineral/plastitanium,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate,
|
||||
/area/shuttle/pirate)
|
||||
"fY" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
|
||||
@@ -1090,7 +1094,7 @@
|
||||
icon_state = "standard_lethal";
|
||||
mode = 1
|
||||
},
|
||||
/turf/closed/wall/mineral/plastitanium,
|
||||
/turf/closed/wall/mineral/plastitaniumpirate,
|
||||
/area/shuttle/pirate)
|
||||
"yi" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
|
||||
|
||||
@@ -348,6 +348,22 @@
|
||||
spark_system.start() //creates some sparks because they look cool
|
||||
qdel(cover) //deletes the cover - no need on keeping it there!
|
||||
|
||||
//turret healing
|
||||
/obj/machinery/porta_turret/attackby(obj/item/I, mob/living/user, params)
|
||||
if(istype(I, /obj/item/weldingtool) && user.a_intent == INTENT_HELP)
|
||||
if(obj_integrity < max_integrity)
|
||||
if(!I.tool_start_check(user, amount=0))
|
||||
return
|
||||
user.visible_message("[user] is welding the turret.", \
|
||||
"<span class='notice'>You begin repairing the turret...</span>", \
|
||||
"<span class='italics'>You hear welding.</span>")
|
||||
if(I.use_tool(src, user, 40, volume=50))
|
||||
obj_integrity = max_integrity
|
||||
user.visible_message("[user.name] has repaired [src].", \
|
||||
"<span class='notice'>You finish repairing the turret.</span>")
|
||||
else
|
||||
to_chat(user, "<span class='notice'>The turret doesn't need repairing.</span>")
|
||||
return
|
||||
|
||||
|
||||
/obj/machinery/porta_turret/process()
|
||||
@@ -670,7 +686,11 @@
|
||||
nonlethal_projectile_sound = 'sound/weapons/taser2.ogg'
|
||||
lethal_projectile = /obj/item/projectile/beam/laser
|
||||
lethal_projectile_sound = 'sound/weapons/laser.ogg'
|
||||
desc = "An energy blaster auto-turret."
|
||||
desc = "An energy blaster auto-turret. Use a welder to fix."
|
||||
explosion_block = 50
|
||||
max_integrity = 350
|
||||
integrity_failure = 20
|
||||
|
||||
|
||||
/obj/machinery/porta_turret/syndicate/energy/heavy
|
||||
icon_state = "standard_stun"
|
||||
|
||||
@@ -163,6 +163,13 @@ again.
|
||||
icon_state = "plastitaniumwindow_spawner"
|
||||
spawn_list = list(/obj/structure/grille, /obj/structure/window/plastitanium)
|
||||
|
||||
//plastitaniumpirate window
|
||||
|
||||
/obj/effect/spawner/structure/window/plastitaniumpirate
|
||||
name = "plastitanium window spawner"
|
||||
icon_state = "plastitaniumwindow_spawner"
|
||||
explosion_block = 50
|
||||
spawn_list = list(/obj/structure/grille, /obj/structure/window/plastitaniumpirate)
|
||||
|
||||
//ice window
|
||||
|
||||
|
||||
@@ -595,6 +595,30 @@
|
||||
/obj/structure/window/plastitanium/unanchored
|
||||
anchored = FALSE
|
||||
|
||||
//pirate ship windows
|
||||
/obj/structure/window/plastitaniumpirate
|
||||
name = "plastitanium window"
|
||||
desc = "Yarr this window be explosion proof!"
|
||||
icon = 'icons/obj/smooth_structures/plastitanium_window.dmi'
|
||||
icon_state = "plastitanium_window"
|
||||
dir = FULLTILE_WINDOW_DIR
|
||||
max_integrity = 100
|
||||
wtype = "shuttle"
|
||||
fulltile = TRUE
|
||||
flags_1 = PREVENT_CLICK_UNDER_1
|
||||
reinf = TRUE
|
||||
heat_resistance = 1600
|
||||
armor = list("melee" = 50, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 50, "bio" = 100, "rad" = 100, "fire" = 80, "acid" = 100)
|
||||
smooth = SMOOTH_TRUE
|
||||
canSmoothWith = null
|
||||
explosion_block = 50
|
||||
level = 3
|
||||
glass_type = /obj/item/stack/sheet/plastitaniumglass
|
||||
glass_amount = 2
|
||||
|
||||
/obj/structure/window/plastitaniumpirate/unanchored
|
||||
anchored = FALSE
|
||||
|
||||
/obj/structure/window/reinforced/clockwork
|
||||
name = "brass window"
|
||||
desc = "A paper-thin pane of translucent yet reinforced brass."
|
||||
|
||||
@@ -303,3 +303,64 @@
|
||||
/turf/closed/wall/mineral/plastitanium/copyTurf(turf/T)
|
||||
. = ..()
|
||||
T.transform = transform
|
||||
|
||||
/////////////////////Pirate Plastitanium walls/////////////////////
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate
|
||||
name = "wall"
|
||||
desc = "Yarr just try to blow this to smithereens!"
|
||||
icon = 'icons/turf/walls/plastitanium_wall.dmi'
|
||||
icon_state = "map-shuttle"
|
||||
explosion_block = 50
|
||||
sheet_type = /obj/item/stack/sheet/mineral/plastitanium
|
||||
smooth = SMOOTH_MORE|SMOOTH_DIAGONAL
|
||||
canSmoothWith = list(/turf/closed/wall/mineral/plastitaniumpirate, /obj/machinery/door/airlock/shuttle, /obj/machinery/door/airlock, /obj/structure/window/plastitaniumpirate, /obj/structure/shuttle/engine, /obj/structure/falsewall/plastitanium)
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/nodiagonal
|
||||
smooth = SMOOTH_MORE
|
||||
icon_state = "map-shuttle_nd"
|
||||
explosion_block = 50
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/nosmooth
|
||||
icon = 'icons/turf/shuttle.dmi'
|
||||
icon_state = "wall"
|
||||
smooth = SMOOTH_FALSE
|
||||
explosion_block = 50
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/overspace
|
||||
icon_state = "map-overspace"
|
||||
fixed_underlay = list("space"=1)
|
||||
explosion_block = 50
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/explosive/ex_act(severity)
|
||||
var/datum/explosion/acted_explosion = null
|
||||
for(var/datum/explosion/E in GLOB.explosions)
|
||||
if(E.explosion_id == explosion_id)
|
||||
acted_explosion = E
|
||||
break
|
||||
if(acted_explosion && istype(acted_explosion.explosion_source, /obj/item/bombcore))
|
||||
var/obj/item/bombcore/large/bombcore = new(get_turf(src))
|
||||
bombcore.detonate()
|
||||
..()
|
||||
|
||||
//have to copypaste this code
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/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(color)
|
||||
T.atom_colours = atom_colours.Copy()
|
||||
T.update_atom_colour()
|
||||
if(T.dir != dir)
|
||||
T.setDir(dir)
|
||||
T.transform = transform
|
||||
return T
|
||||
|
||||
/turf/closed/wall/mineral/plastitaniumpirate/copyTurf(turf/T)
|
||||
. = ..()
|
||||
T.transform = transform
|
||||
@@ -177,6 +177,7 @@
|
||||
shuttleId = "pirateship"
|
||||
icon_screen = "syndishuttle"
|
||||
icon_keyboard = "syndie_key"
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
light_color = LIGHT_COLOR_RED
|
||||
possible_destinations = "pirateship_away;pirateship_home;pirateship_custom"
|
||||
|
||||
@@ -184,6 +185,7 @@
|
||||
name = "pirate shuttle navigation computer"
|
||||
desc = "Used to designate a precise transit location for the pirate shuttle."
|
||||
shuttleId = "pirateship"
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
lock_override = CAMERA_LOCK_STATION
|
||||
shuttlePortId = "pirateship_custom"
|
||||
x_offset = 9
|
||||
@@ -226,6 +228,7 @@
|
||||
desc = "This sophisticated machine scans the nearby space for items of value."
|
||||
icon = 'icons/obj/machines/research.dmi'
|
||||
icon_state = "tdoppler"
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
density = TRUE
|
||||
var/cooldown = 300
|
||||
var/next_use = 0
|
||||
@@ -259,6 +262,7 @@
|
||||
name = "cargo hold pad"
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "lpad-idle-o"
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
var/idle_state = "lpad-idle-o"
|
||||
var/warmup_state = "lpad-idle"
|
||||
var/sending_state = "lpad-beam"
|
||||
@@ -272,6 +276,7 @@
|
||||
|
||||
/obj/machinery/computer/piratepad_control
|
||||
name = "cargo hold control terminal"
|
||||
resistance_flags = INDESTRUCTIBLE
|
||||
var/status_report = "Idle"
|
||||
var/obj/machinery/piratepad/pad
|
||||
var/warmup_time = 100
|
||||
|
||||
Reference in New Issue
Block a user