mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Adjusts events and refactors borgs a bit in process
This commit is contained in:
committed by
CHOMPStation2
parent
79629be447
commit
21b9d0e636
@@ -12,7 +12,7 @@
|
||||
|
||||
if(isrobot(M))
|
||||
var/mob/living/silicon/robot/R = M
|
||||
if(R.module.type == /obj/item/weapon/robot_module/robot/scrubpup) // You can now feed the trash borg yay.
|
||||
if(R.module.type == /obj/item/weapon/robot_module/robot/janitor/scrubpup) // You can now feed the trash borg yay.
|
||||
playsound(src,'sound/items/eatfood.ogg', rand(10,50), 1)
|
||||
user.drop_item()
|
||||
forceMove(R.vore_selected)
|
||||
|
||||
@@ -161,7 +161,7 @@
|
||||
update_state()
|
||||
|
||||
/obj/structure/door_assembly/attack_robot(mob/living/silicon/robot/user)
|
||||
if(Adjacent(user) && (user.module && (istype(user.module,/obj/item/weapon/robot_module/robot/engineering/general)) \
|
||||
if(Adjacent(user) && (user.module && (istype(user.module,/obj/item/weapon/robot_module/robot/engineering)) \
|
||||
|| istype(user.module,/obj/item/weapon/robot_module/drone))) //Only dron (and engiborg) needs this.
|
||||
rename_door(user)
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
update_state()
|
||||
|
||||
/obj/structure/windoor_assembly/attack_robot(mob/living/silicon/robot/user)
|
||||
if(Adjacent(user) && (user.module && (istype(user.module,/obj/item/weapon/robot_module/robot/engineering/general)) \
|
||||
if(Adjacent(user) && (user.module && (istype(user.module,/obj/item/weapon/robot_module/robot/engineering)) \
|
||||
|| istype(user.module,/obj/item/weapon/robot_module/drone))) //Only dron (and engiborg) needs this.
|
||||
rename_door(user)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
emote_sound = 'sound/voice/biamthelaw.ogg'
|
||||
|
||||
/decl/emote/audible/synth/security/mob_can_use(var/mob/living/silicon/robot/user)
|
||||
return ..() && (istype(user) && (istype(user.module, /obj/item/weapon/robot_module/robot/security) || istype(user.module, /obj/item/weapon/robot_module/robot/knine))) //VOREStation Add - knine module
|
||||
return ..() && (istype(user) && (istype(user.module, /obj/item/weapon/robot_module/robot/security)))
|
||||
|
||||
/decl/emote/audible/synth/security/halt
|
||||
key = "halt"
|
||||
|
||||
@@ -140,8 +140,11 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Spiders", /datum/event/spider_migration, 20, list(ASSIGNMENT_SECURITY = 10), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Hacker", /datum/event/money_hacker, 0, list(ASSIGNMENT_ANY = 4), 1, 10, 25),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Lotto", /datum/event/money_lotto, 0, list(ASSIGNMENT_ANY = 1), 1, 5, 15),
|
||||
<<<<<<< HEAD
|
||||
//YW Change new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Mundane News", /datum/event/mundane_news, 300),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "PDA Spam", /datum/event/pda_spam, 0, list(ASSIGNMENT_ANY = 4), 0, 25, 50),
|
||||
=======
|
||||
>>>>>>> a533de71c6... Merge pull request #14269 from Heroman3003/borg-event-stuff
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Shipping Error", /datum/event/shipping_error , 30, list(ASSIGNMENT_ANY = 2), 0),
|
||||
//YW Change new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Space Dust", /datum/event/dust , 60, list(ASSIGNMENT_ENGINEER = 20), 0, 0, 50),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
|
||||
|
||||
@@ -42,7 +42,10 @@
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Carp", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 40), 1, min_jobs = list(ASSIGNMENT_SECURITY = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Hacker", /datum/event/money_hacker, 0, list(ASSIGNMENT_ANY = 4), 1, 10, 25),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Lotto", /datum/event/money_lotto, 0, list(ASSIGNMENT_ANY = 1), 1, 5, 15),
|
||||
<<<<<<< HEAD
|
||||
//new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Mundane News", /datum/event/mundane_news, 300),
|
||||
=======
|
||||
>>>>>>> a533de71c6... Merge pull request #14269 from Heroman3003/borg-event-stuff
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Shipping Error", /datum/event/shipping_error , 30, list(ASSIGNMENT_ANY = 2), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400),
|
||||
|
||||
@@ -208,6 +208,10 @@ var/list/event_last_fired = list()
|
||||
active_with_role["Medical"]++
|
||||
else if(istype(R.module, /obj/item/weapon/robot_module/robot/research))
|
||||
active_with_role["Scientist"]++
|
||||
else if(istype(R.module, /obj/item/weapon/robot_module/robot/janitor))
|
||||
active_with_role["Janitor"]++
|
||||
else if(istype(R.module, /obj/item/weapon/robot_module/robot/clerical/butler))
|
||||
active_with_role["Botanist"]++
|
||||
|
||||
if(M.mind.assigned_role in SSjob.get_job_titles_in_department(DEPARTMENT_ENGINEERING))
|
||||
active_with_role["Engineer"]++
|
||||
|
||||
@@ -2,14 +2,14 @@ var/global/list/robot_modules = list(
|
||||
"Standard" = /obj/item/weapon/robot_module/robot/standard,
|
||||
"Service" = /obj/item/weapon/robot_module/robot/clerical/butler,
|
||||
"Clerical" = /obj/item/weapon/robot_module/robot/clerical/general,
|
||||
"Research" = /obj/item/weapon/robot_module/robot/research,
|
||||
"Miner" = /obj/item/weapon/robot_module/robot/miner,
|
||||
"Research" = /obj/item/weapon/robot_module/robot/research/general,
|
||||
"Miner" = /obj/item/weapon/robot_module/robot/miner/general,
|
||||
"Crisis" = /obj/item/weapon/robot_module/robot/medical/crisis,
|
||||
"Surgeon" = /obj/item/weapon/robot_module/robot/medical/surgeon,
|
||||
"Security" = /obj/item/weapon/robot_module/robot/security/general,
|
||||
"Combat" = /obj/item/weapon/robot_module/robot/security/combat,
|
||||
"Engineering" = /obj/item/weapon/robot_module/robot/engineering/general,
|
||||
"Janitor" = /obj/item/weapon/robot_module/robot/janitor,
|
||||
"Janitor" = /obj/item/weapon/robot_module/robot/janitor/general,
|
||||
"Gravekeeper" = /obj/item/weapon/robot_module/robot/gravekeeper,
|
||||
"Lost" = /obj/item/weapon/robot_module/robot/lost,
|
||||
"Protector" = /obj/item/weapon/robot_module/robot/syndicate/protector,
|
||||
@@ -586,7 +586,7 @@ var/global/list/robot_modules = list(
|
||||
"Tower" = "drider-Janitor"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/janitor/New()
|
||||
/obj/item/weapon/robot_module/robot/janitor/general/New()
|
||||
..()
|
||||
src.modules += new /obj/item/weapon/soap/nanotrasen(src)
|
||||
src.modules += new /obj/item/weapon/storage/bag/trash(src)
|
||||
@@ -596,7 +596,7 @@ var/global/list/robot_modules = list(
|
||||
src.emag.reagents.add_reagent("lube", 250)
|
||||
src.emag.name = "Lube spray"
|
||||
|
||||
/obj/item/weapon/robot_module/robot/janitor/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
/obj/item/weapon/robot_module/robot/janitor/general/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
var/obj/item/device/lightreplacer/LR = locate() in src.modules
|
||||
LR.Charge(R, amount)
|
||||
if(src.emag)
|
||||
@@ -626,6 +626,9 @@ var/global/list/robot_modules = list(
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler
|
||||
channels = list("Service" = 1)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/general
|
||||
sprites = list(
|
||||
"M-USE NanoTrasen" = "robotServ",
|
||||
"Cabeiri" = "eyebot-standard",
|
||||
@@ -651,7 +654,7 @@ var/global/list/robot_modules = list(
|
||||
"Tower" = "drider-Service"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/New()
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/general/New()
|
||||
..()
|
||||
src.modules += new /obj/item/weapon/gripper/service(src)
|
||||
src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src)
|
||||
@@ -752,7 +755,7 @@ var/global/list/robot_modules = list(
|
||||
)
|
||||
supported_upgrades = list(/obj/item/borg/upgrade/pka, /obj/item/borg/upgrade/diamonddrill)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/miner/New()
|
||||
/obj/item/weapon/robot_module/robot/miner/general/New()
|
||||
..()
|
||||
src.modules += new /obj/item/borg/sight/material(src)
|
||||
src.modules += new /obj/item/weapon/tool/wrench/cyborg(src)
|
||||
@@ -790,7 +793,7 @@ var/global/list/robot_modules = list(
|
||||
)
|
||||
supported_upgrades = list(/obj/item/borg/upgrade/advrped)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/research/New()
|
||||
/obj/item/weapon/robot_module/robot/research/general/New()
|
||||
..()
|
||||
src.modules += new /obj/item/weapon/portable_destructive_analyzer(src)
|
||||
src.modules += new /obj/item/weapon/gripper/research(src)
|
||||
@@ -834,7 +837,7 @@ var/global/list/robot_modules = list(
|
||||
C.synths = list(wire)
|
||||
src.modules += C
|
||||
|
||||
/obj/item/weapon/robot_module/robot/research/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
/obj/item/weapon/robot_module/robot/research/general/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
|
||||
var/obj/item/weapon/reagent_containers/syringe/S = locate() in src.modules
|
||||
if(S.mode == 2)
|
||||
|
||||
@@ -63,6 +63,7 @@
|
||||
)
|
||||
|
||||
/hook/startup/proc/robot_modules_vr()
|
||||
<<<<<<< HEAD
|
||||
robot_modules["Medihound"] = /obj/item/weapon/robot_module/robot/medihound
|
||||
robot_modules["K9"] = /obj/item/weapon/robot_module/robot/knine
|
||||
robot_modules["ERT"] = /obj/item/weapon/robot_module/robot/ert
|
||||
@@ -74,8 +75,19 @@
|
||||
robot_modules["KMine"] = /obj/item/weapon/robot_module/robot/kmine
|
||||
robot_modules["UnityHound"] = /obj/item/weapon/robot_module/robot/chound //CHOMP Addition Unity
|
||||
robot_modules["Honk-Hound"] = /obj/item/weapon/robot_module/robot/clerical/honkborg //CHOMP Addition Honk
|
||||
=======
|
||||
robot_modules["Medihound"] = /obj/item/weapon/robot_module/robot/medical/medihound
|
||||
robot_modules["K9"] = /obj/item/weapon/robot_module/robot/security/knine
|
||||
robot_modules["ERT"] = /obj/item/weapon/robot_module/robot/security/ert
|
||||
robot_modules["Janihound"] = /obj/item/weapon/robot_module/robot/janitor/scrubpup
|
||||
robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/research/sciencehound
|
||||
robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engineering/engiedog
|
||||
robot_modules["Service-Hound"] = /obj/item/weapon/robot_module/robot/clerical/butler/brodog
|
||||
robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/clerical/butler/booze
|
||||
robot_modules["KMine"] = /obj/item/weapon/robot_module/robot/miner/kmine
|
||||
>>>>>>> a533de71c6... Merge pull request #14269 from Heroman3003/borg-event-stuff
|
||||
robot_modules["Stray"] = /obj/item/weapon/robot_module/robot/stray
|
||||
robot_modules["TraumaHound"] = /obj/item/weapon/robot_module/robot/medical/trauma
|
||||
robot_modules["TraumaHound"] = /obj/item/weapon/robot_module/robot/medical/traumahound
|
||||
return 1
|
||||
|
||||
//Just add a new proc with the robot_module type if you wish to run some other vore code
|
||||
@@ -94,8 +106,10 @@
|
||||
src.modules += new /obj/item/device/sleevemate(src) //Lets them scan people.
|
||||
. = ..() //Any Global vore modules will come from here
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/surgeon
|
||||
/obj/item/weapon/robot_module/robot/medical
|
||||
pto_type = PTO_MEDICAL
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/surgeon
|
||||
vr_sprites = list(
|
||||
"Acheron" = "mechoid-Medical",
|
||||
"Shellguard Noble" = "Noble-MED",
|
||||
@@ -105,7 +119,6 @@
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/crisis
|
||||
pto_type = PTO_MEDICAL
|
||||
vr_sprites = list(
|
||||
"Handy" = "handy-med",
|
||||
"Acheron" = "mechoid-Medical",
|
||||
@@ -115,8 +128,10 @@
|
||||
"Feminine Humanoid" = "uptall-crisis"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler
|
||||
/obj/item/weapon/robot_module/robot/clerical
|
||||
pto_type = PTO_CIVILIAN
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/general
|
||||
vr_sprites = list(
|
||||
"Handy - Service" = "handy-service",
|
||||
"Handy - Hydro" = "handy-hydro",
|
||||
@@ -128,7 +143,6 @@
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/general
|
||||
pto_type = PTO_CIVILIAN
|
||||
vr_sprites = list(
|
||||
"Handy" = "handy-clerk",
|
||||
"Acheron" = "mechoid-Service",
|
||||
@@ -140,6 +154,8 @@
|
||||
|
||||
/obj/item/weapon/robot_module/robot/janitor
|
||||
pto_type = PTO_CIVILIAN
|
||||
|
||||
/obj/item/weapon/robot_module/robot/janitor/general
|
||||
vr_sprites = list(
|
||||
"Handy" = "handy-janitor",
|
||||
"Acheron" = "mechoid-Janitor",
|
||||
@@ -149,8 +165,10 @@
|
||||
"Feminine Humanoid" = "uptall-janitor"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/security/general
|
||||
/obj/item/weapon/robot_module/robot/security
|
||||
pto_type = PTO_SECURITY
|
||||
|
||||
/obj/item/weapon/robot_module/robot/security/general
|
||||
vr_sprites = list(
|
||||
"Handy" = "handy-sec",
|
||||
"Acheron" = "mechoid-Security",
|
||||
@@ -160,8 +178,18 @@
|
||||
"Feminine Humanoid" = "uptall-security"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/security/combat
|
||||
vr_sprites = list(
|
||||
"Acheron" = "mechoid-Combat",
|
||||
"ZOOM-BA" = "zoomba-combat",
|
||||
"W02M" = "worm-combat",
|
||||
"Feminine Humanoid" = "uptall-security"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/miner
|
||||
pto_type = PTO_CARGO
|
||||
|
||||
/obj/item/weapon/robot_module/robot/miner/general
|
||||
vr_sprites = list(
|
||||
"Handy" = "handy-miner",
|
||||
"Acheron" = "mechoid-Miner",
|
||||
@@ -182,8 +210,11 @@
|
||||
"Feminine Humanoid" = "uptall-standard",
|
||||
"Feminine Humanoid, Variant 2" = "uptall-standard2"
|
||||
)
|
||||
/obj/item/weapon/robot_module/robot/engineering/general
|
||||
|
||||
/obj/item/weapon/robot_module/robot/engineering
|
||||
pto_type = PTO_ENGINEERING
|
||||
|
||||
/obj/item/weapon/robot_module/robot/engineering/general
|
||||
vr_sprites = list(
|
||||
"Acheron" = "mechoid-Engineering",
|
||||
"Shellguard Noble" = "Noble-ENG",
|
||||
@@ -194,6 +225,8 @@
|
||||
|
||||
/obj/item/weapon/robot_module/robot/research
|
||||
pto_type = PTO_SCIENCE
|
||||
|
||||
/obj/item/weapon/robot_module/robot/research/general
|
||||
vr_sprites = list(
|
||||
"Acheron" = "mechoid-Science",
|
||||
"ZOOM-BA" = "zoomba-research",
|
||||
@@ -202,16 +235,7 @@
|
||||
"Feminine Humanoid" = "uptall-science"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/security/combat
|
||||
pto_type = PTO_SECURITY
|
||||
vr_sprites = list(
|
||||
"Acheron" = "mechoid-Combat",
|
||||
"ZOOM-BA" = "zoomba-combat",
|
||||
"W02M" = "worm-combat",
|
||||
"Feminine Humanoid" = "uptall-security"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/knine
|
||||
/obj/item/weapon/robot_module/robot/security/knine
|
||||
name = "k9 robot module"
|
||||
sprites = list(
|
||||
"K9 hound" = "k9",
|
||||
@@ -224,13 +248,8 @@
|
||||
"Drake" = "drakesec",
|
||||
"Secborg model V-4" = "secraptor"//CHOMPEdit
|
||||
)
|
||||
channels = list("Security" = 1)
|
||||
networks = list(NETWORK_SECURITY)
|
||||
pto_type = PTO_SECURITY
|
||||
can_be_pushed = 0
|
||||
supported_upgrades = list(/obj/item/borg/upgrade/tasercooler)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/knine/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/security/knine/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/handcuffs/cyborg(src) //You need cuffs to be a proper sec borg!
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/big(src) //In case there's some kind of hostile mob.
|
||||
src.modules += new /obj/item/weapon/melee/baton/robot(src) //Since the pounce module refused to work, they get a stunbaton instead.
|
||||
@@ -275,7 +294,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/knine/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
/obj/item/weapon/robot_module/robot/security/knine/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
var/obj/item/device/flash/F = locate() in src.modules
|
||||
if(F.broken)
|
||||
F.broken = 0
|
||||
@@ -294,13 +313,8 @@
|
||||
B.bcell.give(amount)*/
|
||||
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medihound
|
||||
/obj/item/weapon/robot_module/robot/medical/medihound
|
||||
name = "MediHound module"
|
||||
channels = list("Medical" = 1)
|
||||
networks = list(NETWORK_MEDICAL)
|
||||
subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor)
|
||||
pto_type = PTO_MEDICAL
|
||||
can_be_pushed = 0
|
||||
sprites = list(
|
||||
"Medical Hound" = "medihound",
|
||||
"Dark Medical Hound (Static)" = "medihounddark",
|
||||
@@ -312,7 +326,7 @@
|
||||
"Mediborg model V-4" = "medraptor" //CHOMPEdit
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medihound/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/medical/medihound/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/small(src) //In case a patient is being attacked by carp.
|
||||
src.modules += new /obj/item/device/dogborg/boop_module(src) //Boop the crew.
|
||||
src.modules += new /obj/item/device/healthanalyzer(src) // See who's hurt specificially.
|
||||
@@ -396,20 +410,15 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/trauma
|
||||
/obj/item/weapon/robot_module/robot/medical/traumahound
|
||||
name = "traumahound robot module"
|
||||
channels = list("Medical" = 1)
|
||||
networks = list(NETWORK_MEDICAL)
|
||||
subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor)
|
||||
pto_type = PTO_MEDICAL
|
||||
can_be_pushed = 0
|
||||
sprites = list(
|
||||
"Traumahound" = "traumavale",
|
||||
"Drake" = "draketrauma",
|
||||
"Borgi" = "borgi-trauma"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/trauma/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/medical/traumahound/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/device/healthanalyzer(src)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/small(src)
|
||||
src.modules += new /obj/item/device/dogborg/boop_module(src)
|
||||
@@ -484,19 +493,15 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/ert
|
||||
/obj/item/weapon/robot_module/robot/security/ert
|
||||
name = "Emergency Responce module"
|
||||
channels = list("Security" = 1)
|
||||
networks = list(NETWORK_SECURITY)
|
||||
pto_type = PTO_SECURITY
|
||||
can_be_pushed = 0
|
||||
sprites = list(
|
||||
"Standard" = "ert",
|
||||
"Classic" = "ertold",
|
||||
"Borgi" = "borgi"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/ert/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/security/ert/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/handcuffs/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/ert(src)
|
||||
src.modules += new /obj/item/taperoll/police(src)
|
||||
@@ -540,7 +545,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/scrubpup
|
||||
/obj/item/weapon/robot_module/robot/janitor/scrubpup
|
||||
name = "Custodial Hound module"
|
||||
sprites = list(
|
||||
"Custodial Hound" = "scrubpup",
|
||||
@@ -550,11 +555,9 @@
|
||||
"Cat" = "vixjani", //CHOMPEdit
|
||||
"Drake" = "drakejanit"
|
||||
)
|
||||
channels = list("Service" = 1)
|
||||
pto_type = PTO_CIVILIAN
|
||||
can_be_pushed = 0
|
||||
|
||||
/obj/item/weapon/robot_module/robot/scrubpup/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/janitor/scrubpup/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/small(src)
|
||||
src.modules += new /obj/item/device/dogborg/boop_module(src)
|
||||
src.modules += new /obj/item/pupscrubber(src)
|
||||
@@ -632,7 +635,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/science
|
||||
/obj/item/weapon/robot_module/robot/research/sciencehound
|
||||
name = "Research Hound Module"
|
||||
sprites = list(
|
||||
"Research Hound" = "science",
|
||||
@@ -643,12 +646,9 @@
|
||||
"Drake" = "drakesci",
|
||||
"Sciborg model V-4" = "sciraptor"//CHOMPEdit
|
||||
)
|
||||
channels = list("Science" = 1)
|
||||
pto_type = PTO_SCIENCE
|
||||
can_be_pushed = 0
|
||||
supported_upgrades = list(/obj/item/borg/upgrade/advrped)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/science/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/research/sciencehound/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/small(src)
|
||||
src.modules += new /obj/item/device/dogborg/boop_module(src)
|
||||
src.modules += new /obj/item/weapon/gripper/research(src)
|
||||
@@ -725,7 +725,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/engiedog
|
||||
/obj/item/weapon/robot_module/robot/engineering/engiedog
|
||||
name = "Construction Hound module"
|
||||
sprites = list(
|
||||
"Pupdozer" = "pupdozer",
|
||||
@@ -736,13 +736,9 @@
|
||||
"Cat" = "vixengi", //CHOMPEdit
|
||||
"Drake" = "drakeeng"
|
||||
)
|
||||
channels = list("Engineering" = 1)
|
||||
networks = list(NETWORK_ENGINEERING)
|
||||
pto_type = PTO_ENGINEERING
|
||||
subsystems = list(/mob/living/silicon/proc/subsystem_power_monitor)
|
||||
can_be_pushed = 0
|
||||
|
||||
/obj/item/weapon/robot_module/robot/engiedog/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/engineering/engiedog/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/borg/sight/meson(src)
|
||||
src.modules += new /obj/item/weapon/weldingtool/electric/mounted/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/tool/screwdriver/cyborg(src)
|
||||
@@ -888,7 +884,7 @@
|
||||
..()
|
||||
|
||||
// Uses modified K9 sprites.
|
||||
/obj/item/weapon/robot_module/robot/clerical/brodog
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/brodog
|
||||
name = "service-hound module"
|
||||
sprites = list(
|
||||
"Blackhound" = "k50",
|
||||
@@ -898,13 +894,11 @@
|
||||
"Cat" = "vixserv", //CHOMPEdit
|
||||
"Drake" = "drakemine"
|
||||
)
|
||||
channels = list("Service" = 1)
|
||||
pto_type = PTO_CIVILIAN
|
||||
can_be_pushed = 0
|
||||
|
||||
|
||||
// In a nutshell, basicly service/butler robot but in dog form. - Port from CitadelRP
|
||||
/obj/item/weapon/robot_module/robot/clerical/brodog/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/brodog/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/weapon/gripper/service(src)
|
||||
src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src)
|
||||
src.modules += new /obj/item/weapon/material/minihoe(src)
|
||||
@@ -970,7 +964,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/kmine
|
||||
/obj/item/weapon/robot_module/robot/miner/kmine
|
||||
name = "Supply Hound Module"
|
||||
sprites = list(
|
||||
"KMine" = "kmine",
|
||||
@@ -980,12 +974,9 @@
|
||||
"Cat Cargo" = "vixcargo", //CHOMPEdit
|
||||
"Drake" = "drakemine"
|
||||
)
|
||||
channels = list("Supply" = 1)
|
||||
pto_type = PTO_CARGO
|
||||
can_be_pushed = 0
|
||||
supported_upgrades = list(/obj/item/borg/upgrade/pka, /obj/item/borg/upgrade/diamonddrill)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/kmine/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/miner/kmine/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/borg/sight/material(src)
|
||||
src.modules += new /obj/item/weapon/tool/wrench/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/tool/screwdriver/cyborg(src)
|
||||
@@ -1054,10 +1045,13 @@
|
||||
R.verbs -= /mob/living/silicon/robot/proc/rest_style
|
||||
..()
|
||||
|
||||
<<<<<<< HEAD
|
||||
/obj/item/weapon/robot_module/robot/booze
|
||||
=======
|
||||
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/booze
|
||||
>>>>>>> a533de71c6... Merge pull request #14269 from Heroman3003/borg-event-stuff
|
||||
name = "BoozeHound robot module"
|
||||
channels = list("Service" = 1)
|
||||
pto_type = PTO_CIVILIAN
|
||||
can_be_pushed = 0
|
||||
sprites = list(
|
||||
"Beer Buddy" = "boozeborg",
|
||||
@@ -1070,7 +1064,7 @@
|
||||
"Vodka Komrade" = "boozeborg(vodka)"
|
||||
) //CHOMP Edit Added Vodka Komrade
|
||||
|
||||
/obj/item/weapon/robot_module/robot/booze/New(var/mob/living/silicon/robot/R)
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/booze/New(var/mob/living/silicon/robot/R)
|
||||
..()
|
||||
src.modules += new /obj/item/weapon/gripper/service(src)
|
||||
//src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src)
|
||||
@@ -1117,7 +1111,7 @@
|
||||
R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill
|
||||
..()
|
||||
|
||||
/obj/item/weapon/robot_module/robot/booze/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
/obj/item/weapon/robot_module/robot/clerical/butler/booze/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
var/obj/item/weapon/reagent_containers/food/condiment/enzyme/E = locate() in src.modules
|
||||
E.reagents.add_reagent("enzyme", 2 * amount)
|
||||
|
||||
|
||||
120
maps/groundbase/groundbase_events.dm
Normal file
120
maps/groundbase/groundbase_events.dm
Normal file
@@ -0,0 +1,120 @@
|
||||
#define ASSIGNMENT_ANY "Any"
|
||||
#define ASSIGNMENT_AI "AI"
|
||||
#define ASSIGNMENT_CYBORG "Cyborg"
|
||||
#define ASSIGNMENT_ENGINEER "Engineer"
|
||||
#define ASSIGNMENT_GARDENER "Botanist"
|
||||
#define ASSIGNMENT_JANITOR "Janitor"
|
||||
#define ASSIGNMENT_MEDICAL "Medical"
|
||||
#define ASSIGNMENT_SCIENTIST "Scientist"
|
||||
#define ASSIGNMENT_SECURITY "Security"
|
||||
|
||||
//
|
||||
// VOREStation overrides to the default event manager configuration.
|
||||
//
|
||||
// This file lets us configure which events we want in the rotation without conflicts with upstream.
|
||||
// It works because the actual event containers don't define New(), allowing us to use New() to replace
|
||||
// the lists of available events. If they ever do define New() this will need to be changed.
|
||||
//
|
||||
// Specifically the change is to move events we don't want down into the disabled_events list
|
||||
//
|
||||
|
||||
// Adds a list of pre-disabled events to the available events list.
|
||||
// This keeps them in the rotation, but disabled, so they can be enabled with a click if desired that round.
|
||||
/datum/event_container/proc/add_disabled_events(var/list/disabled_events)
|
||||
for(var/datum/event_meta/EM in disabled_events)
|
||||
EM.enabled = 0
|
||||
available_events += EM
|
||||
|
||||
/datum/event_container/mundane/New()
|
||||
available_events = list(
|
||||
// Severity level, event name, even type, base weight, role weights, one shot, min weight, max weight. Last two only used if set and non-zero
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 400),
|
||||
// Bluescreens APCs, but they still work
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "APC Damage", /datum/event/apc_damage, 20, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Brand Intelligence",/datum/event/brand_intelligence, 0, list(ASSIGNMENT_ENGINEER = 10), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Camera Damage", /datum/event/camera_damage, 20, list(ASSIGNMENT_ENGINEER = 20, ASSIGNMENT_SECURITY = 5), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Canister Leak", /datum/event/canister_leak, 10, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Economic News", /datum/event/economic_event, 300),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Carp", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 10), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Hacker", /datum/event/money_hacker, 0, list(ASSIGNMENT_ANY = 4), 1, 10, 25),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Lotto", /datum/event/money_lotto, 0, list(ASSIGNMENT_ANY = 1), 1, 5, 15),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Shipping Error", /datum/event/shipping_error , 30, list(ASSIGNMENT_ANY = 2), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400),
|
||||
// Spawns mice, lizards, or dud spiderlings
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 50, list(ASSIGNMENT_JANITOR = 25), 1),
|
||||
// Rot only weakens walls, not destroy them
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Ian Storm", /datum/event/ianstorm, 1, list(), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Aurora Caelus", /datum/event/aurora_caelus, 2, list(), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 0, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 2)),
|
||||
))
|
||||
|
||||
/datum/event_container/moderate/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Nothing", /datum/event/nothing, 1600),
|
||||
// Leaks gas into an unoccupied room.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
// Just disables comms for a short while.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Communication Blackout", /datum/event/communications_blackout, 500, list(), 1),
|
||||
// Just blows out a few lights
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Electrical Storm", /datum/event/electrical_storm, 70, list(ASSIGNMENT_ENGINEER = 25, ASSIGNMENT_JANITOR = 100), 1),
|
||||
// Temporary power failure, but mitigatead by subgrids
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grid Check", /datum/event/grid_check, 0, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
// Pure RP fun, no mechanical effects.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Ion Storm", /datum/event/ionstorm, 0, list(ASSIGNMENT_AI = 80, ASSIGNMENT_CYBORG = 50, ASSIGNMENT_SCIENTIST = 20), min_jobs = list(ASSIGNMENT_AI = 1)),
|
||||
// Opens doors in brig. So just RP fun
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Prison Break", /datum/event/prison_break, 10, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
// Radiation, but only in space.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Rogue Drones", /datum/event/rogue_drone, 0, list(ASSIGNMENT_SECURITY = 20), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Virology Breach", /datum/event/prison_break/virology, 0, list(ASSIGNMENT_MEDICAL = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_SCIENTIST = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Spider Infestation", /datum/event/spider_infestation, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
//Evil grubs that drain station power slightly
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grub Infestation", /datum/event/grub_infestation, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 1, ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 40, list(ASSIGNMENT_SCIENTIST = 40), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 100, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Jellyfish School", /datum/event/jellyfish_migration, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Meteor Shower", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 20)),
|
||||
// Not bad (dorms are shielded) but inconvenient
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Radiation Storm", /datum/event/radiation_storm, 50, list(ASSIGNMENT_MEDICAL = 50), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Random Antagonist", /datum/event/random_antag, 0, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Solar Storm", /datum/event/solar_storm, 30, list(ASSIGNMENT_ENGINEER = 40, ASSIGNMENT_SECURITY = 30), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Gravity Failure", /datum/event/gravity, 75, list(ASSIGNMENT_ENGINEER = 60), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 1, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 3)),
|
||||
))
|
||||
|
||||
/datum/event_container/major/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 20, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 10, list(ASSIGNMENT_ENGINEER = 3, ASSIGNMENT_GARDENER = 3, ASSIGNMENT_SCIENTIST = 3), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station, 0, list(ASSIGNMENT_ENGINEER = 5, ASSIGNMENT_MEDICAL = 5, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_SCIENTIST = 5), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
#undef ASSIGNMENT_ANY
|
||||
#undef ASSIGNMENT_AI
|
||||
#undef ASSIGNMENT_CYBORG
|
||||
#undef ASSIGNMENT_ENGINEER
|
||||
#undef ASSIGNMENT_GARDENER
|
||||
#undef ASSIGNMENT_JANITOR
|
||||
#undef ASSIGNMENT_MEDICAL
|
||||
#undef ASSIGNMENT_SCIENTIST
|
||||
#undef ASSIGNMENT_SECURITY
|
||||
121
maps/stellar_delight/stellar_delight_events.dm
Normal file
121
maps/stellar_delight/stellar_delight_events.dm
Normal file
@@ -0,0 +1,121 @@
|
||||
#define ASSIGNMENT_ANY "Any"
|
||||
#define ASSIGNMENT_AI "AI"
|
||||
#define ASSIGNMENT_CYBORG "Cyborg"
|
||||
#define ASSIGNMENT_ENGINEER "Engineer"
|
||||
#define ASSIGNMENT_GARDENER "Botanist"
|
||||
#define ASSIGNMENT_JANITOR "Janitor"
|
||||
#define ASSIGNMENT_MEDICAL "Medical"
|
||||
#define ASSIGNMENT_SCIENTIST "Scientist"
|
||||
#define ASSIGNMENT_SECURITY "Security"
|
||||
|
||||
//
|
||||
// VOREStation overrides to the default event manager configuration.
|
||||
//
|
||||
// This file lets us configure which events we want in the rotation without conflicts with upstream.
|
||||
// It works because the actual event containers don't define New(), allowing us to use New() to replace
|
||||
// the lists of available events. If they ever do define New() this will need to be changed.
|
||||
//
|
||||
// Specifically the change is to move events we don't want down into the disabled_events list
|
||||
//
|
||||
|
||||
// Adds a list of pre-disabled events to the available events list.
|
||||
// This keeps them in the rotation, but disabled, so they can be enabled with a click if desired that round.
|
||||
/datum/event_container/proc/add_disabled_events(var/list/disabled_events)
|
||||
for(var/datum/event_meta/EM in disabled_events)
|
||||
EM.enabled = 0
|
||||
available_events += EM
|
||||
|
||||
/datum/event_container/mundane/New()
|
||||
available_events = list(
|
||||
// Severity level, event name, even type, base weight, role weights, one shot, min weight, max weight. Last two only used if set and non-zero
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 400),
|
||||
// Bluescreens APCs, but they still work
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "APC Damage", /datum/event/apc_damage, 20, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Brand Intelligence",/datum/event/brand_intelligence, 0, list(ASSIGNMENT_ENGINEER = 10), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Camera Damage", /datum/event/camera_damage, 20, list(ASSIGNMENT_ENGINEER = 20, ASSIGNMENT_SECURITY = 5), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Canister Leak", /datum/event/canister_leak, 10, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 0, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 2)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Economic News", /datum/event/economic_event, 300),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Carp", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 10), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Hacker", /datum/event/money_hacker, 0, list(ASSIGNMENT_ANY = 4), 1, 10, 25),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Lotto", /datum/event/money_lotto, 0, list(ASSIGNMENT_ANY = 1), 1, 5, 15),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Shipping Error", /datum/event/shipping_error , 30, list(ASSIGNMENT_ANY = 2), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400),
|
||||
// Spawns mice, lizards, or dud spiderlings
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 50, list(ASSIGNMENT_JANITOR = 25), 1),
|
||||
// Rot only weakens walls, not destroy them
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Aurora Caelus", /datum/event/aurora_caelus, 2, list(), 1),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Ian Storm", /datum/event/ianstorm, 1, list(), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
/datum/event_container/moderate/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Nothing", /datum/event/nothing, 1600),
|
||||
// Leaks gas into an unoccupied room.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
// Just disables comms for a short while.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Communication Blackout", /datum/event/communications_blackout, 500, list(), 1),
|
||||
// Just blows out a few lights
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Electrical Storm", /datum/event/electrical_storm, 70, list(ASSIGNMENT_ENGINEER = 25, ASSIGNMENT_JANITOR = 100), 1),
|
||||
// This one is just too fun.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Gravity Failure", /datum/event/gravity, 150, list(), 1),
|
||||
// Temporary power failure, but mitigatead by subgrids
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grid Check", /datum/event/grid_check, 0, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
// Pure RP fun, no mechanical effects.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Ion Storm", /datum/event/ionstorm, 0, list(ASSIGNMENT_AI = 80, ASSIGNMENT_CYBORG = 50, ASSIGNMENT_SCIENTIST = 20), min_jobs = list(ASSIGNMENT_AI = 1)),
|
||||
// Opens doors in brig. So just RP fun
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Prison Break", /datum/event/prison_break, 10, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
// Radiation, but only in space.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Rogue Drones", /datum/event/rogue_drone, 0, list(ASSIGNMENT_SECURITY = 20), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Solar Storm", /datum/event/solar_storm, 30, list(ASSIGNMENT_ENGINEER = 30, ASSIGNMENT_ANY = 5), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 1, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Virology Breach", /datum/event/prison_break/virology, 0, list(ASSIGNMENT_MEDICAL = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_SCIENTIST = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Spider Infestation", /datum/event/spider_infestation, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
//Evil grubs that drain station power slightly
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grub Infestation", /datum/event/grub_infestation, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 1, ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 40, list(ASSIGNMENT_SCIENTIST = 40), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 100, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Jellyfish School", /datum/event/jellyfish_migration, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 5), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Meteor Shower", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 20)),
|
||||
// Not bad (dorms are shielded) but inconvenient
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Radiation Storm", /datum/event/radiation_storm, 50, list(ASSIGNMENT_MEDICAL = 50), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Random Antagonist", /datum/event/random_antag, 0, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
/datum/event_container/major/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 20, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 10, list(ASSIGNMENT_ENGINEER = 3, ASSIGNMENT_GARDENER = 3, ASSIGNMENT_SCIENTIST = 3), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station, 0, list(ASSIGNMENT_ENGINEER = 5, ASSIGNMENT_MEDICAL = 5, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_SCIENTIST = 5), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
#undef ASSIGNMENT_ANY
|
||||
#undef ASSIGNMENT_AI
|
||||
#undef ASSIGNMENT_CYBORG
|
||||
#undef ASSIGNMENT_ENGINEER
|
||||
#undef ASSIGNMENT_GARDENER
|
||||
#undef ASSIGNMENT_JANITOR
|
||||
#undef ASSIGNMENT_MEDICAL
|
||||
#undef ASSIGNMENT_SCIENTIST
|
||||
#undef ASSIGNMENT_SECURITY
|
||||
121
maps/tether/tether_events.dm
Normal file
121
maps/tether/tether_events.dm
Normal file
@@ -0,0 +1,121 @@
|
||||
#define ASSIGNMENT_ANY "Any"
|
||||
#define ASSIGNMENT_AI "AI"
|
||||
#define ASSIGNMENT_CYBORG "Cyborg"
|
||||
#define ASSIGNMENT_ENGINEER "Engineer"
|
||||
#define ASSIGNMENT_GARDENER "Botanist"
|
||||
#define ASSIGNMENT_JANITOR "Janitor"
|
||||
#define ASSIGNMENT_MEDICAL "Medical"
|
||||
#define ASSIGNMENT_SCIENTIST "Scientist"
|
||||
#define ASSIGNMENT_SECURITY "Security"
|
||||
|
||||
//
|
||||
// VOREStation overrides to the default event manager configuration.
|
||||
//
|
||||
// This file lets us configure which events we want in the rotation without conflicts with upstream.
|
||||
// It works because the actual event containers don't define New(), allowing us to use New() to replace
|
||||
// the lists of available events. If they ever do define New() this will need to be changed.
|
||||
//
|
||||
// Specifically the change is to move events we don't want down into the disabled_events list
|
||||
//
|
||||
|
||||
// Adds a list of pre-disabled events to the available events list.
|
||||
// This keeps them in the rotation, but disabled, so they can be enabled with a click if desired that round.
|
||||
/datum/event_container/proc/add_disabled_events(var/list/disabled_events)
|
||||
for(var/datum/event_meta/EM in disabled_events)
|
||||
EM.enabled = 0
|
||||
available_events += EM
|
||||
|
||||
/datum/event_container/mundane/New()
|
||||
available_events = list(
|
||||
// Severity level, event name, even type, base weight, role weights, one shot, min weight, max weight. Last two only used if set and non-zero
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 400),
|
||||
// Bluescreens APCs, but they still work
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "APC Damage", /datum/event/apc_damage, 20, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Brand Intelligence",/datum/event/brand_intelligence, 0, list(ASSIGNMENT_ENGINEER = 10), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Camera Damage", /datum/event/camera_damage, 20, list(ASSIGNMENT_ENGINEER = 20, ASSIGNMENT_SECURITY = 5), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Canister Leak", /datum/event/canister_leak, 10, list(ASSIGNMENT_ENGINEER = 20), min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 0, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 2)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Economic News", /datum/event/economic_event, 300),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Carp", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 10), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Hacker", /datum/event/money_hacker, 0, list(ASSIGNMENT_ANY = 4), 1, 10, 25),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Money Lotto", /datum/event/money_lotto, 0, list(ASSIGNMENT_ANY = 1), 1, 5, 15),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Shipping Error", /datum/event/shipping_error , 30, list(ASSIGNMENT_ANY = 2), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lore News", /datum/event/lore_news, 400),
|
||||
// Spawns mice, lizards, or dud spiderlings
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 50, list(ASSIGNMENT_JANITOR = 25), 1),
|
||||
// Rot only weakens walls, not destroy them
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 0, list(ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Aurora Caelus", /datum/event/aurora_caelus, 2, list(), 1),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Ian Storm", /datum/event/ianstorm, 1, list(), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
/datum/event_container/moderate/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Nothing", /datum/event/nothing, 1600),
|
||||
// Leaks gas into an unoccupied room.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Carp School", /datum/event/carp_migration, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
// Just disables comms for a short while.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Communication Blackout", /datum/event/communications_blackout, 500, list(), 1),
|
||||
// Just blows out a few lights
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Electrical Storm", /datum/event/electrical_storm, 70, list(ASSIGNMENT_ENGINEER = 20, ASSIGNMENT_JANITOR = 150), 1),
|
||||
// This one is just too fun.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Gravity Failure", /datum/event/gravity, 75, list(ASSIGNMENT_ENGINEER = 60), 1),
|
||||
// Temporary power failure, but mitigatead by subgrids
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grid Check", /datum/event/grid_check, 0, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
// Pure RP fun, no mechanical effects.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Ion Storm", /datum/event/ionstorm, 0, list(ASSIGNMENT_AI = 80, ASSIGNMENT_CYBORG = 50, ASSIGNMENT_ENGINEER = 15, ASSIGNMENT_SCIENTIST = 5), min_jobs = list(ASSIGNMENT_AI = 1)),
|
||||
// Opens doors in brig. So just RP fun
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Prison Break", /datum/event/prison_break, 10, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
// Radiation, but only in space.
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Rogue Drones", /datum/event/rogue_drone, 0, list(ASSIGNMENT_SECURITY = 20), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Solar Storm", /datum/event/solar_storm, 30, list(ASSIGNMENT_ENGINEER = 40, ASSIGNMENT_SECURITY = 30), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Space Dust", /datum/event/dust, 0, list(ASSIGNMENT_ENGINEER = 20), 1, 0, 50, min_jobs = list(ASSIGNMENT_ENGINEER = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Virology Breach", /datum/event/prison_break/virology, 0, list(ASSIGNMENT_MEDICAL = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_SCIENTIST = 15, ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Spider Infestation", /datum/event/spider_infestation, 0, list(ASSIGNMENT_SECURITY = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
//Evil grubs that drain station power slightly
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grub Infestation", /datum/event/grub_infestation, 0, list(ASSIGNMENT_SECURITY = 10, ASSIGNMENT_ENGINEER = 30), 1, min_jobs = list(ASSIGNMENT_SECURITY = 1, ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 40, list(ASSIGNMENT_SCIENTIST = 40), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 100, list(ASSIGNMENT_ANY = 5), 0),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Jellyfish School", /datum/event/jellyfish_migration, 0, list(ASSIGNMENT_SECURITY = 15, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Meteor Shower", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 20)),
|
||||
// Not bad (dorms are shielded) but inconvenient
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Radiation Storm", /datum/event/radiation_storm, 50, list(ASSIGNMENT_MEDICAL = 50), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Random Antagonist", /datum/event/random_antag, 0, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5),
|
||||
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
/datum/event_container/major/New()
|
||||
available_events = list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 20, list(ASSIGNMENT_ENGINEER = 25), 1, min_jobs = list(ASSIGNMENT_ENGINEER = 1)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 10, list(ASSIGNMENT_ENGINEER = 3, ASSIGNMENT_GARDENER = 3, ASSIGNMENT_SCIENTIST = 3), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1, min_jobs = list(ASSIGNMENT_SECURITY = 3)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station, 0, list(ASSIGNMENT_ENGINEER = 5, ASSIGNMENT_MEDICAL = 5, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_SCIENTIST = 5), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
)
|
||||
add_disabled_events(list(
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1),
|
||||
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
|
||||
))
|
||||
|
||||
#undef ASSIGNMENT_ANY
|
||||
#undef ASSIGNMENT_AI
|
||||
#undef ASSIGNMENT_CYBORG
|
||||
#undef ASSIGNMENT_ENGINEER
|
||||
#undef ASSIGNMENT_GARDENER
|
||||
#undef ASSIGNMENT_JANITOR
|
||||
#undef ASSIGNMENT_MEDICAL
|
||||
#undef ASSIGNMENT_SCIENTIST
|
||||
#undef ASSIGNMENT_SECURITY
|
||||
Reference in New Issue
Block a user