mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-01-01 05:02:33 +00:00
* Da Vlood
* removes_unused_icons
* Yep sprites
* fixes xeno blood and vomit
* Commit number x
* Steel Review Changes 1
* Henri Review Changes 1
* fixing vomit
🌋
* Haha haha ha ... ha
* fixing layering issueeee
* Sirryan2002 Review
THANKS
* implicit var/
* Sirryan Review 2
Electric Boogaloo
* Testmerge Update 1
gibs were still getting animated, blood drying while animated in space looked very jank.
all fixed
* unused variable
AHSDHASOIADGSOISA
* Testmerge Update 2
tracks floating annoyingly
* Improvements
-blood globules will now continue with the inertia of their emittor, instead of towards wherever they were facing
-drops will now have visible sprites after splatting
[running animate() still sometimes doesnt stop the animation annoyingly]
* errors
* Sirryan Review 3
298 lines
7.3 KiB
Plaintext
298 lines
7.3 KiB
Plaintext
#define ALWAYS_IN_GRAVITY 3
|
|
|
|
/obj/effect/decal/cleanable/generic
|
|
name = "clutter"
|
|
desc = "Someone should clean that up."
|
|
gender = PLURAL
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/obj/objects.dmi'
|
|
icon_state = "shards"
|
|
|
|
/obj/effect/decal/cleanable/ash
|
|
name = "ashes"
|
|
desc = "Ashes to ashes, dust to dust, and into space."
|
|
gender = PLURAL
|
|
icon = 'icons/obj/objects.dmi'
|
|
icon_state = "ash"
|
|
scoop_reagents = list("ash" = 10)
|
|
mergeable_decal = FALSE
|
|
plane = GAME_PLANE
|
|
|
|
/obj/effect/decal/cleanable/glass
|
|
name = "tiny shards"
|
|
desc = "Back to sand."
|
|
icon = 'icons/obj/shards.dmi'
|
|
icon_state = "tiny"
|
|
plane = GAME_PLANE
|
|
|
|
/obj/effect/decal/cleanable/glass/Initialize(mapload)
|
|
. = ..()
|
|
setDir(pick(GLOB.cardinal))
|
|
|
|
/obj/effect/decal/cleanable/glass/ex_act()
|
|
qdel(src)
|
|
|
|
/obj/effect/decal/cleanable/glass/plasma
|
|
icon_state = "plasmatiny"
|
|
|
|
/obj/effect/decal/cleanable/dirt
|
|
name = "dirt"
|
|
desc = "Someone should clean that up."
|
|
gender = PLURAL
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/effects/dirt.dmi'
|
|
icon_state = "dirt"
|
|
base_icon_state = "dirt"
|
|
smoothing_flags = NONE
|
|
smoothing_groups = list(SMOOTH_GROUP_CLEANABLE_DIRT)
|
|
canSmoothWith = list(SMOOTH_GROUP_CLEANABLE_DIRT, SMOOTH_GROUP_WALLS)
|
|
mouse_opacity = FALSE
|
|
|
|
/obj/effect/decal/cleanable/dirt/Initialize()
|
|
. = ..()
|
|
QUEUE_SMOOTH_NEIGHBORS(src)
|
|
if(smoothing_flags & (SMOOTH_CORNERS|SMOOTH_BITMASK))
|
|
QUEUE_SMOOTH_NEIGHBORS(src)
|
|
|
|
/obj/effect/decal/cleanable/dirt/Destroy()
|
|
QUEUE_SMOOTH_NEIGHBORS(src)
|
|
if(smoothing_flags & (SMOOTH_CORNERS|SMOOTH_BITMASK))
|
|
QUEUE_SMOOTH_NEIGHBORS(src)
|
|
return ..()
|
|
|
|
/obj/effect/decal/cleanable/dirt/blackpowder
|
|
name = "black powder"
|
|
mouse_opacity = TRUE
|
|
no_scoop = TRUE
|
|
scoop_reagents = list("blackpowder" = 40) // size 2 explosion when activated
|
|
|
|
/obj/effect/decal/cleanable/flour
|
|
name = "flour"
|
|
desc = "It's still good. Four second rule!"
|
|
gender = PLURAL
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "flour"
|
|
|
|
/obj/effect/decal/cleanable/flour/foam
|
|
name = "Fire fighting foam"
|
|
desc = "It's foam."
|
|
color = "#EBEBEB"
|
|
|
|
/obj/effect/decal/cleanable/flour/foam/Initialize(mapload)
|
|
. = ..()
|
|
QDEL_IN(src, 15 SECONDS)
|
|
|
|
/obj/effect/decal/cleanable/greenglow
|
|
name = "glowing goo"
|
|
desc = "Jeez. I hope that's not for lunch."
|
|
gender = PLURAL
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
light_range = 1
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "greenglow"
|
|
|
|
/obj/effect/decal/cleanable/greenglow/Initialize(mapload)
|
|
. = ..()
|
|
QDEL_IN(src, 2 MINUTES)
|
|
|
|
/obj/effect/decal/cleanable/greenglow/ex_act()
|
|
return
|
|
|
|
/obj/effect/decal/cleanable/cobweb
|
|
name = "cobweb"
|
|
desc = "Somebody should remove that."
|
|
density = FALSE
|
|
layer = OBJ_LAYER
|
|
plane = GAME_PLANE
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "cobweb1"
|
|
resistance_flags = FLAMMABLE
|
|
|
|
/obj/effect/decal/cleanable/molten_object
|
|
name = "gooey grey mass"
|
|
desc = "It looks like a melted... something."
|
|
density = FALSE
|
|
layer = OBJ_LAYER
|
|
plane = GAME_PLANE
|
|
gender = NEUTER
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "molten"
|
|
mergeable_decal = FALSE
|
|
|
|
/obj/effect/decal/cleanable/molten_object/large
|
|
name = "big gooey grey mass"
|
|
icon_state = "big_molten"
|
|
|
|
/obj/effect/decal/cleanable/cobweb2
|
|
name = "cobweb"
|
|
desc = "Somebody should remove that."
|
|
density = FALSE
|
|
layer = OBJ_LAYER
|
|
plane = GAME_PLANE
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "cobweb2"
|
|
|
|
/obj/effect/decal/cleanable/vomit
|
|
name = "vomit"
|
|
desc = "Gosh, how unpleasant."
|
|
gender = PLURAL
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
plane = FLOOR_PLANE
|
|
icon = 'icons/effects/blood.dmi'
|
|
icon_state = "vomit_1"
|
|
random_icon_states = list("vomit_1", "vomit_2", "vomit_3", "vomit_4")
|
|
no_clear = TRUE
|
|
scoop_reagents = list("vomit" = 5)
|
|
|
|
|
|
/obj/effect/decal/cleanable/vomit/Initialize(mapload)
|
|
. = ..()
|
|
var/turf/T = get_turf(src)
|
|
gravity_check = has_gravity(src, T)
|
|
if(loc != T)
|
|
forceMove(T)
|
|
if(!gravity_check)
|
|
layer = MOB_LAYER
|
|
plane = GAME_PLANE
|
|
if(prob(50))
|
|
animate_float(src, -1, rand(30, 120))
|
|
else
|
|
animate_levitate(src, -1, rand(30, 120))
|
|
icon = 'icons/effects/blood_weightless.dmi'
|
|
|
|
/obj/effect/decal/cleanable/vomit/Bump(atom/A, yes)
|
|
. = ..()
|
|
if(A.density)
|
|
splat(A)
|
|
|
|
/obj/effect/decal/cleanable/vomit/Crossed(atom/movable/AM, oldloc)
|
|
if(!gravity_check)
|
|
splat(AM)
|
|
..()
|
|
|
|
/obj/effect/decal/cleanable/vomit/proc/splat(atom/A)
|
|
if(gravity_check)
|
|
return
|
|
var/turf/T = get_turf(A)
|
|
if(try_merging_decal(T))
|
|
return
|
|
if(loc != T)
|
|
forceMove(T)
|
|
icon = initial(icon)
|
|
gravity_check = ALWAYS_IN_GRAVITY
|
|
if(T.density || locate(/obj/structure/window) in T)
|
|
layer = ABOVE_WINDOW_LAYER
|
|
plane = GAME_PLANE
|
|
else
|
|
layer = initial(layer)
|
|
plane = initial(plane)
|
|
animate(src)
|
|
|
|
/obj/effect/decal/cleanable/vomit/Process_Spacemove(movement_dir)
|
|
if(gravity_check)
|
|
return 1
|
|
|
|
if(has_gravity(src))
|
|
if(!gravity_check)
|
|
splat(get_step(src, movement_dir))
|
|
return 1
|
|
|
|
if(pulledby && !pulledby.pulling)
|
|
return 1
|
|
|
|
if(throwing)
|
|
return 1
|
|
|
|
return 0
|
|
|
|
/obj/effect/decal/cleanable/vomit/green
|
|
name = "green vomit"
|
|
desc = "It's all gummy. Ew."
|
|
icon_state = "gvomit_1"
|
|
random_icon_states = list("gvomit_1", "gvomit_2", "gvomit_3", "gvomit_4")
|
|
scoop_reagents = list("green_vomit" = 5)
|
|
|
|
/obj/effect/decal/cleanable/shreds
|
|
name = "shreds"
|
|
desc = "The shredded remains of what appears to be clothing."
|
|
icon_state = "shreds"
|
|
gender = PLURAL
|
|
plane = GAME_PLANE
|
|
mergeable_decal = FALSE
|
|
|
|
/obj/effect/decal/cleanable/shreds/ex_act(severity, target)
|
|
if(severity == 1) //so shreds created during an explosion aren't deleted by the explosion.
|
|
qdel(src)
|
|
|
|
/obj/effect/decal/cleanable/shreds/Initialize(mapload)
|
|
pixel_x = rand(-10, 10)
|
|
pixel_y = rand(-10, 10)
|
|
. = ..()
|
|
|
|
/obj/effect/decal/cleanable/tomato_smudge
|
|
name = "tomato smudge"
|
|
desc = "It's red."
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/effects/tomatodecal.dmi'
|
|
random_icon_states = list("tomato_floor1", "tomato_floor2", "tomato_floor3")
|
|
|
|
/obj/effect/decal/cleanable/plant_smudge
|
|
name = "plant smudge"
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
gender = NEUTER
|
|
icon = 'icons/effects/tomatodecal.dmi'
|
|
random_icon_states = list("smashed_plant")
|
|
|
|
/obj/effect/decal/cleanable/egg_smudge
|
|
name = "smashed egg"
|
|
desc = "Seems like this one won't hatch."
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/effects/tomatodecal.dmi'
|
|
random_icon_states = list("smashed_egg1", "smashed_egg2", "smashed_egg3")
|
|
|
|
/obj/effect/decal/cleanable/pie_smudge //honk
|
|
name = "smashed pie"
|
|
desc = "It's pie cream from a cream pie."
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
icon = 'icons/effects/tomatodecal.dmi'
|
|
random_icon_states = list("smashed_pie")
|
|
|
|
/obj/effect/decal/cleanable/fungus
|
|
name = "space fungus"
|
|
desc = "A fungal growth. Looks pretty nasty."
|
|
density = FALSE
|
|
layer = TURF_LAYER
|
|
plane = GAME_PLANE
|
|
icon = 'icons/effects/effects.dmi'
|
|
icon_state = "flour"
|
|
color = "#D5820B"
|
|
scoop_reagents = list("fungus" = 10)
|
|
|
|
/obj/effect/decal/cleanable/confetti //PARTY TIME!
|
|
name = "confetti"
|
|
desc = "Party time!"
|
|
gender = PLURAL
|
|
plane = GAME_PLANE
|
|
icon = 'icons/obj/objects.dmi'
|
|
icon_state = "confetti1"
|
|
random_icon_states = list("confetti1", "confetti2", "confetti3")
|
|
|
|
/obj/effect/decal/cleanable/insectguts
|
|
name = "bug guts"
|
|
desc = "One bug squashed. Four more will rise in its place."
|
|
icon = 'icons/effects/blood.dmi'
|
|
icon_state = "xfloor1"
|
|
random_icon_states = list("xfloor1", "xfloor2", "xfloor3", "xfloor4", "xfloor5", "xfloor6", "xfloor7")
|
|
|
|
#undef ALWAYS_IN_GRAVITY
|