[MIRROR] RPG titles wizard event [MDB IGNORE] (#8636)

* RPG titles wizard event (#61579)

* cool 37 files changed- and not a maintainer in sight!

* works for simplemobs too

* misused proc

* FIXED

* WOOOOOOORKS

* better zombie name

* work smarter

* card dmi udpate

* RPG titles wizard event

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
This commit is contained in:
SkyratBot
2021-10-06 14:43:14 -04:00
committed by GitHub
co-authored by tralezab
parent fa5cfeee9d
commit a68bff2ce6
40 changed files with 158 additions and 32 deletions
+2
View File
@@ -53,6 +53,8 @@
#define COMSIG_ALARM_FIRE(alarm_type) "!alarm_fire [alarm_type]"
/// An alarm of some form was cleared (datum/alarm_handler/source, alarm_type, area/source_area)
#define COMSIG_ALARM_CLEAR(alarm_type) "!alarm_clear [alarm_type]"
///global mob logged in signal! (/mob/added_player)
#define COMSIG_GLOB_MOB_LOGGED_IN "!mob_logged_in"
/// signals from globally accessible objects
+116
View File
@@ -0,0 +1,116 @@
/datum/round_event_control/wizard/rpgtitles //its time to adventure on boys
name = "RPG Titles"
weight = 3
typepath = /datum/round_event/wizard/rpgtitles
max_occurrences = 1
earliest_start = 0 MINUTES
/datum/round_event/wizard/rpgtitles/start()
GLOB.rpgtitle_controller = new /datum/rpgtitle_controller
///Holds the global datum for rpgtitle, so anywhere may check for its existence (it signals into whatever it needs to modify, so it shouldn't require fetching)
GLOBAL_DATUM(rpgtitle_controller, /datum/rpgtitle_controller)
/datum/rpgtitle_controller
/datum/rpgtitle_controller/New()
. = ..()
RegisterSignal(SSdcs, COMSIG_GLOB_CREWMEMBER_JOINED, .proc/on_crewmember_join)
RegisterSignal(SSdcs, COMSIG_GLOB_MOB_LOGGED_IN, .proc/on_mob_login)
handle_current_jobs()
/datum/rpgtitle_controller/Destroy(force)
UnregisterSignal(SSdcs, list(COMSIG_GLOB_CREWMEMBER_JOINED, COMSIG_GLOB_MOB_LOGGED_IN))
. = ..()
///signal sent by a player list expanding
/datum/rpgtitle_controller/proc/on_mob_login(datum/source, mob/new_login)
SIGNAL_HANDLER
if(isliving(new_login))
var/mob/living/living_login = new_login
if(living_login.stat != DEAD && !living_login.maptext)
on_crewmember_join(source, living_login, living_login.mind.assigned_role.title)
///signal sent by a crewmember joining
/datum/rpgtitle_controller/proc/on_crewmember_join(datum/source, mob/living/new_crewmember, rank)
SIGNAL_HANDLER
var/datum/job/job = SSjob.GetJob(rank)
//we must prepare for the mother of all strings
new_crewmember.maptext_height = 32
new_crewmember.maptext_width = 80
new_crewmember.maptext_x = -24
new_crewmember.maptext_y = 32
//list of lists involving strings related to a biotype flag, their position in the list equal to the position they were defined as bitflags.
//the first list entry is an adjective, the second is a noun. if null, we don't want to describe this biotype, and so even if the mob
//has that biotype, the null is skipped
var/list/biotype_titles = list(
null, //organic is too common to be a descriptor
null, //mineral is only used with carbons
list("Mechanical", "Robot"),
list("Reanimated", "Undead"),
list("Bipedal", "Humanoid"),
list("Insectile", "Bug"),
list("Beastly", "Beast"),
list("Monstrous", "Megafauna"),
list("Reptilian", "Lizard"),
list("Paranormal", "Spirit"),
list("Flowering", "Plant"),
)
var/maptext_title = ""
if(!(isanimal(new_crewmember) || isbasicmob(new_crewmember)))
maptext_title = job.rpg_title || job.title
else
//this following code can only be described as bitflag black magic. ye be warned. i tried to comment excessively to explain what the fuck is happening
var/list/applicable_biotypes = list()
for(var/biotype_flag_position in 0 to 10)
var/biotype_flag = (1 << biotype_flag_position)
if(new_crewmember.mob_biotypes & biotype_flag)//they have this flag
if(biotype_titles[biotype_flag_position+1]) //if there is a fitting verbage for this biotype...
applicable_biotypes += list(biotype_titles[biotype_flag_position+1])//...add it to the list of applicable biotypes
if(!applicable_biotypes.len) //there will never be an adjective anomaly because anomaly is only added when there are no choices
applicable_biotypes += list(null, "Anomaly")
//shuffle it to allow for some cool combinations of adjectives and nouns
applicable_biotypes = shuffle(applicable_biotypes)
//okay, out of the black magic area we now have a list of things to describe our mob, yay!!!
for(var/iteration in 1 to applicable_biotypes.len)
if(iteration == applicable_biotypes.len) //last descriptor to add, make it the noun
maptext_title += applicable_biotypes[iteration][2]
break
//there are more descriptors, make it an adjective
maptext_title += "[applicable_biotypes[iteration][1]] "
//mother of all strings...
new_crewmember.maptext = "<span class='maptext' style='text-align: center'><span style='color: [new_crewmember.chat_color || rgb(rand(100,255), rand(100,255), rand(100,255))]'>Level [rand(1, 100)] [maptext_title]</span></span>"
if(!(job.job_flags & JOB_CREW_MEMBER))
return
var/obj/item/card/id/card = new_crewmember.get_idcard()
if(!card)//since this is called on current crew, some may not have IDs. shame on them for missing out!
return
card.name = "adventuring license"
card.desc = "A written license from the adventuring guild. You're good to go!"
card.icon_state = "card_rpg"
card.assignment = job.rpg_title
if(istype(card, /obj/item/card/id/advanced))
var/obj/item/card/id/advanced/advanced_card = card
advanced_card.assigned_icon_state = "rpg_assigned"
card.update_label()
card.update_icon()
/**
* ### handle_current_jobs
*
* Calls on_crewmember_join on every crewmember
* If the item it is giving fantasy to is a storage item, there's a chance it'll drop in an item fortification scroll. neat!
*/
/datum/rpgtitle_controller/proc/handle_current_jobs()
for(var/mob/living/player as anything in GLOB.alive_player_list)
on_crewmember_join(SSdcs, player, player.mind?.assigned_role.title)
+3
View File
@@ -102,6 +102,9 @@
/// String. If set to a non-empty one, it will be the key for the policy text value to show this role on spawn.
var/policy_index = ""
///RPG job names, for the memes
var/rpg_title
/datum/job/New()
. = ..()
+1 -1
View File
@@ -30,7 +30,7 @@ Assistant
)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
rpg_title = "Lout"
/datum/outfit/job/assistant
name = "Assistant"
@@ -27,7 +27,7 @@
family_heirlooms = list(/obj/item/lighter, /obj/item/lighter/greyscale, /obj/item/storage/box/matches)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
rpg_title = "Aeromancer"
/datum/outfit/job/atmos
name = "Atmospheric Technician"
+1 -1
View File
@@ -29,7 +29,7 @@
)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
rpg_title = "Tavernkeeper"
/datum/job/bartender/award_service(client/winner, award)
winner.give_award(award, winner.mob)
+1 -1
View File
@@ -31,7 +31,7 @@
)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
rpg_title = "Gardener"
/datum/outfit/job/botanist
name = "Botanist"
+1
View File
@@ -36,6 +36,7 @@
)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
rpg_title = "Star Duke"
voice_of_god_power = 1.4 //Command staff has authority
@@ -29,7 +29,7 @@
/obj/item/stack/sheet/mineral/diamond = 3,
/obj/item/gun/ballistic/rifle/boltaction = 1
)
rpg_title = "Merchantman"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -28,7 +28,7 @@
/obj/item/toy/plush/narplush = 2,
/obj/item/toy/plush/ratplush = 1
)
rpg_title = "Paladin"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 2 //Chaplains are very good at speaking with the voice of god
+1 -1
View File
@@ -32,7 +32,7 @@
/obj/item/reagent_containers/glass/bottle/leadacetate = 5,
/obj/item/paper/secretrecipe = 1
)
rpg_title = "Alchemist"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -40,7 +40,7 @@
/obj/item/stack/sheet/mineral/gold = 15,
/obj/effect/spawner/random/engineering/tool_advanced = 3
)
rpg_title = "Head Crystallomancer"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 1.4 //Command staff has authority
@@ -37,7 +37,7 @@
/obj/effect/spawner/random/medical/surgery_tool_alien = 1
)
family_heirlooms = list(/obj/item/storage/firstaid/ancient/heirloom)
rpg_title = "High Cleric"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 1.4 //Command staff has authority
+1 -1
View File
@@ -30,7 +30,7 @@
)
family_heirlooms = list(/obj/item/bikehorn/golden)
rpg_title = "Jester"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
veteran_only = TRUE // SKYRAT EDIT ADDITION
+1 -1
View File
@@ -26,7 +26,7 @@
)
family_heirlooms = list(/obj/item/reagent_containers/food/condiment/saltshaker, /obj/item/kitchen/rollingpin, /obj/item/clothing/head/chefhat)
rpg_title = "Tavern Chef"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -24,7 +24,7 @@
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_silence_power = 3
rpg_title = "Veteran Adventurer"
/datum/outfit/job/curator
name = "Curator"
+1 -1
View File
@@ -38,7 +38,7 @@
)
family_heirlooms = list(/obj/item/reagent_containers/food/drinks/bottle/whiskey)
rpg_title = "Thiefcatcher"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -27,7 +27,7 @@
)
family_heirlooms = list(/obj/item/clothing/under/shorts/purple)
rpg_title = "Genemancer"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -37,7 +37,7 @@
)
family_heirlooms = list(/obj/item/reagent_containers/food/drinks/trophy/silver_cup)
rpg_title = "Guild Questgiver"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 1.4 //Command staff has authority
@@ -32,7 +32,7 @@
bounty_types = CIV_JOB_SEC
family_heirlooms = list(/obj/item/book/manual/wiki/security_space_law)
rpg_title = "Guard Leader"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 1.4 //Command staff has authority
+1 -1
View File
@@ -26,7 +26,7 @@
/obj/item/storage/box/lights/mixed = 20,
/obj/item/lightreplacer = 10
)
rpg_title = "Groundskeeper"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -21,7 +21,7 @@
departments_list = list(
/datum/job_department/service,
)
rpg_title = "Magistrate"
family_heirlooms = list(/obj/item/gavelhammer, /obj/item/book/manual/wiki/security_space_law)
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -33,7 +33,7 @@
/obj/effect/spawner/random/medical/organs = 5,
/obj/effect/spawner/random/medical/memeorgans = 1
)
rpg_title = "Cleric"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -27,7 +27,7 @@
/obj/item/reagent_containers/food/drinks/bottle/bottleofnothing = 10,
/obj/item/book/mimery = 1,
)
rpg_title = "Fool"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 0.5 //Why are you speaking
+1 -1
View File
@@ -32,7 +32,7 @@
/obj/item/reagent_containers/hypospray/medipen/penacid = 10,
/obj/item/reagent_containers/hypospray/medipen/survival/luxury = 5
)
rpg_title = "Corpse Runner"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -20,7 +20,7 @@
)
family_heirlooms = list(/obj/item/pen/blue)
rpg_title = "Defeated Miniboss"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -28,7 +28,7 @@
/obj/item/storage/pill_bottle/happy = 5,
/obj/item/gun/syringe = 1
)
rpg_title = "Snake Oil Salesman"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -30,7 +30,7 @@
mail_goodies = list(
/obj/item/circuitboard/machine/emitter = 3
)
rpg_title = "Steward"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -37,7 +37,7 @@
)
family_heirlooms = list(/obj/item/toy/plush/slimeplushie)
rpg_title = "Archmagister"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
voice_of_god_power = 1.4 //Command staff has authority
+1 -1
View File
@@ -29,7 +29,7 @@
)
family_heirlooms = list(/obj/item/toy/plush/pkplush)
rpg_title = "Necromancer"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -29,7 +29,7 @@
/obj/item/disk/tech_disk/spaceloot = 2,
/obj/item/camera_bug = 1
)
rpg_title = "Thaumaturgist"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -36,7 +36,7 @@
/obj/item/clothing/mask/whistle = 5,
/obj/item/melee/baton/security/boomerang/loaded = 1
)
rpg_title = "Guard"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -21,7 +21,7 @@
)
family_heirlooms = list(/obj/item/pickaxe/mini, /obj/item/shovel)
rpg_title = "Adventurer"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -32,7 +32,7 @@
/obj/item/holosign_creator/engineering = 8,
/obj/item/clothing/head/hardhat/red/upgraded = 1
)
rpg_title = "Crystallomancer"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
@@ -6,3 +6,4 @@
/datum/job/unassigned
title = "Unassigned Crewmember"
rpg_title = "Peasant"
+1 -1
View File
@@ -33,7 +33,7 @@
/obj/item/stack/sheet/mineral/plasma = 10,
/obj/item/stack/sheet/mineral/uranium = 5
)
rpg_title = "Plague Doctor"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+1 -1
View File
@@ -37,7 +37,7 @@
/obj/item/storage/box/rubbershot = 10,
/obj/item/storage/box/lethalshot = 5
)
rpg_title = "Jailor"
job_flags = JOB_ANNOUNCE_ARRIVAL | JOB_CREW_MANIFEST | JOB_EQUIP_RANK | JOB_CREW_MEMBER | JOB_NEW_PLAYER_JOINABLE | JOB_BOLD_SELECT_TEXT | JOB_REOPEN_ON_ROUNDSTART_LOSS | JOB_ASSIGN_QUIRKS
+2
View File
@@ -102,6 +102,8 @@
AddElement(/datum/element/weather_listener, /datum/weather/ash_storm, ZTRAIT_ASHSTORM, GLOB.ash_storm_sounds)
SEND_GLOBAL_SIGNAL(COMSIG_GLOB_MOB_LOGGED_IN, src)
return TRUE
Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 18 KiB

+1
View File
@@ -2406,6 +2406,7 @@
#include "code\modules\events\prison_break.dm"
#include "code\modules\events\processor_overload.dm"
#include "code\modules\events\radiation_storm.dm"
#include "code\modules\events\rpgtitles.dm"
#include "code\modules\events\sentience.dm"
#include "code\modules\events\shuttle_catastrophe.dm"
#include "code\modules\events\shuttle_insurance.dm"