From 4a3732119279528e5deb6e5640422f37bfcf0cc1 Mon Sep 17 00:00:00 2001 From: atermonera Date: Sun, 22 Sep 2024 21:07:59 -0800 Subject: [PATCH] Rebase fixes Fixes 2: Merge conflict edition Fixes 3: Linting 1 Fixes 4: Linting 2 --- code/game/atoms_fluids.dm | 3 +- code/game/objects/structures/pit.dm | 14 +--- .../solids/materials_solid_exotic.dm | 1 + code/modules/power/singularity/collector.dm | 2 +- code/modules/reagents/reagent_containers.dm | 68 +------------------ code/modules/species/species.dm | 2 +- maps/away/unishi/unishi.dm | 5 +- mods/content/baychems/chems_medicines.dm | 17 +++-- mods/content/baychems/reactions.dm | 2 +- mods/species/bayliens/_bayliens.dme | 16 ++++- .../species/bayliens/skrell/datum/location.dm | 21 ++++++ mods/species/teshari/clothing.dm | 1 - nebula.dme | 2 +- 13 files changed, 63 insertions(+), 91 deletions(-) create mode 100644 mods/species/bayliens/skrell/datum/location.dm diff --git a/code/game/atoms_fluids.dm b/code/game/atoms_fluids.dm index 312c46cabdc4..450cbc6f52dd 100644 --- a/code/game/atoms_fluids.dm +++ b/code/game/atoms_fluids.dm @@ -3,8 +3,7 @@ /atom/proc/fluid_act(var/datum/reagents/fluids) SHOULD_CALL_PARENT(TRUE) - // TODO: fix food open container behavior jesus christ - if(reagents && reagents != fluids && fluids?.total_volume >= FLUID_SHALLOW && !is_watertight() && !istype(src, /obj/item/chems/food)) + if(reagents && reagents != fluids && fluids?.total_volume >= FLUID_SHALLOW && ATOM_IS_OPEN_CONTAINER(src)) reagents.trans_to_holder(fluids, reagents.total_volume) fluids.trans_to_holder(reagents, min(fluids.total_volume, reagents.maximum_volume)) diff --git a/code/game/objects/structures/pit.dm b/code/game/objects/structures/pit.dm index b217b4e671d1..2c2e08254181 100644 --- a/code/game/objects/structures/pit.dm +++ b/code/game/objects/structures/pit.dm @@ -21,17 +21,9 @@ to_chat(user, SPAN_NOTICE("You stop digging.")) return TRUE - if (!open && istype(W, /obj/item/stack/material) && W.material?.type == /decl/material/solid/organic/wood) - if(locate(/obj/structure/gravemarker) in src.loc) - to_chat(user, SPAN_WARNING("There's already a grave marker here.")) - else - var/obj/item/stack/material/plank = W - visible_message(SPAN_WARNING("\The [user] starts making a grave marker on top of \the [src].")) - if(do_after(user, 5 SECONDS) && plank.use(1)) - visible_message(SPAN_NOTICE("\The [user] finishes the grave marker.")) - new /obj/structure/gravemarker(src.loc) - else - to_chat(user, SPAN_NOTICE("You stop making a grave marker.")) + if (!open && istype(used_item, /obj/item/gravemarker)) + var/obj/item/gravemarker/gravemarker = used_item + gravemarker.try_bury(get_turf(src), user) return TRUE return ..() diff --git a/code/modules/materials/definitions/solids/materials_solid_exotic.dm b/code/modules/materials/definitions/solids/materials_solid_exotic.dm index d9af6625a131..142cd8be044a 100644 --- a/code/modules/materials/definitions/solids/materials_solid_exotic.dm +++ b/code/modules/materials/definitions/solids/materials_solid_exotic.dm @@ -95,6 +95,7 @@ return round(totalPhoron/100) /decl/material/solid/phoron/affect_touch(mob/living/M, removed, datum/reagents/holder) + . = ..() M.take_organ_damage(0, removed * 0.1) //being splashed directly with phoron causes minor chemical burns if(prob(10 * accelerant_value)) M.handle_contaminants() diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 3470ab9f8121..9c5365521fe5 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -83,7 +83,7 @@ var/global/list/rad_collectors = list() toggle_power() user.visible_message("[user.name] turns \the [src] [active? "on":"off"].", \ "You turn \the [src] [active? "on":"off"].") - investigate_log("turned [active?"on":"off"] by [user.key]. [loaded_tank?"Fuel: [round(loaded_tank.air_contents.gas[/decl/material/gas/phoron]/0.29)]%":"It is empty"].","singulo") + investigate_log("turned [active?"on":"off"] by [user.key]. [loaded_tank?"Fuel: [round(loaded_tank.air_contents.gas[/decl/material/solid/phoron]/0.29)]%":"It is empty"].","singulo") else to_chat(user, "The controls are locked!") diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index ea549d9a723e..b93c6fe4e0d4 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -7,7 +7,6 @@ material = /decl/material/solid/organic/plastic obj_flags = OBJ_FLAG_HOLLOW abstract_type = /obj/item/chems - watertight = TRUE var/base_desc var/amount_per_transfer_from_this = 5 @@ -117,69 +116,6 @@ amount = rand(1, floor(amount_per_transfer_from_this * 1.5)) return ..(user, target, amount) - if(!target.reagents || !target.reagents.total_volume) - to_chat(user, SPAN_NOTICE("\The [target] is empty of reagents.")) - return 1 - - if(reagents && !REAGENTS_FREE_SPACE(reagents)) - to_chat(user, SPAN_NOTICE("\The [src] is full of reagents.")) - return 1 - - var/trans = target.reagents.trans_to_obj(src, target.amount_dispensed) - to_chat(user, SPAN_NOTICE("You fill [src] with [trans] units of the contents of [target].")) - return 1 - -/obj/item/chems/proc/standard_splash_mob(var/mob/user, var/mob/target) // This goes into afterattack - if(!istype(target)) - return - - if(user.a_intent == I_HELP) - to_chat(user, SPAN_NOTICE("You can't splash people on help intent.")) - return 1 - - if(!reagents || !reagents.total_volume) - to_chat(user, SPAN_NOTICE("\The [src] is empty of reagents.")) - return 1 - - if(target.reagents && !REAGENTS_FREE_SPACE(target.reagents)) - to_chat(user, SPAN_NOTICE("\The [target] is full of reagents.")) - return 1 - - var/contained = REAGENT_LIST(src) - - admin_attack_log(user, target, "Used \the [name] containing [contained] to splash the victim.", "Was splashed by \the [name] containing [contained].", "used \the [name] containing [contained] to splash") - user.visible_message( \ - SPAN_DANGER("\The [target] has been splashed with the contents of \the [src] by \the [user]!"), \ - SPAN_DANGER("You splash \the [target] with the contents of \the [src].")) - - reagents.splash(target, reagents.total_volume) - return 1 - -/obj/item/chems/proc/standard_pour_into(var/mob/user, var/atom/target) // This goes into afterattack and yes, it's atom-level - if(!target.reagents) - return 0 - - // Ensure we don't splash beakers and similar containers. - if(!ATOM_IS_OPEN_CONTAINER(target) && istype(target, /obj/item/chems)) - to_chat(user, SPAN_NOTICE("\The [target] is closed.")) - return 1 - // Otherwise don't care about splashing. - else if(!ATOM_IS_OPEN_CONTAINER(target)) - return 0 - - if(!reagents || !reagents.total_volume) - to_chat(user, SPAN_NOTICE("\The [src] is empty of reagents.")) - return 1 - - if(!REAGENTS_FREE_SPACE(target.reagents)) - to_chat(user, SPAN_NOTICE("\The [target] is full of reagents.")) - return 1 - - var/trans = reagents.trans_to(target, amount_per_transfer_from_this) - playsound(src, 'sound/effects/pour.ogg', 25, 1) - to_chat(user, SPAN_NOTICE("You transfer [trans] unit\s of the solution to \the [target]. \The [src] now contains [src.reagents.total_volume] units.")) - return 1 - /obj/item/chems/do_surgery(mob/living/M, mob/living/user) if(user.get_target_zone() != BP_MOUTH) //in case it is ever used as a surgery tool return ..() @@ -285,7 +221,7 @@ var/obj/item/chems/C = target return !!C.possible_transfer_amounts -/decl/interaction_handler/set_transfer/chems/invoked(atom/target, mob/user, obj/item/prop) +/decl/interaction_handler/set_transfer/chems/invoked(var/atom/target, var/mob/user) var/obj/item/chems/C = target C.set_amount_per_transfer_from_this() @@ -295,7 +231,7 @@ expected_target_type = /obj/item/chems interaction_flags = INTERACTION_NEEDS_INVENTORY | INTERACTION_NEEDS_PHYSICAL_INTERACTION -/decl/interaction_handler/empty/chems/invoked(atom/target, mob/user, obj/item/prop) +/decl/interaction_handler/empty/chems/invoked(obj/item/chems/target, mob/user) var/turf/T = get_turf(user) if(T) to_chat(user, SPAN_NOTICE("You empty \the [target] onto the floor.")) diff --git a/code/modules/species/species.dm b/code/modules/species/species.dm index d4fb13aeb53a..a6b56a4aa225 100644 --- a/code/modules/species/species.dm +++ b/code/modules/species/species.dm @@ -484,7 +484,7 @@ var/global/const/DEFAULT_SPECIES_HEALTH = 200 return FALSE // Used for any extra behaviour when falling and to see if a species will fall at all. -/decl/species/proc/can_fall(var/mob/living/carbon/human/H) +/decl/species/proc/can_fall(var/mob/living/human/H) return !can_overcome_gravity(H) // Used to override normal fall behaviour. Use only when the species does fall down a level. diff --git a/maps/away/unishi/unishi.dm b/maps/away/unishi/unishi.dm index 2b5adb3a62d8..e82bfab42577 100644 --- a/maps/away/unishi/unishi.dm +++ b/maps/away/unishi/unishi.dm @@ -143,10 +143,13 @@ update_icon() /decl/material/solid/phoron/safe/touch_mob(mob/living/M, amount, datum/reagents/holder) + SHOULD_CALL_PARENT(FALSE) return /decl/material/solid/phoron/safe/affect_blood(mob/living/M, removed, datum/reagents/holder) + SHOULD_CALL_PARENT(FALSE) return /decl/material/solid/phoron/safe/affect_touch(mob/living/M, removed, datum/reagents/holder) - return \ No newline at end of file + SHOULD_CALL_PARENT(FALSE) + return diff --git a/mods/content/baychems/chems_medicines.dm b/mods/content/baychems/chems_medicines.dm index 1b1c8fbd518d..e6252fa2f239 100644 --- a/mods/content/baychems/chems_medicines.dm +++ b/mods/content/baychems/chems_medicines.dm @@ -29,6 +29,7 @@ uid = "chem_dexalin_plus" /decl/material/liquid/oxy_meds/dexalinp/affect_blood(var/mob/living/M, var/alien, var/removed, var/datum/reagents/holder) + . = ..() M.add_chemical_effect(CE_OXYGENATED, 2) // change to add_chemical_effect_max later holder.remove_reagent(/decl/material/gas/carbon_monoxide, 3 * removed) @@ -67,12 +68,19 @@ lore_text = "Stabilizes the mind a little." // NEW, NOT RENAMED: -/decl/material/liquid/antidepressants/paroxetine +/decl/material/liquid/paroxetine name = "paroxetine" value = 3.5 uid = "chem_paroxetine" + taste_description = "bitterness" + color = "#ff80ff" + scannable = 1 + metabolism = 0.01 + value = 1.5 + exoplanet_rarity_gas = MAT_RARITY_EXOTIC -/decl/material/liquid/antidepressants/paroxetine/affect_blood(var/mob/living/M, var/alien, var/removed, var/datum/reagents/holder) +/decl/material/liquid/paroxetine/affect_blood(var/mob/living/M, var/alien, var/removed, var/datum/reagents/holder) + . = ..() var/volume = REAGENT_VOLUME(holder, type) if(volume <= 0.1 && LAZYACCESS(M.chem_doses, type) >= 0.5 && world.time > REAGENT_DATA(holder, type) + 5 MINUTES) LAZYSET(holder.reagent_data, type, world.time) @@ -111,6 +119,7 @@ uid = "chem_arithrazine" /decl/material/liquid/antirads/arithrazine/affect_blood(var/mob/living/M, var/alien, var/removed, var/datum/reagents/holder) - M.radiation = max(M.radiation - 70 * removed, 0) + . = ..() + M.radiation = max(M.radiation - 40 * removed, 0) if(prob(60)) - M.take_organ_damage(4 * removed, 0) \ No newline at end of file + M.take_organ_damage(4 * removed, 0) diff --git a/mods/content/baychems/reactions.dm b/mods/content/baychems/reactions.dm index c9d3d46d007d..0528696a19f9 100644 --- a/mods/content/baychems/reactions.dm +++ b/mods/content/baychems/reactions.dm @@ -64,7 +64,7 @@ /decl/chemical_reaction/drug/paroxetine name = "Paroxetine" - result = /decl/material/liquid/antidepressants/paroxetine + result = /decl/material/liquid/paroxetine required_reagents = list(/decl/material/liquid/hallucinogenics = 1, /decl/material/liquid/acetone = 1, /decl/material/liquid/stabilizer = 1) result_amount = 3 diff --git a/mods/species/bayliens/_bayliens.dme b/mods/species/bayliens/_bayliens.dme index 9337a420d74d..e8de7a35d0b6 100644 --- a/mods/species/bayliens/_bayliens.dme +++ b/mods/species/bayliens/_bayliens.dme @@ -2,15 +2,25 @@ #define MODPACK_BAYLIENS // BEGIN_INCLUDE #include "bayliens.dm" +#include "adherent\_adherent.dm" +#include "adherent\datum\culture.dm" +#include "adherent\datum\emotes.dm" +#include "adherent\datum\faction.dm" +#include "adherent\datum\language.dm" +#include "adherent\datum\location.dm" +#include "adherent\datum\species.dm" +#include "adherent\datum\species_bodytypes.dm" +#include "adherent\organs\organs_external.dm" +#include "adherent\organs\organs_internal.dm" #include "skrell\_skrell.dm" #include "skrell\datum\accessory.dm" #include "skrell\datum\blood.dm" -#include "skrell\datum\citizenship.dm" #include "skrell\datum\culture.dm" #include "skrell\datum\descriptor.dm" #include "skrell\datum\emotes.dm" #include "skrell\datum\faction.dm" #include "skrell\datum\language.dm" +#include "skrell\datum\location.dm" #include "skrell\datum\pronouns_skrell.dm" #include "skrell\datum\religion.dm" #include "skrell\datum\skrell_meat.dm" @@ -36,10 +46,12 @@ #include "tajaran\datum\species.dm" #include "tajaran\datum\species_bodytypes.dm" #include "tajaran\machinery\suit_cycler.dm" +#include "tritonian\_tritonian.dm" +#include "tritonian\datum\species.dm" +#include "tritonian\datum\species_bodytypes.dm" #include "unathi\_lizard.dm" #include "unathi\datum\autohiss.dm" #include "unathi\datum\blood.dm" -#include "unathi\datum\citizenship.dm" #include "unathi\datum\culture.dm" #include "unathi\datum\language.dm" #include "unathi\datum\species.dm" diff --git a/mods/species/bayliens/skrell/datum/location.dm b/mods/species/bayliens/skrell/datum/location.dm new file mode 100644 index 000000000000..a6f44b19ae51 --- /dev/null +++ b/mods/species/bayliens/skrell/datum/location.dm @@ -0,0 +1,21 @@ +/decl/background_detail/location/skrellspace + name = "Militarized Skrell Space" + description = "A very different style of living from a more traditional Skrell, those who live and reside in space \ + belong to no particular Qrii'Qerria and instead are governed by the SDTF of the system in which they reside, with all \ + services and installations under the control of the local Raskinta SDTF Commander rather than a Qrii-Skria. Life in \ + these circumstances is often more regimented and disciplined, with a stronger emphasis on community and collaboration, \ + with varying extremes depending on the status, funding and level of military engagements the SDTF is currently in." + capital = "None" + ruling_body = "Your local SDTF" + distance = "80 to 600 light years" + uid = "location_skrell_military" + +/decl/background_detail/location/free + name = "Civilian Skrell Space" + description = "Skrell space is vast and filled with different systems, which may have different levels of skrell \ + presence in them. This presence may amount to small research complexes in the fringe edges of the Skrell border, \ + orbital habitats or large city-states in otherwise less noteworthy systems and planets." + capital = "None" + ruling_body = "None" + distance = "130 to 550 light years" + uid = "location_skrell_civilian" diff --git a/mods/species/teshari/clothing.dm b/mods/species/teshari/clothing.dm index cd9f12916012..6a6602625edb 100644 --- a/mods/species/teshari/clothing.dm +++ b/mods/species/teshari/clothing.dm @@ -91,6 +91,5 @@ name = "cloth footwraps" desc = "A roll of treated canvas used for wrapping feet." icon = 'mods/species/neoavians/icons/clothing/feet/footwraps.dmi' - force = 0 item_flags = ITEM_FLAG_SILENT w_class = ITEM_SIZE_SMALL diff --git a/nebula.dme b/nebula.dme index a9f5ab56ee90..70deb296a16b 100644 --- a/nebula.dme +++ b/nebula.dme @@ -2792,9 +2792,9 @@ #include "code\modules\mob\language\language.dm" #include "code\modules\mob\language\synthetic.dm" #include "code\modules\mob\language\alien\antag.dm" +#include "code\modules\mob\language\alien\monkey.dm" #include "code\modules\mob\language\human\human.dm" #include "code\modules\mob\language\human\misc\legalese.dm" -#include "code\modules\mob\language\alien\monkey.dm" #include "code\modules\mob\living\autohiss.dm" #include "code\modules\mob\living\damage_procs.dm" #include "code\modules\mob\living\death.dm"