mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 15:17:01 +01:00
Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-02a
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/obj/effect/decal/cleanable
|
||||
gender = PLURAL
|
||||
layer = FLOOR_CLEAN_LAYER
|
||||
layer = CLEANABLE_FLOOR_OBJECT_LAYER
|
||||
var/list/random_icon_states = null
|
||||
///I'm sorry but cleanable/blood code is ass, and so is blood_DNA
|
||||
var/blood_state = ""
|
||||
@@ -15,6 +15,9 @@
|
||||
var/datum/reagent/decal_reagent
|
||||
///The amount of reagent this decal holds, if decal_reagent is defined
|
||||
var/reagent_amount = 0
|
||||
/// If TRUE, gains TRAIT_MOPABLE on init - thus this cleanable will cleaned if its turf is cleaned
|
||||
/// Set to FALSE for things that hang high on the walls or things which generally shouldn't be mopped up
|
||||
var/is_mopped = TRUE
|
||||
|
||||
/// Creates a cleanable decal on a turf
|
||||
/// Use this if your decal is one of one, and thus we should not spawn it if it's there already
|
||||
@@ -40,6 +43,9 @@
|
||||
handle_merge_decal(C)
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
if(is_mopped)
|
||||
ADD_TRAIT(src, TRAIT_MOPABLE, INNATE_TRAIT)
|
||||
|
||||
if(LAZYLEN(diseases))
|
||||
var/list/datum/disease/diseases_to_add = list()
|
||||
for(var/datum/disease/D in diseases)
|
||||
|
||||
@@ -24,10 +24,12 @@
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
icon_state = "xgib1"
|
||||
plane = GAME_PLANE
|
||||
layer = BELOW_OBJ_LAYER
|
||||
layer = GIB_LAYER
|
||||
random_icon_states = list("xgib1", "xgib2", "xgib3", "xgib4", "xgib5", "xgib6")
|
||||
mergeable_decal = FALSE
|
||||
|
||||
is_mopped = TRUE // probably shouldn't be, but janitor powercreep
|
||||
|
||||
/obj/effect/decal/cleanable/xenoblood/xgibs/Initialize(mapload)
|
||||
. = ..()
|
||||
RegisterSignal(src, COMSIG_MOVABLE_PIPE_EJECTING, PROC_REF(on_pipe_eject))
|
||||
|
||||
@@ -75,6 +75,7 @@
|
||||
plane = GAME_PLANE
|
||||
vis_flags = VIS_INHERIT_PLANE
|
||||
alpha = 180
|
||||
is_mopped = FALSE
|
||||
|
||||
/obj/effect/decal/cleanable/blood/splatter/over_window/NeverShouldHaveComeHere(turf/here_turf)
|
||||
return isgroundlessturf(here_turf)
|
||||
@@ -87,15 +88,19 @@
|
||||
dryname = "dried tracks"
|
||||
drydesc = "Some old bloody tracks left by wheels. Machines are evil, perhaps."
|
||||
|
||||
/obj/effect/decal/cleanable/trail_holder //not a child of blood on purpose
|
||||
/obj/effect/decal/cleanable/blood/trail_holder
|
||||
name = "blood"
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
desc = "Your instincts say you shouldn't be following these."
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
icon_state = null
|
||||
random_icon_states = null
|
||||
beauty = -50
|
||||
var/list/existing_dirs = list()
|
||||
|
||||
/obj/effect/decal/cleanable/trail_holder/can_bloodcrawl_in()
|
||||
return TRUE
|
||||
/obj/effect/decal/cleanable/blood/trail_holder/replace_decal(obj/effect/decal/cleanable/blood/trail_holder/blood_decal)
|
||||
if(blood_state != blood_decal.blood_state)
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
// normal version of the above trail holder object for use in less convoluted things
|
||||
/obj/effect/decal/cleanable/blood/trails
|
||||
@@ -111,7 +116,7 @@
|
||||
desc = "They look bloody and gruesome."
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
icon_state = "gib1"
|
||||
layer = BELOW_OBJ_LAYER
|
||||
layer = GIB_LAYER
|
||||
plane = GAME_PLANE
|
||||
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6")
|
||||
mergeable_decal = FALSE
|
||||
@@ -121,6 +126,8 @@
|
||||
decal_reagent = /datum/reagent/consumable/liquidgibs
|
||||
reagent_amount = 5
|
||||
|
||||
is_mopped = TRUE // probably shouldn't be, but janitor powercreep
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/Initialize(mapload, list/datum/disease/diseases)
|
||||
. = ..()
|
||||
AddElement(/datum/element/squish_sound)
|
||||
@@ -323,7 +330,7 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache)
|
||||
/obj/effect/decal/cleanable/blood/footprints/examine(mob/user)
|
||||
. = ..()
|
||||
if((shoe_types.len + species_types.len) > 0)
|
||||
. += "You recognise the [name] as belonging to:"
|
||||
. += "You recognise \the [src] as belonging to:"
|
||||
for(var/sole in shoe_types)
|
||||
var/obj/item/clothing/item = sole
|
||||
var/article = initial(item.gender) == PLURAL ? "Some" : "A"
|
||||
@@ -356,6 +363,7 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache)
|
||||
random_icon_states = list("hitsplatter1", "hitsplatter2", "hitsplatter3")
|
||||
plane = GAME_PLANE
|
||||
layer = ABOVE_WINDOW_LAYER
|
||||
is_mopped = FALSE
|
||||
/// The turf we just came from, so we can back up when we hit a wall
|
||||
var/turf/prev_loc
|
||||
/// The cached info about the blood
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
icon = 'icons/obj/debris.dmi'
|
||||
icon_state = "ash"
|
||||
plane = GAME_PLANE
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
mergeable_decal = FALSE
|
||||
beauty = -50
|
||||
decal_reagent = /datum/reagent/ash
|
||||
@@ -153,6 +153,7 @@
|
||||
resistance_flags = FLAMMABLE
|
||||
beauty = -100
|
||||
clean_type = CLEAN_TYPE_HARD_DECAL
|
||||
is_mopped = FALSE
|
||||
|
||||
/obj/effect/decal/cleanable/cobweb/cobweb2
|
||||
icon_state = "cobweb2"
|
||||
@@ -164,7 +165,7 @@
|
||||
icon = 'icons/effects/effects.dmi'
|
||||
icon_state = "molten"
|
||||
plane = GAME_PLANE
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
mergeable_decal = FALSE
|
||||
beauty = -150
|
||||
clean_type = CLEAN_TYPE_HARD_DECAL
|
||||
@@ -251,7 +252,7 @@
|
||||
desc = "A pile of chemicals. You can't quite tell what's inside it."
|
||||
gender = NEUTER
|
||||
plane = GAME_PLANE
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
icon = 'icons/obj/debris.dmi'
|
||||
icon_state = "ash"
|
||||
|
||||
@@ -330,7 +331,7 @@
|
||||
icon = 'icons/obj/debris.dmi'
|
||||
icon_state = "paper_shreds"
|
||||
plane = GAME_PLANE
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
|
||||
/obj/effect/decal/cleanable/wrapping/pinata
|
||||
name = "pinata shreds"
|
||||
@@ -349,7 +350,7 @@
|
||||
icon = 'icons/obj/debris.dmi'
|
||||
icon_state = "garbage"
|
||||
plane = GAME_PLANE
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
beauty = -150
|
||||
clean_type = CLEAN_TYPE_HARD_DECAL
|
||||
|
||||
@@ -567,7 +568,9 @@
|
||||
mergeable_decal = FALSE
|
||||
beauty = -10
|
||||
plane = GAME_PLANE
|
||||
layer = BELOW_OBJ_LAYER
|
||||
layer = GIB_LAYER
|
||||
clean_type = CLEAN_TYPE_HARD_DECAL
|
||||
is_mopped = FALSE
|
||||
|
||||
/obj/effect/decal/cleanable/rubble/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
icon = 'icons/mob/silicon/robots.dmi'
|
||||
icon_state = "gib1"
|
||||
plane = GAME_PLANE
|
||||
layer = BELOW_OBJ_LAYER
|
||||
layer = GIB_LAYER
|
||||
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6", "gib7")
|
||||
blood_state = BLOOD_STATE_OIL
|
||||
bloodiness = BLOOD_AMOUNT_PER_DECAL
|
||||
@@ -14,6 +14,8 @@
|
||||
beauty = -50
|
||||
clean_type = CLEAN_TYPE_BLOOD
|
||||
|
||||
is_mopped = TRUE // probably shouldn't be, but janitor powercreep
|
||||
|
||||
/obj/effect/decal/cleanable/robot_debris/Initialize(mapload)
|
||||
. = ..()
|
||||
RegisterSignal(src, COMSIG_MOVABLE_PIPE_EJECTING, PROC_REF(on_pipe_eject))
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
if(isclosedturf(loc) && loc.density)
|
||||
// allows for wall graffiti to be seen
|
||||
SET_PLANE_IMPLICIT(src, GAME_PLANE)
|
||||
layer = GAME_CLEAN_LAYER
|
||||
layer = CLEANABLE_OBJECT_LAYER
|
||||
if(e_name)
|
||||
name = e_name
|
||||
if(desc_override)
|
||||
|
||||
@@ -231,6 +231,9 @@
|
||||
/obj/effect/turf_decal/siding/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -240,6 +243,9 @@
|
||||
/obj/effect/turf_decal/siding/white/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/white/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/white/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -249,6 +255,9 @@
|
||||
/obj/effect/turf_decal/siding/red/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/red/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/red/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -258,6 +267,9 @@
|
||||
/obj/effect/turf_decal/siding/dark_red/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_red/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_red/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -267,6 +279,9 @@
|
||||
/obj/effect/turf_decal/siding/green/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/green/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/green/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -276,6 +291,9 @@
|
||||
/obj/effect/turf_decal/siding/dark_green/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_green/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_green/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -285,6 +303,9 @@
|
||||
/obj/effect/turf_decal/siding/blue/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/blue/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/blue/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -294,6 +315,9 @@
|
||||
/obj/effect/turf_decal/siding/dark_blue/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_blue/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark_blue/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -303,6 +327,9 @@
|
||||
/obj/effect/turf_decal/siding/yellow/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/yellow/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/yellow/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -312,6 +339,9 @@
|
||||
/obj/effect/turf_decal/siding/purple/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/purple/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/purple/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -321,6 +351,9 @@
|
||||
/obj/effect/turf_decal/siding/brown/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/brown/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/brown/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
@@ -330,6 +363,9 @@
|
||||
/obj/effect/turf_decal/siding/dark/corner
|
||||
icon_state = "siding_plain_corner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark/inner_corner
|
||||
icon_state = "siding_plain_corner_inner"
|
||||
|
||||
/obj/effect/turf_decal/siding/dark/end
|
||||
icon_state = "siding_plain_end"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user