Adds Shadow demons (#19732)

* reshuffle

* shared base type

* moves this to the base type

* the monster

* event

* FUCK

* better sprites

* refactors bloodcrawl, more nice sprites

* review stuff

* Apply suggestions from code review

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>

* heart of darkness

* pre TM tweaks

* ARGH

* hopefully fixes double hits

* tweaks

* derp

* tweaks

* TEMP RUNTIME REMOVE LATER

* fixes

* runtime fixes

* cig runtime fix

* review + another runtime fix

* re adds sprite

* removes runtime

* oop I forgor

* DRUNK CODING

* SPRITES

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>
This commit is contained in:
Charlie
2022-12-29 17:26:37 +00:00
committed by GitHub
parent 7be765d5ef
commit 8ef4aa727e
48 changed files with 563 additions and 312 deletions
+2 -2
View File
@@ -13,7 +13,7 @@
var/floor = 0
var/obj/item/seeds/myseed = /obj/item/seeds/glowshroom
/obj/structure/glowshroom/extinguish_light()
/obj/structure/glowshroom/extinguish_light(force = FALSE)
visible_message("<span class='warning'>[src] withers away!</span>")
qdel(src)
@@ -29,7 +29,7 @@
icon_state = "shadowshroom"
myseed = /obj/item/seeds/glowshroom/shadowshroom
/obj/structure/glowshroom/shadowshroom/extinguish_light()
/obj/structure/glowshroom/shadowshroom/extinguish_light(force = FALSE)
return
/obj/structure/glowshroom/Destroy()
+7
View File
@@ -141,6 +141,13 @@
if(lit)
set_light(CANDLE_LUM * 2)
/obj/item/candle/extinguish_light(force)
if(!force)
return
infinite = FALSE
wax = 1 // next process will burn it out
#undef TALL_CANDLE
#undef MID_CANDLE
#undef SHORT_CANDLE
+13 -5
View File
@@ -82,7 +82,7 @@
else
return ..()
/obj/item/flashlight/extinguish_light()
/obj/item/flashlight/extinguish_light(force = FALSE)
if(on)
on = FALSE
update_brightness()
@@ -283,8 +283,12 @@
new T(loc)
qdel(src) // return INITIALIZE_HINT_QDEL <-- Doesn't work
/obj/item/flashlight/flare/extinguish_light()
visible_message("<span class='danger'>[src] dims slightly before scattering the shadows around it.</span>")
/obj/item/flashlight/flare/extinguish_light(force = FALSE)
if(force)
fuel = 0
visible_message("<span class='danger'>[src] burns up rapidly!</span>")
else
visible_message("<span class='danger'>[src] dims slightly before scattering the shadows around it.</span>")
/obj/item/flashlight/flare/torch
name = "torch"
@@ -321,8 +325,12 @@
/obj/item/flashlight/slime/attack_self(mob/user)
return //Bio-luminescence does not toggle.
/obj/item/flashlight/slime/extinguish_light()
visible_message("<span class='danger'>[src] dims slightly before scattering the shadows around it.</span>")
/obj/item/flashlight/slime/extinguish_light(force = FALSE)
if(force)
visible_message("<span class='danger'>[src] withers away.</span>")
qdel(src)
else
visible_message("<span class='danger'>[src] dims slightly before scattering the shadows around it.</span>")
/obj/item/flashlight/emp
origin_tech = "magnets=3;syndicate=1"
+1 -1
View File
@@ -329,7 +329,7 @@
M.emp_act(severity)
..()
/obj/item/paicard/extinguish_light()
/obj/item/paicard/extinguish_light(force = FALSE)
if(pai)
pai.extinguish_light()
set_light(0)
+7
View File
@@ -72,6 +72,13 @@
reagents.add_reagent("fuel", 1)
..()
/obj/item/weldingtool/extinguish_light(force)
if(!force)
return
if(!tool_enabled)
return
remove_fuel(maximum_fuel)
/obj/item/weldingtool/attack_self(mob/user)
if(tool_enabled) //Turn off the welder if it's on
to_chat(user, "<span class='notice'>You switch off [src].</span>")
+8
View File
@@ -189,6 +189,11 @@ LIGHTERS ARE IN LIGHTERS.DM
smoke()
/obj/item/clothing/mask/cigarette/extinguish_light(force)
if(!force)
return
die()
/obj/item/clothing/mask/cigarette/attack_self(mob/user)
if(lit)
user.visible_message("<span class='notice'>[user] calmly drops and treads on [src], putting it out instantly.</span>")
@@ -362,6 +367,9 @@ LIGHTERS ARE IN LIGHTERS.DM
chem_volume = 200
list_reagents = list("nicotine" = 200)
/obj/item/clothing/mask/cigarette/pipe/die()
return
/obj/item/clothing/mask/cigarette/pipe/light(flavor_text = null)
if(!lit)
lit = TRUE
+15 -1
View File
@@ -69,10 +69,16 @@
force = 0
attack_verb = null //human_defense.dm takes care of it
show_off_message(user)
if(user)
show_off_message(user)
set_light(0)
STOP_PROCESSING(SSobj, src)
/obj/item/lighter/extinguish_light(force)
if(!force)
return
turn_off_lighter()
/obj/item/lighter/proc/show_off_message(mob/living/user)
to_chat(user, "<span class='notice'>You shut off [src].")
@@ -124,6 +130,9 @@
/obj/item/lighter/zippo/turn_off_lighter(mob/living/user)
. = ..()
if(!user)
return
if(world.time > next_off_message)
user.visible_message("<span class='rose'>You hear a quiet click, as [user] shuts off [src] without even looking at what [user.p_theyre()] doing. Wow.")
playsound(src.loc, 'sound/items/zippoclose.ogg', 25, 1)
@@ -201,6 +210,11 @@
..()
matchignite()
/obj/item/match/extinguish_light(force)
if(!force)
return
matchburnout()
/obj/item/match/proc/matchignite()
if(!lit && !burnt)
lit = TRUE