Files
Bubberstation/code/game/objects/items/etherealdiscoball.dm
tralezab 6c01cc2c01 every case of initialize that should have mapload, does (#61623)
## About The Pull Request

stop forgetting to include mapload, if you don't include it then every single subtype past it by default doesn't include it

for example, `obj/item` didn't include mapload so every single item by default didn't fill in mapload

![](https://media.discordapp.net/attachments/823293417186000909/875122648605147146/image0.gif)

## Regex used:

procs without args, not even regex

`/Initialize()`

procs with args
`\/Initialize\((?!mapload)((.)*\w)?`

cleanup of things i didn't want to mapload:
`\/datum\/(.)*\/Initialize\(mapload`
2021-09-24 17:56:50 -04:00

73 lines
2.1 KiB
Plaintext

/obj/item/etherealballdeployer
name = "Portable Ethereal Disco Ball"
desc = "Press the button for a deployment of slightly-unethical PARTY!"
icon = 'icons/obj/device.dmi'
icon_state = "ethdisco"
/obj/item/etherealballdeployer/attack_self(mob/living/carbon/user)
.=..()
to_chat(user, span_notice("You deploy the Ethereal Disco Ball."))
new /obj/structure/etherealball(user.loc)
qdel(src)
/obj/structure/etherealball
name = "Ethereal Disco Ball"
desc = "The ethics of this discoball are questionable."
icon = 'icons/obj/device.dmi'
icon_state = "ethdisco_head_0"
anchored = TRUE
density = TRUE
var/TurnedOn = FALSE
var/current_color
var/TimerID
var/range = 7
var/power = 3
/obj/structure/etherealball/Initialize(mapload)
. = ..()
update_appearance()
/obj/structure/etherealball/attack_hand(mob/living/carbon/human/user, list/modifiers)
. = ..()
if(TurnedOn)
TurnOff()
to_chat(user, span_notice("You turn the disco ball off!"))
else
TurnOn()
to_chat(user, span_notice("You turn the disco ball on!"))
/obj/structure/etherealball/AltClick(mob/living/carbon/human/user)
. = ..()
set_anchored(!anchored)
to_chat(user, span_notice("You [anchored ? null : "un"]lock the disco ball."))
/obj/structure/etherealball/proc/TurnOn()
TurnedOn = TRUE //Same
DiscoFever()
/obj/structure/etherealball/proc/TurnOff()
TurnedOn = FALSE
set_light(0)
remove_atom_colour(TEMPORARY_COLOUR_PRIORITY)
update_appearance()
if(TimerID)
deltimer(TimerID)
/obj/structure/etherealball/proc/DiscoFever()
remove_atom_colour(TEMPORARY_COLOUR_PRIORITY)
current_color = random_color()
set_light(range, power, current_color)
add_atom_colour("#[current_color]", FIXED_COLOUR_PRIORITY)
update_appearance()
TimerID = addtimer(CALLBACK(src, .proc/DiscoFever), 5, TIMER_STOPPABLE) //Call ourselves every 0.5 seconds to change colors
/obj/structure/etherealball/update_icon_state()
icon_state = "ethdisco_head_[TurnedOn]"
return ..()
/obj/structure/etherealball/update_overlays()
. = ..()
var/mutable_appearance/base_overlay = mutable_appearance(icon, "ethdisco_base")
base_overlay.appearance_flags = RESET_COLOR
. += base_overlay