From 47c9f48d5dd962df0fad98c9dae6c791319d45e6 Mon Sep 17 00:00:00 2001 From: Kano <89972582+kano-dot@users.noreply.github.com> Date: Tue, 9 Dec 2025 19:59:51 +0300 Subject: [PATCH] Misc bugfixes (#21643) ## About PR - Fixes #21487 - Fixes #21634 - Fixes #21639 - Fixes #21640 - Also turns some comments into dmdocs in touched files, documents some missing stuff --- code/__DEFINES/misc.dm | 13 ++++- .../objects/items/devices/paint_sprayer.dm | 17 ++++--- code/game/objects/objs.dm | 46 ++++++++++++------ .../clothing/spacesuits/rig/suits/combat.dm | 2 +- .../living/carbon/human/species/species.dm | 6 +-- code/modules/projectiles/gun.dm | 3 +- html/changelogs/kano-dot-bundle-of-fixes.yml | 10 ++++ icons/obj/item/clothing/rig/combat.dmi | Bin 6513 -> 5852 bytes .../ships/nka/nka_merchant/nka_merchant.dmm | 22 ++------- 9 files changed, 71 insertions(+), 48 deletions(-) create mode 100644 html/changelogs/kano-dot-bundle-of-fixes.yml diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index b8e2918b953..48c660cc479 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -289,15 +289,24 @@ #define MAP_MAXY 5 #define MAP_MAXZ 6 -// /atom/proc/use_check flags. +// `/atom/proc/use_check()` flags, used for customizing guard clauses. + +/// Allows ghosts to interact with the action. #define USE_ALLOW_NONLIVING 1 +/// If set, check result will be dictated by whatever value `IsAdvancedToolUser()` has returned from mob users. #define USE_ALLOW_NON_ADV_TOOL_USR 2 +/// Allows deads to interact with the action. #define USE_ALLOW_DEAD 4 +/// Allows users to interact with the action even if they are incapacitated. #define USE_ALLOW_INCAPACITATED 8 +/// Allows users to interact with the action regardless of their distance to the object. #define USE_ALLOW_NON_ADJACENT 16 +/// Checks if the item is in possession of a user. #define USE_FORCE_SRC_IN_USER 32 +/// Disallows interaction from silicon users. #define USE_DISALLOW_SILICONS 64 -#define USE_DISALLOW_SPECIALS 128 // revenants, zombies, etc +/// Disallows interaction from the mobs specified at `is_mob_special()`, such as zombies and revenants. +#define USE_DISALLOW_SPECIALS 128 #define USE_SUCCESS 0 #define USE_FAIL_NON_ADJACENT 1 diff --git a/code/game/objects/items/devices/paint_sprayer.dm b/code/game/objects/items/devices/paint_sprayer.dm index 6a8cb9a3d7f..a26f416582a 100644 --- a/code/game/objects/items/devices/paint_sprayer.dm +++ b/code/game/objects/items/devices/paint_sprayer.dm @@ -205,17 +205,20 @@ return FALSE /turf/simulated/floor/Click(location, control, params) - if(ishuman(usr)) - var/mob/living/carbon/human/H = usr + if(ishuman(usr) || isrobot(usr)) + var/mob/living/L = usr var/list/modifiers = params2list(params) - var/obj/item/device/paint_sprayer/paint_sprayer = H.get_active_hand() + var/obj/item/device/paint_sprayer/paint_sprayer = L.get_active_hand() if(istype(paint_sprayer)) - if(!istype(H.buckled_to)) - H.face_atom(src) - if(modifiers["ctrl"] && paint_sprayer.pick_color(src, H)) + if(!istype(L.buckled_to)) + L.face_atom(src) + + if(modifiers["ctrl"] && paint_sprayer.pick_color(src, L)) return - if(modifiers["shift"] && paint_sprayer.remove_paint(src, H)) + + if(modifiers["shift"] && paint_sprayer.remove_paint(src, L)) return + . = ..() /obj/item/device/paint_sprayer/proc/pick_color(atom/A, mob/user) diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 9fbd3aa26e7..f7574bda114 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -2,28 +2,42 @@ layer = OBJ_LAYER animate_movement = 2 - var/list/matter //Used to store information about the contents of the object. - var/recyclable = FALSE //Whether the object can be recycled (eaten) by something like the Autolathe - var/w_class // Size of the object. - var/list/origin_tech = null //Used by R&D to determine what research bonuses it grants. - var/unacidable = 0 //universal "unacidabliness" var, here so you can use it in any obj. + /// Used to store information about the contents of the object. + var/list/matter + /// Whether the object can be recycled (eaten) by something like the Autolathe + var/recyclable = FALSE + /// Size of the object. + var/w_class + /// Used by R&D to determine what research bonuses it grants. + var/list/origin_tech = null + /// Universal "unacidabliness" var, here so you can use it in any obj. + var/unacidable = FALSE - var/obj_flags //Special flags such as whether or not this object can be rotated. + /// Special flags such as whether or not this object can be rotated. + var/obj_flags + /// Integer. Used for varied damage and item volume calculations. var/throwforce = 1 - var/list/attack_verb //Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]" - var/sharp = 0 // whether this object cuts - var/edge = FALSE // whether this object is more likely to dismember - var/in_use = 0 // If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING! + /// Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]" + var/list/attack_verb + /// Whether this object cuts. + var/sharp = FALSE + /// Whether this object is more likely to dismember its poor foes. + var/edge = FALSE + /// If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING! + var/in_use = FALSE + /// Type of damage this object deals. var/damtype = DAMAGE_BRUTE var/force = 0 var/armor_penetration = 0 - var/noslice = 0 // To make it not able to slice things. + /// Makes an object not able to slice things. + var/noslice = FALSE var/being_shocked = 0 - var/icon_species_tag = ""//If set, this holds the 3-letter shortname of a species, used for species-specific worn icons - var/icon_auto_adapt = 0//If 1, this item will automatically change its species tag to match the wearer's species. - //requires that the wearer's species is listed in icon_supported_species_tags + /// If set, this holds the 3-letter shortname of a species, used for species-specific worn icons. + var/icon_species_tag = "" + /// If TRUE, this item will automatically change its species tag to match the wearer's species, given the wearer's species is listed in icon_supported_species_tags. + var/icon_auto_adapt = FALSE /** * A list of strings used with icon_auto_adapt, a list of species which have differing appearances for this item, @@ -31,11 +45,11 @@ */ var/list/icon_supported_species_tags - ///If `TRUE`, will use the `icon_species_tag` var for rendering this item in the left/right hand + /// If `TRUE`, will use the `icon_species_tag` var for rendering this item in the left/right hand. var/icon_species_in_hand = FALSE var/equip_slot = 0 - ///Played when the item is used, for example tools + /// Played when the item is used, for example tools. var/usesound var/toolspeed = 1 diff --git a/code/modules/clothing/spacesuits/rig/suits/combat.dm b/code/modules/clothing/spacesuits/rig/suits/combat.dm index c6fa1584682..3913ab34014 100644 --- a/code/modules/clothing/spacesuits/rig/suits/combat.dm +++ b/code/modules/clothing/spacesuits/rig/suits/combat.dm @@ -3,7 +3,7 @@ desc = "A sleek and dangerous hardsuit for active combat. This one is a Stellar Corporate Conglomerate design in color scheme and make." icon = 'icons/obj/item/clothing/rig/combat.dmi' icon_state = "combat_rig" - icon_supported_species_tags = list("skr", "taj", "unat", "ipc") + icon_supported_species_tags = list("skr", "taj", "una", "ipc") suit_type = "combat hardsuit" armor = list( MELEE = ARMOR_MELEE_MAJOR, diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index ff9882e1af8..27ca224d321 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -7,13 +7,13 @@ // Descriptors and strings. /// Species name. var/name - /// Pluralized name (since "[name]s" is not always valid) + /// Pluralized name (since "[name]s" is not always valid). var/name_plural /// If TRUE, the species' name won't be visible on examine. var/hide_name = FALSE - /// Shortened form of the name, for code use. Must be exactly 3 letter long, and all lowercase + /// Shortened form of the name, for code use. Must be exactly 3 letter long, and all lowercase. var/short_name - /// A name for this overarching species, ie 'Human', 'Skrell', 'IPC'. only used in character creation + /// A name for this overarching species, ie 'Human', 'Skrell', 'IPC'. only used in character creation. var/category_name /// A brief lore summary for use in the chargen screen. var/blurb = "A completely nondescript species." diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 63c2ffdf5f4..8902ccd9614 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -738,9 +738,10 @@ toggle_safety(usr) /obj/item/gun/CtrlClick(var/mob/user) - if(has_safety && user == loc) + if(has_safety && !use_check(user, USE_FORCE_SRC_IN_USER)) toggle_safety(user) return TRUE + . = ..() /obj/item/gun/proc/safety() diff --git a/html/changelogs/kano-dot-bundle-of-fixes.yml b/html/changelogs/kano-dot-bundle-of-fixes.yml new file mode 100644 index 00000000000..3e7c741bb15 --- /dev/null +++ b/html/changelogs/kano-dot-bundle-of-fixes.yml @@ -0,0 +1,10 @@ +author: Kano + +delete-after: True + +changes: + - bugfix: "Fixed combat hardsuits not using unathi specie specific worn sprites." + - bugfix: "Fixed some mapping issues in nka_merchant ship." + - bugfix: "Fixed silicon robots being unable to use ctrl and shift click functions with paint guns." + - bugfix: "Fixed being able to interact with weapon safeties in situations where it shouldn't occur." + - code_imp: "Converted some comments into dmdocs, and documented some parts where it was missing." diff --git a/icons/obj/item/clothing/rig/combat.dmi b/icons/obj/item/clothing/rig/combat.dmi index ffb67789ebfda85b2e9b7d962db28d22a04dfcf8..e8212afc6cecb8948829817c2b6444f6221e430f 100644 GIT binary patch literal 5852 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 GBL4?cH_j9Q literal 6513 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 F{{zcXC*J@7 diff --git a/maps/away/ships/nka/nka_merchant/nka_merchant.dmm b/maps/away/ships/nka/nka_merchant/nka_merchant.dmm index acb5dfaabab..5fe62fd052b 100644 --- a/maps/away/ships/nka/nka_merchant/nka_merchant.dmm +++ b/maps/away/ships/nka/nka_merchant/nka_merchant.dmm @@ -315,9 +315,6 @@ }, /area/nka_merchant/engineering) "aQ" = ( -/obj/machinery/power/apc/east{ - req_access = list(213) - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 8 }, @@ -330,6 +327,7 @@ /obj/structure/cable/green{ icon_state = "0-4" }, +/obj/machinery/power/apc/north, /turf/simulated/floor/tiled{ temperature = 278.15 }, @@ -5079,12 +5077,6 @@ temperature = 278.15 }, /area/nka_merchant/warehouse) -"He" = ( -/obj/effect/floor_decal/corner/dark_blue{ - dir = 10 - }, -/turf/simulated/wall/shuttle/space_ship, -/area/nka_merchant/mess) "Hg" = ( /obj/machinery/hologram/holopad/long_range, /obj/effect/overmap/visitable/ship/landable/nka_merchant_shuttle, @@ -6223,12 +6215,6 @@ temperature = 278.15 }, /area/nka_merchant/bridge) -"WO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/turf/template_noop, -/area/space) "WS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/aux, /obj/structure/extinguisher_cabinet/east{ @@ -18477,7 +18463,7 @@ iB iB AT aI -ga +Py OG AT xX @@ -19319,7 +19305,7 @@ nE Vj Vj Vj -He +Vj Vj Vj Vj @@ -21269,7 +21255,7 @@ gB iB iB iB -WO +iB iB iB iB