From f76bb27127290fc19c2a43c88a0e0607675aeb51 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Thu, 8 Aug 2019 21:33:42 -0500 Subject: [PATCH 01/20] Fixes some runtimes and removes a holodeck exploit and a cleanup >.>; --- code/__DEFINES/subsystems.dm | 1 + code/controllers/subsystem/vore.dm | 2 +- code/game/world.dm | 5 +- code/modules/holodeck/holo_effect.dm | 10 ++-- .../living/simple_animal/simple_animal_vr.dm | 3 ++ code/modules/surgery/bodyparts/bodyparts.dm | 3 +- .../code/datums/mood_events/moodular.dm | 20 ++------ .../simple_animal/simplemob_vore_values.dm | 48 +++++++++++++++++++ .../code/modules/vore/eating/belly_obj_vr.dm | 10 ++-- .../code/modules/vore/eating/bellymodes_vr.dm | 10 +++- 10 files changed, 82 insertions(+), 30 deletions(-) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 19d0540e0e..3394fba90c 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -93,6 +93,7 @@ #define FIRE_PRIORITY_SERVER_MAINT 10 #define FIRE_PRIORITY_RESEARCH 10 #define FIRE_PRIORITY_VIS 10 +#define FIRE_PRIORITY_VORE 10 #define FIRE_PRIORITY_GARBAGE 15 #define FIRE_PRIORITY_WET_FLOORS 20 #define FIRE_PRIORITY_AIR 20 diff --git a/code/controllers/subsystem/vore.dm b/code/controllers/subsystem/vore.dm index faaa297ca3..ca34f9ab61 100644 --- a/code/controllers/subsystem/vore.dm +++ b/code/controllers/subsystem/vore.dm @@ -7,7 +7,7 @@ SUBSYSTEM_DEF(bellies) name = "Bellies" - priority = 5 + priority = FIRE_PRIORITY_VORE wait = 1 SECONDS flags = SS_KEEP_TIMING|SS_NO_INIT runlevels = RUNLEVEL_GAME|RUNLEVEL_POSTGAME diff --git a/code/game/world.dm b/code/game/world.dm index dedf822597..e9c8433006 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -137,7 +137,7 @@ GLOBAL_VAR(restart_counter) // but those are both private, so let's put the commit info in the runtime // log which is ultimately public. log_runtime(GLOB.revdata.get_log_message()) - + /world/Topic(T, addr, master, key) TGS_TOPIC //redirect to server tools if necessary @@ -270,7 +270,8 @@ GLOBAL_VAR(restart_counter) if (M.client) n++ - features += "[SSmapping.config.map_name]" //CIT CHANGE - makes the hub entry display the current map + if(SSmapping.config) // this just stops the runtime, honk. + features += "[SSmapping.config.map_name]" //CIT CHANGE - makes the hub entry display the current map if(get_security_level())//CIT CHANGE - makes the hub entry show the security level features += "[get_security_level()] alert" diff --git a/code/modules/holodeck/holo_effect.dm b/code/modules/holodeck/holo_effect.dm index fee0b2b7c9..707d650608 100644 --- a/code/modules/holodeck/holo_effect.dm +++ b/code/modules/holodeck/holo_effect.dm @@ -87,10 +87,10 @@ /obj/effect/holodeck_effect/mobspawner/pet mobtype = list( - /mob/living/simple_animal/butterfly, /mob/living/simple_animal/chick/holo, - /mob/living/simple_animal/pet/cat, /mob/living/simple_animal/pet/cat/kitten, - /mob/living/simple_animal/pet/dog/corgi, /mob/living/simple_animal/pet/dog/corgi/puppy, - /mob/living/simple_animal/pet/dog/pug, /mob/living/simple_animal/pet/fox) + /mob/living/simple_animal/butterfly/holo, /mob/living/simple_animal/chick/holo, + /mob/living/simple_animal/pet/cat/holo, /mob/living/simple_animal/pet/cat/kitten/holo, + /mob/living/simple_animal/pet/dog/corgi/holo, /mob/living/simple_animal/pet/dog/corgi/puppy/holo, + /mob/living/simple_animal/pet/dog/pug/holo, /mob/living/simple_animal/pet/fox/holo) /obj/effect/holodeck_effect/mobspawner/bee mobtype = /mob/living/simple_animal/hostile/poison/bees/toxin @@ -100,7 +100,7 @@ /obj/effect/holodeck_effect/mobspawner/penguin mobtype = /mob/living/simple_animal/pet/penguin/emperor - + /obj/effect/holodeck_effect/mobspawner/penguin/Initialize() if(prob(1)) mobtype = /mob/living/simple_animal/pet/penguin/emperor/shamebrero diff --git a/code/modules/mob/living/simple_animal/simple_animal_vr.dm b/code/modules/mob/living/simple_animal/simple_animal_vr.dm index 41ece5ed06..1e8f4c768f 100644 --- a/code/modules/mob/living/simple_animal/simple_animal_vr.dm +++ b/code/modules/mob/living/simple_animal/simple_animal_vr.dm @@ -9,6 +9,7 @@ var/list/prey_excludes = list() //For excluding people from being eaten. var/voracious_chance = VORACIOUS_CHANCE //Mob AI Engagement probability when rolling between regular melee strike and a vore attempt, default 40% + var/holodeck = FALSE // Vore belly interactions // Most mobs are only going to have the one gut. Multi-gut set ups should refer to Ash Drake's dragon_vore.dm for set up. @@ -49,6 +50,8 @@ // Simple animals have only one belly. This creates it (if it isn't already set up) /mob/living/simple_animal/init_vore() vore_init = TRUE + if(holodeck) //hacky dumbshit, but I can't get it to work right anyway + return if(vore_organs.len) return if(no_vore) //If it can't vore, let's not give it a stomach. diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index a97a133685..81b491e6de 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -354,7 +354,8 @@ if("mam_body_markings" in S.default_features) var/datum/sprite_accessory/Smark Smark = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]] - body_markings_icon = Smark.icon + if(Smark) + body_markings_icon = Smark.icon if(H.dna.features.["mam_body_markings"] != "None") body_markings = lowertext(H.dna.features.["mam_body_markings"]) auxmarking = lowertext(H.dna.features.["mam_body_markings"]) diff --git a/modular_citadel/code/datums/mood_events/moodular.dm b/modular_citadel/code/datums/mood_events/moodular.dm index b53ce417e8..aa87f1b97a 100644 --- a/modular_citadel/code/datums/mood_events/moodular.dm +++ b/modular_citadel/code/datums/mood_events/moodular.dm @@ -3,9 +3,7 @@ // box of hugs /obj/item/storage/box/hug/attack_self(mob/user) . = ..() - GET_COMPONENT_FROM(mood, /datum/component/mood, user) - if(mood) - mood.add_event("hugbox", /datum/mood_event/hugbox) + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT,"hugbox", /datum/mood_event/hugbox) //Removed headpats here, duplicate code? @@ -13,25 +11,17 @@ /obj/item/toy/plush/attack_self(mob/user) . = ..() if(stuffed || grenade) - GET_COMPONENT_FROM(mood, /datum/component/mood, user) - if(mood) - mood.add_event("plushpet", /datum/mood_event/plushpet) + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT,"plushpet", /datum/mood_event/plushpet) else - GET_COMPONENT_FROM(mood, /datum/component/mood, user) - if(mood) - mood.add_event("plush_nostuffing", /datum/mood_event/plush_nostuffing) + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT,"plush_nostuffing", /datum/mood_event/plush_nostuffing) // Jack the Ripper starring plush /obj/item/toy/plush/attackby(obj/item/I, mob/living/user, params) . = ..() if(I.is_sharp()) if(!grenade) - GET_COMPONENT_FROM(mood, /datum/component/mood, user) - if(mood) - mood.add_event("plushjack", /datum/mood_event/plushjack) + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT,"plushjack", /datum/mood_event/plushjack) // plush playing (plush-on-plush action) if(istype(I, /obj/item/toy/plush)) - GET_COMPONENT_FROM(mood, /datum/component/mood, user) - if(mood) - mood.add_event("plushplay", /datum/mood_event/plushplay) + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT,"plushplay", /datum/mood_event/plushplay) diff --git a/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm b/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm index 78e18fdb5e..78f11e0a41 100644 --- a/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm +++ b/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm @@ -133,3 +133,51 @@ vore_active = TRUE isPredator = TRUE vore_default_mode = DM_DIGEST + +/mob/living/simple_animal/butterfly/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/chick/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/cat/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/cat/kitten/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/dog/corgi/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/dog/corgi/puppy/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/dog/pug/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE + +/mob/living/simple_animal/pet/fox/holo + holodeck = TRUE + feeding = FALSE + devourable = FALSE + digestable = FALSE diff --git a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm index c4b2fbf5b1..1ad29c1af3 100644 --- a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm +++ b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm @@ -152,11 +152,13 @@ SSbellies.belly_list += src /obj/belly/Destroy() - SSbellies.belly_list -= src if(owner) - owner.vore_organs -= src - owner = null - . = ..() + Remove(owner) + return ..() + +/obj/belly/proc/Remove(mob/living/owner) + owner.vore_organs -= src + owner = null // Called whenever an atom enters this belly /obj/belly/Entered(var/atom/movable/thing,var/atom/OldLoc) diff --git a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm index 9356c25f57..da323f02e2 100644 --- a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm +++ b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm @@ -4,10 +4,16 @@ recent_sound = FALSE return SSBELLIES_IGNORED + if(!owner) + qdel(src) + SSbellies.belly_list -= src + return SSBELLIES_PROCESSED + if(loc != owner) - if(istype(owner)) - loc = owner + if(isliving(owner)) //we don't have machine based bellies. (yet :honk:) + forceMove(owner) else + SSbellies.belly_list -= src qdel(src) return SSBELLIES_PROCESSED From 5dc2124df05e93f573fa6fb67cbb6b2c7a23fb68 Mon Sep 17 00:00:00 2001 From: Fel Date: Fri, 9 Aug 2019 19:00:21 -0400 Subject: [PATCH 02/20] Update custom_items.dm --- .../modules/custom_loadout/custom_items.dm | 25 ------------------- 1 file changed, 25 deletions(-) diff --git a/modular_citadel/code/modules/custom_loadout/custom_items.dm b/modular_citadel/code/modules/custom_loadout/custom_items.dm index ece673587f..943e844ec6 100644 --- a/modular_citadel/code/modules/custom_loadout/custom_items.dm +++ b/modular_citadel/code/modules/custom_loadout/custom_items.dm @@ -322,31 +322,6 @@ name = "worn pet collar" desc = "a pet collar that looks well used." -/obj/item/clothing/neck/petcollar/naomi/examine(mob/user) - . = ..() - if(usr.ckey != "technicalmagi") - to_chat(user, "There's something odd about the it. You probably shouldn't wear it...")//warn people not to wear it if they're not Naomi, lest they become as crazy as she is - -/obj/item/clothing/neck/petcollar/naomi/equipped() - . = ..() - START_PROCESSING(SSobj, src) - -/obj/item/clothing/neck/petcollar/naomi/dropped() - . = ..() - STOP_PROCESSING(SSobj, src) - -/obj/item/clothing/neck/petcollar/naomi/process() - var/mob/living/carbon/human/H - if(ishuman(loc)) - H = loc - if(!H) - return - else if(H.get_item_by_slot(SLOT_NECK) == src) - if(H.arousalloss < H.max_arousal / 3) - H.arousalloss = H.max_arousal / 3 - if(prob(5) && H.hallucination < 15) - H.hallucination += 10 - /obj/item/clothing/neck/cloak/green name = "Generic Green Cloak" desc = "This cloak doesn't seem too special." From 5dddb11773ba1a357c7d81a62297ddea67a42b40 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Sun, 11 Aug 2019 08:37:00 -0400 Subject: [PATCH 03/20] Fixes handcuffs being impossible to actually resist out of --- code/modules/mob/living/living.dm | 13 ++++++----- .../modules/mob/living/carbon/human/human.dm | 23 ++++++++++--------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index d992a46245..19f18f9973 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -636,14 +636,15 @@ else if(canmove) if(on_fire) resist_fire() //stop, drop, and roll - else if(resting) //cit change - allows resisting out of resting + return + if(resting) //cit change - allows resisting out of resting resist_a_rest() // ditto - else if(iscarbon(src)) //Citadel Change for embedded removal memes - var/mob/living/carbon/C = src - if(!C.handcuffed && !C.legcuffed) - return TRUE - else if(last_special <= world.time) + return + if(resist_embedded()) //Citadel Change for embedded removal memes + return + if(last_special <= world.time) resist_restraints() //trying to remove cuffs. + return /mob/proc/resist_grab(moving_resist) diff --git a/modular_citadel/code/modules/mob/living/carbon/human/human.dm b/modular_citadel/code/modules/mob/living/carbon/human/human.dm index 70bac64825..bb8d4a5f4a 100644 --- a/modular_citadel/code/modules/mob/living/carbon/human/human.dm +++ b/modular_citadel/code/modules/mob/living/carbon/human/human.dm @@ -13,18 +13,19 @@ /mob/living/carbon/human/species/xeno race = /datum/species/xeno -/mob/living/carbon/human/resist() - . = ..() - if(wear_suit && wear_suit.breakouttime)//added in human cuff breakout proc +/mob/living/proc/resist_embedded() + return + +/mob/living/carbon/human/resist_embedded() + if(handcuffed || legcuffed || (wear_suit && wear_suit.breakouttime)) return - if(.) - if(canmove && !on_fire) - for(var/obj/item/bodypart/L in bodyparts) - if(istype(L) && L.embedded_objects.len) - for(var/obj/item/I in L.embedded_objects) - if(istype(I) && I.w_class >= WEIGHT_CLASS_NORMAL) //minimum weight class to insta-ripout via resist - remove_embedded_unsafe(L, I, src, 1.5) //forcefully call the remove embedded unsafe proc but with extra pain multiplier. if you want to remove it less painfully, examine and remove it carefully. - return FALSE //Hands are occupied + if(canmove && !on_fire) + for(var/obj/item/bodypart/L in bodyparts) + if(istype(L) && L.embedded_objects.len) + for(var/obj/item/I in L.embedded_objects) + if(istype(I) && I.w_class >= WEIGHT_CLASS_NORMAL) //minimum weight class to insta-ripout via resist + remove_embedded_unsafe(L, I, src, 1.5) //forcefully call the remove embedded unsafe proc but with extra pain multiplier. if you want to remove it less painfully, examine and remove it carefully. + return TRUE //Hands are occupied return /mob/living/carbon/human/proc/remove_embedded_unsafe(obj/item/bodypart/L, obj/item/I, mob/user, painmul = 1) From d30df526f7e36ae88d4e40f885a227aaeedcc9a1 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 11 Aug 2019 19:05:36 -0400 Subject: [PATCH 04/20] Update berries.dm --- code/modules/hydroponics/grown/berries.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/hydroponics/grown/berries.dm b/code/modules/hydroponics/grown/berries.dm index f106a0dfe0..d24160ad6f 100644 --- a/code/modules/hydroponics/grown/berries.dm +++ b/code/modules/hydroponics/grown/berries.dm @@ -218,13 +218,13 @@ // Strawberry /obj/item/seeds/strawberries - name = "pack of green grape seeds" + name = "pack of strawberrie seeds" desc = "These seeds grow into strawberries vines." icon_state = "seed-strawberry" species = "strawberry" plantname = "Strawberry Vine" product = /obj/item/reagent_containers/food/snacks/grown/strawberries - reagents_add = list("vitamin" = 0.07, "nutriment" = 0.1, "sugar" = 0.1) + reagents_add = list("vitamin" = 0.07, "nutriment" = 0.1, "sugar" = 0.2) mutatelist = list() /obj/item/reagent_containers/food/snacks/grown/strawberries @@ -233,4 +233,4 @@ icon_state = "strawberries" filling_color = "#7FFF00" tastes = list("strawberries" = 1) - wine_power = 20 \ No newline at end of file + wine_power = 20 From 32d70bbb6a8f073353cd10c69ea89b8d5cec6f92 Mon Sep 17 00:00:00 2001 From: Trilbyspaceclone <30435998+Trilbyspaceclone@users.noreply.github.com> Date: Sun, 11 Aug 2019 19:10:34 -0400 Subject: [PATCH 05/20] >_< --- code/modules/vending/megaseed.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/vending/megaseed.dm b/code/modules/vending/megaseed.dm index 4594048256..56b12838f0 100644 --- a/code/modules/vending/megaseed.dm +++ b/code/modules/vending/megaseed.dm @@ -32,6 +32,7 @@ /obj/item/seeds/wheat/rice = 3, /obj/item/seeds/soya = 3, /obj/item/seeds/sunflower = 3, + /obj/item/seeds/strawberries = 3, /obj/item/seeds/tea = 3, /obj/item/seeds/tobacco = 3, /obj/item/seeds/tomato = 3, From 2095a142564cc82f88d0406f7e5c42deeac37dab Mon Sep 17 00:00:00 2001 From: Linzolle Date: Mon, 12 Aug 2019 13:49:26 -0500 Subject: [PATCH 06/20] add mining shuttle console to techweb --- .../comp_board_designs/comp_board_designs_cargo .dm | 10 +++++++++- code/modules/research/techweb/all_nodes.dm | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm b/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm index fd548adc76..e1d9ad9bf9 100644 --- a/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm +++ b/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm @@ -32,4 +32,12 @@ id = "mining" build_path = /obj/item/circuitboard/computer/mining category = list("Computer Boards") - departmental_flags = DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SECURITY \ No newline at end of file + departmental_flags = DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SECURITY + +/datum/design/board/mining + name = "Computer Design (Mining Shuttle Console)" + desc = "Allows for the construction of circuit boards used to build a Mining Shuttle Console." + id = "miningshuttle" + build_path = /obj/item/circuitboard/computer/mining_shuttle + category = list("Computer Boards") + departmental_flags = DEPARTMENTAL_FLAG_CARGO \ No newline at end of file diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index a25cc79ddc..9c3a1a4f36 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -432,7 +432,7 @@ display_name = "Computer Consoles" description = "Computers and how they work." prereq_ids = list("datatheory") - design_ids = list("cargo", "cargorequest", "libraryconsole", "mining", "crewconsole", "rdcamera", "comconsole", "idcardconsole", "seccamera") + design_ids = list("cargo", "cargorequest", "libraryconsole", "mining", "miningshuttle", "crewconsole", "rdcamera", "comconsole", "idcardconsole", "seccamera") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000) export_price = 5000 From 13b3552e642cd8c20a161e1cfbdc9d5697791bdf Mon Sep 17 00:00:00 2001 From: Linzolle Date: Mon, 12 Aug 2019 14:37:48 -0500 Subject: [PATCH 07/20] i'm dumb --- .../designs/comp_board_designs/comp_board_designs_cargo .dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm b/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm index e1d9ad9bf9..b11a5ee258 100644 --- a/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm +++ b/code/modules/research/designs/comp_board_designs/comp_board_designs_cargo .dm @@ -34,7 +34,7 @@ category = list("Computer Boards") departmental_flags = DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SECURITY -/datum/design/board/mining +/datum/design/board/miningshuttle name = "Computer Design (Mining Shuttle Console)" desc = "Allows for the construction of circuit boards used to build a Mining Shuttle Console." id = "miningshuttle" From 141a93236c475b4da8d19e29e141ca9cbeb4511a Mon Sep 17 00:00:00 2001 From: Winter Flare <7543955+Owai-Seek@users.noreply.github.com> Date: Wed, 14 Aug 2019 04:01:18 -0400 Subject: [PATCH 08/20] Service QoL -Adds the Pimpin' Ride to the Custodial Locator Cartridge. -Makes additional Pimpin' Rides orderable through cargo. -Moves Light Replacer from power_designs to misc_designs and properly places it in equipment (where all other advanced sanitation research items appear.) --- code/game/objects/items/devices/PDA/cart.dm | 17 +++++++++++++++++ code/modules/cargo/packs.dm | 13 ++++++++++++- code/modules/research/designs/misc_designs.dm | 10 ++++++++++ code/modules/research/designs/power_designs.dm | 10 ---------- 4 files changed, 39 insertions(+), 11 deletions(-) diff --git a/code/game/objects/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index bf352e8eb7..3885a1f4d9 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -498,6 +498,23 @@ Code: else menu += "[ldat]" + menu += "

Pimpin' Ride:

" + + ldat = null + for (var/obj/vehicle/ridden/janicart/M in world) + var/turf/ml = get_turf(M) + + if(ml) + if (ml.z != cl.z) + continue + var/direction = get_dir(src, M) + ldat += "Ride - \[[ml.x],[ml.y] ([uppertext(dir2text(direction))])\]
" + + if (!ldat) + menu += "None" + else + menu += "[ldat]" + menu += "

Located Janitorial Cart:

" ldat = null diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index 5656287c52..1087f1ebb5 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -1699,7 +1699,7 @@ /datum/supply_pack/service/janitor/janpremium name = "Janitor Premium Supplies" desc = "Do to the union for better supplies, we have desided to make a deal for you, In this crate you can get a brand new chem, Drying Angent this stuff is the work of slimes or magic! This crate also contains a rag to test out the Drying Angent magic, three wet floor signs, and some spare bottles of ammonia." - cost = 3000 + cost = 1750 access = ACCESS_JANITOR contains = list(/obj/item/caution, /obj/item/caution, @@ -1707,9 +1707,20 @@ /obj/item/reagent_containers/rag, /obj/item/reagent_containers/glass/bottle/ammonia, /obj/item/reagent_containers/glass/bottle/ammonia, + /obj/item/reagent_containers/glass/bottle/ammonia, /obj/item/reagent_containers/spray/drying_agent) crate_name = "janitor backpack crate" +/datum/supply_pack/service/janitor/janpimp + name = "Custodial Cruiser" + desc = "Clown steal your ride? Assistant lock it in the dorms? Order a new one and get back to cleaning in style!" + cost = 3000 + access = ACCESS_JANITOR + contains = list(/obj/vehicle/ridden/janicart, + /obj/item/key/janitor) + crate_name = "janitor ride crate" + crate_type = /obj/structure/closet/crate/large + /datum/supply_pack/service/mule name = "MULEbot Crate" desc = "Pink-haired Quartermaster not doing her job? Replace her with this tireless worker, today!" diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 0968ce049e..4a6f9625f1 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -290,6 +290,16 @@ category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SERVICE +/datum/design/light_replacer + name = "Light Replacer" + desc = "A device to automatically replace lights. Refill with working light bulbs." + id = "light_replacer" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1500, MAT_SILVER = 150, MAT_GLASS = 3000) + build_path = /obj/item/lightreplacer + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + /datum/design/blutrash name = "Trashbag of Holding" desc = "An advanced trash bag with bluespace properties; capable of holding a plethora of garbage." diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index f8122c16e3..1dbd111785 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -57,16 +57,6 @@ category = list("Misc","Power Designs") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING -/datum/design/light_replacer - name = "Light Replacer" - desc = "A device to automatically replace lights. Refill with working light bulbs." - id = "light_replacer" - build_type = PROTOLATHE - materials = list(MAT_METAL = 1500, MAT_SILVER = 150, MAT_GLASS = 3000) - build_path = /obj/item/lightreplacer - category = list("Power Designs") - departmental_flags = DEPARTMENTAL_FLAG_SERVICE - /datum/design/inducer name = "Inducer" desc = "The NT-75 Electromagnetic Power Inducer can wirelessly induce electric charge in an object, allowing you to recharge power cells without having to remove them." From 97c3b2eda7b9fa80b48e6eab1a9cadf13c295f9f Mon Sep 17 00:00:00 2001 From: Chayse Ramsay Date: Wed, 14 Aug 2019 18:29:35 +0100 Subject: [PATCH 09/20] Prevents runtime spam from Hugs of the North Star Also fixes an unintended oversight of the Gloves of the North Star, with them causing the warcry upon picking up any item or clicking on any item in harm intent. --- code/modules/clothing/gloves/miscellaneous.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 1af24f8e61..cc6d65b74d 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -65,6 +65,9 @@ var/warcry = "AT" /obj/item/clothing/gloves/rapid/Touch(mob/living/target,proximity = TRUE) + if(!istype(target)) + return + var/mob/living/M = loc if(M.a_intent == INTENT_HARM) @@ -87,6 +90,9 @@ warcry = "owo" //Shouldn't ever come into play /obj/item/clothing/gloves/rapid/hug/Touch(mob/living/target,proximity = TRUE) + if(!istype(target)) + return + var/mob/living/M = loc if(M.a_intent == INTENT_HELP) From 04c302b08e94cc3ec3c3f6dcf8e043e8f98eb8ca Mon Sep 17 00:00:00 2001 From: Winter Flare <7543955+Owai-Seek@users.noreply.github.com> Date: Thu, 15 Aug 2019 06:28:46 -0400 Subject: [PATCH 10/20] Service Tweaks Makes the Janibelt a bit more useful by expanding its limited pool of allowed items. Beakers and Bottles for carrying additional space cleaner/ammonia/water. Allows the plant DNA maniuplator to be wrenched and moved. --- code/game/objects/items/storage/belt.dm | 3 +++ code/modules/hydroponics/gene_modder.dm | 2 ++ 2 files changed, 5 insertions(+) diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index d71b91c8dc..96543ec5af 100755 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -524,12 +524,15 @@ /obj/item/grenade/chem_grenade, /obj/item/lightreplacer, /obj/item/flashlight, + /obj/item/reagent_containers/glass/beaker, + /obj/item/reagent_containers/glass/bottle, /obj/item/reagent_containers/spray, /obj/item/soap, /obj/item/holosign_creator, /obj/item/key/janitor, /obj/item/clothing/gloves, /obj/item/melee/flyswatter, + /obj/item/paint/paint_remover, /obj/item/assembly/mousetrap )) diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index d6eacfe0e1..79a23014b0 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -69,6 +69,8 @@ if(default_deconstruction_screwdriver(user, "dnamod", "dnamod", I)) update_icon() return + else if(default_unfasten_wrench(user, I)) + return if(default_deconstruction_crowbar(I)) return if(iscyborg(user)) From 087bca85e89b2bb9d6bcd760b4efed942a7aba45 Mon Sep 17 00:00:00 2001 From: Raptorizer Date: Thu, 15 Aug 2019 07:08:27 -0500 Subject: [PATCH 11/20] Update maintenance_loot.dm Double the amount of canned peaches that spawn within maintenance --- code/_globalvars/lists/maintenance_loot.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index f65c15ec88..c25ebf5b0a 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -107,7 +107,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/storage/toolbox/artistic = 2, /obj/item/toy/eightball = 1, /obj/item/reagent_containers/pill/floorpill = 1, - /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 1, + /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 2, /obj/item/storage/daki = 3, //VERY IMPORTANT CIT CHANGE - adds bodypillows to maint /obj/item/storage/pill_bottle/penis_enlargement = 2, /obj/item/storage/pill_bottle/breast_enlargement = 2, From a6d10885ec76c87c13b0e60e3ec6af112f1f13e8 Mon Sep 17 00:00:00 2001 From: Raptorizer Date: Thu, 15 Aug 2019 07:11:57 -0500 Subject: [PATCH 12/20] Revert "Update maintenance_loot.dm" This reverts commit 087bca85e89b2bb9d6bcd760b4efed942a7aba45. --- code/_globalvars/lists/maintenance_loot.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index c25ebf5b0a..f65c15ec88 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -107,7 +107,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/storage/toolbox/artistic = 2, /obj/item/toy/eightball = 1, /obj/item/reagent_containers/pill/floorpill = 1, - /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 2, + /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 1, /obj/item/storage/daki = 3, //VERY IMPORTANT CIT CHANGE - adds bodypillows to maint /obj/item/storage/pill_bottle/penis_enlargement = 2, /obj/item/storage/pill_bottle/breast_enlargement = 2, From d16ee247a081cbc0b116875d008a46b9862d02da Mon Sep 17 00:00:00 2001 From: Raptorizer Date: Thu, 15 Aug 2019 07:24:09 -0500 Subject: [PATCH 13/20] Update maintenance_loot.dm Double the amount of peaches that spawn within Maintenance --- code/_globalvars/lists/maintenance_loot.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index f65c15ec88..c25ebf5b0a 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -107,7 +107,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/storage/toolbox/artistic = 2, /obj/item/toy/eightball = 1, /obj/item/reagent_containers/pill/floorpill = 1, - /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 1, + /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 2, /obj/item/storage/daki = 3, //VERY IMPORTANT CIT CHANGE - adds bodypillows to maint /obj/item/storage/pill_bottle/penis_enlargement = 2, /obj/item/storage/pill_bottle/breast_enlargement = 2, From 017a3111ec2fdaa33273245a5f922ae42a00d1c7 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Thu, 15 Aug 2019 08:37:10 -0500 Subject: [PATCH 14/20] Yeah this is a much, much better way of doing it. --- code/modules/holodeck/holo_effect.dm | 14 ++++-- .../living/simple_animal/simple_animal_vr.dm | 3 +- .../simple_animal/simplemob_vore_values.dm | 48 ------------------- 3 files changed, 11 insertions(+), 54 deletions(-) diff --git a/code/modules/holodeck/holo_effect.dm b/code/modules/holodeck/holo_effect.dm index 707d650608..308cec1cbd 100644 --- a/code/modules/holodeck/holo_effect.dm +++ b/code/modules/holodeck/holo_effect.dm @@ -78,6 +78,12 @@ // these vars are not really standardized but all would theoretically create stuff on death for(var/v in list("butcher_results","corpse","weapon1","weapon2","blood_volume") & mob.vars) mob.vars[v] = null + ENABLE_BITFIELD(mob.flags_1, HOLOGRAM_1) + if(isliving(mob)) + var/mob/living/L = mob + L.feeding = FALSE + L.devourable = FALSE + L.digestable = FALSE return mob /obj/effect/holodeck_effect/mobspawner/deactivate(var/obj/machinery/computer/holodeck/HC) @@ -87,10 +93,10 @@ /obj/effect/holodeck_effect/mobspawner/pet mobtype = list( - /mob/living/simple_animal/butterfly/holo, /mob/living/simple_animal/chick/holo, - /mob/living/simple_animal/pet/cat/holo, /mob/living/simple_animal/pet/cat/kitten/holo, - /mob/living/simple_animal/pet/dog/corgi/holo, /mob/living/simple_animal/pet/dog/corgi/puppy/holo, - /mob/living/simple_animal/pet/dog/pug/holo, /mob/living/simple_animal/pet/fox/holo) + /mob/living/simple_animal/butterfly, /mob/living/simple_animal/chick/holo, + /mob/living/simple_animal/pet/cat, /mob/living/simple_animal/pet/cat/kitten, + /mob/living/simple_animal/pet/dog/corgi, /mob/living/simple_animal/pet/dog/corgi/puppy, + /mob/living/simple_animal/pet/dog/pug, /mob/living/simple_animal/pet/fox) /obj/effect/holodeck_effect/mobspawner/bee mobtype = /mob/living/simple_animal/hostile/poison/bees/toxin diff --git a/code/modules/mob/living/simple_animal/simple_animal_vr.dm b/code/modules/mob/living/simple_animal/simple_animal_vr.dm index 1e8f4c768f..666de9cef0 100644 --- a/code/modules/mob/living/simple_animal/simple_animal_vr.dm +++ b/code/modules/mob/living/simple_animal/simple_animal_vr.dm @@ -9,7 +9,6 @@ var/list/prey_excludes = list() //For excluding people from being eaten. var/voracious_chance = VORACIOUS_CHANCE //Mob AI Engagement probability when rolling between regular melee strike and a vore attempt, default 40% - var/holodeck = FALSE // Vore belly interactions // Most mobs are only going to have the one gut. Multi-gut set ups should refer to Ash Drake's dragon_vore.dm for set up. @@ -50,7 +49,7 @@ // Simple animals have only one belly. This creates it (if it isn't already set up) /mob/living/simple_animal/init_vore() vore_init = TRUE - if(holodeck) //hacky dumbshit, but I can't get it to work right anyway + if(CHECK_BITFIELD(flags_1, HOLOGRAM_1)) return if(vore_organs.len) return diff --git a/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm b/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm index 78f11e0a41..78e18fdb5e 100644 --- a/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm +++ b/modular_citadel/code/modules/mob/living/simple_animal/simplemob_vore_values.dm @@ -133,51 +133,3 @@ vore_active = TRUE isPredator = TRUE vore_default_mode = DM_DIGEST - -/mob/living/simple_animal/butterfly/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/chick/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/cat/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/cat/kitten/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/dog/corgi/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/dog/corgi/puppy/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/dog/pug/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE - -/mob/living/simple_animal/pet/fox/holo - holodeck = TRUE - feeding = FALSE - devourable = FALSE - digestable = FALSE From 4ca72c77336772bdfe3b7dde0e0859809d94ebc7 Mon Sep 17 00:00:00 2001 From: kappa-sama <44128284+kappa-sama@users.noreply.github.com> Date: Fri, 16 Aug 2019 14:38:25 -0400 Subject: [PATCH 15/20] re-add sugarcane to megaseed vendors how did this happen --- code/modules/vending/megaseed.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/vending/megaseed.dm b/code/modules/vending/megaseed.dm index 4594048256..b70784cc36 100644 --- a/code/modules/vending/megaseed.dm +++ b/code/modules/vending/megaseed.dm @@ -31,6 +31,7 @@ /obj/item/seeds/replicapod = 3, /obj/item/seeds/wheat/rice = 3, /obj/item/seeds/soya = 3, + /obj/item/seeds/sugarcane = 3, /obj/item/seeds/sunflower = 3, /obj/item/seeds/tea = 3, /obj/item/seeds/tobacco = 3, From a124b02ee20d7dd1839b53163991bf4e1fe2eb65 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 16 Aug 2019 18:57:39 -0500 Subject: [PATCH 16/20] Automatic changelog generation for PR #9107 [ci skip] --- html/changelogs/AutoChangeLog-pr-9107.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-9107.yml diff --git a/html/changelogs/AutoChangeLog-pr-9107.yml b/html/changelogs/AutoChangeLog-pr-9107.yml new file mode 100644 index 0000000000..65a14b9576 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9107.yml @@ -0,0 +1,4 @@ +author: "Bhijn" +delete-after: True +changes: + - bugfix: "You can now actually use the resist hotkey to resist out of handcuffs. Woah, revolutionary" From dea9ea4b3fa5562f3da89fda3ca021d3fb1446ff Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 16 Aug 2019 18:58:29 -0500 Subject: [PATCH 17/20] Automatic changelog generation for PR #9119 [ci skip] --- html/changelogs/AutoChangeLog-pr-9119.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-9119.yml diff --git a/html/changelogs/AutoChangeLog-pr-9119.yml b/html/changelogs/AutoChangeLog-pr-9119.yml new file mode 100644 index 0000000000..756c3edcb2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9119.yml @@ -0,0 +1,4 @@ +author: "Linzolle" +delete-after: True +changes: + - rscadd: "mining shuttle console can now be printed after computer consoles have been researched" From f376fac53d8cbf0ba2d1f768fca701bb08225bca Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 16 Aug 2019 18:59:53 -0500 Subject: [PATCH 18/20] Automatic changelog generation for PR #9133 [ci skip] --- html/changelogs/AutoChangeLog-pr-9133.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-9133.yml diff --git a/html/changelogs/AutoChangeLog-pr-9133.yml b/html/changelogs/AutoChangeLog-pr-9133.yml new file mode 100644 index 0000000000..50bfced879 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9133.yml @@ -0,0 +1,4 @@ +author: "Raptorizer" +delete-after: True +changes: + - tweak: "Doubled peach spawn rate" From 1adeeebcac642139518d30432b4b4cf50dd06407 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 16 Aug 2019 19:03:13 -0500 Subject: [PATCH 19/20] Automatic changelog generation for PR #9130 [ci skip] --- html/changelogs/AutoChangeLog-pr-9130.yml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-9130.yml diff --git a/html/changelogs/AutoChangeLog-pr-9130.yml b/html/changelogs/AutoChangeLog-pr-9130.yml new file mode 100644 index 0000000000..f10e72a6ce --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9130.yml @@ -0,0 +1,9 @@ +author: "Owai-Seek" +delete-after: True +changes: + - rscadd: "custodial cruiser cargo crate" + - tweak: "removed light replacer from power designs and moved to misc designs" + - tweak: "added pimpin ride to custodial locator" + - tweak: "added additional items to janibelt whitelist" + - tweak: "made plant DNA manipulator unwrenchable" + - balance: "reduced janitor premium supply costs" From 2839935209e5e2ec3caea7f9a16d714c916251bc Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 16 Aug 2019 19:14:31 -0500 Subject: [PATCH 20/20] Automatic changelog generation for PR #9138 [ci skip] --- html/changelogs/AutoChangeLog-pr-9138.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-9138.yml diff --git a/html/changelogs/AutoChangeLog-pr-9138.yml b/html/changelogs/AutoChangeLog-pr-9138.yml new file mode 100644 index 0000000000..b78d505c5a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-9138.yml @@ -0,0 +1,4 @@ +author: "kappa-sama" +delete-after: True +changes: + - bugfix: "seed"