Files
a1be42f412 [MIRROR] HUD traits now apply their corresponding hud automatically. Most clothing/item/etc sources of HUDs now only use traits (#29072)
[MIRROR] HUD traits now apply their corresponding hud automatically. Most clothing/item/etc sources of HUDs now only use traits [MDB IGNORE] (#3861)

* HUD traits now apply their corresponding hud automatically. Most clothing/item/etc sources of HUDs now only use traits (#84984)

Currently if you want to apply a HUD you usually add both its trait and
the HUD itself. Only exceptions are things like simplemobs where you
should avoid adding the hud trait since it adds security/med DB access
and such, but there is no cases where you'd want to apply the trait and
not apply the hud.

Requested by Melbert about a week ago.

![image](https://github.com/user-attachments/assets/8af3e9cc-ea22-4cee-86ec-54c397291727)

This makes working with HUDs significantly easier, as you no longer have
to bother with manually adding/removing them. Also potentially removes
an edge case where if your hud could get removed while keeping the
trait.

🆑
refactor: HUD traits now apply their corresponding hud automatically
/🆑

* Modular changes

* rest of the modular stuff

* no bot path hud actually

standard diag glasses don't give this, for some reason

---------

Co-authored-by: NovaBot <154629622+NovaBot13@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Co-authored-by: Mal <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: Fluffles <piecopresident@gmail.com>
2024-07-27 21:45:47 +05:30

31 lines
1.0 KiB
Plaintext

/mob/living/basic/bot/vibebot
name = "\improper Vibebot"
desc = "A little robot. It's just vibing, doing its thing."
icon = 'icons/mob/silicon/aibots.dmi'
icon_state = "vibebot1"
base_icon_state = "vibebot"
pass_flags = PASSMOB | PASSFLAPS
light_system = OVERLAY_LIGHT
light_range = 6
ai_controller = /datum/ai_controller/basic_controller/bot/vibebot
light_power = 2
hackables = "vibing scanners"
radio_key = /obj/item/encryptionkey/headset_service
radio_channel = RADIO_CHANNEL_SERVICE
bot_type = VIBE_BOT
data_hud_type = DATA_HUD_DIAGNOSTIC
path_image_color = "#2cac12"
possessed_message = "You are a vibebot! Maintain the station's vibes to the best of your ability!"
/mob/living/basic/bot/vibebot/Initialize(mapload)
. = ..()
var/static/list/innate_actions = list(
/datum/action/cooldown/mob_cooldown/bot/vibe = BB_VIBEBOT_PARTY_ABILITY,
)
grant_actions_by_list(innate_actions)
var/obj/item/instrument/piano_synth/piano = new(src)
ai_controller.set_blackboard_key(BB_SONG_INSTRUMENT, piano)
update_appearance(UPDATE_ICON)