diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index fafb533cad1..073cd0df669 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -151,7 +151,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
/obj/item/water_act(volume, temperature, source, method = TOUCH)
. = ..()
- O.extinguish()
+ extinguish()
/obj/item/verb/move_to_top()
set name = "Move To Top"
diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm
index 2877f9f01d5..7a3e7c74328 100644
--- a/code/game/turfs/simulated/floor.dm
+++ b/code/game/turfs/simulated/floor.dm
@@ -120,30 +120,31 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3","
/turf/simulated/floor/proc/make_plating()
return ChangeTurf(/turf/simulated/floor/plating)
-/turf/simulated/floor/ChangeTurf(turf/simulated/floor/T, defer_change = FALSE, keep_icon = TRUE)
- if(!istype(src,/turf/simulated/floor)) return ..() //fucking turfs switch the fucking src of the fucking running procs
- if(!ispath(T,/turf/simulated/floor)) return ..()
- var/old_icon = icon_regular_floor
- var/old_plating = icon_plating
- var/old_dir = dir
+/turf/simulated/floor/ChangeTurf(turf/simulated/floor/T, defer_change = FALSE, ignore_air = FALSE)
+ if(!istype(src,/turf/simulated/floor))
+ return ..() //fucking turfs switch the fucking src of the fucking running procs
+ if(!ispath(T,/turf/simulated/floor))
+ return ..()
+
var/turf/simulated/floor/W = ..()
- if(keep_icon)
- W.icon_regular_floor = old_icon
- W.icon_plating = old_plating
- W.dir = old_dir
+
W.update_icon()
return W
/turf/simulated/floor/attackby(obj/item/C as obj, mob/user as mob, params)
if(!C || !user)
- return 1
+ return TRUE
+
if(..())
- return 1
+ return TRUE
+
if(intact && iscrowbar(C))
pry_tile(C, user)
- return 1
+ return TRUE
+
if(intact && istype(C, /obj/item/stack/tile))
try_replace_tile(C, user, params)
+
if(istype(C, /obj/item/pipe))
var/obj/item/pipe/P = C
if(P.pipe_type != -1) // ANY PIPE
@@ -152,6 +153,7 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3","
"You slide [P] along \the [src].", \
"You hear the scrape of metal against something.")
user.drop_item()
+
if(P.is_bent_pipe()) // bent pipe rotation fix see construction.dm
P.dir = 5
if(user.dir == 1)
@@ -161,13 +163,14 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3","
else if(user.dir == 4)
P.dir = 10
else
- P.dir = user.dir
+ P.setDir(user.dir)
+
P.x = src.x
P.y = src.y
P.z = src.z
- P.loc = src
- return 1
- return 0
+ P.forceMove(src)
+ return TRUE
+ return FALSE
/turf/simulated/floor/proc/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
if(T.turf_type == type)
diff --git a/code/game/turfs/simulated/floor/asteroid.dm b/code/game/turfs/simulated/floor/asteroid.dm
index 23e80d5e612..52dcf899894 100644
--- a/code/game/turfs/simulated/floor/asteroid.dm
+++ b/code/game/turfs/simulated/floor/asteroid.dm
@@ -18,6 +18,9 @@
if(prob(floor_variance))
icon_state = "[environment_type][rand(0,12)]"
+/turf/simulated/floor/plating/asteroid/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
+ return
+
/turf/simulated/floor/plating/asteroid/burn_tile()
return
@@ -58,14 +61,14 @@
gets_dug()
return
- if(istype(W,/obj/item/storage/bag/ore))
+ else if(istype(W,/obj/item/storage/bag/ore))
var/obj/item/storage/bag/ore/S = W
if(S.collection_mode == 1)
for(var/obj/item/stack/ore/O in src.contents)
O.attackby(W,user)
return
- if(istype(W, /obj/item/stack/tile))
+ else if(istype(W, /obj/item/stack/tile))
var/obj/item/stack/tile/Z = W
if(!Z.use(1))
return
diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm
index 6218b2a702d..a125f9ff543 100644
--- a/code/game/turfs/simulated/floor/plating.dm
+++ b/code/game/turfs/simulated/floor/plating.dm
@@ -25,16 +25,16 @@
/turf/simulated/floor/plating/attackby(obj/item/C, mob/user, params)
if(..())
- return 1
+ return TRUE
if(istype(C, /obj/item/stack/rods))
if(broken || burnt)
to_chat(user, "Repair the plating first!")
- return 1
+ return TRUE
var/obj/item/stack/rods/R = C
if(R.get_amount() < 2)
to_chat(user, "You need two rods to make a reinforced floor!")
- return 1
+ return TRUE
else
to_chat(user, "You begin reinforcing the floor...")
if(do_after(user, 30 * C.toolspeed, target = src))
@@ -43,7 +43,7 @@
playsound(src, C.usesound, 80, 1)
R.use(2)
to_chat(user, "You reinforce the floor.")
- return 1
+ return TRUE
else if(istype(C, /obj/item/stack/tile))
if(!broken && !burnt)
@@ -54,20 +54,20 @@
playsound(src, 'sound/weapons/genhit.ogg', 50, 1)
else
to_chat(user, "This section is too damaged to support a tile! Use a welder to fix the damage.")
- return 1
+ return TRUE
else if(istype(C, /obj/item/weldingtool))
var/obj/item/weldingtool/welder = C
- if( welder.isOn() && (broken || burnt) )
- if(welder.remove_fuel(0,user))
+ if(welder.isOn() && (broken || burnt))
+ if(welder.remove_fuel(0, user))
to_chat(user, "You fix some dents on the broken plating.")
playsound(src, welder.usesound, 80, 1)
overlays -= current_overlay
current_overlay = null
- burnt = 0
- broken = 0
+ burnt = FALSE
+ broken = FALSE
update_icon()
- return 1
+ return TRUE
/turf/simulated/floor/plating/airless
icon_state = "plating"
@@ -103,6 +103,9 @@
/turf/simulated/floor/engine/attack_hand(mob/user as mob)
user.Move_Pulled(src)
+/turf/simulated/floor/engine/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
+ return
+
/turf/simulated/floor/engine/attackby(obj/item/C as obj, mob/user as mob, params)
if(!C || !user)
return
@@ -115,6 +118,7 @@
new /obj/item/stack/rods(src, 2)
ChangeTurf(/turf/simulated/floor/plating)
return
+
if(istype(C, /obj/item/stack/sheet/plasteel) && !insulated) //Insulating the floor
to_chat(user, "You begin insulating [src]...")
if(do_after(user, 40, target = src) && !insulated) //You finish insulating the insulated insulated insulated insulated insulated insulated insulated insulated vacuum floor
@@ -220,6 +224,9 @@
/turf/simulated/floor/snow/ex_act(severity)
return
+/turf/simulated/floor/snow/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
+ return
+
/turf/simulated/floor/plating/metalfoam
name = "foamed metal plating"
icon_state = "metalfoam"
@@ -236,6 +243,9 @@
if(MFOAM_IRON)
icon_state = "ironfoam"
+/turf/simulated/floor/plating/metalfoam/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
+ return
+
/turf/simulated/floor/plating/metalfoam/attackby(var/obj/item/C, mob/user, params)
if(..())
return 1
@@ -277,3 +287,12 @@
/turf/simulated/floor/plating/abductor/New()
..()
icon_state = "alienpod[rand(1,9)]"
+
+/turf/simulated/floor/plating/abductor/break_tile()
+ return //unbreakable
+
+/turf/simulated/floor/plating/abductor/burn_tile()
+ return //unburnable
+
+/turf/simulated/floor/plating/abductor/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
+ return
diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm
index ad3e981154d..119f0b000d9 100644
--- a/code/game/turfs/simulated/minerals.dm
+++ b/code/game/turfs/simulated/minerals.dm
@@ -22,7 +22,7 @@
var/spreadChance = 0 //the percentual chance of an ore spreading to the neighbouring tiles
var/last_act = 0
var/scan_state = null //Holder for the image we display when we're pinged by a mining scanner
- var/defer_change = 0
+ var/defer_change = FALSE
/turf/simulated/mineral/New()
if (!canSmoothWith)
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 19090102611..1a8c0b4cb87 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -180,11 +180,11 @@
if(L)
qdel(L)
-/turf/proc/TerraformTurf(path, defer_change = FALSE, keep_icon = TRUE, ignore_air = FALSE)
- return ChangeTurf(path, defer_change, keep_icon, ignore_air)
+/turf/proc/TerraformTurf(path, defer_change = FALSE, ignore_air = FALSE)
+ return ChangeTurf(path, ignore_air)
//Creates a new turf
-/turf/proc/ChangeTurf(path, defer_change = FALSE, keep_icon = TRUE, ignore_air = FALSE)
+/turf/proc/ChangeTurf(path, defer_change = FALSE, ignore_air = FALSE)
if(!path)
return
if(!use_preloader && path == type) // Don't no-op if the map loader requires it to be reconstructed
@@ -209,7 +209,6 @@
if(!defer_change)
W.AfterChange(ignore_air)
-
W.blueprint_data = old_blueprint_data
recalc_atom_opacity()
diff --git a/code/modules/awaymissions/maploader/reader.dm b/code/modules/awaymissions/maploader/reader.dm
index 816007d4ff8..1505f731362 100644
--- a/code/modules/awaymissions/maploader/reader.dm
+++ b/code/modules/awaymissions/maploader/reader.dm
@@ -176,7 +176,7 @@ var/global/dmm_suite/preloader/_preloader = new
for(var/t in block(locate(bounds[MAP_MINX], bounds[MAP_MINY], bounds[MAP_MINZ]), locate(bounds[MAP_MAXX], bounds[MAP_MAXY], bounds[MAP_MAXZ])))
var/turf/T = t
//we do this after we load everything in. if we don't; we'll have weird atmos bugs regarding atmos adjacent turfs
- T.AfterChange(1,keep_cabling = TRUE)
+ T.AfterChange(1, keep_cabling = TRUE)
return bounds
/**
diff --git a/code/modules/mining/lavaland/loot/ashdragon_loot.dm b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
index 971a1fc6827..a39b1bbf8c6 100644
--- a/code/modules/mining/lavaland/loot/ashdragon_loot.dm
+++ b/code/modules/mining/lavaland/loot/ashdragon_loot.dm
@@ -198,7 +198,7 @@
user.visible_message("[user] turns \the [T] into [transform_string]!")
message_admins("[key_name_admin(user)] fired the lava staff at [get_area(target)] (JMP).")
log_game("[key_name(user)] fired the lava staff at [get_area(target)] ([T.x], [T.y], [T.z]).")
- T.TerraformTurf(turf_type, keep_icon = FALSE)
+ T.TerraformTurf(turf_type)
timer = world.time + create_cooldown
qdel(L)
else
@@ -207,7 +207,7 @@
return
else
user.visible_message("[user] turns \the [T] into [reset_string]!")
- T.TerraformTurf(reset_turf_type, keep_icon = FALSE)
+ T.TerraformTurf(reset_turf_type)
timer = world.time + reset_cooldown
playsound(T,'sound/magic/fireball.ogg', 200, 1)