diff --git a/code/game/objects/items/trash_vr.dm b/code/game/objects/items/trash_vr.dm index 17cf91d1768..572c08a2657 100644 --- a/code/game/objects/items/trash_vr.dm +++ b/code/game/objects/items/trash_vr.dm @@ -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) diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index 1698593f91c..365507aa1b2 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -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) diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 0ea141ce2aa..2ab86a5bf0a 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -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) diff --git a/code/modules/emotes/definitions/synthetics.dm b/code/modules/emotes/definitions/synthetics.dm index 4f94b7b59b6..4d5fea40ef7 100644 --- a/code/modules/emotes/definitions/synthetics.dm +++ b/code/modules/emotes/definitions/synthetics.dm @@ -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" diff --git a/code/modules/events/event_container.dm b/code/modules/events/event_container.dm index a47847fc0a6..55cf7d5038f 100644 --- a/code/modules/events/event_container.dm +++ b/code/modules/events/event_container.dm @@ -140,8 +140,6 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Lost Carp", /datum/event/carp_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), - //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), 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, "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), diff --git a/code/modules/events/event_container_vr.dm b/code/modules/events/event_container_vr.dm index 02e2623500a..71911302b78 100644 --- a/code/modules/events/event_container_vr.dm +++ b/code/modules/events/event_container_vr.dm @@ -39,8 +39,6 @@ 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, "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), 1, 25, 50), 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), diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index 68a72807f94..28383109af4 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -205,6 +205,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"]++ diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index 86262c2b2fd..70f807c9061 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -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, @@ -575,7 +575,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) @@ -585,7 +585,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) @@ -615,6 +615,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", @@ -639,7 +642,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) @@ -739,7 +742,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) @@ -777,7 +780,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) @@ -821,7 +824,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) diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index 9d999dc12ff..3ed21b684fc 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -41,17 +41,17 @@ ) /hook/startup/proc/robot_modules_vr() - 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 - robot_modules["Janihound"] = /obj/item/weapon/robot_module/robot/scrubpup - robot_modules["Sci-borg"] = /obj/item/weapon/robot_module/robot/science - robot_modules["Pupdozer"] = /obj/item/weapon/robot_module/robot/engiedog - robot_modules["Service-Hound"] = /obj/item/weapon/robot_module/robot/clerical/brodog - robot_modules["BoozeHound"] = /obj/item/weapon/robot_module/robot/booze - robot_modules["KMine"] = /obj/item/weapon/robot_module/robot/kmine + 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 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 @@ -70,8 +70,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", @@ -81,7 +83,6 @@ ) /obj/item/weapon/robot_module/robot/medical/crisis - pto_type = PTO_MEDICAL vr_sprites = list( "Handy" = "handy-med", "Acheron" = "mechoid-Medical", @@ -91,8 +92,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", @@ -104,7 +107,6 @@ ) /obj/item/weapon/robot_module/robot/clerical/general - pto_type = PTO_CIVILIAN vr_sprites = list( "Handy" = "handy-clerk", "Acheron" = "mechoid-Service", @@ -116,6 +118,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", @@ -125,8 +129,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", @@ -136,8 +142,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", @@ -158,8 +174,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", @@ -170,6 +189,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", @@ -178,16 +199,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", @@ -197,13 +209,8 @@ "Otieborg" = "oties", "Drake" = "drakesec" ) - 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. @@ -244,7 +251,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 @@ -263,13 +270,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", @@ -278,7 +280,7 @@ "Drake" = "drakemed" ) -/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. @@ -339,20 +341,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) @@ -427,19 +424,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) @@ -477,7 +470,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", @@ -486,11 +479,9 @@ "Otieborg" = "otiej", "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) @@ -564,7 +555,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", @@ -573,12 +564,9 @@ "SciHoundDark" = "scihounddark", "Drake" = "drakesci" ) - 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) @@ -651,7 +639,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", @@ -661,13 +649,9 @@ "EngiHoundDark" = "engihounddark", "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) @@ -805,7 +789,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", @@ -814,13 +798,11 @@ "ServicehoundV2 Darkmode" = "servedark", "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) @@ -882,7 +864,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", @@ -890,12 +872,9 @@ "CargoHoundDark" = "cargohounddark", "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) @@ -960,10 +939,8 @@ ..() -/obj/item/weapon/robot_module/robot/booze +/obj/item/weapon/robot_module/robot/clerical/butler/booze name = "BoozeHound robot module" - channels = list("Service" = 1) - pto_type = PTO_CIVILIAN can_be_pushed = 0 sprites = list( "Beer Buddy" = "boozeborg", @@ -975,7 +952,7 @@ "Vampire's Aid" = "boozeborg(red)" ) -/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) @@ -1018,6 +995,6 @@ 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) diff --git a/maps/groundbase/groundbase_events.dm b/maps/groundbase/groundbase_events.dm index 09e78414b87..7f4e6a0a8d5 100644 --- a/maps/groundbase/groundbase_events.dm +++ b/maps/groundbase/groundbase_events.dm @@ -32,14 +32,12 @@ // 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), 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, "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), 1, 25, 50), 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), @@ -62,25 +60,23 @@ 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(ASSIGNMENT_AI = 100, ASSIGNMENT_SECURITY = 50), 1), + 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), + 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_ENGINEER = 15, ASSIGNMENT_SCIENTIST = 5), min_jobs = list(ASSIGNMENT_AI = 1)), + 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 = 100), 1), + 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_ENGINEER = 30), 1), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_ENGINEER = 30), 1), + 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, 25, list(ASSIGNMENT_SCIENTIST = 40), 1), + 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)), @@ -90,7 +86,7 @@ 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, 2.5, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5), + 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), @@ -101,10 +97,10 @@ 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 = 7, ASSIGNMENT_GARDENER = 2), 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_ANY = 5), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)), + 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), diff --git a/maps/stellar_delight/stellar_delight_events.dm b/maps/stellar_delight/stellar_delight_events.dm index 02e2623500a..d1a4de83b4f 100644 --- a/maps/stellar_delight/stellar_delight_events.dm +++ b/maps/stellar_delight/stellar_delight_events.dm @@ -32,15 +32,13 @@ // 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), 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, "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), 1, 25, 50), 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), @@ -62,37 +60,37 @@ 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(ASSIGNMENT_AI = 100, ASSIGNMENT_SECURITY = 50), 1), + 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), + 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, 75, list(ASSIGNMENT_ENGINEER = 60), 1), + 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_ENGINEER = 15, ASSIGNMENT_SCIENTIST = 5), min_jobs = list(ASSIGNMENT_AI = 1)), + 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 = 100), 1), + 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, "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_ENGINEER = 30), 1), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_ENGINEER = 30), 1), + 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, 25, list(ASSIGNMENT_SCIENTIST = 40), 1), + 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)), + 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, 2.5, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5), + 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), )) @@ -100,10 +98,10 @@ 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 = 7, ASSIGNMENT_GARDENER = 2), 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_ANY = 5), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)), + 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), diff --git a/maps/tether/tether_events.dm b/maps/tether/tether_events.dm index 9935ae8fa4a..b6dc85c1e0d 100644 --- a/maps/tether/tether_events.dm +++ b/maps/tether/tether_events.dm @@ -32,15 +32,13 @@ // 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), 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, "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), 1, 25, 50), 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), @@ -62,9 +60,9 @@ 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(ASSIGNMENT_AI = 100, ASSIGNMENT_SECURITY = 50), 1), + 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), + 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 @@ -72,17 +70,17 @@ // 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 = 100), 1), + 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_ENGINEER = 30), 1), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Xenobiology Breach", /datum/event/prison_break/xenobiology, 0, list(ASSIGNMENT_ENGINEER = 30), 1), + 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, 25, list(ASSIGNMENT_SCIENTIST = 40), 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)), @@ -92,7 +90,7 @@ 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, 2.5, list(ASSIGNMENT_SECURITY = 1), 1, 0, 5), + 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), )) @@ -100,10 +98,10 @@ 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 = 7, ASSIGNMENT_GARDENER = 2), 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_ANY = 5), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1, min_jobs = list(ASSIGNMENT_SECURITY = 2)), + 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( diff --git a/vorestation.dme b/vorestation.dme index 8387774780a..0a727dba962 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2237,6 +2237,7 @@ #include "code\modules\events\meteors.dm" #include "code\modules\events\money_hacker.dm" #include "code\modules\events\money_lotto.dm" +#include "code\modules\events\money_spam.dm" #include "code\modules\events\morph_spawn_vr.dm" #include "code\modules\events\prison_break.dm" #include "code\modules\events\radiation_storm.dm"