From 46b6217d03daeebd9e262141aefb6f706d25242d Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Tue, 17 Sep 2024 20:35:18 -0400 Subject: [PATCH 01/61] Concrete Mix @ Outpost (#3376) ## About The Pull Request I don't know how we've gotten this far without stable concrete mix. It's a staple of concrete related situations. Adds a chemical jug of concrete mix (in an ideal world this would be a big chalky bag) to the outpost for 1000 credits. ## Why It's Good For The Game Construction fluff. Also useful for a ship I'm planning. ## Changelog :cl: add: You can now purchase concrete mix at the outpost. For concrete making. /:cl: --- code/modules/cargo/packs/material.dm | 6 ++++++ .../modules/reagents/chemistry/reagents/other_reagents.dm | 8 ++++++++ code/modules/reagents/chemistry/recipes/others.dm | 4 ++++ code/modules/reagents/reagent_containers/jug.dm | 4 ++++ 4 files changed, 22 insertions(+) diff --git a/code/modules/cargo/packs/material.dm b/code/modules/cargo/packs/material.dm index dc01a4dfdc75..238b6491ea3b 100644 --- a/code/modules/cargo/packs/material.dm +++ b/code/modules/cargo/packs/material.dm @@ -111,3 +111,9 @@ contains = list(/obj/item/stack/sheet/mineral/wood/fifty) crate_name = "wood planks crate" +/datum/supply_pack/material/concrete_mix + name = "Concrete Mix (Jug)" + desc = "Feeling lazy? Need a structure and quick? Use concrete! Just add water." + cost = 500 + contains = list(/obj/item/reagent_containers/glass/chem_jug/concrete_mix) + crate_name = "Concrete Mix" diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index 56d248e1d447..11306b441f1e 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -2358,6 +2358,14 @@ else addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living, gib)), 5 SECONDS) +/datum/reagent/concrete_mix + name = "Concrete Mix" + description = "Pre-made concrete mix, ideal for lazy engineers." + color = "#c4c0bc" + taste_description = "chalky concrete" + harmful = TRUE + reagent_state = SOLID + /datum/reagent/cement name = "Cement" description = "A sophisticated binding agent used to produce concrete." diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index e7494191d1df..d9b6b782115e 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -620,6 +620,10 @@ required_temp = 400 mix_message = "The mixture boils off a grey vapor..."//The water boils off, leaving the cement +/datum/chemical_reaction/quick_concrete + results = list(/datum/reagent/concrete = 5) + required_reagents = list(/datum/reagent/concrete_mix = 5, /datum/reagent/water = 5) + /datum/chemical_reaction/hexement results = list(/datum/reagent/cement/hexement = 1) required_reagents = list(/datum/reagent/cement = 6, /datum/reagent/phenol = 1) diff --git a/code/modules/reagents/reagent_containers/jug.dm b/code/modules/reagents/reagent_containers/jug.dm index 46c5620ecb20..8214a0747dfc 100644 --- a/code/modules/reagents/reagent_containers/jug.dm +++ b/code/modules/reagents/reagent_containers/jug.dm @@ -148,3 +148,7 @@ name = "chemical jug (hexacrete)" list_reagents = list(/datum/reagent/concrete/hexacrete = 150) +/obj/item/reagent_containers/glass/chem_jug/concrete_mix + name = "chemical jug (concrete mix)" + desc = "Just pour out and add water!" + list_reagents = list(/datum/reagent/concrete_mix = 150) From fb59591fb50db170514c17781a56bc5a2a65b8df Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 17 Sep 2024 19:47:00 -0500 Subject: [PATCH 02/61] Automatic changelog generation for PR #3376 [ci skip] --- html/changelogs/AutoChangeLog-pr-3376.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3376.yml diff --git a/html/changelogs/AutoChangeLog-pr-3376.yml b/html/changelogs/AutoChangeLog-pr-3376.yml new file mode 100644 index 000000000000..49eb0a8d7b9b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3376.yml @@ -0,0 +1,4 @@ +author: Bjarl +changes: + - {rscadd: You can now purchase concrete mix at the outpost. For concrete making.} +delete-after: true From bfbe7eb431c5f4263acaae80e85158e4d49d18cc Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 18 Sep 2024 00:59:29 +0000 Subject: [PATCH 03/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3376.yml | 4 ---- html/changelogs/archive/2024-09.yml | 3 +++ 2 files changed, 3 insertions(+), 4 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3376.yml diff --git a/html/changelogs/AutoChangeLog-pr-3376.yml b/html/changelogs/AutoChangeLog-pr-3376.yml deleted file mode 100644 index 49eb0a8d7b9b..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3376.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Bjarl -changes: - - {rscadd: You can now purchase concrete mix at the outpost. For concrete making.} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index 9ba7cae9be4b..dde60b3d120b 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -101,3 +101,6 @@ 2024-09-16: Gristlebee: - bugfix: Misfires no longer have 100% chance +2024-09-18: + Bjarl: + - rscadd: You can now purchase concrete mix at the outpost. For concrete making. From 8b2faaffa17b03a65fb5a82d4c4680dce9558845 Mon Sep 17 00:00:00 2001 From: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> Date: Tue, 17 Sep 2024 19:35:23 -0500 Subject: [PATCH 04/61] CTF machines are only added to processing when CTF starts (#3360) ## About The Pull Request small optimization to reduce the size of SSmachines processing ## Why It's Good For The Game ## Changelog :cl: code: ctf machines now only process while ctf is running /:cl: --- _maps/map_files/generic/CentCom.dmm | 4 ++-- code/modules/awaymissions/capture_the_flag.dm | 3 +++ code/modules/awaymissions/mission_code/challenge.dm | 10 ++++++++++ code/modules/power/singularity/emitter.dm | 10 ---------- 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 13e075e9884d..fdfae529865d 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -154,7 +154,7 @@ /turf/open/floor/plating, /area/ctf) "agI" = ( -/obj/machinery/power/emitter/energycannon{ +/obj/machinery/power/emitter/energycannon/ctf{ active = 0 }, /turf/open/floor/plating, @@ -163,7 +163,7 @@ /turf/open/floor/plating, /area/ctf) "aha" = ( -/obj/machinery/power/emitter/energycannon{ +/obj/machinery/power/emitter/energycannon/ctf{ active = 0; dir = 1 }, diff --git a/code/modules/awaymissions/capture_the_flag.dm b/code/modules/awaymissions/capture_the_flag.dm index 2f87eea6d2a7..42d7643fb926 100644 --- a/code/modules/awaymissions/capture_the_flag.dm +++ b/code/modules/awaymissions/capture_the_flag.dm @@ -171,6 +171,7 @@ icon = 'icons/obj/device.dmi' icon_state = "syndbeacon" resistance_flags = INDESTRUCTIBLE + processing_flags = START_PROCESSING_MANUALLY var/team = WHITE_TEAM var/team_span = "" //Capture the Flag scoring @@ -347,6 +348,7 @@ /obj/machinery/capture_the_flag/proc/start_ctf() ctf_enabled = TRUE + START_PROCESSING(SSmachines, src) for(var/d in dead_barricades) var/obj/effect/ctf/dead_barricade/D = d D.respawn() @@ -378,6 +380,7 @@ /obj/machinery/capture_the_flag/proc/stop_ctf() ctf_enabled = FALSE + STOP_PROCESSING(SSmachines, src) arena_reset = FALSE var/area/A = get_area(src) for(var/i in GLOB.mob_list) diff --git a/code/modules/awaymissions/mission_code/challenge.dm b/code/modules/awaymissions/mission_code/challenge.dm index 05d079220151..6f8bb473b77a 100644 --- a/code/modules/awaymissions/mission_code/challenge.dm +++ b/code/modules/awaymissions/mission_code/challenge.dm @@ -35,3 +35,13 @@ /obj/machinery/power/emitter/energycannon/RefreshParts() return + +/obj/machinery/power/emitter/energycannon/ctf + processing_flags = START_PROCESSING_MANUALLY + +/obj/machinery/power/emitter/energycannon/ctf/proc/toggle_ctf(ctf_enabled) + src.active = ctf_enabled + if(ctf_enabled) + START_PROCESSING(SSmachines, src) + else + STOP_PROCESSING(SSmachines, src) diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 2dcaa224a71e..73920780bef3 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -357,16 +357,6 @@ if(user) user.visible_message("[user.name] emags [src].", "You short out the lock.") -/obj/machinery/power/emitter/ctf - name = "Energy Cannon" - active = TRUE - active_power_usage = FALSE - idle_power_usage = FALSE - locked = TRUE - req_access_txt = "100" - welded = TRUE - use_power = FALSE - /obj/machinery/power/emitter/welded/Initialize() welded = TRUE return ..() From 29177cb4020f1da6a77357f1de050b6b732afcaa Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 17 Sep 2024 20:10:40 -0500 Subject: [PATCH 05/61] Automatic changelog generation for PR #3360 [ci skip] --- html/changelogs/AutoChangeLog-pr-3360.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3360.yml diff --git a/html/changelogs/AutoChangeLog-pr-3360.yml b/html/changelogs/AutoChangeLog-pr-3360.yml new file mode 100644 index 000000000000..70c427bfbfb5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3360.yml @@ -0,0 +1,4 @@ +author: FalloutFalcon +changes: + - {code_imp: ctf machines now only process while ctf is running} +delete-after: true From e08ed925149bb7645103094e0c36f6b4894973e5 Mon Sep 17 00:00:00 2001 From: Gristlebee <56049844+Gristlebee@users.noreply.github.com> Date: Wed, 18 Sep 2024 16:17:22 -0700 Subject: [PATCH 06/61] Temperature Feedback (#3358) ## About The Pull Request Original code and new alert icons by Rylie, a few bug fixes and modifications by me, and PRed on behalf of her. The sweating alert icons specifically are from Citadel Station Adds comfortable temperature ranges for species. Instead of the temp indicator only showing up when you hit dangerous temps and start taking damage, it will now show up once you exceed your comfortable range. Being in temperature damage is now indicated by a sweating/fan overheat alert for organics and IPCs respectively in the case of overheating, or shivering if you're too cold. Comfortable temp ranges are provisional, and Im open to changing them. ## Why It's Good For The Game Gives a bit more nuanced feedback on your temperature, and provides a transition state between from "you're a bit warm" to "you are now dying of heatstroke" instead of immediately going from fine to melting alive with no HUD warning. ## Changelog :cl: Rye-Rice, Gristlebee add: Comfortable Temperature ranges imageadd: Temperature HUD alerts /:cl: --- code/_onclick/hud/alert.dm | 33 ++++- code/game/objects/effects/turf_fire.dm | 2 +- .../mob/living/carbon/human/species.dm | 117 ++++++++++++++---- .../carbon/human/species_types/ethereal.dm | 3 + .../carbon/human/species_types/kepori.dm | 2 + .../human/species_types/lizardpeople.dm | 5 +- .../living/carbon/human/species_types/vox.dm | 3 + code/modules/mob/living/carbon/life.dm | 1 + icons/hud/screen_alert.dmi | Bin 118051 -> 125947 bytes shiptest.dme | 10 +- 10 files changed, 138 insertions(+), 38 deletions(-) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 4329dd333e3d..6800db70a8fa 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -190,15 +190,40 @@ Override makes it so the alert is not replaced until cleared by a clear_alert wi icon_state = "gross3" /atom/movable/screen/alert/hot - name = "Too Hot" - desc = "You're flaming hot! Get somewhere cooler and take off any insulating clothing like a fire suit." + name = "Hot" + desc = "It's quite warm. Get somewhere cooler and take off any insulating clothing like a fire suit." + icon_state = "hot" + +/atom/movable/screen/alert/warm + name = "Warm" + desc = "It's a bit warm, but not unbearably so." icon_state = "hot" /atom/movable/screen/alert/cold - name = "Too Cold" - desc = "You're freezing cold! Get somewhere warmer and take off any insulating clothing like a space suit." + name = "Cold" + desc = "It's quite cold. Get somewhere warmer and take off any insulating clothing like a space suit." + icon_state = "cold" + +/atom/movable/screen/alert/chilly + name = "Chilly" + desc = "It's a bit chilly, but not unbearably so." icon_state = "cold" +/atom/movable/screen/alert/sweat + name = "Sweating" + desc = "You're sweating and the heat is starting to hurt. Get somewhere cooler and take off any insulating clothing like a fire suit." + icon_state = "sweat" + +/atom/movable/screen/alert/shiver + name = "Shivering" + desc = "You're shivering and the cold is starting to hurt. Get somewhere warmer and take off any insulating clothing like a space suit." + icon_state = "shiver" + +/atom/movable/screen/alert/fans + name = "High Fan Speed" + desc = "Your fans are spinning quite fast, and your components are reaching a dangerous temperature! Get somewhere cooler and take off any insulating clothing like a fire suit." + icon_state = "fans" + /atom/movable/screen/alert/lowpressure name = "Low Pressure" desc = "The air around you is hazardously thin. A space suit would protect you." diff --git a/code/game/objects/effects/turf_fire.dm b/code/game/objects/effects/turf_fire.dm index 735d8226edfa..0bed49a3709c 100644 --- a/code/game/objects/effects/turf_fire.dm +++ b/code/game/objects/effects/turf_fire.dm @@ -5,7 +5,7 @@ #define TURF_FIRE_VOLUME 150 #define TURF_FIRE_MAX_POWER 50 -#define TURF_FIRE_ENERGY_PER_BURNED_OXY_MOL 12000 +#define TURF_FIRE_ENERGY_PER_BURNED_OXY_MOL 30000 #define TURF_FIRE_BURN_RATE_BASE 0.12 #define TURF_FIRE_BURN_RATE_PER_POWER 0.02 #define TURF_FIRE_BURN_CARBON_DIOXIDE_MULTIPLIER 0.75 diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 788baa32fbf5..a1560963b00b 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -146,6 +146,10 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/bodytemp_normal = HUMAN_BODYTEMP_NORMAL /// Minimum amount of kelvin moved toward normal body temperature per tick. var/bodytemp_autorecovery_min = HUMAN_BODYTEMP_AUTORECOVERY_MINIMUM + /// The maximum temperature the species is comfortable at. Going above this does not apply any effects, but warns players that the temperture is hot + var/max_temp_comfortable = (HUMAN_BODYTEMP_NORMAL + 7) + /// The minimum temperature the species is comfortable at. Going below this does not apply any effects, but warns players that the temperture is chilly + var/min_temp_comfortable = (HUMAN_BODYTEMP_NORMAL - 5) /// This is the divisor which handles how much of the temperature difference between the current body temperature and 310.15K (optimal temperature) humans auto-regenerate each tick. The higher the number, the slower the recovery. var/bodytemp_autorecovery_divisor = HUMAN_BODYTEMP_AUTORECOVERY_DIVISOR ///Similar to the autorecovery_divsor, but this is the divisor which is applied at the stage that follows autorecovery. This is the divisor which comes into play when the human's loc temperature is higher than their body temperature. Make it lower to lose bodytemp faster. @@ -160,6 +164,10 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/bodytemp_cooling_rate_max = HUMAN_BODYTEMP_COOLING_MAX /// The maximum rate at which a species can cool down per tick var/bodytemp_heating_rate_max = HUMAN_BODYTEMP_HEATING_MAX + /// How much temp is our body stabilizing naturally? + var/bodytemp_natural_stabilization = 0 + /// How much temp is the environment is causing us to charge? + var/bodytemp_environment_change = 0 ///Does our species have colors for its' damage overlays? var/use_damage_color = TRUE @@ -1790,10 +1798,10 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/areatemp = H.get_temperature(environment) if(H.stat != DEAD) // If you are dead your body does not stabilize naturally - natural_bodytemperature_stabilization(environment, H) + bodytemp_natural_stabilization = natural_bodytemperature_stabilization(environment, H) if(!H.on_fire || areatemp > H.bodytemperature) // If we are not on fire or the area is hotter - H.adjust_bodytemperature((areatemp - H.bodytemperature), use_insulation=TRUE, use_steps=TRUE, hardsuit_fix=bodytemp_normal - H.bodytemperature) + bodytemp_environment_change = H.adjust_bodytemperature((areatemp - H.bodytemperature), use_insulation=TRUE, use_steps=TRUE, hardsuit_fix=bodytemp_normal - H.bodytemperature) if(H.check_for_seal()) return @@ -1853,8 +1861,50 @@ GLOBAL_LIST_EMPTY(roundstart_races) /// Handle the body temperature status effects for the species /// Traits for resitance to heat or cold are handled here. /datum/species/proc/handle_body_temperature(mob/living/carbon/human/H) + var/body_temp = H.bodytemperature + var/total_change = bodytemp_natural_stabilization + bodytemp_environment_change + + //tempature is no longer comfy, throw alert + if(body_temp > max_temp_comfortable && !HAS_TRAIT(H, TRAIT_RESISTHEAT)) + SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "cold") + if(body_temp > bodytemp_heat_damage_limit) + var/burn_damage = calculate_burn_damage(H) + if(burn_damage < 2) + H.throw_alert("tempfeel", /atom/movable/screen/alert/hot, 3) + else + H.throw_alert("tempfeel", /atom/movable/screen/alert/hot, 2) + else + if(body_temp < (bodytemp_heat_damage_limit - 10)) + // you are cooling down and exiting the danger zone + if(total_change < 0) + H.throw_alert("tempfeel", /atom/movable/screen/alert/warm) + else + H.throw_alert("tempfeel", /atom/movable/screen/alert/hot, 2) + else if(total_change > 1) + H.throw_alert("tempfeel", /atom/movable/screen/alert/warm) + else + H.clear_alert("tempfeel") + else if (body_temp < min_temp_comfortable && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) + SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "hot") + if(body_temp < 200) + H.throw_alert("tempfeel", /atom/movable/screen/alert/cold, 3) + else if(body_temp < bodytemp_cold_damage_limit) + H.throw_alert("tempfeel", /atom/movable/screen/alert/cold, 2) + else if(body_temp < (bodytemp_cold_damage_limit + 10)) + // you are warming up and exiting the danger zone + if(total_change > 0) + H.throw_alert("tempfeel", /atom/movable/screen/alert/chilly) + else + H.throw_alert("tempfeel", /atom/movable/screen/alert/cold, 2) + else if(total_change < -1) + H.throw_alert("tempfeel", /atom/movable/screen/alert/chilly) + else + H.clear_alert("tempfeel") + else + H.clear_alert("tempfeel") + // Body temperature is too hot, and we do not have resist traits - if(H.bodytemperature > bodytemp_heat_damage_limit && !HAS_TRAIT(H, TRAIT_RESISTHEAT)) + if(body_temp > bodytemp_heat_damage_limit && !HAS_TRAIT(H, TRAIT_RESISTHEAT)) // Clear cold mood and apply hot mood SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "cold") SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "hot", /datum/mood_event/hot) @@ -1862,23 +1912,26 @@ GLOBAL_LIST_EMPTY(roundstart_races) //Remove any slowdown from the cold. H.remove_movespeed_modifier(/datum/movespeed_modifier/cold) - var/burn_damage = 0 - var/firemodifier = H.fire_stacks / 50 - if (!H.on_fire) // We are not on fire, reduce the modifier - firemodifier = min(firemodifier, 0) - - // this can go below 5 at log 2.5 - burn_damage = max(log(2 - firemodifier, (H.bodytemperature - H.get_body_temp_normal(apply_change=FALSE))) - 5,0) - - // Display alerts based on the amount of fire damage being taken - if (burn_damage) - switch(burn_damage) - if(1 to 2) - H.throw_alert("temp", /atom/movable/screen/alert/hot, 1) - if(2 to 4) - H.throw_alert("temp", /atom/movable/screen/alert/hot, 2) - else - H.throw_alert("temp", /atom/movable/screen/alert/hot, 3) + var/burn_damage = calculate_burn_damage(H) + + // sweats depending on burn damage, not actually a mechanic but a alternative to pinpoint when you are taking damage + if(burn_damage) + if(H.mob_biotypes & MOB_ROBOTIC) //robors have a alternative cooling fan graphic + switch(burn_damage) + if(0 to 2) + H.throw_alert("temp", /atom/movable/screen/alert/fans, 1) + if(2 to 4) + H.throw_alert("temp", /atom/movable/screen/alert/fans, 2) + else + H.throw_alert("temp", /atom/movable/screen/alert/fans, 3) + else + switch(burn_damage) + if(0 to 2) + H.throw_alert("temp", /atom/movable/screen/alert/sweat, 1) + if(2 to 4) + H.throw_alert("temp", /atom/movable/screen/alert/sweat, 2) + else + H.throw_alert("temp", /atom/movable/screen/alert/sweat, 3) // Apply species and physiology modifiers to heat damage burn_damage = burn_damage * heatmod * H.physiology.heat_mod @@ -1891,7 +1944,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.apply_damage(burn_damage, BURN, spread_damage = TRUE) // Body temperature is too cold, and we do not have resist traits - else if(H.bodytemperature < bodytemp_cold_damage_limit && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) + else if(body_temp < bodytemp_cold_damage_limit && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) // clear any hot moods and apply cold mood SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "hot") SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "cold", /datum/mood_event/cold) @@ -1900,17 +1953,16 @@ GLOBAL_LIST_EMPTY(roundstart_races) // Display alerts based on the amount of cold damage being taken // Apply more damage based on how cold you are - var/bodytemp = H.bodytemperature - if(bodytemp < 120) - H.throw_alert("temp", /atom/movable/screen/alert/cold, 3) + if(body_temp < 120) + H.throw_alert("temp", /atom/movable/screen/alert/shiver, 3) H.apply_damage(COLD_DAMAGE_LEVEL_3 * coldmod * H.physiology.cold_mod, BURN) - else if(bodytemp < 200) - H.throw_alert("temp", /atom/movable/screen/alert/cold, 2) + else if(body_temp < 200) + H.throw_alert("temp", /atom/movable/screen/alert/shiver, 2) H.apply_damage(COLD_DAMAGE_LEVEL_2 * coldmod * H.physiology.cold_mod, BURN) else - H.throw_alert("temp", /atom/movable/screen/alert/cold, 1) + H.throw_alert("temp", /atom/movable/screen/alert/shiver, 1) H.apply_damage(COLD_DAMAGE_LEVEL_1 * coldmod * H.physiology.cold_mod, BURN) // We are not to hot or cold, remove status and moods @@ -1920,6 +1972,16 @@ GLOBAL_LIST_EMPTY(roundstart_races) SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "cold") SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "hot") +/datum/species/proc/calculate_burn_damage(mob/living/carbon/human/current_human) + var/burn_damage = 0 + var/firemodifier = current_human.fire_stacks / 50 + if (!current_human.on_fire) // We are not on fire, reduce the modifier + firemodifier = min(firemodifier, 0) + + // this can go below 5 at log 2.5 + burn_damage = max(log(2 - firemodifier, (current_human.bodytemperature - current_human.get_body_temp_normal(apply_change=FALSE))) - 5,0) + return burn_damage + /// Handle the air pressure of the environment /datum/species/proc/handle_environment_pressure(datum/gas_mixture/environment, mob/living/carbon/human/H) var/pressure = environment.return_pressure() @@ -2017,6 +2079,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) // Apply the natural stabilization changes H.adjust_bodytemperature(natural_change) + return natural_change ////////// // FIRE // diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm index 27362b348cab..b91559edb0ae 100644 --- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm +++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm @@ -30,6 +30,9 @@ bodytemp_heat_damage_limit = FIRE_MINIMUM_TEMPERATURE_TO_SPREAD // about 150C // Cold temperatures hurt faster as it is harder to move with out the heat energy bodytemp_cold_damage_limit = (T20C - 10) // about 10c + + max_temp_comfortable = HUMAN_BODYTEMP_NORMAL + 100 + hair_color = "fixedmutcolor" hair_alpha = 140 mutant_bodyparts = list("elzu_horns", "tail_elzu") diff --git a/code/modules/mob/living/carbon/human/species_types/kepori.dm b/code/modules/mob/living/carbon/human/species_types/kepori.dm index 7e76fff79c1e..39e3cbc3d07a 100644 --- a/code/modules/mob/living/carbon/human/species_types/kepori.dm +++ b/code/modules/mob/living/carbon/human/species_types/kepori.dm @@ -24,6 +24,8 @@ bodytemp_normal = HUMAN_BODYTEMP_NORMAL + 30 bodytemp_heat_damage_limit = HUMAN_BODYTEMP_HEAT_DAMAGE_LIMIT + 30 bodytemp_cold_damage_limit = HUMAN_BODYTEMP_COLD_DAMAGE_LIMIT + 30 + max_temp_comfortable = HUMAN_BODYTEMP_NORMAL + 40 + min_temp_comfortable = HUMAN_BODYTEMP_NORMAL - 3 mutanttongue = /obj/item/organ/tongue/kepori species_language_holder = /datum/language_holder/kepori var/datum/action/innate/keptackle/keptackle diff --git a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm index c34a70b3afde..9d539007df4e 100644 --- a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm @@ -48,6 +48,9 @@ // Lizards are coldblooded and can stand a greater temperature range than humans bodytemp_heat_damage_limit = HUMAN_BODYTEMP_HEAT_DAMAGE_LIMIT + 20 // This puts lizards 10 above lavaland max heat for ash lizards. bodytemp_cold_damage_limit = HUMAN_BODYTEMP_COLD_DAMAGE_LIMIT - 10 + + max_temp_comfortable = HUMAN_BODYTEMP_NORMAL + 25 + min_temp_comfortable = HUMAN_BODYTEMP_NORMAL - 3 loreblurb = "The Sarathi are a cold-blooded reptilian species originating from the planet Kalixcis, where they evolved alongside the Elzuosa. Kalixcian culture places no importance on blood-bonds, and those from it tend to consider their family anyone they are sufficiently close to, and choose their own names." ass_image = 'icons/ass/asslizard.png' @@ -91,7 +94,7 @@ /// Lizards are cold blooded and do not stabilize body temperature naturally /datum/species/lizard/natural_bodytemperature_stabilization(datum/gas_mixture/environment, mob/living/carbon/human/H) - return + return 0 /datum/species/lizard/random_name(gender,unique,lastname) if(unique) diff --git a/code/modules/mob/living/carbon/human/species_types/vox.dm b/code/modules/mob/living/carbon/human/species_types/vox.dm index b61b334e6ec2..1a73860ab29f 100644 --- a/code/modules/mob/living/carbon/human/species_types/vox.dm +++ b/code/modules/mob/living/carbon/human/species_types/vox.dm @@ -26,6 +26,9 @@ bodytemp_cold_divisor = VOX_BODYTEMP_COLD_DIVISOR bodytemp_autorecovery_min = VOX_BODYTEMP_AUTORECOVERY_MIN + max_temp_comfortable = HUMAN_BODYTEMP_NORMAL + 20 + min_temp_comfortable = HUMAN_BODYTEMP_NORMAL - 20 + bodytype = BODYTYPE_VOX species_chest = /obj/item/bodypart/chest/vox diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index c5145600bbf8..04a870684ccf 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -658,6 +658,7 @@ All effects don't start immediately, but rather get worse over time; the rate is if(bodytemperature >= min_temp && bodytemperature <= max_temp) bodytemperature = clamp(bodytemperature + amount,min_temp,max_temp) + return amount ///////// diff --git a/icons/hud/screen_alert.dmi b/icons/hud/screen_alert.dmi index 60ada01078d76911efafba0fb90d6b68a42ffd5e..99de0dbf9441c76597285251035a5cb2368a1283 100644 GIT binary patch literal 125947 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

;dO!%!&-EqS=; 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 literal 118051 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 P0SG)@{an^LB{Ts5Dc`(q diff --git a/shiptest.dme b/shiptest.dme index 3e1776300873..8288edd38bea 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -161,10 +161,10 @@ #include "code\__DEFINES\wires.dm" #include "code\__DEFINES\dcs\flags.dm" #include "code\__DEFINES\dcs\helpers.dm" +#include "code\__DEFINES\dcs\signals\signals.dm" #include "code\__DEFINES\dcs\signals\signals_mod.dm" #include "code\__DEFINES\dcs\signals\signals_storage.dm" #include "code\__DEFINES\dcs\signals\signals_mob\signals_mob_carbon.dm" -#include "code\__DEFINES\dcs\signals\signals.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_object.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_clothing.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_item\signals_food.dm" @@ -2811,6 +2811,10 @@ #include "code\modules\mob\living\simple_animal\slime\slime.dm" #include "code\modules\mob\living\simple_animal\slime\slime_say.dm" #include "code\modules\mob\living\simple_animal\slime\subtypes.dm" +#include "code\modules\mob_spawner\burrow.dm" +#include "code\modules\mob_spawner\hivebot.dm" +#include "code\modules\mob_spawner\spawner.dm" +#include "code\modules\mob_spawner\spawner_componet.dm" #include "code\modules\mod\mod_actions.dm" #include "code\modules\mod\mod_activation.dm" #include "code\modules\mod\mod_ai.dm" @@ -2835,10 +2839,6 @@ #include "code\modules\mod\modules\modules_storage.dm" #include "code\modules\mod\modules\modules_supply.dm" #include "code\modules\mod\modules\modules_visor.dm" -#include "code\modules\mob_spawner\burrow.dm" -#include "code\modules\mob_spawner\hivebot.dm" -#include "code\modules\mob_spawner\spawner.dm" -#include "code\modules\mob_spawner\spawner_componet.dm" #include "code\modules\modular_computers\laptop_vendor.dm" #include "code\modules\modular_computers\computers\_modular_computer_shared.dm" #include "code\modules\modular_computers\computers\item\computer.dm" From 737a3704c4ee49dbd667ee378e6ac2e9ed6a763e Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 18 Sep 2024 18:28:35 -0500 Subject: [PATCH 07/61] Automatic changelog generation for PR #3358 [ci skip] --- html/changelogs/AutoChangeLog-pr-3358.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3358.yml diff --git a/html/changelogs/AutoChangeLog-pr-3358.yml b/html/changelogs/AutoChangeLog-pr-3358.yml new file mode 100644 index 000000000000..85d2986462eb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3358.yml @@ -0,0 +1,5 @@ +author: Rye-Rice, Gristlebee +changes: + - {rscadd: Comfortable Temperature ranges} + - {imageadd: Temperature HUD alerts} +delete-after: true From b937561d7d0b9d0517cf5fba79ec6e04ef1c0c84 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Thu, 19 Sep 2024 01:01:09 +0000 Subject: [PATCH 08/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3358.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3360.yml | 4 ---- html/changelogs/archive/2024-09.yml | 6 ++++++ 3 files changed, 6 insertions(+), 9 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3358.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3360.yml diff --git a/html/changelogs/AutoChangeLog-pr-3358.yml b/html/changelogs/AutoChangeLog-pr-3358.yml deleted file mode 100644 index 85d2986462eb..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3358.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Rye-Rice, Gristlebee -changes: - - {rscadd: Comfortable Temperature ranges} - - {imageadd: Temperature HUD alerts} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3360.yml b/html/changelogs/AutoChangeLog-pr-3360.yml deleted file mode 100644 index 70c427bfbfb5..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3360.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: FalloutFalcon -changes: - - {code_imp: ctf machines now only process while ctf is running} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index dde60b3d120b..1e76f75faf34 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -104,3 +104,9 @@ 2024-09-18: Bjarl: - rscadd: You can now purchase concrete mix at the outpost. For concrete making. +2024-09-19: + FalloutFalcon: + - code_imp: ctf machines now only process while ctf is running + Rye-Rice, Gristlebee: + - rscadd: Comfortable Temperature ranges + - imageadd: Temperature HUD alerts From bb0ad024e87678355bf536c99ef37a7cb6408802 Mon Sep 17 00:00:00 2001 From: Sadhorizon <108196626+Sadhorizon@users.noreply.github.com> Date: Fri, 20 Sep 2024 02:54:48 +0200 Subject: [PATCH 09/61] Seperates goggles from the base ballistic helmet. (#3389) ## About The Pull Request ![obraz](https://github.com/user-attachments/assets/b7840360-db17-42e5-8c23-d161e59acf8f) Woah! Best sprite showcase of 2024! Note: Those goggles, unlike the ones that factions have, do NOT have a sechud. They are just fancy sunglasses. ## Why It's Good For The Game - Probably good to have them seperated, just like how inteq did it. - Indie sec drip. - I REALLY want this for the #3380. ## Changelog :cl: add: Added "ballistic goggles" - new indie security clothing item. imageadd: Added Kepori bulletproof helmet sprites. /:cl: --- .../components/storage/concrete/pockets.dm | 1 + code/modules/cargo/packs/spacesuit_armor.dm | 3 ++- code/modules/clothing/glasses/_glasses.dm | 8 ++++++++ code/modules/clothing/head/helmet.dm | 3 +++ icons/mob/clothing/eyes.dmi | Bin 15672 -> 15900 bytes icons/mob/clothing/head/armor.dmi | Bin 34870 -> 38807 bytes icons/mob/clothing/helmet_overlays.dmi | Bin 4861 -> 5200 bytes .../mob/species/kepori/onmob_eyes_kepori.dmi | Bin 366 -> 456 bytes .../mob/species/kepori/onmob_head_kepori.dmi | Bin 5337 -> 3555 bytes icons/mob/species/vox/onmob_eyes_vox.dmi | Bin 5883 -> 7144 bytes icons/obj/clothing/glasses.dmi | Bin 17094 -> 17750 bytes icons/obj/clothing/head/armor.dmi | Bin 16897 -> 18381 bytes 12 files changed, 14 insertions(+), 1 deletion(-) diff --git a/code/datums/components/storage/concrete/pockets.dm b/code/datums/components/storage/concrete/pockets.dm index 1a23a5c4830c..44470e5ca989 100644 --- a/code/datums/components/storage/concrete/pockets.dm +++ b/code/datums/components/storage/concrete/pockets.dm @@ -91,6 +91,7 @@ /obj/item/clothing/glasses/hud/health/night, /obj/item/clothing/glasses/hud/security/night, /obj/item/clothing/glasses/hud/security/sunglasses/inteq, + /obj/item/clothing/glasses/sunglasses/ballistic, /obj/item/ammo_casing, /obj/item/ammo_box/magazine/illestren_a850r, )) diff --git a/code/modules/cargo/packs/spacesuit_armor.dm b/code/modules/cargo/packs/spacesuit_armor.dm index ba0e8d73c7be..581a7f2587b4 100644 --- a/code/modules/cargo/packs/spacesuit_armor.dm +++ b/code/modules/cargo/packs/spacesuit_armor.dm @@ -123,7 +123,8 @@ desc = "Contains one full set of bulletproof armor, guaranteed to reduce a bullet's stopping power by half but with limited protection against melee weaponry." cost = 1750 contains = list(/obj/item/clothing/suit/armor/vest/bulletproof, - /obj/item/clothing/head/helmet/bulletproof) + /obj/item/clothing/head/helmet/bulletproof, + /obj/item/clothing/glasses/sunglasses/ballistic) crate_name = "bulletproof armor crate" crate_type = /obj/structure/closet/crate/secure/plasma diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm index c1b54fc5adc5..e011028246b6 100644 --- a/code/modules/clothing/glasses/_glasses.dm +++ b/code/modules/clothing/glasses/_glasses.dm @@ -305,6 +305,14 @@ throwforce = 12 glass_colour_type = /datum/client_colour/glass_colour/red +/obj/item/clothing/glasses/sunglasses/ballistic + name = "ballistic goggles" + desc = "A pair of flash-proof ballistic goggles." + icon_state = "ballistic_goggles" + item_state = "ballistic_goggles" + supports_variations = KEPORI_VARIATION | VOX_VARIATION + glass_colour_type = /datum/client_colour/glass_colour/lightblue + /obj/item/clothing/glasses/welding name = "welding goggles" desc = "Protects the eyes from bright flashes; approved by the mad scientist association." diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 435ad484a4ae..cefff9c4c76f 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -219,6 +219,7 @@ can_flashlight = TRUE dog_fashion = null allow_post_reskins = TRUE + supports_variations = KEPORI_VARIATION unique_reskin = list( "None" = "helmetalt", "Desert" = "helmetalt_desert", @@ -567,6 +568,7 @@ icon_state = "m10helm" can_flashlight = TRUE dog_fashion = null + supports_variations = null unique_reskin = list( "None" = "m10helm", "Desert" = "m10helm_desert", @@ -582,6 +584,7 @@ can_flashlight = TRUE dog_fashion = null allow_post_reskins = TRUE + supports_variations = null unique_reskin = list( "None" = "x11helm", "Desert" = "x11helm_desert", diff --git a/icons/mob/clothing/eyes.dmi b/icons/mob/clothing/eyes.dmi index 12ebf87128c3205233c29decadee4364089d4744..687d4965b32a10ad0c90d72f039456ec0c9d40c6 100644 GIT binary patch literal 15900 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 t{70|@jcq9S$K^GI|+x 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

|$R&uY-5+U~jmIKec8v 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 WirS0`wT<%`fWXt$&t;ucLK6TWlJHCb literal 34870 zcmd43^+S_?`!){38$?o3KoDjDA~CvQAWBFnAl)5~ZrDaBAtl`BLRVTMrQJm>pbuM&oi4GDV9v)GBx{! z@ha>Q>klO9k>;FZ)J<{7t9?$=M=!Xi_&RU-Y)YKm-7;2M9EO9i-oB|INzf3qns|Q+ zvw*=4xN5uWce6?P8;yJk@mT7*kqf&oM(OlQ;n-UH1-IGg;Ft2R8)mKIuPB)YVkzEQ z^Nq0t&l}N2s3Px2oFt(%eU&T9czKjPo`1=_2UbZc_is49F(y=7BXMe25flAW=9$)@NHvg%cC%dPr)3Vv*!!_d22bdA z?bL}Q1a?&@B64b~M}Cp}G~Q%NmX|oJnnUKks&s&>WQP>fS_@YjimjVqN*%0d_r>@f zdF=l1=$lrWgIY~oLR_iFZ{5;Q@=k$oy&VF3MCPZSPm}AKB-RFwLrH?kpC76-ynH@& zr&~Vdgw~;9itWz*ZwNjT{d@b3Wv!|U&dZ(Im*x&39hI8g{_V_EzdAl}il1wu!?DAb zv=r5)6ZG$tY%s5bZK}ygxH&UH5$dbq(`rIt!2PH2UJL!+us@4X33sNUqz7~E?(Au;ga zP~Ov)mVn@MpVDhtE$@uIOj7R$AFg`fGA}r2?!CR;_V8jb{!r)zx!SP%InZ?L%Ae#E_B!>2tq7S=0(Wg*YC!1=)`*@2^ zE89qIZj;SEB8DqlcX4-VZo?1~LdwA8tKvHQVz7w*??&}k|GVOBx&kgiEhA*DUN8V0o zH}>jrnNSt+x!1{A*?Mofx5=TkB)Iw=u4=sUT^i_@9PIRW(fY6fX-RU;-J@HQ?nf&# zz%9AooRBETfR4!2iGrM*jxVPoRRp~u^3TCQWJjjcCWtsPyvB=dI>8dU$d~#$oqF96 z{sVl{IuO?`K;rdC&BFYSZR5z&0BR;`B%D2q0cy5jcPA*P(qvdPqo?cssB?A;)aO0v z==bUBn*2=vx0j#yPttIWwwnYy>Q~!@-stYtlCn1ubgr@&pa>ojG>0N=+zWb(^zwfG zfGYIfcs8~!NxnBoTozKMTlGtkB8o|*o(^ctCFj&82S%#HWO^;D*}GC zIod)$grM;jVhQ!9$6Y;g0@L_YX#0)&C}4_^*Mk}p`;#Anr9Wq}5>hsL47on%u6O$N ziL6?%s7@tQboM*;A0w*o@*_iKdNr2w4HHpW@RqII=PGB!%+Wvj=a_=84j~JDuD@Kk zzwBSH!Xm8xkP8eLVe=SoO+-CPN;dSji-j~VKKE`^80RRKoEBvQZPEPB02CFwPAaYX znM>ba{pjz(wN2@KeyfpbQ+I6;-cpf@3-;mTyI+8+92twjAl=;4X~5DMs92R9oaX2S>G<9?PrQ=_h^iT00^C*!QorVvICye9VPG(`=j`ljOwHZbYoRCmiE5lX zBj&d#vbYR$hK;gOkFGP!?zDA?Ef%cpIJVHJzk-FeRSUX&@JL) z`txZt=p)f5b!np-p07J|*>9m24eO`0av~iKHLnQEuhtoVLN!s3Gp^L05x94n>H{dL z7$t1hijYLx;y(EkJt@dMS;$e5_%1EMt|Y>ElYY9%jX{yRv#XgZE5J2S!+ zuT@vu4}R=-W6~8pDpdK7eg%BXb($%FXB=aO@)ob#Q&0C-_Tf&nvXz~lHwCS0ym$*=HfV10b zZl2@SuWB?PioV#dT3HB`r>W~n zIXjYj63#!k+JhLRw&Ki3y^Hs4C{l>l4nB|Oi2S)eUW-M(tR>n`kxU;bAMio*<( zKeC60qFJh98)6<|x`t*L!dKg4o%9^Jx%h}Tr_gyt?BkNzas3wI;TQ$0fc`sBselYP z?pA;QVMW4JqsmVVeK)dk(YlutrJ3Z6qe}pobY5JE$w+{QS;-B*}yJAxo< z=+o71CmD3^hJ5;C5#yBX>M-F~YAUIOz`AeY-IWaHgp@S+nE&dQLNWAqEDat2@+IYn zUgL4#YlrNA-&T=h&i&#hDf^1tsck?9^6ECnNY^zpL3q~BU{V7mGP2cu<`&Ps@9*>e z_)~D`N*;Z$vm0S4HY)hSFRS~K1=5lJ=>Bd)iMCOBo?e}0Z&RvW{%b>I$vvL^!BIbF<)<Sl_sebQ6a&rN25JvE^g+8)nSqTFmOnaHa%j zuz5f6>a1KS6?fr|(hdE2ZHKe}BwANVy^<4t2>dGUF}`sT#k7$EgZTVV_#HszdMxXZM@%EEkxq+^vdvIwDa$ZPep%d=bDYQ9ZtuA!ST?48n_juwc~>thrE&)WvC3U; z*qh}UiZ3bF#rnGdML-%`=hF$?2$1+(1rG8veRk^Wk4(9kzxlV#hgaH|)G zO`x)G)0<$^0On<_Z*07cVl3vr!BnhXq>w}bl6XOn9|bS*rcQ^D)aH<()}s3aahMe& zP7N#wxA#o_^vs8D08Z**LTB#0378N2`7mB-SLbbPsHT2Dh>`ubQam8}ANs7aq*-~f zbH4(RxShh~MrgYP$z-Pib8{ba+mKYS%ST(80SLCBJh*XhZ?6-I`rM|VH>5%TA}=tv zs6ec|ptCRB)oi4q8oW?{bbaEfmB1;%Os~oQWw~Hi>AG`4$bRx`aeUE0MyfqGXx$RDLj1N&=I$l?7W)Aqtgt7y3}5#bN%MCR7Q+9Biz>b+yQM zKV$;Lpw)r7dK%*(g`ly(?@qn(P&{O9;3y-oJSPzrYN z;Y0%Ttm{j?<8}>s66yJ2a^syu%Zr0He*04-<-VV9oe5tG_IY&3u=u;j4_<12DtXz- z@3aNA8_zG!Slp zI)*Le20f*Zp@Lc<9oUiDn11MESQ`@S4=@Y5>*z;1%o+GHJ!c&B0 zhQ)vkx5lOT2%@U(h_qOr{KR%O)y=lo)(XzmI3&9eeKLCimJX<(rtmWZ>~>8W@($j- zf;ey|G+FS8k=m`o0rfAnBjZUPa>R{ZP5&5P{tVPVe(=X~XI^UjDbg|T>cLAHc=KMv z=%sE6*_TRNrPj7;%ORFNNhC`i8psinU*F&>PF!PwjnMv%j)?!_LTY)|EGg#P5vRQ+ zHHcw)9)|8+yvIdt162|{6OHj8C1Ij-axbX{{3-tYw+Aq+nu|9!kJQC}EkG*N0)_C_rr@Vpp zJMQ|x^DQo&l|1%#%YIeismeQU-^kQRkaoe6a`T;nhK<1@I!c&vo(3H*EGfhAGXVWl z<3jqrBa_Hu+f#OFY2I&&GbI0v`^_@-fIk29|LLA!DVib0UsafIfz(w|C&2ADAQDKO%XR#viTlJ;J!6PP8oUuD*7hlwaX4*^ui6o z!g4mVA3`Y(Z)628%kb=uhBxNUkk&lYzgVuJE8%7F6oay`k6rm zc^P>h@fta*Q2l%(E^L1E3)9Mf@`m$S-g1dto6X|v*mMMtLgeIe&-zHShk&+Og~8Tv zFCK-;J1dj8W8POT>zGJ8%tE}F`Foy4JpnrT#X1?^>RJ(URPFjStD@Rvg$>Sxxw>oY z0$xq_kfMT~CZ_*#kP?{>!2h%}Bwghj1@-bwRFxx3;nN5EfzzrYfU5~^>6-uDZ`Y2Gf5FmeqUg&1 z>?QN5Zh~gf>AW?7Ld^H+S20t<9H0Z?Sp zKPfoVt?Vu;#>anCSYj%yfY!es{Lha6vTgL`IA&}mJw#tO+IM3^bjz2Eh;!g-3Aksr zbGE*2AE#fMQ)BuAF?N zZdY5Crw|VHYBv-(BUeAIdQHK|O#X-0i1a(GD2rr^y7hbTj3c9M-Jl|w6Rw^|rvkP? zIdTAkpZT3P{uXa|&sB?UWw6%{Esu|UhA1&%g4`2;AbX>)1CI&?}S>Vyk;Dm4g^r(O0pXb z%D`Mg>Dk)=gDzt4K*SY62$2-88#IHCr?cKJgK@M+*!=j`DSuAv=efD7m3Y_j+RCYW z3(fRB&uwQj`L>gjrDQthP`7A^8r?U!@}y)$g#|OxSi3EQa&?Sz2SL7%nnkFMLUqj- znh@j=c4MT%7ulIm`o_A9s+0<%6zbBm?rMRW_m`i+3F(s_yE?lkIpa%yi)8lU;L1}o z=`yv8Pj#Ihrpad6I#+7ou0M&=gS~Se6RZN<+?Zd&{i+TQH(6&$jwR(0Nlor5BmJAd z7%taN*v7?REjx0{mw`pij)PtB_xo#o^-K-Wgvp!ajrtX#~#6l+FE^V3fG>nKMskE)QoN^)Tlr z6)^-b`hs=gvQ?1M=`!tsvC32=A@{(Qao0*i`+?6~QoAZxN6ilC=eAXH#>iyPa2Os4 z{TwYf>D&Ej(ix34%H28+oO>3zi_D_W01Ypx`fD`r;m(CEr1(ZFy|2itoq9veufLM6 zcUY=_J@6^cytnJ3Qm*^n_54r=neOTqbwMl(_nXn2^qtxm=-l806OmZooWj4K;hb+% zL;)E!DB4VCw<6evHpts*5JOMvBtoYh7DP5r+IAt{a5u;PSZ75DJIhW?V%y1QX&Vtw z$cj`|*f-p!2XAYHc!ruj?dD_e=jzme0a= zeXfSBERGylf~1f{Ep_6}B22Z=B<XlrHCgQwdI7&>^(@9P*k z2<4!90~1rfO(h-OM_rC^4Y~4={_Ady3WjaFdAQdHJ`|xqeq>4;;<+O#PqkN8`%7a; zp?NtFcP;x;qTgN88%!&~!dFC%LQRqN4(Nd}W%VLr=VAk@v5CeCC-lH1{o^-a<-9W{ zOH@0=9#)Gnqox@}8B_g>RY)0T#79%pYhJNBD6&G0f(>3)z25;O5kAEWpC3CAWmG!4zg%eUE_*C(=gyOZP#NLq4iE&RKt)O-2B>9 z`UgHRtO$zx-m0~OFhm@^wpeh_cxSR6DnuF;MvwRv^wU+%Q=S5adezhGPBG25Q1J6` z%CZjZx!8d*g)1>;=&5c(na75WDs)+Cy>RMlFPOP5-Ya#%A1$DS$ z?z9;(wDM?aY3zGh+**d5z$*l|#Xc@ZIqLD=g05~gT^H;NGa07>Xh;9P68;4*OX{Jv zMw08n3vaEht(!h#%>UW_g%m%Mn<$3~u4m)OBWYeKYUPY^9!8mz9pzDBDlYO^ae{wO z;9Fs<2z33oDC3Fxf1QS)^){}in(OAyw{`^IB?L?Pafw97_@OQYZgF&tse=Xw>|Qem zBet?1IpcSQB??oH-W}y&WgWeO_O2wKKh)EsXRo(s9h#URDn9h0fM&xr0m>gql@Nyv z{lCz`Iml~fIj&k|s{ms>-dr6Pw0&uPr#=6;KOMXBGdOX2-l*lv-_ausPwo7QLHV-5 z9J&W;DqQ!}-<{@e*-*sR-b~Ic$d1J%zU&mXDk?H3zLFD=mF zvxOAl0Zju2i(#quTz!S!xIX-lI&*f|AbqNj@XF3$rf2WnTKCR^WxzETMlcrPVED-) zK4HY^`aTH8-#?|R%m#J*Js}ei?&dcfitT-h`&&2&y|HG9JSY3WTJGyn`~UzrmWrP# zOGHXvi}K9NQ0V~V+3%%a?8le;`0(S=*W&8?O5~}#-FR85R+^XjbH?DgSfGH96o>AoZb%aVTkT`GEj}%a{3@oEQvZd=utB!qCJ(*cF>}j z-YkDfqNnkAj!8JgLa<<|PBu`*#ORID9zov$Ox5H8`Mtm!HnN@2dwY+zCgb5MNI6Z1 z)xrUl;lwv_-*{e|p8T2lE`B&AV7L`#){+-{fLi}A@tNILsaP+fxJ0d`{_|jF# zzg|Fxl7#&gR0D(mOSaG2YhkmGIS1k*DPld4mL8s-hFrlfss9GH3pB##dOyh+c7Wa@ zDmc7oO8%_7*sK>k+&J3=@*5NZ_!h(DwYBfwI91m~ZOd&%TMrfb8|2CBE_@nZ%ZZ<)eP3W=7|4xxB>Z<$5X`^OnFx*-Cidj1KMvUFb$5+AV*NS{=wuCC5E zYVqWET9z!pomax?(CPkig)}0|+u1N}qy;Ip_5xIjI2ZCuiM{W8G0~j{(ud(2F(;t) ztiI{QWGgx}({=8Hn$Tmw2F&$vS-TJd60JH6S2l;JuSol~IWBQ{X;*NGR2Xq~0-L&K zFnPzN?=QIK?!sF4zB29W@?3D^wlW;qaJHCXG04(=o78glqWKxf=poDoE8FvhPqUhY z@=Gz<%a0CUCgBjc5?;(8cS`riKEvr4Tl3%w7;iC+=LFud^)fe)1y>#!03ICt4fl8B z$+#sk;&W`AozQKOa$}_*RL-kn$sBbON@tVJ8e&i6%3GMq$Ai{ZyhSUdJ)gTrdYdiX zj7I-+wOZss63NKQ`}l>(2V87G(gbF^8SR2fd77#}{#4*Y zdG@S}lFC77=MYGm!qRdwZn9ReuKoG5XPXz#e4))V-*W{u*47{+IKE!Xk{)2Wc1f3x znot_9kdmoHr)YENLlge(;`#I645W?!a4FGuT6!vs?sajNd_>>d>-(HWM^rxe0_RtM z44%&k^j+e!dYjq@GUkZ#Q$&?`b)7c%LOxw9E$N)!eDiC&)dyxY&N;K+lt4(vCCcuG*ja=N;YY@lH+Me!xg{MEshY>*RPT!zo&# z?k>6c$t$==oA28JvU=qHN3ec#7|W9#+0PxtMDH_F+`FIrpeE$^#RO`jDBH9Dit;J>rc*??bae3AYNM$1bS|ko_Jib9 zN%18O`=1Xky(tq7;P}@I1neSqPp96opZm604fqehCdA#It9kaf2N6~K%^253=e~GilWDADw{GbcJ2`NIch9klBFxfHPzS*L>sld_WGR0cnb*| zF13HiffI>lqURA9`=_E3R36OZ%nsc!p$^P-R9Pf~CE!%gJDs}cUuyht%6{bMYTJli zqUMjJ2z=8IL%xZ~A4}qP{dKUkS{?bB+(Mf89D2Asjjprj$jtP#2z$cIZoCDX>!GT) z^COxf59p~>USc=Tg5gWU_gl`2?*o8-^R==6q>_fVV%qVX0(2?Hp`<-s!HxPTKpfq3 zjX1jD`xJUDV`*CwbGGakwX=rFjDoixFQt?OD|RyBk100Mz_u7mXcVfaae*oT6^4P~ zeJP>+u#lS-QtH91@>A8p@J{rFs%qlp+eEEA9lDe3@gx0~_a*thL@FC5>OpNadNmwI ze&-47?U?FWKm7M?8wSnlyn9UR>iVVa(6$A4GYronhIkIZIi4lVnaWjNB%GrG9&o$= zkcn?MH7VbQqO)ylj<=DO^c*nLMa|9EErQ7k*9c9m!)D~$y;y$26WD|@(C^!ad$B4- zGuxq2Ej-KEQ&o$!sS%Lcm7y~@wpz#Wp?;Y{&vVu-T!0EpVBxX>E|ZS|0x|C_uOe>O zFo|e;7)_r5&3SOmYVf8TPrHS+r%ioOG#Ls;13ZAiQI**o>Y#`GO#>E}mofbWX5JfP z4p;p|PO9$~4m>8PS52TdANcP8Pd%t;?-vgei%JiMxHT4!ptlB`uj7G@c{=J3MI1A# z)MfrJ269&PG~OeCM-7C6`)|AzBF?iId;L-%P`bTlV8)2F5QV^{wI{U<-&Ov8SJ2>p zsEUFnHjiJ%i0S_C)2R=WeYc)7k^K}`!_&EY9c$MLuDJVF zuLJrbO!9VHbw->spM~tlRrEkTA`5E==NnI{@*_>>(RAe>b3$wLeFX8OWl;*bGT0fV32OrJ`S zz>x?i2wVsca)(zjb1fdHf3q#v*V>rEzX%!lpPWkv(Kj+U z$d$|v;Cx4KJQD~=bA;f%DE}J$^D`O$qzI*(18vz~qFgKn(>$ZJGFYYDiApFKDIT1qy zI+3|eMn}u0@?+5o?`=8Tn_FwZj=i2FxlK9j=P>iuJc{weO(V{K5)R+cc^0OtCc5*y z&)6kYEADllE}!+==^R-;Az9m_nL2x+Zav{9FQ*+C06OYa!wg5}VTzkg~mhYkpxt z-?4~zuENmcL`_ya!siPfJQ*ro=G%ygalYj0`<)W^zOFl5qRz3r=(>8f-H| zZY;6eZj!I?`#Ii{_2YDaysf(MZ;ou2cMR~Kc;_Hfq&EJ&uPTVOKC`f+R+>Vl*Lo;H zI%)P?15mj2)7N7PdA_T}pKBqpGm5T#`qw}eKqr`6z9yqmh+G*{0C1a26a2fDnTsgZ z0opA#R#7nU%HUbT=XP2Ko~;4SC0%5){cWyx4c21aDsyip%DXb1g7%Xy@_6nuZr?b^ zeSP=gr53M1rrkob$J6leYPSKpIXfqirCv2$A?E4f&g>Z-+N1A<*hUaxwao?LT&-Td z#{%Pd7UtP>ugh*>#AHR{iyCX@+sN=ivUK2s5d){b=`^7!&#C@IIXu`qfl+R2^L25x zHZffbY~EYv`}~!5nqohpgq0}xM+?%b=kM+FKhPorSkpxg-pl2(jZq#H7iH;}ef<6P zNe?IxU5=kFt5uAdq$Q&M=|X7|5cNtw7GDe)G;Y??)>ivE=jVm@%&CXjnM#gc=iA*k zksCHXt-0agwG6`BwCqqs<*TW^r6>?X{O@NWNCIo3j?)f*+aFT+y5|ve;%YQxb!;0v zamDBb)H0*UI+Kxw?afx%-zfTZ{P{Q8u=Q_t-+6igxw7-V{n2WFzT_@3LtGU=-n``Q zr}mq#jaNanhqLcXw2JR7!|iMw z^s4H=+}~SZuS*Lp{Ns-X%d3R^sV2#EITkCbB){04d~qqm?ZD1+8*UQ=R_usc>-juz zQd47*MU)9E7w|kZS9FVll%OmDMzuMk?C9Zt?j$%e@~rB8eHtnhgz0o?9^FI8JrSLVpDt*_tr%P#g|hz${Om$aoIKYyTjP$Ckwd%-BI z!X}0Fu7VghpP_1`#|*Xq9o<>>)}SA;438 z*mv|=Xsg$5mF2}=r*GNXsGO4;^C?NWA+~frDJ0N%aeGvE--Y_ zEufWOw)sMV36$gE@u*PcYt5FD10h&mInSu%3Gb0bn{UZ+%T7UZL<0O~C%r&w9iVZ8 zS<4^!XNHc$ZzCzUpIE3|fPM0DB|lr`cTM)TS+P*j#}kOb=;GtCZ42p}b&9$+f4i~= z-xSibtK(oP{IqC=yvo{Aon$e$O~p_u=JjCeS8dM8MxJ`!%p0>NMQWKxh^}u>SVWz3 z#Ob0-&pa$D8-(;ta6?Q^t#{)|V+BGyKFgKzGPZafQX%CG;Osykkgod8Xzya9i$yG| z$9Jma!v`oqQk66;U^%%$kN)@Rp88YW4LQhL(mb7dPeh1#eNv|lSbzN9y2J6P zs;!^shAdOOPo!q+0UxMYI^S2LQSBwuB@KyO-9;b!2jfl;M~AfxvmkdBBJp|w4N~3* z^PdQ~>d*v*L!p|0O(I)J+dkelhc~uNj)S2Y)`Rz1AA-Qr9v{bO5(($49Fp~Sd#D%w zM+th_dnFo-xb1s{k#@PM+;I>)8$EhLCm1x$ph~mjzf_fCiSAFdzpd8$EnLew=<%jW zI)h+|t?i81rncR)TkoQ8Y;!E;j&?2VAYj)~rl5l9kP5OJMZS(p0vk!=HA$PU;AG>N zGc-{OrC{xFZgv&u=6R-u=9GAU6=KrxQIRy`H6bOxrGY=?!yiuRgGS8FY^u9NU`coC zl!I{BAn}KWdq4}K=qRNvMxk}9^v9ID^1Zfq1UtOV+VP&;s{IGhU4`Axzr_1ZU!5Ah zh~HioW+qjMG48#`CvR~J?>Z&AT9CGNN9q^?BTh7bxxG^nhN@j%99EjktR<&ra5|jN zP>T4ov9GH6`{xKjJPMv}AtMVMf^Y3eah+3}G)OyV6%B{mL5j3#P?eMc2VmzQmOGkJ zl?DLu=AwV9M56+fAT|^-=~OFav|SI7W-m@lnuHelQlw$0Tpj)^rH2G^+zfQT#M|%1 zm@!Pa;XQ+PR5ZL|xE?Va=~+(bqB}Fe1c+>9db~4e_z7=3Du94dZ|jqV;IBeI^xDlwL`5%c5gp=EMogrRix31J0$M3^-Jf!dE}Eg zvXfsJ(X*<_klwjxYoDP?d<2u>WT?C`w%=fAt27KgX5A%5`a1&A;Q||4Bp>Sh8Pk|y zB6cy3Nq7KZ=VkM?z0=dR{^+q3?oJOoojfv(g662^?y2%ZxdB~dfC(`lPG$r}SjdQx z%T>L7RJ!WbLtrYeGV{-_5fh8*yGZIM&+8vm5#EZRXrG3m*+0=}w6DT~LAPda<3~K%p#3i)q5r>U z;6LYsC#Bfcg~N8Ioik}2W0t?}_n3BpkjJ}nEvviT)g`hKGP}WhHremavOQ)XffEtPeIBTH)GbcJG2Do(xwymENjN#A+ETF5luYaK z9C>-uF$2TH(c-tY{414t?l`HZox~O?jb0)AFWNF(b~&<;psUFm?f9OkH#3B%fjWHK zmc@ql#)2xWa{_H7mZ(|U=r7Dwi9f-XdVK6@BO8cz}m=4?zWsDurX-zc5| z5-^?q9q#*L2kXu^7R*+&UbRS4DO@Wq6_>LKAR&?`3d!?oh+jV(L3~S6BQn32!em2n zwP8n1^Rmg)*C^FvcdFWJ-?!MXvLfSh31Kx6a&~e;-WerfYDmEDd5}LX;yBNBWu0=i zrryKMJACtt9H`Z-=1%dfv|hu*>?Ku(#O}@J68V&8zG$IZroAAwIPSM>(VLo$qQU5r zgSJ7CG-TDVPI~uegt`oaYtY;a4&0^S7h?`hDZY8kN-pWs?)Muofhel*CpfZw``>y| z%_XQeTqfliJT04Ga?DN4mG^n~UHLHdr2A#whGqgeF;H8$QmtMcF-&)9g+n9&ml&dx+MkLOt z&2c(K1L*6ZT5bWgo!#A3C^x@(VIL^i*5FXY=k9L$h|ek!dUWwbeIu zT_Y^9g#RjoE1&IhoS^oc3Vb?=`vwLQ2Y7aDv}VWz9i}BOGZw0?BA7duHJCYfl}6zn zP5R@~k1C8c_sO3OwO@+NZ5ROCcv4XD2GEvl$`_1b(?kD?#0J_NG*xiIlR-B z3sK0s`tEgzOHDPN#5M@y+_nR zY}>{)Tc=s>#9zTPUgaCKPvBZ$x@u^bl<|U+bDp{olXrRBOL)2foCb zpbfuY(4SF0+ugXKRuesb?olpxaZc&6Z?%nu=k#Vv4JqjLgGNVwZg7hC6NOOF3~mNB zBZ7-t<1;_TpO_(Wn098tcqcBuK{S zNbwdvEoy=?q!BY7kOLNsZIR?G13g3f-$My`q-`=&dh`&Z@)Tj+57RlUxAx=gt~o!C zJfN(MCf%5IVzez&Qhe`Ap#0GWSkT-;O<=c#MC7u~m_%1nsMTXNm)-4UC2t~)c4_U==3?wC!B~qxv z-=N*De8N`{yo7+l;#-*hzQx^I3_vvjFUVB86DIw0sv5wfsCgDBuFznk*LazV`}Ut2 z55CJ`>{ao<4fKjWpZ`@6|1YZd{O`Kcv*kmAegP-xsfFhAtZ*0EDbhJ7%IaOAa`rmS zm&*2`*O9$(0$XGbng_;uEg#D*jRbmT+}MAvoo$8a>Kc1(g*D10GM8VevBk6)?VRu7 zT7eh2h^u@IZE|KN^AzAOzIlwX78HdJjE^%FZ%k8iZUFLd)~Du}0ZM8;HK`#y?oFQH zflsRGp{ev~Gk`6hYkQ{5_>JSEQEmIlvS&(B`oF7L(=FGs4tmUsH8*HW?NIa878~Ys z^;UVU;-2jv`xe%A&>-yPTFEjkEp37IP?|=YugBQJR;E|hu_$JmnxB`k*e-F>cX&F; zxv6F_pX}HGq#>#63vR_s!wWA6O4a1ScC$aS%Jl2Bg)0`GJE=ZG>QO+E5*E%Udo}9# z?lB{;B@3~Jm~{-EVFsfEkL_l$#8$qirAialyPrK662^&LMQ!m0oe3b`9$70Z@DC%l zvX{D=1#-k?myq?s>lFNA4%gc2${3gT9^d8Cme`|EN%eybE;(9Fr4@%#Q%&S<`lq@y zN9NCouo8+*DF1z?Q&d;r+MmnOKo#+1myYL?T0Qg97Tw zblmzcXoK)eRTjZaWE@5aY~bS~6s*mf2F0O(Q#1^|#_m80-S&^g{Ld$fTA#aZ4GV4F z8f%$shxj3P7fdwL4pLNtS6Nb`g;SL@@;oVTUi=MLtHren1_*m$b-yy|Dl||IJ4^)7K+}EO6`XiE~vU zja?jKTi;)EOt_hHP&z1K<@YK)7-nD{t8;{ zb!cqj4#FIDhEb=}SC~9Ud~95>y~&QnMtUqbq~5(S@;~mDuk{#-sI!P4#GU0F6Zk@w zW76~YtJ1ZcD3$>O#$*lB(@cV;cc)F-+|!MWO;zx7hRX1u@Xg*?W`Li0bi%!l|2RKn zw7{3?5Oa7wF562OY+k~Shteoblk^;0zo2jYG7QG!Qe5FJI>ptyQ<~3#K%MDLyb~!| zHJMOk(Q!&$T~LG2L3pp0rD@M~4i9vD^+I*Rv#|zZkMhXCU(?|TN9WSM);H(u6#(mj z855_tpBKVO+RSN6h6TI)`|);#`4KyCPxL~ZVO!jzS&-3kmUl4w75$Q^@WC(=Sa;`K z&vlt&r`oKP)uH|%78RqO5F>5!)PsIqX<^Oaw-Z9rvQF}ur(CY6aVJW@j~Yke~-Dtyg^|@8vOl)^jcdEx9T)iq`h2G_9skxrXO`Lcg(#D9nspi+i zZxv(;HO}^|%IPHEqBy~O$Xqx26JOSwb%s0~3t0^yB;f9xgh$zUX&?h%i9i(t#8TskeGPkxxRNJ=tZ+ zndit=&-_cDDz*(mmaXlc@q3=4c>iOjdo4rc#$pORxib`_xrQfPQ6BImkIruG46Uyc zSl38QwSUo|K@xi@wp~+SNu)bUfBIzxVo2jNsGm2b`ndzqv5q9N#I{ zD5x$o&Srmx!0`V4>(*yo4{*AGqOKx@Y|iz=D;d~@;?^uXAXP#DeH^-vyg<#~>fwA| z71;BPF9*=n#k!9?)6oe5%_HhgF!=x z^lr;gh)Ji}N__>aCd&KlSGi`C{gTgBo_%V1Iy+DW_WQf`^XZS@p9B0KUj6E}+RCTb z3+3aBI`DBl|J89@$d*l>35IV?cp|4wBmAkEWmsH#=zDujyIdiy2b7m>B4;d0uq$}= z;Y9l*l2W&1f%OHL`U?#z0p}|p$VTr&L<(gGiMS)A(l>MQ>>%qRc(xt;(O#=}{g8l} zjrU0+xWzjsN5+0e@tqaDXR&5uLr^U^jjL1`+%VKj{EVLH)C|fa#q-7(W7a-|%ea(J!)%SFXRApSH zTm*%%6!tbvqRdoav=s70`omWQ&1x!Z6;1)VH1Te_?IpzidJvk6 z$hFgzkWE^D^p)O3L;|BBP!Kn009Rn~-RW#hHYOkHW^8~qEFRD1Hy)1|TQM&@=h#f! z4)nRol})lLHIn!d|8b#R&JmA#i*6TZb@R1~2?Y-4iW(1M%O>Qg3$Pby=(o+%j?+8b zmcK~h{ZtG7k2K+5FxB2gi|DRTjj_}h_4i8IfB#<1R?fIli-+I6Z`Wvpw^SFd|1yO} zU>RG5%^B#XPxlvQ8pu|*ANXAc(MKY6apgSJFyC|+W|4WV!4&bXSBJ{M*14lFX?NKLOT7 z6)1r(sDV&H`>#{8!cTApDL^UUU_#x%Oy8-GLDV29$aBWiPNPyOL?x?PG1?)Ki}NGO zV{9c@zBd98G8rE*F+RTTL{E`y1E)NDjVE*cIz)dS45Ma5haRhpinK`c3y_JgJ{_=w zW=NUxek#?eq|=Pg$;`>^K8omBqVWqvIUt}nR51c{gWa+*DSgeOXVGSgl`z!zvQ@#S zg;DBy54O+Qg%js$pz$V~AHPmqN1tpgn%z3;43@d*ApVIVSR(qz^i#kD zg_IW>DNi|?d1ykvJl$r>E6oU`pn0K8lFzmB2J&NAsVtZ9CF`0oW0_-*HKpcrq=ple zu%_$;%`~GIWiT19t!EAU=MmQ+^tXPMcXya*3fbSwL5SK0{Oht1|8?6xH&i*TCujM0lUnu$jphDCdxBq)oV8TXo{3mvTC$8_ zP-HT`v)tvf;93E%%E9v)TEl|TG3C%=imwPtXT4F-S!+VrM&a6#=0cxEjFdHa_J?eF z3d5r>4-D@EuB$?L*@F!v>-bU5A2 zWcg}6{5qw~`CuW`HQoh(i3u9={=4ZMU`j@)VEa}!terx?RhPwSUQ4Lwg$TYkGW1-} zCX+R+QyGFkk1OvT@gohm6QbShCKul?ye$EMhC7HTJ-GhNTL0d7yl6sq*CI6qU+(Pg z4KNlgs4%XjZU-? zg6KpUMj5@gF$`nMKHKN}ec#{tUB7eAb)A3S_x)$jHD>SUdCY!h-S=ASUTbg3aI1gU z%y;ec+3&)*i=5;#U$0fwwj4edeBQ)D_9^0IfqtT>A@e{WkjhW=S6G#(OiShNqgsQTxX5VXOxUB~1Wg_L%K=_{+B5p%y%jo9;pNbAYB z+lxid?rkcyt=}45c~`So=~zDZi(zqMYbwXGG2q@xw5UyuMI41MP_2@>Hd1I?Hno%9 z=<wRwRy!l!TE;25wmI(;BQso_uSkr_{L_( z*@G{`U}|i^J7sY>c=U_~j9k|nd%Kmq&#>1j@|4(TQLps=S8tg)exX;26aII?nEfw% zg;TIeHqzGnNUFH*dd?p);3K0M^<_YT(&(L3AbkruUOV)*FYPzW`f;)TK zykX6GLNtVE3YO>XjaO&|1nqtNqrvvW@5S$hLS)Q(YtW=qis8Kd(2OrwszrW!V z+(TK(4qa9zB-=X4o@sn82Ax;17r@I6mxLv~Y<8(+yvL~Qnp1=of?VcmZgqc0aSGi{ zKYRWUS*RZ|b_`yp(QT_5m+@&n&4Vfe+E zsWk5Tcj(=QO@^s{S92F`zP4ML(`j?-mLWg+RvcB49oGK-bP-j~{EX{p<|50+x}s!d zi@)_gQYBcco~v@CNw3AS{q@g8Q(PO{r)T+vb9kC$-r-*l`P1$MyQuGiwdbFVO?c;$ z*)BVaE$1t(k&_Iw)`Rjb*p$x1j+I^!ws|YQ&%!#FP%~jr`*TcxdaSha#^2U$y+yt| zW1#HhoIt@oUE-Q|N1m!AOoHjL0s{Up(?^z1^aWV*2&hFZVsoD_K?LaDPP6Wn7d^L6 zxfaN&q$;LvBHfjLJ2wzosT>eEnaj}L8a>S$EB%tA2q59x%Dp>8tiQ?JQs_7m7oKx_`>rT+Cw+(kywk&``-O6H{udW1& zU0}Df&u`>1a(F#m&D2SWJ9pXBwywTzJk=Wd zlDBcME6Cx}Tkosar{?FXV7D&Oi`}<9!=)g6_j*=|F+B?(9p3_Rw0Lo8ykfCLC&eat zY9(-A_)amr`>WKh%O>VV;6Z>LEQDuTO*fj#HzqdmcI8OSHH3g!E?npGqX^fY34g>3 zC*$r|jAm;gh6MdC{{l6LpoO&h?J4R(I6*TMn|{fGRr<}WNdqXS1{(-DPZAFv$&3<3 zM{cdmT3h1xW$a(8Z;zy=KREi>ur5;$&>e54Ha8OP%V|!)USon&jWKV{oHHIyC^ip2O17`tp8wiAJ#u7w=Bi<% z1aSRLDo_MG`b`dG*Al`*OTf_KZ*w>Q?XX(Wz`d($0@QX9u$n0(=yxFl?A8Yc)ax$* zi)s&?@X%{6Ao6lI%ED3v&kIJ|Hhs_iqvT3!fxmn7KdM*9g>7G&#V?>t)hwQ0H|}f} zH5uMhnK}_h^(@cxI4stE(q$Bw(xWkmam@biMizFO@NuMsnoCAV?E`^!3X24`T0O4xu! zT*^oQ3PvePc^8{-DefU*V=hcNvC+K=(y)~S7EO9|)O?n5z7o;>q8-!)+ma7)n)52b z%gf7!Ug%*YR;}&+rTf}tO1|cP!8?m+Gw#CS)9(G#6*`)YK(0M{+Bw**V$v3kqP+R* z+wKVVd|Gd24|AMcMjT-+OIy!6h7uiuwIxPa;DpY+zs00eP7{I|z@mM6XN==ei+5=& zj3;fVIK^Jvp^`Ybj9hO^U~DP-X7*yR<)(t&52k?(nDLc*#$U;}ZH`7p^52o>SBk;z zkgDn4rWNH1QB42p090x8w&|y;=6sjGmcxq2GlX6NrenV z9E*yF2~EMIgr>Ougc3Y?ettgZ(Px2ANhyT{!^)b*0=kv$ntpZz-G}=7GltwN?@&Y3 zD2B6}t_guJ-wYhG4f-Sm+Nv~%9DW7mI*99kiN595?9NYzX#=?T%3+$tHzq7;@bNYf z=b^t&Y=Skh5&YukuKEQZ5^M5bF{+o(9OSfXe~^Zl(LEj}Ch9o1;9`R3tMa8DgB=O@ zZsnMLx*zb_M$ak~TE`(-D#q*JH#pNuegP&Q>LYBedV>*-*>TKxx}j_+=G-cUZ@-F2 ziwUwA1*BDx=VIP>UYFzIp*F8`$e}WA0C(9U+UltOtcj3hy3(okDJWA`W^qfAII9 zUiBPQ7i9|KhSdx zujH!r<0v=yQ$87!x0i`dru>u_=cV1oTv1D$BO}c#RkFEZ_jn|f1C2i$7LBUjQ?M); zeW{XG3kcklYcBI{>?iq$Z(w=q`s!ZSKixlhT{_<2VS&I%Va}hY^|Qra&2&C*_Kl1D zk?&#Qu#a!N)=1hfds;Yhdi}<`g6az=0)4g!6ye zFOk=*#z;w=Z(Zd;F|#C-XuTX)pa_2!XEQEN$%6&6&PQIj8ADKunW|}9m}O?w`vw$p9^eOk*z;$t2!% zFpXt4SK#vsNgxuP*K}v!Y;2ftRm+}_MApFoNhhv(r`fPE$rBnkm zz0Gw0!2Tik3L|)3JV|gT{3Oc%{#J6VoPz{KRhUUR8G}i8J9WVJB{z zTF^JFJUl1Hn*_+3e-a!`@`5udZ9F9u$4?$={)G|U{C|dyBW4EBx$6DEFY--D2`V8tF(yV>!J9M{RT_ zN4eXPTj2FOLr3=^Jx&kIII?a`h<=`ne%(5k&EM1C^OsBXOlk+}H+THQfx<9)UMBd% zy+6sfb2+T{)>Kfp=-%zJTidg*Qm$Y3M7zo_z~UQuY1EaTh~bQ#ts0|#O*3Z%Ccj1+ zo8FkbWM9g*p@$`?{als1Q+Hq=a`{`x>2+XXjT#!I6OP4+lWWL~w3M$&k%Ug(kJz)&cPQkM<2l zE-gz24-#nF)*@JHFvu@pVdxMpYEV3SR+ieMrlTABlkrQ&T>dmmtI`G7I>WbbV6U$A z{dKL$1J5wO&d$#FwW3BY*e0chlHUHN7I*cRR;7-?sSuUzO99ypYyNVVBWcT4c*MD_ zi^jiJ;7Z$Nm=A&n-@N2bWo-ZKuOhmJCHNs2ZfI(gj zEK^hdl;;)j;A|BbgP2N=%#HEJegC-}m>ZzGla+oTd@Ez@w^oM7pIiP#z zGH0cTOyA415bnP+^B9#x#JH0qV`s%OB39aC#PMOT4|C0LDRG|-fKPuF`(?sC)}MNx zBv(^WNwPk*^z*y1{7Qv3C&-XZ0)CiY%*R&_%PTZQEiV}Zjw40b2cx>&NLV}rM8)Kw z1y*j``-t6tJ|}IMVX37yP^lp`s2JrF$2iNY9l(Fy`>7bI@Ktc~k*X%;=7)j&VVsa5 zHfg`EtA#A6_f!Yn;%$j|_aN*!8Jt;w|kIopl%4VGm8&|ByuGzJWY*OIf0_&&G%P0BBHbfG0n&=wRAgO%JbngOOAO8tUoxY3MLH#-wkllLqPoet%px578 zB!>SxmG!9Gh^^r>gJ`GUMaHtT`{tu!Pr=sftsnj{)w*Xc6|ZqNsUSx}^7VXPKNKDPLzAV$$0=0ftj?X!=kV|k*OpL1ui99R%^!Al&blrDjR({xm#(sa z?#-ocvX*Pe&W~rJ>-NI}<(sD*$gg%C9jl^0PcR|=#n5VT76!HV!zzy%8i(rCp(B%! z{<67rF=K}WAr>72IeF|Q@v8Kj0_HVtyV~Xu@+48~r*UkC1fbHfyCH$_&w`_;4g`aT z>o0-Twg+l}Ll=D5D`a31?3W(qt!t`wGYR#XpOSx(hwO0;!2x&ed7OIV3yAX^jwwcIgP zBM*M?{q&bB-&RpA^Ayqv?b3K-T>RX~h4&(eVKQG%)@rY)^M8`&fIOQDbK{J&T_o1ys`;NLG>;!tj?uMg@#`yO%i!QTyGix^mKn-$1?2 zVAAW*-zOHlr|RGjHQUo4_rPbV%?ohcHXQMsmuHDryi#__$?%0dsL%@w1|-0SyTITf z8Ek`U0GfRZ@{@!0lZ#`BgD)AdR?Tv|kw;ZLju#V@{Tuo(4|p5htDYA$xR-mN_1!?% zP)WS+d&<$tkcPQAhyk?>@_-nDQ#nsQ0XC#7B(Ia;#};>*yuGnQ$1OG3Jp$y~J zWK4JHUVDpf@SBeoC47{zTpLI4OqQU#JBDX>6Jdr)$Wk`)9*KsF4v(aT@M{`(ZJ*!a#DyRuQx4E<(PeLF_-bEz<{jR&0ZY zplP{ZX5HyW-XF40i>_r0jrf~JDiL&(jGuc{?T^&17t_)qjX|v$xB38BIM0OVb)i<>`{gOpc#>EWKmKr$ z_wf>H?|0G?LJ!xsSy_p3B7%0Lt?gPaWTB*f+xQ5yGy+eRLGz9gF`IpJQFfu{+-Kh)}NbsfqbB3S{(33V?+9mf`xolaWz(|CLdKBrs(b?uqhw zd?yYGFYGzq04N4A0Bz0-CuKkP@{n0CW`@M`z|hvZz!1b zel>aqL<0eQmBZ}Q<6AB1KKKYkfoCLo%b|(<>ZU`F*?HO>Y;Q-`!z!2|GjH-QZX&V0 zpI7|#wt?xAO98Kl^LVbI9|f4GXLI;bpwK_RY^R+?Pls`e_|vT#^ya=i-x&R`KIi+f z;-=@K-e|6lDO=@PtEr{h{d~ZAF>A^>s69qkC8qb$hGbNHWn5C^$4dRMtT!uvx(ABy zU(b?tRFK+N*byZt9Skpy=1}WJ#5cv|$xcb#S-JhY0o&*6E$cU*a=t zsZRXdUzD%JbV7;@$=v>#Ixnh=}W)z}BBW zLxP@a#%g~{rL^{X;pcAJ0qJt2j`2_HB88hnelD9CKBf(RWslEWcf=K&oU00!rNTEp z6;{;e2A9m@-5u!vM5Vu4()gBnfB1CW4;7rio35yIF}B4eQ^xf+_++y9_{UbC2FCq& z!-R@Ls{63}o8lJ~VBk>|vD&9*9962LI2MuKrXLu+52zy>^DqFzAP~0#KZ5L2`#b8L zdX}YKIy*ARO?AbTAA2Y}^O#t`i6OSP?%-nkoj9QD2md@={nUp7-QM!I5-LXi?w*ZfUy%_etEQZif=~?fwx! zWZnMZYF;mCJ~n!#L)q^fMHd(X_E2o=(5du*mI!=D9rHopT>{E3c%x~Af*eakV6r)| zH-o5?Ywm4MqlZ{MTANsx@IPk@w|b5aAj0)QtL3DE6kRm+)&B0gPb(#&kexriZ+b5n z$MN`=d&=63nG)l6PW^Q$5JD(A*$_4)x_4b0ugf%1&8Q~sJyoK`J+CL%IU^f?cJ+yG zu=UHlECYl`lXwq1NK0u%tnTQ1sm0g3F3w+q(2(gos_}V3*742mr(#QI`H9Ql67~VY zeCHl2m|9Z~nB$08$A$^zD>+A0_r*h0;WqHjKBPr+^el3lbkJKu8m^5OC7P0k6o|_@ zImuDQTrE!yj_3#6v6Njll+{{q66-WgmsZEVFVA@n**k&$Qy8*G*)Hok8|7P)72q6* z@NHCpKX;ACM0@>STO3N^Hb-ApRI)iNdVxN@-=+XRWIlpq1Fc+2`B14b-w{AQ?I|#^ zjH)a+UK&)B^b7{ns7Xu%Oq6q$&zy};#c_FWRNta5G?SZ-Xm^qQr%&J@ub- z^*SGIlVmI>a_Nn=gU1YgV@u5~V+;@0YpH!VsUz5wkzBT#K7Enqlio+0?xTIaqd&L1VU1SL2yDx3 zBzC*9wOD_gMHzr?+%4$xH%7)`04F?!O0M67j~-Fsn`}_z+f7w~lm(chfurrMmAvH$ zUg<2KCP5?RZ_s2?7aqYs4jg$Kjq!*dL0wCrDVt8fK|YOuHRRdeA)`&t)p~1@Mp{a` z^by2$503FcQ{ByIPtwqo*3ZDhX=!LasUN@luRn5l?hR@g`y3nw?(OkXZ8j}G57E22 zR*)=ozF)9U^)Oll6w7WX?7wBUKMSW8Zis4fr%`qyd^LNod+)*P`ef%*AEBCpohMSH z-Ak$g?m-NI6sfHoV!$4_*YWK-ms)fF?#c9{mQA2WDA={b#IUVaMYBOb-uHbl^;xd= z5AsS{`1o7KO9E%F2t`uI3v27J&d5dquce+<4>C_L%{R#Yn=UA9?$3tv5LF9?+)U#e zxWfe7ULWFD$bzT4peX16Y*!Ui$~*^%PBZAuW_3Ua^+VXI%~&Yf+5h(j-4SGpTJy_( zMwQM<#&sfOMu(UB(xv`0tA^$4lACdg1-IoAzM(wdk5Fxw)1C%(t0IY3JjE;UMHW1T zUjRm!4%~LxHN9jQG92~MI3 z2!lbV;-pRswAYsjw?a3yvglx-0O*9Y3AaWAB(e2?CL!c z?@OoZ)&Ly{K$}WFnqeBR=03<`CR%NXMO+OFVQOBtv`oiF$@!gsBYhYygt)2^a#SO` zZd-}12h6!4J((NcV^P$a+Oj@uRJvZzjXzPmWr{vIr=1)ad+1SU%Rnh!Kg)?)kBMOK z3Ho2=ZcVEQpSx;wJcMsj7VYe;z;hFJ z$Wa>9Fkjd#)ctENkkF`vavNQ4JM7YtYd1Te61Y4yzN`z8(!3+X#H!-%HvY68z0a0K zdWB+RDme;))(~=n%(1Xd%dilu_1fiYMW*y^#$48A!n{>lQcYTi2rn>m*?|)icVzkrHNQ}WCnSx4q{j0NBrK*@h{60k{xShRcA&Wo4RV#90P~A@ zb~aXsIx|o5s{A!pRd*Dn+WC35tTf%;sJZ)yU1)-_?(2G*zcSr75gcEXNIm5nyE)xk zg9;Y%q5YIA4(1O*IZWfHiD3;athElJE`I2H)SZkNrRJX^f!61W;oZ8v{iKJ|xQ(IRz;UmBrHW^|N>$~rX4Pt{2k?SV{zP3ff9JgS zX2Xq5g+iDT6@?v*ez6;daig*RvJNvD8;jn~_>MOBCabV?YG3r+yRf3_13z^A)ZAta zhWrge){0QYI@7CA3Vt;eQqj1CBWSo*BOy|??6Z0dHK_#VnoXHTXN=JpOVhDB(+tzN zhXo13f-jd#Bg)9N6{f7)H}r5)_1RubNujr%zuEsvVf6B|S^X6B^T+34(JNp|#xD(J z@tQn=rApUZPgfCz6_<3{5OWE=gv-dsYbD^au_zp-`fQWm!<_AOu4IdYA0GVB-3kIm z+|?OHu|V7#e_x1_Dcmea>LACi-SJV1Vxr+7@A>lJG#(53a7UK3nSk|Drlx_i950!R zdSw8@XP1S1YrM1C-X?ba2!zW`Dw@IB_Y4=3dFB;O!kpAK>3v>nn&ERF=A5s&NL587 z@)a{F_M=7uT7T}p$ zYnNDWIVnoxVU12v#Adz%E@_sVLBSV>yPkL?;^47HplwDW% z>n0nlqJ7iJelgM+z|a;jeXW5&3Mgd+proJa z561&Mdab8E3^HsFsGsk*40@@de0p!?AvN;117do3sqt>o^tCD~L&%f`;_NjVnvf}0 zKvax|<^$Im@ZEpuG1WpKWV)um>9gJKa)o8^0Z~3+@^_E-NwQdGIcV=zU)uJi%DMJF z{z1ys{_=?p0(v~fV2|yL+j2Ay`r{9s$iT*bk3;IfS1eXFP1(a7fs&o;PdzH5Y`q7by|5jH+UJ|>s_ zI*e&q+R;8ehXMg{%3E~A&HPIdXt$Ry=QPAyk`p65qXy|Y$c8~&(tfY(WLzUOLVbf+ zX4HL(Wz0-sfc~f+FH+pJF+QE-e$mFPNI$*uH=gddmsS2?`d@MRJ;ePgI zXAml#26VVX|L6EEwOL3=Ye($76)K z%+DMe}e*dQW=EIoY>`#|4V0k8kv6KQ{I@IXV;m_-SwMvgJ5jYp?>= zntQ&(qL3x}QbU%^Xd~2sP^~AdEd)6F^2c|citdyyUrA+%ikG{qP zql@55Wm1&gs&p4zZ0k=oH6`@5Q=I8wqBaz$;2SOz0I*us9p*75lsrn6)=$0iccbgD zLd!mSNw^nwH2!{kfl+ITv@GK1Gr>z9n)(tK*xT|JSIi=Abk(n;KPkPS?THE5B+#bA z&OgPacnh-JR-M~ntm+MVkBiMNS}E{=>1yd3Tb1A&NxAo>!WMf$NqiFwOCF(CCCEr#7)-`pG& z`bw1BPq?cqLdHS%FmqZ(0M>7FS)>gCeig)(AxXLf4Z+jq&;2mFk7Zk5ZTjQOVf?XO zyv`_kE9C7Au_k&FF5LMgy*ujQ`J3|bD=FcFl&Nj*#BgJ1zRr`npz_B-N(V`9O7+#n zW2RL!5~B<}E<}yCcD$=ek;W( zIVfF%FzhuRnL;5?<$O8C%9{i!(`{;8+3j?lN2aETGC<|lV#!}GZ#%zw4F&{n2tH~k zftTF|wFKJYto<03VLl$5j(Fnk)4=>qVVSAG$}qbt20`S*9NMbG#Qx>;mg&&=xnQQa zt*S{w8;yq*Nog%(ZMVhR3>u6GsQpSj|BX$ca;9O87s7Of!TLD?#3G)04%UtivQcxO)8U2PjMTMbdaAbz^^OI z_lO7B#q&GkjD?|=6YxQe`0U>h>$&e;O{8t;1T1*IeIvrRA2G^M94E?V8RV$pp|f%5 zL>E|8U5h(%&T4Z=GTM63{qGVi|Y8B`UjWMr=WO;X7$C>GL+P|m7uB>z~> ziVg0K!;Vf*PY*x_X5dHP8OO_b_VTVGJux@d|H1>~E=7WXhs6HAlvY$wF$ z%^BWqW+*m5Pp^@8CPxTaY^pKR1I-G%t=96JP(oou_GMZl@;Q$3d8SgIeJ}m!jAu`j zt31iIxNihO=54k6;l_SjOCJdu&n~g4dzX zxvNgsfi*hErpFh9RBSkVfz@*MXNm?s(QdgXbrnYC@PjA^*yK@|MJ%oyU%6cRE6kZ> zRAPFm>a;xY7cX#ZR`Muat@SMWv#e?LKPg)b<>n~n0ca2(5G=uDfes&Wq2nouzT@h;)}rV1*<`oVkn~+mGVae=@y{ z427inGdiN;IwGM$G?m;pn-=wq$R<1jdJR@+LD+pc|8!In8O>>533<+ri-8)!_atHJ zk6%=8d=ITL2_5(7U(El;$|k>M8jjgO*wwe>AV1i>ERd`HjrM{N*5jVRXT=x4b2Zw9 z9_@|uqtMz~#vP57@=bQ>^ylSd5zy4oPp=;Kgrx!dvCQ^HZ?AaixpfUX^SSJ(PDJtc zzJBdJ`M7Z2nXtMtul%7yv`^(>?X4x%ew6>_Zco&J)p^i$3+R2z#1*6hLw<=Xi3@b} z4(e6rmI*N7LCMnHp8b@}06Ka9YuujphMj2NaSu@*9H&4C2x`Q~2M0ademw+Z2JE}| z6%nT0EBuP%uTaLg>mVX()}FL`{E8sMqw&Bb$ds#>K3tT(yEn{^t*H4P!@TP|EQuQ+S;BB58!tuVT+!unq@Voz#x2SNZuiM3q)`qt5h? zE!0ZeQipNgG^FyWoGeLidg*Zi$;i-pBD%#BlbEf`xv^noEn~0NxO*{tuG0jr7Qb%-ZeejvLB(}r zHICuaknFVFC^Fp)gN|=NJ}3yrHx>kF*bvX%8&IxR5B<2Ew)ET_30cyK7K3Tj+>X3 zU?mlhO*S~#dhfHsPuYbh9fUW(JYNPU8Y0eQnk-`<`NT%sWksP*m{&CJ>^8B;_FN~3 zqSo}UUtTAhcb0ezY8&8;Ul{rMLr-%pv5=CW`}r(U-qd0n^x<1Uv5Rq?v2he8%9)<1 z5IhoFeJ(rHGOU~j>xnyg5Q^qd3D^55%;awYSUn4wy_n2uK1x4lNKUpYDiy1ow4&TN z5Bfibt&p&7rk4E&?}?WVU)9%KW^a@drJ)HZoGPa|K|?dfN=AbIk&5S?kpIpjVPzFE zS-QH}wVRh#=nCI`YmNE(NneK2-Jf1GHb1My`w{G3ZeMw5ubpZz?h8j^Qs&DHxpeZPYq?Y!9i$}-v^E% zsS1d8Ws!)OBX+m}f+f@dTNMCSwYkqJZEO6TFy(-APlFUb19U-1asvL>m>hwUOIKsV z#5*9MX$}To?pCYza78Vn1UIqSCsy8ZE*Ui`k=!e+A+P;v>vzYH#+RI#B3f! zP_U_l;w}v~9iMF)&O-(!Mg`z!5IjcJBn;j$ra}fi-L#TW6AB06 z=GXKHk$N?(lpcsH^W8ughO9hC$b0xb_PnD2(5hEBY`W6{FT)soF}&6+qchMLSCTdB zHF-1w!887etE&$>QHH_NQ(MN8wh{U##}ADSxB~^t&aix2XUk2U{?{2by+8A`HnBV4 z9)j2=JTUdf2<^*56XHGbQNnqtK~7ZiH-?#;@>~a5s!c_QWn8Z(C7Kp9=Il4umUqp? zBg)5r*xeO`2{A7&1XF!`l0QP=%d~zEBIYe6|0IDJ6BZZPUc+TTE`ob_!vvS~q!mVl z{(+~|hJJwjxW79ckpo+C;d4CIbP0?&w-4QAU#PJ58SM*AEQmE|tA2yYeh}{ zd5=wUqEe+Ic;+JM=D-W6(Mi_m3!-g!c)+>s4mROMwb1`DD#!v7 zu@lvpmdA&a1lfOvHEU9=cYTt`n$%ngc{ex4xrG2@(BPfmN7cAig)bjMgSeJ5CzZ!v zY#fJP+<>xPYJ!x{*j>=N`P@~ZKga&GaA$3Cr`HkNrI^?vS?>js7@~@KHQAcP>j+Jl z3dE`<9UePV%;Yv__umAhIpx!1vKT|#%8)%6N3aUi1~B0wIQ!u3_VcVwtkA5v4o|!+ zymu=G68KtqAW;|?qy7h-xdli}}T{`6qLX2Q<{vx2c8wqH6Eqbg2+UOA&0 zHO6Bdm%eZjnAKYHU4aWW-3J-Wk_T0q;Fuw7PA#KY&Lig5&%$JBS;{E~JYsKK8MTZx`&1Qac8M`B;(#9524Mq-?RyETLUcPK4faW8w>QAYv;+W9maT<90 z?+8J0yO#zo3B4-gA|0q_W|n^%c#w zc8S{(deuUUI%Nh9k#<=L(Z;`?4c~oI)w|h%D5;KE-iZHaY$$ikzlL_00XfS5$KZsV z`aT-yd-1c`xF_?^J?Og zI8yjNR(I%coXE@BblU9HJGWv*+>J#mfB&|Xt@0@JZhV?CU1OqOl!Ovy6vllJrQX7m45g|1oHsu%-2f|9yHcy3L>e8WXML{jcer_Q;%d^rsucO4=Bazi=W!U32To zc0DC~)j*}5~=IpUOUSV;JS&YlSS4>{$AcQtpI^1C@-cvp*rI-8Qmi z*auI%TbNalKId;)-)Lkt^TZUPgX8T;pM7eeQ3Mwcb+J6^sHL7|Fi^)MI+!JUJ7;9m zeHmJf;&;UkTpSBedY))(`7gwyCzgW-dcdO}{24^0vq8;{(`^a8Poy53;;jAe@NeVO zB{z|~%c6oRE%TNJHr^cMuzv$}V6XhD&+^yUsua8Is0xW*10%AKDb5e3fbZ$fN=03U zgmfu?P+X-m35%U-anCNB;}lf6ANKUHw_$vZ71Ea4;P9cCO^ej}MZEve7Kyrw6J|K( z30mVD_bY}u$r^HP4)7^-AQ0GrUPnz6%`Z%^cu6bLRnC5n9ao10iv1sG2&UygjJ>E_ zqjVl0Imm!iCKPUb?da=?J6yxs`U+F?Fij?sV@a&47+!VUbFkt08fN}xJ4_lH*L7a* z_wDMmz=t~~F49l@7k=s_uU$0XXtkhoKUB4$^Uy_wd!zf5XBtrd>4NIj-WqWU*eYFN zOnUKJTh71lB-m6`E`j^t@7iHNup^;jdL6RC%p3rl>ayeg9Oj9KF|T-6FJ!ivdNB6j zy?F(ygKJUzbrv*^KK6gdFX2P0YsuMfeiPQW-5R#ma(zS64zfXEY)$h3jFrw3*UAMW z{<+Cbh}hJ3e^4Gq#BJn$_k`suIk;;&D)P z{7|`Zm8cN&w;Io9aXgz~9AN)?Vc?WnHOh>}|83u@`sm!-Fz{i*$D!E^=hZk^TxfO# z)LQ1c=NzQ(kY{Qp6-|OxooIFinq8K13PYc4&YIE`1Q+*4`{(O4*sDcXz-{IH8X1Zx z`(~o%C#ooE6y$+lLK z*)YPBR-tQEAw={R`E?C)^g+EG1uJhn233s^)|c&3$g8;G850@6e!Maq((A=e>07!( zfyQ_lCmL>m7r)dWbvd&8!Q9L{4YMa4LDS-O(q7p#!MEPn<4OEfG&fPQ0WC8i*2H?F z{S4jq;ZX=Pin11l#i$qQm$9s^GCpIjxK*4SR&8w&Xy7_uJ>!vgTYnp0^G2}eW~9aHs*v{0sBKk!+%xjM z0ShoMtibuAk>N!k70he0(oW+vB!uhsA+LZH6io1`OZ^sq`>wGuitrb zX0aw^a#u+>E{3sX;CkOi%JW8-iC`4`p1 z^}!q$D35Q||1pygn|&G|#S5lw&8YX<-n1%A_nD;RU%P}P@XEMNPTv$&CiRxk2eGP* zs1k!m(8K0Da$_2!W^0T{x~Dk&Z|0IN-aujCt(*zjxyds(u%RShSNZT`D|Yzr_o`5P zWy0AHyv2bMSj*SMg=(B}UoU9^PlsKmdYRP!dHQTt!zjUziKhDGWs%TvQEU;@eb>1Q z*vr=8kLeQ4i=e-+3oE3U#&|HLZAGKh3~@t42cT?A&plHWOCO{!{&!97BrgB7+{_p= zx>}0vVg*Z?TG8h=MA?n}nuSa1eo9fl$&5j@Q|3`I(_h(UGQVsC|KptE)ctSH0t~QM zDiOiUy2R%bBKE^fH9bU++moJp+xA7Y3rf2wyz_k?N$qqDgZqCIz0gF*fSSNwP0;Hw2= z4Z}H}fn6wcwJv?`FPnr44NZn16PTZTnK_;)(Wg{s{M_rGD=$Xzg8!=o_z`;w`Qwee}qSNN_bY4>g|LFHw8(=Klg<{fH(2 diff --git a/icons/mob/clothing/helmet_overlays.dmi b/icons/mob/clothing/helmet_overlays.dmi index 1c41c357a42a747c1e57f6411e087a50681d3621..a6860542bd572434a526d2b13beaaea8f85ad163 100644 GIT binary patch literal 5200 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 literal 4861 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 FV1mi#ldu2) delta 268 zcmX@X{EjKOGr-TCmrII^fq{Y7)59eQNGAYs0}C^dWcyUu38X{=d_r6g95|q%uIK9H zB_SbyCSCsj{xmKwzR(SKOMwa)OM?7@862M7NCR@pCr0MfA6x1WdGP9a)*O3=BWKj) zELKWa0i{|zT^vIqTHjuA$88!xE;pC5VQ1bwYIf#-1E(Q;{L9k z7yMys<@;w_~0~i?oKjhx$$-CEc;lC#! NuBWS?%Q~loCIF2(X&?Xq diff --git a/icons/mob/species/kepori/onmob_head_kepori.dmi b/icons/mob/species/kepori/onmob_head_kepori.dmi index 8d1c43955f8a96453cbdb3d97504ab8424e465c2..1557a2d30c0e7fea43dc86636a8befd72e582caf 100644 GIT binary patch literal 3555 zcmZvacQ_mR8poaXv_`2?Ggj>#n_JWhwId>=6g6r@n;5ZL%4r>Y)}BpmF`~5zI;c^r zlA1A!+61*y^E&tbanC*H{GR81e$V^<^?pC^CmI6QXP^VnQBhGb7#iq8si=N|T$BUN z<%`Lr$?)BauLEKN(|iB^JqHJ$m?)5r?z*0i5eGX!ToU-3wNYY#75y~^ePg(zhDJrU zzm}dmVOsFC%KZzWNRL|mpO$O3(Lr;8=5|di;W%}_`t=+ zmtdm_x`^|OFBEJ+rL{EfdeLk>h28VjbwNA(AiR7Lo+v7+z}z(AK*A+{dg|@nZ5G`j z)X8`ly9`(S&g*I|RcPeht4@wW?QIGGnVih$_qjsOOK4@&Lh+|_LXF*FO@h=vz^LzA zL$#hyeVg$bXRnlqBloV8IWH3`u@D;b=t1gAc65q zSjDT~leK=>-}h>{#hhz)rF8)?)wFeZ3sxV#tHiG0T6vm9a>OAycnkem-fY=GKKyoI zm=(7kLjA)fwngi~<4~xetdI8EMpbc_W3SDOUQaxS1CMIV?u4YtgV|mf8B7}63ceKV z0EokpNRCug*NBF?+OWXf&0JawC$$^l)85^7Or2M{cy2)4GB15UKQGT9+ipwDmEcF7 z#G%{a#cZoYL$K-;_NiTf>(vW%nI5joOG~crWHpL~R;O&;qo`d?5v5M2;!DeHY-~$Q zpRAYJX`YOvM?^oyEE#&CF) zb5-ZP*ca_D388~4y4ei%p9CMoXXWLo6y?3z|3l-yz7w9{*L-Mi1Ol;hZNb7Q87Lhd z5$G_Ss@&MxntQxKVcc`ZNmb!+z^a}FIPD(^tl;dI6M)h`lAJgNN7Ki~#xlmf@2u+z zoe7?1wtIZ9pKC;w73*2G$aBl+9>q;7e-&fREzw0kE)$v=9clciW^I!?8lkLFO#k#J z9ljilPhX%LFf@kU^jzz<-C>8c-t>%hTqcW6X+ONultRD|C*{wXXMff&a`VTi>^qk; zD8a>U1LVFYSt82{bdaZ+u~-bV6-C_hsaVy+P(2_J$3a+vY6@5GSlFN4_@~Ge$=;uX zbzhP^t%-G(3FG5aQ&W_Wl+@&+oSb}q-f`LD0Z$}y(R6)ouy=po_WiKS?AKEF3huXU z&9$|)&C-dp{NH!BTqh?cX#UmG`~ei>5;s0QNg|OZl`2KMOT23*D3FApl2HbwwTip; zTp{ZbHj@s;k{vrbMML9AP(1Ycq>-=m%A({vu3hEvE?8Nms6PMV#$opDA93YG@=~+T zZUnO(niX(z#y#%=n+Xj6IBnh()pX{^j5komZ|H$okQjSLB4VP9@AZsZWiWTx~{9&+v!sgIg_`txp5vEa(~x0RKZ zZxG&4-JXTn0bk!bKCe9oOe9NR;3v;%i1Cv@IZ##&c!H!5 zwnC>E{;NSykJ|0=j6aECwvLqBnBoani>jmwfF7Y$_x|gK%W@=6Cu|l2nlj`ZT)oWG z@*f119-skMqlCNk^$&&h8%;t6H^{D`dP}?bh`QqoKd%4$!w;T|5qXQxhH&X05S-j$ zNk~k*7DEwm%=t{4m>6brG?iKJ>*E83c4p8LO@!{;jz(NV$#m;A7qV!4VC^-TYnG32 zN}b|0`|P7Hu1@~knKh4Q#VWE~onUZrd3%q>eL7OldGZJCNc_|-e14@=hVjJYCC>t} z_PrUizR`&qdQQd)V)}Sa4TTV-DV>ns$862t>~due$#sN1p4_+SOvrcdu`vQV7zVCJ zhOD*wpRyDe8J)dA*$|@4JcYbLbKn7}q*~KcFZzDyFoTuha>2 zvo7Kln@|KBxK^M`93vc>8_i()1@P30IU1b8lS>!iqv{L8qf4cJ=ha8V0ClqtDt!-@ z0@OoRN~JWar1W_8dAEwbnw3AC^nY8nPZT#3^dD|gtqOpyiCX$(<#Jj!IElDn?O975 zTDFOxUf;Q2{z~;*4(M4z7qE9XHZ~Tm7aT4-pi792eVwkM;#ze^*(ofKdMD(h{n4uX z#xhEVo%R2?!esLDGcLGJ(F&L^79l=E3Rxu>!nOTD*4Efu>N;{qjNIlTBize8jIhHD zqD2M3)SeFJltsz39TIE&8l*s79cy)#2TRc4)i#Weetp21db7*&N0RcM#bNz=X%r9W zQ&N4l?LqlAf$@~(*(RMD@2so@ts_zho`S-m1fX|y|3fx|f{wu2i@@!DsDwfA2a6Iv z7mOaezZm^efsW2!hFdc&*xHMR+Qu@NCczYy4)RvneA70*88xL;&+M`M_U5U z_j7ZACwmaq2Z4VDOO**mp*$<0YsS|a^@f)}lGC=jHuH{$iYi5r>d()q^W^rXo15R^ z@pzSy6&C_4t5|1W5n^q&Vwi-_v8nQR#+o-sb;$9aEpxZE?Q+mpbxCYPCvwm3G$|c( zBIly@gN;$1D3lbVFls6mAVIddJodFdgGVR+nJlb-->(x0h{XJDr|mI_!kWgH^FRgj z^{bWE>+we!U8Sja1%X?QnQc673#WLjPFP|n# zF?fh3c9u=!tJD><32jXVmM3b(IXF(SPE|LhVn3CXBR=U(h&^B}Z_hL>y)ypTrgp?b zY5n7x*CC;Mtp5I?k;-&OM`q!EB=u(xLt|W%O$|UbKR_N)UdM3+3EGZgSaeUx7b;%W zi4d{gkC;5>({I00m!j{a$Q;%Qw_iLbWhHme7;yP(Zk{GaD^}*IGZ$)eA$wGG<{IKv zqG+KCa*B#M_!zBgE3c!h^?UeP!{Xq64GJivtJFcyV#aFQa2(Ctfaw5clF?Vucp*?X3uBxr*#V?xhPeo7ttk9I{CF-d#w znv;i!3pY;FLcf{{=TGxi>BD@?u=|qmm)Q~)$KP=Upj>;d^V@{VBC}kJ_7J<1%&#T? zkn8=quJg&XYnH*RGkZ4T2h6XJ)Y+cYfbCd08>u_Y@D@Ja}{m6l}&k{dzotTK^oP?M;NBi4UrBj0KZhZYuM-7j_iFi2uyR`!$6y92*z>K(=|5ck>zR_lh(=L26J2pS?Gu@CM_ z7IFD7y`zr~dS>V6dwjF6A2$M=S7;jY2;YD(zAo^_(g<_^Y85wIg}2i1GvZmC&9qZyFANlrn58 zMw`n#e7dr4p|g${L%yvZ?|(fTfNz{OE8V27M=?Dc5YPw%yM13io@p~DAr$b&@&=7t z5-{&&YBGuZi4v}28R5evWa-dT8<$UG2Y)qf?-#;6{Bg?w!DxSh_AQwX zVi5jU&(*%hrhVU=`0NU0*$1W?*Rmg(m|*;rx>ZO1rFjmqqo-hK=H$*Yx-iyVjZQUg gUN`@D8WWZCUuuJ8@Cv`4`u#CA)C23{bR1s%8=zyq@>oFmb5dd&g0RFV?z=t2c zv80eSl=Ds7MPy`z&AwR^gI}ELQkMAjr3=R}{HmFm-ML9UrcK9|3oQ#pcUAm8Xx-w# z9AfHoZ?aNdnhU|F{_wL46*1Qe88&xCB`2fIzW;iBH2754gHO^of^qUc!@rSfOJs?q zi=;WOV3faz2{o~cS7m>4DG$CHY75aw8$G5k`UZV^&h*ZPU5(VCZP7vS!_d2tAro|I z(MJYmvGlG>^VjcwOq6|LlM{U9aA?NE%UHt}Sgrm1dg20TOT5&6z<11k{44-SwSz58 zU2aaS5N}kuF;Z~rptIuNn|kIqdnev1IURmID*E{T%Mi$t|3!bIr_{jM*Dqx*uP?eU z*8S+5dA28`=BP|MS$_dI5VskOT5d9uF~wg-{-XAHkF< zU`#8&al}$`N%_eynh&`pEZL$hUz@NyyXGP%b|e%57V(Y^L{@25Q_rzZt)Nb95aG~a zfB8|XhND#V<*ZkM;d7dL&n6GzG9VF``Bi*Qt-lZ7RLI0Bc8L&zI$SQ5^!4LpkqqST4zy}5o9v_HrP-FgZ+}=a0=p8_Wm{>fbAl4wFZJ@5 zB_;v`_Y&@sKkNi?QEz$sQg7cI*i^X0Q!b+m2HVhsxb-||Z$3O(lQsfXIQ?bhm6lB@}T_MPFfMJ z$oh33!_OmjV#kl$E1v1ihgMT~N zTXJ0k`bCyjH#XVQa%FHpt-=}qOgk`S?8Op1U~!ee=qI!c{~dm?XG%mINZHKB7B`N6 z8 zW+4X%lGj+QnlRrxds1m9^>v=Ea|&C7O&-))nJ6`}fd?)|Jx3h=1p9#>x5#Ij=GP3qHc>l$TL&K&r3 z#2%4|n%#NuOq-cU;_%z@R}EbCc!!ZKDs7unw-$tovk5{beecuzj3!x)T?YZJG-Ny7 z9>;LLcSWE$^VPC4ZTG`6 z4hDN3m9EU`dikP%<$&rd`gi|UDS6y7j}`7i=0CMEwcGKEEw&vmEhd1t#YY4H;DRIo zT#^3A1eX&6Z^(-&<5gMw2sZn;CKu(E#JCMEx9v7e>Z;@5J6f+Fd$x`YsUGU%TT>a^ zS+FDRzULqF*@XsZFaCV_ayP`i0ZV$zIN!9KRRezASKFEH;KdiJ4>}jcWjFFhA{`x4WftmGeMC#ZoeZ?h%_!Hcno@ z-u6tiWyZ?)C|FsTb78)+M7=Ans6x+=Yv6{yy*E|&5-blzLiL+e3!6A168l~%UFLRoSvKh4lLAymDL&KyrLMv7tTqdJ%`E=*leU zhHQgw;TUKSTn9FsbFd$0#A<7R4(B3+#EbOEx*otnICOj^xrs>~sb*CYjPPpu?z|xF zSYa<{hcnXsZwkhTE_VuuaUU=L`4NRguoSY%F%&#hZj9cdy2KKsdww(<@PVK%XcfVn zWyRGTw?wU9Zd~rVx%3BkTjbpWvxA}wO-Kk4&;X4+6^DM68rW;1TD~{+`5lQbg{vIT z08!v*r{;m>)n=%_N-uZ7s$+$>LDRp81(loE+ldnXCt{9bc&?ChTlrZN2C z8(bG94WQD?cwWdxPqtWW2lrhyGaQROA(Y3L<->i5YMdhB{bQ33hcv z?Ppz$L~nLpg~tH*>r_BVbS6$cUhPAqt=xVh?YfiFZVwPKRiOMLp?to>Iwhj#|Ci08 z!RLRglm$evG;c+BEAG)*j2ynD14 zzz>-~DnuBtJq}zsDgX>s>`$dAdS_$mC~Vr-d!T6dskd=Xq4cLa+ey`~zLhnjNN35; z_CvrA)fvF{L`G$O81`mq(gsLZKZV=<8kHSVQl140fBkv zSWo4rY~zc$^`#L-`i<<`@8Sk`RZAM(93!!hqg6zA^|XMPy!h)(#ilDP_X%TC(|lM2 z?Sxn<3EZ>IShs+3%oP2!=k1HDM*1n0*X%xOp?Bl1R0g_VN&|xcTw8O10IY?Hr*!C5 zKR7~$1F0b|Kmu@|wQ>V1hZK%dsJPGncyb#~f7jY3UB2?%8N{~;t*)4cDxlnVt<7SE z{+bO@z~jPyNYpC3>;8I}#?lI)-PhYNx3+j|FfAzx54K7=$ z+P6qJAeKi~Z=P>?Xuw!!I-%OPD&1hdmQs{B#!6V7<-@c|(&~iH*AcW=p)I033+ai| z41UpC+7=qD=9M_$-NYTfWABF~ww-$hJ}nO$imQSm3Y)^C`P;AH@FESvBJ0@j80B6I zUuI@I*{!CvmP^l+*KOO=Df_nLaZAffBWUP~&l<4(o?1$q_KJu~d?D8Ii9a*Op2Fg{ zAq3erZ8e3Uj9H{L0=B`(w8tabPHO6jpDKG$!{3-1Ljt$-wF*m#o$g%g(j7z^C%%KeLw%ZKP9&+QpUcbXSx$XId zL5}wihnSgv>rgEd$5+02BdWHil5}P6tBkt$42!%l+Mgq#!KKd)wN{o5Bi(%@I#j+? zYs(}ITYX~`qM}Sr+b!Gj#(0jn?qA0H|C&Soye9ldJC|-%rlr-rlI@KxO@G|V(D${c z>HT(6uU+r6{q3aD#xY6qld78r51`LA5blzlQ*Lo4;+76OtT^EB8C;O7vx%0$!YI; zqkB>eAUb9c;*x%6JU7=}a&eX&Cw``491Mqccr{^0Z&hx>*{aiFln5$?1v2TnPI_X&5xg!!)jN` z^VYJ#kBnUq#y3+MV*AX7Cl+reRvjV7eb}qs+L$K>ooUsWG?q{D_o6DJch21TWj(z{ z#{$FEv)88YP%XGObDVZ3z<$%H^9C(f1TJi2trh%dRZrcrXvq;-g{ zIj0qMt108rf^r^CYNG&V;b@`gb>9W#vl&&R;uNVFEk|u#fcvg}zz*k4CLfNTwN2qj zRo7Q|vQyf9g<*Y_emyH4PrXw9K>lQEq2hS&n16B<{OgeE5*WNtcWrfAHXGCB1cITB zVi_6Bq@rn;5KL{ax&YuZ$7_TY5^KqtPk&c<#OTsR!Nuoz&&29?IjD_TIy9wV#k5Vl zL9y0_O+Oz=VoQ7*m3Lb4@lS^`x^h9VQvuZ_(+K3{#U0m5WAsC8{lManA2%0=;k z3fsRj$!(F5(1};g4|5Sql!*2TLnesrGu-B{!RTsMIeGLWqdu+PRY-M$glwdNWy9$1 zP-kz$n0s^__Ug5YB+e)6g^BcoFCGG~@8b*!rgj`^jkB_Rd6l$!3p&kr`D!nv zLLRH@o;Gw(AodZT-8FT5Bg36;Cv=)9p0FO09<&Y|Rdw1Y5T0fh_hF*pyDtUXvZhds znfb9m46on`8SU>OWqP2-P8%dVp_X#SZwh)Orc!lSWge+9P!4w3e2l|toGMj%veSMt zCHGXO#VYXf=hquYtU>&R`p^*X!3HPpsQ?4UA>h`We3>=tc7&%Pq>&ZB2YMyFq7jL! z$o5{?_~IAO9n_vrQW7}ke?TB4ZR4cCvAMIrz8{p7R7mI4g*O;WXA^fp6;E{4z66Gl z30W&w=RIsMAUxx@Fk$eqFu=+aUDuPNfV_W3xZ&u|tU>%0H+BlP=JnlFLX}SFCAOJx zQN;cXXj6@ZAYh%ti%st*mTp8c;WVEAxE)*EhPnnH&e=ewhmP$V=ThwrVrF6|rMGc1 zvBClZfbEmJsn8YU3zsIe=YM{Z5h7ciX|r$~St6(1ZjsUJXG~g~H`lb7VbrOwQCv3J z^~!>PsD*qvt&E}Tw@{;b4-aq<*E@0vAilKW)&MqUW8S=Nv^Dm0&Yp@V*h6&6+s8Ol zVc_5s{!LT4OkL>D-F^a#qh}0C%3AG>m+!(l%m~Z)Ak^%zPSdVdK22->>&U2z4qgSJ z%AMf%pekrl9K4tRJ~x>Y0A2f=iij?*Uf<3C@?yyaq0dGPM5%0t?Eb3+z?SwFHD*_C F{|jUa2eAME diff --git a/icons/mob/species/vox/onmob_eyes_vox.dmi b/icons/mob/species/vox/onmob_eyes_vox.dmi index 3975a170291ad40bb75e649a92c2e3e056637641..1945c69e7fe3b3010fda148c79072b6a61d0b454 100644 GIT binary patch literal 7144 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

W$%q*>=V(xUI&a+4${A>i<$>qMg^ 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 literal 5883 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 bp;vb5zS}5$DF~jI0=$w}kt>!l^8eoefpu+N literal 17094 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 Yd}W3^pL4Pe_((umK~26~);RG00IgV1M*si- diff --git a/icons/obj/clothing/head/armor.dmi b/icons/obj/clothing/head/armor.dmi index 6757e591c853bf101b0f759841d7b1cf47391586..8fbb591702686c6d32621af68eee8d7151eadc30 100644 GIT binary patch literal 18381 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 Z#jbe`NB-Yg3OuHV!PC{xWt~$(69A6RQ`Z0h literal 16897 zcmbWfbyQp5!Yzt>akoH#0xgsR1&RgN;!w0evEtC;?hZwYQ`{-;6sNe9Ai=drae@X3 zkeA;%-+S-gamO9^JNJ)_wfEYVk-gSjbImzdqBYbMp5f8rp`f5VQ&N=GLP0@g`sag# zg@S@Y9$FKGf`UftqoeO8YvpR;V*A<6*4YUK#Vb1}9qjV`HSrMmFQ?dO^XY(7O_$rZ zgPo~Pv_^S+j%k1=o3b|?5BriGso1! z>ojguOTHswzy}pm2eMOEQ;eVT3nx_6EWBS~c2^)y!^S4ac*e$3P1l3YtX}-1X7#DS$*FS{Y^StGg3^uzHO$O$yOf zoI(q`%-wWzWpgwdXFcok7Xxqm(cP|d_U_8x99(%Q>m@J}oQdz-P`?1z-x0x;YHsxN z7yHWVf=0}V#>pnVxR)`eoM)*^c)@9@HM)H-OCFs<_et|wq%+gq{x;~S7cO#6_flxz zJ?%%1qS3cu9#X#x`}j1Vk5{Gw<&t7g@kr`P*Ju_f*xVH{+a-t0lwI(o5Ebox`sWSpFUV$;dii|JqtA(LZF~X6e`I|>3C(II z%-!AOv04%>DdI3=B<9rNbLjR)y?fcFDI_Zyi?5N|-ZY=HwY+Qxr{Yqkpx^-7*jA1h zeUU0~H^W|{3Pv%*UBa z#es&GpubJ3ZH2D)waRQs=09be_|Cek(u$;G+V2Oujh~iz;!F{?7&@L$m+0KOvcMFW zK@fFmaM95N(;67ffvVtsagR98?67wrnvBB#>3YGG$aOqGchSmCG83ewm-Fc&32jY8 zw)YKv2dmJ+x3})ldB<9Ye{M1)DeY84TBq6SM2uShBZg=<9!h`4KmO^Yj#aB~8L=J5 zkh0Y9SyM;nt(;t>wydlpe`+e;$zrNkLc0%SK~FapeAmIpPj$y{oSny`C3@_NGxSJHA%rilfPJ;(fF^X zwOnyXbI)z1BCUuU2dBc5O7!TcTR^QWtysSBV{xGC;o4dw69AB>m?N4t$qFb)B+u(Q zS>`@0UxsFUf5+h5R`8sGUw*tNC)MivW4?I4W^0_T){LE4RbdD%*zO5_N$)AM*20tN z2DOxPmPl#ov#;%Xe(b!~K3D0t++@qVMA&*F8hrc^A{V>gJDO~0toz}EYX5}F*!cKt z!~M0~JMn|jZS1Cow!a2%c0q*|v&_=Pw-;fD4v0^5iqDk@_8koTyihrYxO8#+Fjl>B@a|seI$X;nIUm#i22QZvp%MZfVWuTLyAg-hQ-uL&Gy(~0r5`@9= z2f}&SVNG@e&*WgXdzYAip{jIt4$CC^O2yK;iLCVmofG6^X|n7&CYYFG znlRB%);FW-4rWICIvpTm4VAi9m+Q8N#U@k+{)mS=G4aq%Ym%4vNT1s(EzeYW1H%;* z7Mxx#R9;$7>S)?3VKTgYTghEAXnk;O;0jL@XL74qaiWoui6AK0{QvC($D^PMb6BH&#$F~P`L)hn2h{C&$tySsf%^mt+O(MHJ&wqOw= zdiG96TuLn?KzxQBd`A|Djvt`eq{#ddcq*F731;#AiFh%Er$kGrk7^ zsqlZAC~vK9up0lRdo*Nrwf$=U!C1t-&@A1w#@#P^V!LLFD$ifOsZn%SXhZ7={w}_z z)T(jZ&&k^Ogo?tUY}T60CXsggc(Fdgqbi$QRuS#I&qbPIkU`?pT|1e_8+&-XFQMCk z82`&xChwm$7e7?#3i}Qd#@Hpv`?q@(7_+hIl*S~mZb1~>epK-o`zSdtw|L_-tY49{ zd3x(srcbX_Z2P|Fsbg?js7*>h2{X8}*73(qVa688y^$*CMpMI)l&RzCdfjn+gee&z zb|24!9YR#ez$&XP^4cc~YPn?$XEi;sF-;D_0wKE$Qdt>RO>!Yht)G z^py^Gubu&j5!c!`tOM}HiL1Y)3l<7nx%hZA`qRYyX`l=QyCL@)GE=Jnrlc$JBkT=a z)FCp*B#|6oYQduwmF3Bhj~B$wCAgmXgXn1hJOA|EqMmUe`|(jyE;y6lx^pZ^LHO|G zBCHedxth+VKL#lvNYJLke@|^Z#3KE1v7GM(=c?QR_twE;y+xC|_22DwyX<069_kFU z81sy{ikFD^WB40^otfAK8l2&Mh{)lFu<0>k-ePuzW`!CMK)@l{z)w?qOX}9$xHd#w zomJo-(9~Q>W>{~!41a-#*g#u2mT^PDAdbzk(3rVAr#SSxp3{4C(V8$lWhvgom;QQ5;UVe$%6sr6*l}nN%5U(;g$tZ_QD%<>Vlp9t$?k~YbUb)1#=0vUNC6y2&4FYd2d z9&113J+?lY@@BW8yT4i_Vg+fr9h2vMoc0We8-_$0!Ef+=o%{GO*Pn&4L14doKl01| z9s2HEnw_2f`ay#H3ETei@9!~ee99=FGW`Zi+^^pEw)Ib7Jrj}~?)v+Ju9+FFBooAx z3@`^i!S5EZ(f!wSC;zdY$ke{6XXsY^sgpDZ$NN0TXJVnsNWr31h2-u;@U+JY^}er|_ zfqfyE*DXXOT2$?KM}y6|M+R4sR9zQ7(BW5bdGf(V8e%~4%yz}(%Z7EQozzF#W>=@x z^fLE1EGMFF#U_r8a@cS1`#!1Cl*Q$Vi0*G|>A~gegZ+UB7_)Tqu^s}PP6l^22zugm z_gVy(brwlFNFJhS4UVvY2oW7gF+EmNw?l+*wEB&-F}jrS)hEK(q6cCb2r z19B{s!$0=iPkb$V?MZCdF;dH6;_SxKGuF-8DVYB&9bq4J#Fu9QEWrNPHGOCUujB0N zPrv8vH=m>XmRw%dq0YAam%F}$71IRD>uKKb-_2i4G?tCHm z`$A_Hnsa64k^G`rp#5B$p>|M)*{&aw7jUsqf*d)mnfK6pF6PX=Qx@%gE&peUBwqpO%=#+x}2Ny8qogz zaZ2ePliX zx_-5W9Ui#C)ib3Zp=~n7@=`9}UL`+&kr^FrGK^zY(2(HoSauqi*1lnI_{36unyAa( z)3_E86)yp+MuGom{pyIj3*E?=GL@aN{~NB`l>oSzIyj@{VJ-ckrDCYQo0?MS11!7Q zs|e3k8oRi-X!3|n^O;E=CbF^m^1IPy%wJZ!OeRe6{15J2gL;ytKyyafa^&N#y^#i6 zPRWR3A;3dNNJ6{N{|%o=bbw&W{-yJ`3I+pC7W#qRs><1|u zBhx`u*2FvvYZ(|6m`(c;qh$zVm{z|hk&}xy9-`Ln5@(LERaR;DY`D-c7h7BEk)Sa3 z%FM{6_vS*`3S-NF5*)lVxM9>m=svpBLc6zbHIBLeBrN%<1Vr6CEv)WYxH;sdVwxN8{d{^bGiyj9 zUANTXp=sdt_WEEYA%(J{sY_!*LRH-7D*yP{Axj8KngmYRC_D`J#KE%kDpinRsttD`=?vRfFdsPwLgg1TH+ym!9ZNL%FtWwkNl)q74{i1+4O zk&@XOwH)_>N!-suU`7Ws1L9h{sc#L0`jhbtf;c-6KOxj|RsV8qX#o`zJlF^P` z8ro}4FE51k=D%3rl5xjW%{NkBy*E?pT13qETaDm>swiS+7B&UF*@h*nQfy^Hd8p%p zlV-=_qT#hV1(mkEkBIxxdQJ-!g{=okNU*jw83$)G%L$T##xuU80HBM=)7hu<%gvez-1$byrb)tm(53dCGc+;`(!Byl z;^k4&FMhAHkJS!?F%&>|=_o&Mi6akaX={;r7ls0lq;4lu<6e;68kVUWWY!c;K)a*u z$9hXL;P@rAn!T&`efNL@u+>8E(_f(fU0%QVABcM3y*BTrW0O63fpd=$bSX)VrCBgF z_5C$z-l0ym-_sPd$C#aY#d#TaE%tP~J(kEU)8tpFTfML0Zi$k{W2(l}c@|Rbag7e9 zhNF&d_`lL3kVWUOEvrGp=w!t3WBWI41J0o*ZJ|$K;LuNkYcJpT9^+ciU9ZJfs>^>W zJ+LlD4k8*-1=7Ru4BDxG3x?f)$F)XF$ER5xp$c{9!SdiCo{Ym6+S zm3tN&Esk`md7w4Q6=Hyw0QF}dzq!J*IS^ zm&}jblr+fd@_ej%*rd^~zSeu0%wR{}R~*BhTOGgmGwL;sBx;;24DG1pG?ErT)F5*M zKh~$?m7fTQyc4?MvyVzDD#h1F;_Hu*fB+84ZIQ!iwSdy@7G@BNv_*@gU$H0apaOwn zWnLp+beSMdHGtrGf4^nD<1!A|`sfr89Z#WU(i4zUP+4151SK9+ISj!x%E-TR?614La{b*pE+sL|1XV5kMoA%hBhFL%Rt&9H^8t8 zF&p`Bw&i?vc=&Ku@c(@qR9Q@5*mWAWQ4C*H{D)zWY>@x5;CTgp-zqA4vs3@~E_-X= zYs3fRqL|qsfA8gB!I^Fug~K^PqX(1~_c5-%up9SGSHl3kI@nipbhvCmqcbZ64u;W1 z`iuLJd_%*@rp%j@lfzK*x4*Vag64fIOyvQ&%ZC}spZ8H~FxiRYiX%DC;H;*78&m(K z*d%vZBTp@2kY@zuvgF<2+r()Z;Pu@okNo1hXjhtdc&{G=5g!N?N|E zMioc0gqOO1sx)*Y{0ktxZs7KnCfLpkvXCSuN4_$&V8Ij7l4vmIMH($FF%?ci<}Hc= zyIhPJHR9HvtrE%MmwH6Cj5Zn@^QXOJ?!V+_n{?UFIj^@#8CgRk&Co31Oid#m>Bw->3ZiD_V?dvY1@nWQiDPMq8GhcPF)zZ52X$MAd5E*} zp03KS9=!K(&+qOJD-T@VA9Hg=ad*pG2Q^SO|47#L63zL1V&#CBkn5)ho8s9+*=U4h|XEg~m zT`*OFz=g%#amQxYS3pry=>Sy6@*j{f-%9T>6?;Ayvj`_o)AX30M0egjm~pespJ~v# z%+I8)a!+Bxz^YfZWEv&s5`jq!2vYb_5;6(*ZOz_mm)H@y(o6r{B zbKlXRATGmB<0|Bk?)~Ey0%4|?(HE>!pi0`vOs}1j^1G_Y*^H+e@-Z15Er8Eg7j4js zE2|F-MI5VTtjKCmhes}SJLPwBE@FRz<$RhcwoWO~i!YLcb_21pNn#G9mUsoo8NA^# zg(q<|>OxtUB#f%$%_Teiqjp}+;AEjFf-vmsFDWYQ$$msSbh!JC(q2IX9mRT~VzM^N zO#r!o9h?N>1385V7cxfwv3UTxd1!~3l9JLJZR4z%+n~?K717B6#zL0O7XQ|RfB?_s z2CH|~7Z!tTc>KIOh=GOvzyx>_aqf3Um`!iU1|m1UwPS9^ z^E)0f#`f0@iOLUmvucJTY{QKAG})5ceDVWZ_<4E{qwm{y5Q-!cKA@IF`SU0 zLT|-^S@Je6$v}IEbGvL3c7N`7-#|ek@P4K;$wJ(RXL!NU%S%En8vHZJZ+k6qyBRz>4$`pi{KnG zhoivYu>MzQc!~6G^2@dMFRIsc_ftbkfgqd?*4r|jsL5)J;b_F;H*X8kh3x+vW57<*b9b(csqZrz%1iM!5r_OaZb?kJeV+h*P|OD{uY zBh6O-es5*ec-4N%1A-gp-@B5G|1+0|OIju#h7VO$74*(tyjDS%j+qz*=jz5;JtLt+ zdP6}2#!o7t6b#~G{4f5)0rt&Dq=HI!C1#1#31%gewq_IMq7W3JX0+5r3WVB(l<%jf zE@uyp1QZT}SK9GO4pT^^oVyV}Ef9t0trBasxNB=YHJNzhdOs;>i&1`iI|ncR5%;~( zf_vot+#6o^aV@&tppG~nZq_sY;bxyFsqk(bayB>%#g74N__oJ;dSFRr3%qt;vpDjb}bm(3z;-n2n3=WrgK}E2yF7DbsP4s>C$82@sLxn;h z87Ya25z1OikI%K8S>SA`Dx^q(NOQg?5RnKCggxb?EDZ76zte6*5%)m2D-XB)wna?O zk~1>O?^zAbHV9z4nSm|u?^j-n7!^!`U)fo8;3y^8&N64FkSWL+XqtW9OHS2%HTG+Z z*T~_E29O*=O&o?jUXqz<*)npU4||2f#JB&Mm_dA`i2hn_Y2I08{OS#@$LPlpVxSy| zyakL2Z?p#MA}t19fBeT|WUu`Pvcvr!pKjt3aPOW%jh?G%K3DawoDXqfKY5`{EhkT6 zy!tYF*-CcW-_zFw;X8NTRc@in^_6=5+m=N?2itmgfpL^lE$Ttm?L%Go09t@cFng+1 zxq@iZLZsDGU1y1wm(z%oLdEaG0br6hM2Q*C9Kh{*RkvpaJ@dL6>8$d^YsH+hL8SiL zNnDN`>D~6;{wnm3;{0=mu{4qin^dd8EtD(J_uP=8&qW z5HmS5$|5TFIFG0blDlt&Bk&YbHsrJery@Nfu|8+4kuJvD81 z?I(2V^qJDtdJ8i%iKK0ylPo(k$ePGUc0V;#HuR>3Fxo#3P5=O9BOM9s1cl;}A~Euj zZG!0o)0~Jyv>i$-_Lm$l_(IxmoRnnlb4rCbd`0f!b8?lKl_v)@1HMq4Y&<TQhVj5 zY(F1|_u@s<#Vg(~z&ZS6hsN`LO(X0Qc8S|MzOxYggXDy#lGGCGri=E&XFY#K4DTL2 zuMYD}Ta1I49DI!G9v4&L`-AE$-|AO!QBz<-O$_qCv0-Fev)A8yW?N#N$bfEsyM~8d zQ2gOzmd+X9wTS6N=S zT1jXjiPNv)6pKQ!CLonmh_?BMsg{ZfC*jJcSihw6E}|MOEE%6Mk;%y22gF&r_~(bn zo_7ps{6JLlG%hL0vO#(Ny1`|aNK%~3U5fb7v<1~E&!Jbqm;B>`fbXTCmXuKvof6)I{# zb*)lb?fb4m`_mf=`r1OkWo7ttkk+&M7lXH>i!Tjl;iint0$V`2io&f1yfGERG7p;R zCPxH~vS!DAvy9PnmHNfO#=GvSWSmj=sL9AYhWSIMHnAdI6CQcp(=Y?Zu%{mlA$STV zFDY@J4ea-KcA58yj9H2=i^zc&Yu;3y3_=?7EBAvGGW=G2ExXucJ51#2cS0YbHykXDu8n#hZ z7kS6fXc4~Od3NlUge3Qn6;!dbE^KAa7MkgiN*9jjRoRnJQl7)f6g@2mov?OF`3j}q z94aS+B!BSU>*{LiG`>Du7fd6h%r1x=axa^;(|hn5{38-g6cn`|zN2^JMj;)F*}AbS zGUo3;1W3bB^br&m7KU{D`>NW+;U7-PBWT3mna~>VN%4M|`_h~qI@NZKmpI0YQq~C& zuM1zrt4lec93yfTGd|xbXBuYa{d6th_F-;rzg+RW*X&aNz2A=?96(^U);A!o zVM_K?+_!BOS$|j>kizPtu{a$ED$vo2)lES4H`y)y#88gcq z-HzFCW$B^?!Cs**&sB+~wRLo4*$_|q5O!lz&( z0nHb)%7v;Q?!0StW}z%CREWLtI-^=ZX>a3FQ)L*bIfVG7c#H=3LHvF zO?D5rmnhm0yWU~$G`}DkHtPHnfkxUef9HGS~VJL68h{6 zI+{BLU{fzBaha3;E2a?U*@rqJ627!>X+KsM1pN7sodxJCQj1Cud!u{j)h7dKm<`Qp z+oUPTY?L55BCe=NSXXpiHz98bR8ED+`Jt%)o_PHX17{-L^_89|JUy#-9|1i|Wp~!d z_4!C_EC@>$ArgtC{fA>oZZ74s4|x_0Kec})HUDL^o)@8cnv)l89rScn$#``-?7M$= z01(1CM}3gy`{(qUc?9<=`@r7dXjg^m0+-L8C%W9z0;07-Dw^mcQIr`i$Gs4<2=696 zo_^3j*3G{S9OR?SK7?XMnNcr%L^Y=#68QJQ|8sSn7|-G*SfciEo6e*Q&#=ixDmpsa zlB?%p>?Pff#1L=abcd(&V8ucrpK55nSiYd+@@8>Sw?ACV&hACm^`@G#vNGvAUEMS< zy*IOOsD+%e8;*v>+7C*eYw+_6~`&Evb~*pP_FL()}KAjoq(5Cpo`>mE7(p0m)-FhEE=? zk4sF@Sj#yY&G->+LxPOnST#iMewVoVhUf$ds zL?kVQLH_=%LwK$WNGYjSXVP`mopE$oZFBXij&@t2O5a+=&_>V*dtVeQ_1}k9a)tf% z5K#dP_}2KGpP!RcQppL?uhD+1{5)FEayWXbwBmUv>+5j}xhOz7VgF3Sh3J?-4B+un zA}W7Y+5M}7S>}2u>}h;5Ju6MOQj8opwRnt8&J>5>dibs7?pQG*q}K(tPE)IxJM~<6 zG`=1b|3m$Z*~fgcEN0EKzi``vgIPQrsC&XT#>^}xDeRpFgyoj%3Nz4CFw^gBktPhM zW@M{`V`2gaM@=M1)<{Y4e>tB^?Xzs@r7AE4nl)t0q z43jM;epgo2hRvkRS!90}qZ{~?)$G*RO5}7j-jgP(hgncm*Y|7m;jf}jD$+|TfqK|h1ztB^-`wyJQPl);pf3bx3 zD)tE*yJZ&^70J=ehdVZ_;mk&pwJc*5$*+~}T6qq7_gk9?aBo}tT7I! zot_?gR$c`-tt^n?)$@itj)4(WR-a7vToIK=bi3ygRL7!U9=P$R8WG<56b0#WIHlM? zR@{Um*}(f-E%)ky!v#aE(BC*ctP~U!ykk{AHUv<8 zKZ`?;6O3B|_wiz!$H-2|{Seaom6qdeo2`s|R+&e{d?QX3FDu@)v zy8$^o6>{&AhWV9Hyi*z%ozB?bY|2oz_IoBV;K75oT4SDJV+C#BA*B_Etoo zTPA#>{?}5PWjCm*IU=cp5oQ@a{f*{GS^K|XvHv%;ZTEX;uL!fOSIMV2RZWf?Yn2Wg zx!nJxT|xui$>)gY{|tNxFI1ON)ow-9`q#&Rtl%mfugL&Gd=N~yzdLEZC^Rd-$%#a+ z$9qR9322%Qt$67W7~*oXEBp(j)dDbte?#vH_)t)m>&S<;|IUxqounWibN{#J-V3T{ zG|~uX1%IVX#SFC`=x#2DiH%NoLTHa9-T|lzoKfPU`7Arl$7$KEzVj`9b2)9cudEE@ZT8pW%ze@$HNoZh;p zaPM`l5YRf@fbwS;d@vm;=xnIIAGYs@c^F?-QXHceHOYRI^A>j!6MlDxD4du$@>@>7 zR)ZqQHfl_(C>jto#$eSC!Y67$?MOk~Fm%CLX*rd$kt$&i| z;v##BF&~LYOMhfqyt4~3?3D>O~kFmsn zCWD_Fmo#3o!N^JS)qR|;*=^F7W(8~QSf5c$@023Olf$|Mq_2}V3u6;iyD7ZTU6|49 zFr1D7@Y@WY65OAD)?-&~w=<0}dIxvc31^e@5~>}}%g2}S$`wqYW~HnuB5+5l()Zwd zmVNKO?hFB`gB9*fM&CV*XPsWe)eq3tt1X7}CMSE|XLN{&ZN1=9ryi^HC%n@Kx1;5E zjXmxw^1Rf(mTBh?<^ z&5I86lUF@?NC*24+Mxar@zFgigLw7xtPQ4Tu*b=>>D<)rI%3MbHXSv;V5?a-%ii z8SNV!Pe}pP{kfNsSf3nRKLoAT1zvI&Q3RrcyA#o8@Yin;E08-=-qp8AePqRR7IgaB zSgg&%+s*9__sUvY&B4;`v5X{>w5$3-i<}>mB3!{YDq_h0r``zowXXweZ&lZ0V zEO^T-O&SH>bb35!@vyzR>B4-|=B~Pi=YBW$ONgRO)@F5oRNAkharxGP-wtwu7pu`9 zjLCuH7o9L*OA^wyx>OYo_F+~bj3FM_oi_r^4-DgkjdGHN?9FnCgtULUK3kH<)8>%1 z*$NxYqQV2?zcnLEMh6bkpYWUb&V4cSf4p8myjbArdAPX5CZP9Xo_A&tpC^GMk@Vl; z@tFZERb;$GOGiWUl3T6c3>)#&tazqg?j*kLXp#5+ATpMICB6h6pD2O)&GGr$k937I zdK6SYt~LnGGRP!#8sNM46O+ z?_@`5jPtwElAkFz+v|z3VDXz(e!*tB*f3C+Z)~SFER-=UV)KgTwXBL37PIs}Q`tpH z7A?O9;I=(Caw@wf$i5+>+_$CU`%==+FT!N5D!yEk9Vad4A6oYLq2Bz+&XFO+D&5gb zf*253Ks6#-XKDlhJs7Tlk!kIx{nS|*ua6#!{V78TxQl_}0Jci@+w*i6|GyKNuDaD9 z?$+*~(d}2(cDqajXfP6EV4Jf{*S?c-nIZcpURu~0UY28=OB`0LU>9=cfP(ei-&?92 z9eZ4DhQiS(2HbtW{@~-RAb>h^H43Hido~sPPP!P z7r_XTmY<~I5lrXv=LG$9X@2MX*Gci+Q2bhO0r#}hFYBY1(tKBZmjQ9omIOTkpo>qt zfLKb%5k^`;IyplZl_gT`xD~ihiXQ7sH>pkcce6BIPtc6o(T~G0nPSg-SVB7XtT<|mFX2~JmCgo^Fq+m5tEuDmc<!y@eUPczX>`W<0HU2d z_%_kTn&r%E{%@*wPjIO1!5GD_4sWl|Kant-t|yDfgX{R2bc%6sADL^QbF+2;|dv^hzx0w=lwy%m)-A4+p~~9 zC0TwO|KTGV(%iyiIoq5p4Cv4|G=OBS+Xd>vv)6!b@U0Rv zXndQru$v@B#`yxt@B4IO<|wfB$kFnWm3D+tQ3H!@zYX%DZL=;PEV zExstUTge$2(oes5_`kTB8_}`^U@G!}zNNyob?W<;amNfExE&b_e3;Mc3qKHn_QG(Q z+x9r`KTnIMWMr_)+Eiyr2woZ(&eoURho(YbeytwfdNZYcYYRh4q2x{o0 za8AehTZL} z#?lTy7;o8j%Xc@{ZZX0UgRVDDwmtEXG`nBCk9#Luher_+*K}_ry)RmCaHk8vR3z_X z!LETBYDht)1($Ki$*J?NAtrPBI#~nSFP<<n(DaNDxfR%G+F>ABx)CC*d?r+yv&RNv9^Sg(&@t*g~mh&p2of18t?lU*U zAFzi{cpiPKXBs_!`_>08*2x+5nA=DM7_n}@MG|6%dy_+ru2}z*Z#`Mdk(3yfs8UG9 zJ7UGn!P&6&U>wloUKY0h+neWw@k%p)HT+@adbwR&I>pq_kY=&jD>Y^W{bwura`8!zJSW^Y3bL=z>~2Vu{7_#<8x?4S2eMUa~g! ztvG#`cY|$7praB!j07CV97^WL_fub$P_Oi)4lpBsp{H${vo4fS(c=;6hr}j*NH?jQ z?eWg%Y!Lg^B-iA+^#P|CmCM%(iBGP~GS^04=0CkyZ0Tb6KTqH%FWa+7){}gEU#F^|?&Ah$#}hMS4_EZ* z^HJBY;Xy#fFmvmYrCGZ+1>5;@^s0KvJfx$pv@Pz?sfrpJwmrVr3S4dBUp;nVSKS1@ z3!Qq+IC8=VkK3)rK@p=hEl4-{hxQ1YLL2Q+mv9{IF5zYBx*z>IMThlT*n;<1x^thu+6grkZx*><+97$+}u7{688 zjkbG_`N%vtJaLld9i_g$US!U|ULmFl%@*rkN6Jc)URQb&{)}6V+t^?xF*Pmk!l&z6 zSBDO~zG|5JuLCJMF5T7ZkG;^Nqp;afLH(*WWS87n@S5gDcdWa`UphhyFx{3LCTQy0 z;;|&c;so&>!w9>&E^&HxyqN0x@%dnZrnD&e=spSq$_S#jSgh)-rtAQMZk)+s_& zuN~a|4TF{lu_V77KjJ*7`c1LQy%rgxsJf&#@J{582^47Zgl?Q8oprY8jfUn8^j53e zHF56_!(uNr4o$j{y~zG3;Wc+hN}HYGu@;v|Mfxx=ufDJVjf+h-7Gl{6$LMLEp1r;n z-QFtpk-F}tVGi7oqyl8q&B&yA_8&88AksHi6CWi;hwI{KP%#zTHH#J;w1(DGic-M_ zZJCJ*%J1g&mq*$^FYFILEF+|?H^wOV^!bu49-xR*j_Qej_LxApxW7kDZ>>CBfEbMy zuSvINU%d=|2si!IBPw0@5sSqi^?cMRT@8uGh2ut4S77hV z0;+OJ$D@!ZVIKY~G>URZ<0*+fs|b^PwB~16UUhw|I&E(~+y0_1G0UHQ4Ez1`L(_s}AE= zDA@uo92rpflEnVcN&l))ThYZPC#g~TEG^x8T<3fp5rVw$937ro4z{i{$6I$sh?V40 z%?2Z6H{x6B28aXIe0BIR+GcOG3|Z_CVB#PL0`^yuy+4ST{88uMO6puiEKMf@oP+P4_I9VY6U2_oAE^QnKV}-- z>9_-THUk_V>lN6AqHlZB0iF^fAfm@;Nf=f$3`e~eZm*u)u%w7ekbq+E@9npU1SY>{0zGvCK66Nz8s$A~_O~qEcMEpY@4K_-lw7FDtZ@;baaY;q zDxjG708;^6=#6i?v;UogUwDWTE)P|}OEUR8^!{$? z_CRXZMa;`${)~b5u1oo#+?Gt=uCQ{DB6v8x zl_mJ>!F+Y(ux0IksM;iG+eE8vkj$$OIUea2kq}wE7$X-+fZ6}DC__P6O8Uz1p~qjI ziNIqu39ku3>X06Q$f3u!IA+O5QDUy=t9uZxZuLho#KXl(LqCT(*q?+*`MlA^O4IX4 zbS>y>=JT?=9C>a2Kd(H?tK{T1U>U3O;^;#=x1Ftdc8A|Har`f!)W?fXg*J>oClf)7 z{3r#QbsgqTk3G*j_Be3gc)`#In!Wt>PCfcOZ&KWM*<2#S+J{MtmwfyD=z2k= Date: Thu, 19 Sep 2024 20:05:38 -0500 Subject: [PATCH 10/61] Automatic changelog generation for PR #3389 [ci skip] --- html/changelogs/AutoChangeLog-pr-3389.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3389.yml diff --git a/html/changelogs/AutoChangeLog-pr-3389.yml b/html/changelogs/AutoChangeLog-pr-3389.yml new file mode 100644 index 000000000000..88825da0aedb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3389.yml @@ -0,0 +1,5 @@ +author: Sadhorizon +changes: + - {rscadd: Added "ballistic goggles" - new indie security clothing item.} + - {imageadd: Added Kepori bulletproof helmet sprites.} +delete-after: true From 2bcf67a052572c7f6e46a06665541ea99881aa09 Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Fri, 20 Sep 2024 09:03:57 -0400 Subject: [PATCH 11/61] PGF Turrets (#3381) ## About The Pull Request https://github.com/user-attachments/assets/a8715ea0-0721-4025-8a5a-74296290ae77 Defines some pgf flavored laser turrets. Maps the light variant onto the Crying Sun as a replacement for the weak turrets currently installed (shouldn't be a major upgrade). The turrets are: Standard - uses the pgf assault rifle laser Light - uses the pgf pistol laser Heavy - uses the pgf sniper laser and a heavier disabler beam. Also organizes the file slightly and renames the faction define for solcon (solgov -> solcon) ## Why It's Good For The Game More turret definitions is good. Also I need these for a ship. ## Changelog :cl: add: The PGF now has it's own turret offerings. They come in light, normal, and heavy flavor. /:cl: --------- Co-authored-by: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> --- _maps/shuttles/pgf/pgf_crying_sun.dmm | 60 ++++++++----------- code/__DEFINES/factions.dm | 2 +- .../machinery/porta_turret/portable_turret.dm | 37 +++++++++++- .../clothing/outfits/factions/solgov.dm | 2 +- .../projectiles/ammunition/energy/laser.dm | 5 ++ 5 files changed, 67 insertions(+), 39 deletions(-) diff --git a/_maps/shuttles/pgf/pgf_crying_sun.dmm b/_maps/shuttles/pgf/pgf_crying_sun.dmm index c0584df1e945..ad52c8b853d8 100644 --- a/_maps/shuttles/pgf/pgf_crying_sun.dmm +++ b/_maps/shuttles/pgf/pgf_crying_sun.dmm @@ -425,13 +425,13 @@ /turf/open/floor/plating, /area/ship/engineering/engines/starboard) "du" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 6; - mode = 1 - }, /obj/structure/cable{ icon_state = "0-8" }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 6; + mode = 1 + }, /turf/open/floor/engine/hull, /area/ship/external/dark) "dv" = ( @@ -1050,11 +1050,11 @@ /obj/structure/cable{ icon_state = "0-8" }, -/obj/machinery/porta_turret/ship/weak{ +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/porta_turret/ship/pgf/light{ dir = 4; mode = 1 }, -/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating/airless, /area/ship/external/dark) "ih" = ( @@ -2335,16 +2335,6 @@ /obj/effect/turf_decal/floordetail/tiled, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) -"tU" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 5; - mode = 1 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "tY" = ( /obj/machinery/modular_computer/console/preset/command{ dir = 1 @@ -3452,13 +3442,13 @@ /turf/open/floor/plasteel/white, /area/ship/crew/canteen) "CF" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 10; - mode = 1 - }, /obj/structure/cable{ icon_state = "0-4" }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 10; + mode = 1 + }, /turf/open/floor/engine/hull, /area/ship/external/dark) "CO" = ( @@ -3732,11 +3722,11 @@ /turf/open/floor/plasteel, /area/ship/hallway/central) "Eu" = ( -/obj/machinery/porta_turret/ship/weak{ +/obj/structure/cable, +/obj/machinery/porta_turret/ship/pgf/light{ dir = 5; mode = 1 }, -/obj/structure/cable, /turf/open/floor/engine/hull, /area/ship/external/dark) "EA" = ( @@ -3996,13 +3986,13 @@ /turf/open/floor/plasteel/mono/dark, /area/ship/hallway/central) "FJ" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 5; - mode = 1 - }, /obj/structure/cable{ icon_state = "0-4" }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1 + }, /turf/open/floor/engine/hull, /area/ship/external/dark) "FN" = ( @@ -4017,13 +4007,13 @@ /turf/open/floor/plating, /area/ship/engineering/engines/starboard) "FO" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 8; - mode = 1 - }, /obj/structure/cable{ icon_state = "0-4" }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 8; + mode = 1 + }, /turf/open/floor/engine/hull/reinforced, /area/ship/external/dark) "FU" = ( @@ -4253,13 +4243,13 @@ /turf/open/floor/vault, /area/ship/security/armory) "Hb" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 4; - mode = 1 - }, /obj/structure/cable{ icon_state = "0-2" }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1 + }, /turf/open/floor/engine/hull, /area/ship/external/dark) "Hf" = ( @@ -7804,7 +7794,7 @@ xz xz xz xz -tU +Hb xk UE pW diff --git a/code/__DEFINES/factions.dm b/code/__DEFINES/factions.dm index 67ce47e166fc..596060d6610e 100644 --- a/code/__DEFINES/factions.dm +++ b/code/__DEFINES/factions.dm @@ -8,7 +8,7 @@ #define FACTION_PLAYER_NANOTRASEN "playerNanotrasen" #define FACTION_PLAYER_FRONTIERSMEN "playerFrontiersmen" #define FACTION_PLAYER_MINUTEMAN "playerMinuteman" -#define FACTION_PLAYER_SOLGOV "playerSolgov" +#define FACTION_PLAYER_SOLCON "playerSolcon" #define FACTION_PLAYER_INTEQ "playerInteq" #define FACTION_PLAYER_ROUMAIN "playerRoumain" #define FACTION_PLAYER_GEZENA "playerGezena" diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 3f5620c35f06..884c103d0e0f 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -832,8 +832,8 @@ DEFINE_BITFIELD(turret_flags, list( stun_projectile_sound = 'sound/weapons/gun/smg/shot.ogg' desc = "A ballistic machine gun auto-turret." -/obj/machinery/porta_turret/ship/solgov - faction = list("playerSolgov", "turret") + +/* Syndicate Turrets */ /obj/machinery/porta_turret/ship/syndicate faction = list(FACTION_PLAYER_SYNDICATE, "turret") @@ -856,6 +856,39 @@ DEFINE_BITFIELD(turret_flags, list( lethal_projectile = /obj/projectile/beam/laser/heavylaser lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg' +/* Solcon Turrets */ + +/obj/machinery/porta_turret/ship/solgov + faction = list(FACTION_PLAYER_SOLCON, "turret") + +/* Pan Gezena Federation Turrets */ + +/obj/machinery/porta_turret/ship/pgf + name = "Etherbor Defensive Mount" + desc = "A less portable Etherbor offering, the EDM is a self-directed linkage of energy weapons, designed to keep intruders away from Gezenan vessels." + faction = list(FACTION_PLAYER_GEZENA, "Turret") + stun_projectile = /obj/projectile/beam/hitscan/disabler + stun_projectile_sound = 'sound/weapons/gun/energy/kalixpistol.ogg' + lethal_projectile = /obj/projectile/beam/hitscan/kalix/pgf/assault + lethal_projectile_sound = 'sound/weapons/gun/energy/kalixsmg.ogg' + icon_state = "standard_lethal" + base_icon_state = "standard" + +/obj/machinery/porta_turret/ship/pgf/light + name = "Etherbor Deterrent System" + desc = "A light turret manufactured by Etherbor. It offers a lightweight assembly of energy weapons to accost nearby foes." + lethal_projectile = /obj/projectile/beam/hitscan/kalix/pgf + lethal_projectile_sound = 'sound/weapons/gun/energy/kalixsmg.ogg' + +/obj/machinery/porta_turret/ship/pgf/heavy + name = "Etherbor Point-Defense System" + desc = "A high-powered defensive turret manufactured by Etherbor. The EPDS contains heavy energy weapons linked in tandem." + scan_range = 10 + stun_projectile = /obj/projectile/beam/hitscan/disabler/heavy + stun_projectile_sound = 'sound/weapons/gun/energy/kalixpistol.ogg' + lethal_projectile = /obj/projectile/beam/hitscan/kalix/pgf/sniper //fwoom + lethal_projectile_sound = 'sound/weapons/gun/laser/heavy_laser.ogg' + //////////////////////// //Turret Control Panel// //////////////////////// diff --git a/code/modules/clothing/outfits/factions/solgov.dm b/code/modules/clothing/outfits/factions/solgov.dm index 8e8710c86dbf..3b14fc89dafa 100644 --- a/code/modules/clothing/outfits/factions/solgov.dm +++ b/code/modules/clothing/outfits/factions/solgov.dm @@ -7,7 +7,7 @@ . = ..() if(visualsOnly) return - H.faction |= list(FACTION_PLAYER_SOLGOV) + H.faction |= list(FACTION_PLAYER_SOLCON) /datum/outfit/job/solgov/assistant name = "SolGov - Scribe" diff --git a/code/modules/projectiles/ammunition/energy/laser.dm b/code/modules/projectiles/ammunition/energy/laser.dm index d0334e8d8acc..674d1e4514d8 100644 --- a/code/modules/projectiles/ammunition/energy/laser.dm +++ b/code/modules/projectiles/ammunition/energy/laser.dm @@ -169,6 +169,11 @@ impact_light_range = 2.5 impact_light_color_override = COLOR_CYAN +/obj/projectile/beam/hitscan/disabler/heavy + damage = 30 + armour_penetration = -10 + + /obj/item/ammo_casing/energy/laser/minigun select_name = "kill" projectile_type = /obj/projectile/beam/weak/penetrator From 54d9c5a1b8f3238bb3c24ae47667f26f4b28bd91 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Fri, 20 Sep 2024 08:15:10 -0500 Subject: [PATCH 12/61] Automatic changelog generation for PR #3381 [ci skip] --- html/changelogs/AutoChangeLog-pr-3381.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3381.yml diff --git a/html/changelogs/AutoChangeLog-pr-3381.yml b/html/changelogs/AutoChangeLog-pr-3381.yml new file mode 100644 index 000000000000..8d0deedcad6f --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3381.yml @@ -0,0 +1,5 @@ +author: Bjarl +changes: + - {rscadd: "The PGF now has it's own turret offerings. They come in light, normal, + and heavy flavor."} +delete-after: true From 5b36ab8fa31c465c27bdcd00c039144949f38d3d Mon Sep 17 00:00:00 2001 From: Gristlebee <56049844+Gristlebee@users.noreply.github.com> Date: Fri, 20 Sep 2024 06:17:54 -0700 Subject: [PATCH 13/61] Adds Inteq wintercoats and hoodies to the uniform lockers on Inteq ships (#3344) ## About The Pull Request Adds the inteq wintercoat and hoodie to the Talos, Colossus, Vaquero and Valor uniform lockers. ## Why It's Good For The Game If you're cold, the Sarathi are cold too. The Inteq wintercoat is only obtainable as an alt pref-option to the armor vest for enforcers, and the hoodie isn't mapped anywhere as far as I'm aware. It'd be nice to able to see them in game more often for aesthetic options and it's a nice flavorful thing to have to keep warm with. ## Changelog :cl: add: Inteq wintercoats and hoodies in the Talos, Colossus, Vaquero and Valor uniform lockers /:cl: --- _maps/shuttles/inteq/inteq_colossus.dmm | 6 ++++++ _maps/shuttles/inteq/inteq_talos.dmm | 6 ++++++ _maps/shuttles/inteq/inteq_valor.dmm | 6 ++++++ _maps/shuttles/inteq/inteq_vaquero.dmm | 6 ++++++ 4 files changed, 24 insertions(+) diff --git a/_maps/shuttles/inteq/inteq_colossus.dmm b/_maps/shuttles/inteq/inteq_colossus.dmm index 920d16cfc1c7..f26053f39b44 100644 --- a/_maps/shuttles/inteq/inteq_colossus.dmm +++ b/_maps/shuttles/inteq/inteq_colossus.dmm @@ -195,6 +195,12 @@ name = "uniform closet" }, /obj/machinery/firealarm/directional/east, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, /turf/open/floor/plasteel/grimy, /area/ship/crew) "cq" = ( diff --git a/_maps/shuttles/inteq/inteq_talos.dmm b/_maps/shuttles/inteq/inteq_talos.dmm index 1babd6a9b001..12143aa9fe2f 100644 --- a/_maps/shuttles/inteq/inteq_talos.dmm +++ b/_maps/shuttles/inteq/inteq_talos.dmm @@ -4071,6 +4071,12 @@ /obj/structure/cable{ icon_state = "0-2" }, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, /turf/open/floor/carpet/black, /area/ship/crew/dorm) "zg" = ( diff --git a/_maps/shuttles/inteq/inteq_valor.dmm b/_maps/shuttles/inteq/inteq_valor.dmm index c405c803521a..7cb5896b71ad 100644 --- a/_maps/shuttles/inteq/inteq_valor.dmm +++ b/_maps/shuttles/inteq/inteq_valor.dmm @@ -4599,6 +4599,12 @@ /obj/item/clothing/head/soft/inteq, /obj/structure/closet/wall/directional/north, /obj/machinery/airalarm/directional/east, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, /turf/open/floor/carpet/black, /area/ship/crew/dorm) "RF" = ( diff --git a/_maps/shuttles/inteq/inteq_vaquero.dmm b/_maps/shuttles/inteq/inteq_vaquero.dmm index 7caded95d6ff..71e191e5e584 100644 --- a/_maps/shuttles/inteq/inteq_vaquero.dmm +++ b/_maps/shuttles/inteq/inteq_vaquero.dmm @@ -1208,6 +1208,12 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 8 }, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, /turf/open/floor/carpet/black, /area/ship/crew) "ui" = ( From c79460a02a0b277c59fb9bf5fc095e52e3c19991 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Fri, 20 Sep 2024 08:29:02 -0500 Subject: [PATCH 14/61] Automatic changelog generation for PR #3344 [ci skip] --- html/changelogs/AutoChangeLog-pr-3344.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3344.yml diff --git a/html/changelogs/AutoChangeLog-pr-3344.yml b/html/changelogs/AutoChangeLog-pr-3344.yml new file mode 100644 index 000000000000..dec12298d07a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3344.yml @@ -0,0 +1,5 @@ +author: Gristlebee +changes: + - {rscadd: 'Inteq wintercoats and hoodies in the Talos, Colossus, Vaquero and Valor + uniform lockers'} +delete-after: true From 9b6775aabf164d0260c2846fa9968870c68f3b07 Mon Sep 17 00:00:00 2001 From: generalthrax <139387950+generalthrax@users.noreply.github.com> Date: Fri, 20 Sep 2024 08:20:09 -0500 Subject: [PATCH 15/61] .45-70 boxes hold 18 instead of 12, .45-70 specialty ammo black market (#3333) ## About The Pull Request Doubles the amount of rounds in .45-70 ## Why It's Good For The Game Beacon takes the cake for The Worst Ammo Efficiency In The Game By Far (500 credits for 12 bullets, you are Shooting 40 Credits Each Shot, the equivalent of shooting half a Plasteel Sheet each shot) ## Changelog :cl: balance: .45-70 boxes increased from 12 to 18 add: .45-70 hollow point boxes and A Singular .45-70 Explosive Round is now available in the black market /:cl: --------- Signed-off-by: generalthrax <139387950+generalthrax@users.noreply.github.com> --- .../blackmarket/blackmarket_items/ammo.dm | 21 +++++++++++++++++++ .../projectiles/boxes_magazines/ammo_boxes.dm | 8 +++---- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/code/modules/cargo/blackmarket/blackmarket_items/ammo.dm b/code/modules/cargo/blackmarket/blackmarket_items/ammo.dm index a420b3d4cd90..47f7fd884993 100644 --- a/code/modules/cargo/blackmarket/blackmarket_items/ammo.dm +++ b/code/modules/cargo/blackmarket/blackmarket_items/ammo.dm @@ -250,3 +250,24 @@ stock = 2 availability_prob = 0 +/datum/blackmarket_item/ammo/a4570hp + name = ".45-70 Hollow Point Ammo Box" + desc = "Put the hollow in hollow point by blowing a crater in some random sod with this devastating .45-70 cartridge." + item = /obj/item/ammo_box/a4570/hp + + price_min = 600 + price_max = 1000 + stock_min = 3 + stock_max = 5 + availability_prob = 20 + +/datum/blackmarket_item/ammo/a4570explo + name = "Single .45-70 Explosive Round" + desc = "If you need to fuck someone, hard, we got just the thing. Only one round, though, hope you got good aim." + item = /obj/item/ammo_casing/a4570/explosive + + price_min = 400 + price_max = 800 //still an exorbitantly high price for one round that you might not even hit + stock_min = 2 + stock_max = 10 + availability_prob = 10 diff --git a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm index 3ed25c0cac2a..b590f0831df1 100644 --- a/code/modules/projectiles/boxes_magazines/ammo_boxes.dm +++ b/code/modules/projectiles/boxes_magazines/ammo_boxes.dm @@ -55,24 +55,24 @@ desc = "A box of top grade .45-70 ammo. These rounds do significant damage with average performance against armor." icon_state = "4570" ammo_type = /obj/item/ammo_casing/a4570 - max_ammo = 12 + max_ammo = 18 /obj/item/ammo_box/a4570/match name = "ammo box (.45-70 match)" - desc = "A 12-round ammo box for .45-70 revolvers. These match rounds travel faster, perform better against armor, and can ricochet off targets." + desc = "A 18-round ammo box for .45-70 revolvers. These match rounds travel faster, perform better against armor, and can ricochet off targets." icon_state = "4570-match" ammo_type = /obj/item/ammo_casing/a4570/match /obj/item/ammo_box/a4570/hp name = "ammo box (.45-70 hollow point)" - desc = "A 12-round ammo box for .45-70 revolvers. These hollow point rounds do legendary damage against soft targets, but are nearly ineffective against armored ones." + desc = "A 18-round ammo box for .45-70 revolvers. These hollow point rounds do legendary damage against soft targets, but are nearly ineffective against armored ones." icon_state = "4570-hp" ammo_type = /obj/item/ammo_casing/a4570/hp /obj/item/ammo_box/a4570/explosive name = "ammo box (.45-70 explosive)" - desc = "A 12-round ammo box for .45-70 revolvers. These explosive rounds contain a small explosive charge that detonates on impact, creating large wounds and potentially removing limbs." + desc = "A 18-round ammo box for .45-70 revolvers. These explosive rounds contain a small explosive charge that detonates on impact, creating large wounds and potentially removing limbs." icon_state = "4570-explosive" ammo_type = /obj/item/ammo_casing/a4570/explosive From 1e3c36c10d37176b327c9c4dfd3eab626e256f9b Mon Sep 17 00:00:00 2001 From: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Date: Fri, 20 Sep 2024 07:33:54 -0700 Subject: [PATCH 16/61] Add tgfont namespace (#3343) chat icons --- code/__DEFINES/fonts.dm | 2 ++ code/game/objects/items/devices/PDA/cart.dm | 2 +- code/modules/asset_cache/asset_list_items.dm | 14 +++++++++++--- code/modules/emoji/emoji_parse.dm | 4 ++-- code/modules/tgui_panel/tgui_panel.dm | 1 + 5 files changed, 17 insertions(+), 6 deletions(-) diff --git a/code/__DEFINES/fonts.dm b/code/__DEFINES/fonts.dm index 32a08f38861b..8ffecbbe20d5 100644 --- a/code/__DEFINES/fonts.dm +++ b/code/__DEFINES/fonts.dm @@ -19,3 +19,5 @@ #define SHARE "Share Tech Mono" GLOBAL_LIST_INIT(pda_styles, sortList(list(MONO, VT, ORBITRON, SHARE))) + +#define EMOJI_SET 'icons/emoji.dmi' diff --git a/code/game/objects/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index 65bda2aa1f54..5df5e96dd0ac 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -446,7 +446,7 @@ Code: if(!emoji_table) var/datum/asset/spritesheet/sheet = get_asset_datum(/datum/asset/spritesheet/chat) var/list/collate = list("
") - for(var/emoji in sortList(icon_states(icon('icons/emoji.dmi')))) + for(var/emoji in sortList(icon_states(icon(EMOJI_SET)))) var/tag = sheet.icon_tag("emoji-[emoji]") collate += "" collate += "
[emoji][tag]

" diff --git a/code/modules/asset_cache/asset_list_items.dm b/code/modules/asset_cache/asset_list_items.dm index 771cc021906e..2ec8e8dca620 100644 --- a/code/modules/asset_cache/asset_list_items.dm +++ b/code/modules/asset_cache/asset_list_items.dm @@ -155,6 +155,15 @@ ) parents = list("font-awesome.css" = 'html/font-awesome/css/all.min.css') +/datum/asset/simple/namespaced/tgfont + assets = list( + "tgfont.eot" = file("tgui/packages/tgfont/static/tgfont.eot"), + "tgfont.woff2" = file("tgui/packages/tgfont/static/tgfont.woff2"), + ) + parents = list( + "tgfont.css" = file("tgui/packages/tgfont/static/tgfont.css"), + ) + /datum/asset/simple/fonts assets = list( "sga.ttf" = 'html/sga.ttf' @@ -169,8 +178,8 @@ /datum/asset/spritesheet/chat name = "chat" -/datum/asset/spritesheet/chat/register() - InsertAll("emoji", 'icons/emoji.dmi') +/datum/asset/spritesheet/chat/create_spritesheets() + InsertAll("emoji", EMOJI_SET) // pre-loading all lanugage icons also helps to avoid meta InsertAll("language", 'icons/misc/language.dmi') // catch languages which are pulling icons from another file @@ -180,7 +189,6 @@ if (icon != 'icons/misc/language.dmi') var/icon_state = initial(L.icon_state) Insert("language-[icon_state]", icon, icon_state=icon_state) - ..() /datum/asset/simple/lobby assets = list( diff --git a/code/modules/emoji/emoji_parse.dm b/code/modules/emoji/emoji_parse.dm index 185341d294c2..16e1eeef6c95 100644 --- a/code/modules/emoji/emoji_parse.dm +++ b/code/modules/emoji/emoji_parse.dm @@ -2,7 +2,7 @@ . = text if(!CONFIG_GET(flag/emojis)) return - var/static/list/emojis = icon_states(icon('icons/emoji.dmi')) + var/static/list/emojis = icon_states(icon(EMOJI_SET)) var/parsed = "" var/pos = 1 var/search = 0 @@ -34,7 +34,7 @@ . = text if(!CONFIG_GET(flag/emojis)) return - var/static/list/emojis = icon_states(icon('icons/emoji.dmi')) + var/static/list/emojis = icon_states(icon(EMOJI_SET)) var/final = "" //only tags are added to this var/pos = 1 var/search = 0 diff --git a/code/modules/tgui_panel/tgui_panel.dm b/code/modules/tgui_panel/tgui_panel.dm index 44fbffd917ce..1a6fcb37e429 100644 --- a/code/modules/tgui_panel/tgui_panel.dm +++ b/code/modules/tgui_panel/tgui_panel.dm @@ -49,6 +49,7 @@ get_asset_datum(/datum/asset/simple/tgui_panel), )) window.send_asset(get_asset_datum(/datum/asset/simple/namespaced/fontawesome)) + window.send_asset(get_asset_datum(/datum/asset/simple/namespaced/tgfont)) window.send_asset(get_asset_datum(/datum/asset/spritesheet/chat)) request_telemetry() addtimer(CALLBACK(src, PROC_REF(on_initialize_timed_out)), 5 SECONDS) From e4738af68541fa14ee1f103736d3b1fcfccb12dc Mon Sep 17 00:00:00 2001 From: Imaginos16 <77556824+Imaginos16@users.noreply.github.com> Date: Fri, 20 Sep 2024 14:39:23 -0700 Subject: [PATCH 17/61] Hardliner Rework DLC: Adds the Hardliner Elite Suit (#3394) ## About The Pull Request Hi! Kept you waiting, huh? Does what it says on the tin, adding this beauty to the Hardliner's armory! ![image](https://github.com/user-attachments/assets/71c00b2f-4814-439d-97c8-555d6f88a86a) ## Why It's Good For The Game We needed an elite analogue for the splinter Gorlex factions, and this is the first one to kick things off! ## Changelog :cl: PositiveEntropy add: A new and refurbished Elite Syndicate suit has just been unveiled! /:cl: --- code/modules/clothing/factions/hardliners.dm | 22 ++++++++++++++++++ .../mob/clothing/faction/hardliners/head.dmi | Bin 4185 -> 5347 bytes .../mob/clothing/faction/hardliners/suits.dmi | Bin 3111 -> 3865 bytes .../obj/clothing/faction/hardliners/head.dmi | Bin 945 -> 1128 bytes .../obj/clothing/faction/hardliners/suits.dmi | Bin 1278 -> 1587 bytes 5 files changed, 22 insertions(+) diff --git a/code/modules/clothing/factions/hardliners.dm b/code/modules/clothing/factions/hardliners.dm index a02275d13e05..731cdcb3fc78 100644 --- a/code/modules/clothing/factions/hardliners.dm +++ b/code/modules/clothing/factions/hardliners.dm @@ -114,6 +114,28 @@ lightweight = 1 jetpack = null +/obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/hl + name = "elite white-red hardsuit helmet" + desc = "An elite version of the infamous white-red Hardliner hardsuit, with improved armor and fireproofing. It is in EVA mode. Property of Gorlex Marauders." + alt_desc = "An elite version of the infamous white-red Hardliner hardsuit, with improved armor and fireproofing. It is in combat mode. Property of Gorlex Marauders." + icon_state = "hardsuit0-hlelite" + hardsuit_type = "hlelite" + icon = 'icons/obj/clothing/faction/hardliners/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/hardliners/head.dmi' + +/obj/item/clothing/suit/space/hardsuit/syndi/elite/hl + name = "elite white-red hardsuit" + desc = "An elite version of the infamous white-red Hardliner hardsuit, with improved armor and fireproofing. It is in travel mode." + alt_desc = "An elite version of the infamous white-red Hardliner hardsuit, with improved armor and fireproofing. It is in combat mode." + icon_state = "hardsuit0-hlelite" + item_state = "hardsuit0-hlelite" + hardsuit_type = "hlelite" + helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/hl + icon = 'icons/obj/clothing/faction/hardliners/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/hardliners/suits.dmi' + lightweight = 1 + jetpack = null + ///////// //Hats// //////// diff --git a/icons/mob/clothing/faction/hardliners/head.dmi b/icons/mob/clothing/faction/hardliners/head.dmi index 839826a7c426ba691a6ad7d02a27f8dde9279575..a606fdb5fd84158181e099eead13b131993ad807 100644 GIT binary patch literal 5347 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 delta 3109 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 diff --git a/icons/obj/clothing/faction/hardliners/head.dmi b/icons/obj/clothing/faction/hardliners/head.dmi index 5101eeedce9c70aa9f90ba2da7b51cac71d4db7b..3415be4b8f934c6c992b2ea3c6d5b9e343878fe3 100644 GIT binary patch delta 1115 zcmV-h1f=`12j~bmiBL{Q4GJ0x0000DNk~Le0001h0001B2m=5B0OF*IdjJ3cQBX`& zMZmzognoZLIXbbbtmEV3kvJZI*hkM@v^JD=srNI>9z0urX*A6coU~ zz)w$59hGcu00001bW%=J06^y0W&i*Ht$I{gbVOxyV{&P5bZKvH004NLm65#;!Y~Yk z=j17(b}njwl?Amz9q22dh`P0<&>$z}=j{n}VS;qKvp%0sa<2CEp=nirb!_Af*pnO8 zPHk7E6nE+ZMzdK+4x`rM46#I`H2VMXC_5Q?Bh^N(X+Y0tiMq-+@T2z(87%= z^h4_u>`K-pU3Yy?XW;*6Z0RQoWq~#s)=S`bGFS?*DE{Y0uIje>eES6=W0Lv-7|AOD z00Rt3L_t(&f$f;#lBzI&425k|K;;$?Meg|i4| zB_$>O8mUhQ(D(;V+oPyK+c*XQ5b0g3C$A3~RDmXS%IU}`bDM41E7+T3l(H(9G#0y6NYhXO=@_|FBR27q3fYfS;D z2EK9uw80v*3Q%Tsy3An`RaeV*=plpu6e*@h8J?)}Jf}m(1aQ14iU3zidtrxG0frPL z|NgashV$h@zo6Lw$cyXsS_Jqk0Mh~Q&*kz4rM{f=Kl%BhOEv)V;)*{3{u6*2%?60L zI|p0l`6bUw%hex$ICdb&^<0d(uU?O*W2ryDP05wdnv zR$zbG8M%95QeXAQPD<|0cRRX0sjH+8Qm z$J*g>M_~p`P;%EmslM+qTZK!kN}ksdJ`cby@%}*Ji;KXV4p_hLA!qV|;%A|0%}u-1nu#cWc}vbUS_A7n#J5Oc4B67Uc&d*t40Rl$4Z|l;rjC`MzBo z-{oH)AX^;Y<=-9vA6Kk(4=ucb#CQ7x&;u(zwsow3fy58+ud1PbmoYb)#P4@fY6(FW&xf$!J2 h!p%GyDJkho^$(6tFMOC}5S{=4002ovPDHLkV1oRj1{eSU delta 930 zcmV;T16};+2(bq^iBL{Q4GJ0x0000DNk~Le0001B0001B2m=5B0M$l^3IG5APEbr# zMZmzognoaqs;uMV<2^Y#kvJZIM@v^JD=x4xXcZI`* z)l%HaMoeY1mI8qWj7tg8L`bo~@f2nrfS-jFmN=xLmcp^Qz>+^H8n$TSAGGpQj(%vJ z!>%;?tnJ=8Is^Zv>B=xutScO|vHpTf)%MN%6EFWObZvETXGZ`40%A!-K~!jg?U`|J zqc9A`n_!@n3vDi_UBCZ-7d@L0*nu6FN_X8K`E6>Xz2v<(Oqw%Jr$V9dvoMjjb=BWi zgq0jLJ?+8T?0V5b(-AQ93@*Y{i$TRXX!_)zrc_LVvC9##Th#O^AeTS}5jh~E0{{ik z9Q@=0pu%{RafcOf+so<@GtzGv2JNQQ7;BoQp`m61CcSN2NskGCkh1qh)?m+FN8c9M z0My&d<q*B7cpY?qau^7~ zU(vItvpDpG5o{d$o)VY}3?%4`nHgam$1nyD zl(W}wR|GRKq36$N4d5#H9>8w#dPDGIipU25U!xzr52K%du0g^TBZ6hHKZoyd6Fh+T z6#r5yUMLg_g~A63n{msy84u$&<5B(N0r$;#RR459oe&H(UG;y=)B|gv=?DCWJM$1V zUE}c;mw(mI!7&D!{z5?H@q9XW-=Be|>jCQlxI1&mnyzDv_Z}PP0k=3X{Ws|$qpMh4 zAG{R}EcWhUV~}+{AP{6gS1m>#30cermi?*g8Nf7_lk=0*F_{T4E3xyxcALxoAPPQB0)c^nh07*qoM6N<$ Ef>aB!qW}N^ diff --git a/icons/obj/clothing/faction/hardliners/suits.dmi b/icons/obj/clothing/faction/hardliners/suits.dmi index 39da1c952739119ed869b8ce93edf10094c88649..0146c0a949ae8c82236f987c953e404982339c46 100644 GIT binary patch literal 1587 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 o$iW@b2p??q=%vQvd(}07*qoM6N<$g3R( Date: Fri, 20 Sep 2024 16:49:57 -0500 Subject: [PATCH 18/61] Automatic changelog generation for PR #3394 [ci skip] --- html/changelogs/AutoChangeLog-pr-3394.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3394.yml diff --git a/html/changelogs/AutoChangeLog-pr-3394.yml b/html/changelogs/AutoChangeLog-pr-3394.yml new file mode 100644 index 000000000000..d6b767e99157 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3394.yml @@ -0,0 +1,4 @@ +author: PositiveEntropy +changes: + - {rscadd: A new and refurbished Elite Syndicate suit has just been unveiled!} +delete-after: true From 18631e75c1e9a880998207d1f945140ac03a8687 Mon Sep 17 00:00:00 2001 From: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> Date: Fri, 20 Sep 2024 17:51:03 -0500 Subject: [PATCH 19/61] Ruin map template tags (#3077) ## About The Pull Request turns all the stuff in map_catalogue.txt into proper defines that can be used soon ## Why It's Good For The Game this should come in useful for spawning ruins of certain qualities, scanning a planet for information about them and other use cases. ## Changelog :cl: code: added ruin tags to ruin map templates to be used soon for stuff. /:cl: --- _maps/map_catalogue.txt | 238 ------------------------------ code/__DEFINES/ruins.dm | 49 ++++++ code/datums/ruins.dm | 1 + code/datums/ruins/beachplanet.dm | 7 + code/datums/ruins/icemoon.dm | 4 + code/datums/ruins/jungle.dm | 7 + code/datums/ruins/lavaland.dm | 2 + code/datums/ruins/reebe.dm | 4 + code/datums/ruins/rockplanet.dm | 2 + code/datums/ruins/space.dm | 7 + code/datums/ruins/wasteplanet.dm | 4 + code/datums/ruins/whitesands.dm | 4 + code/modules/vending/cigarette.dm | 2 +- 13 files changed, 92 insertions(+), 239 deletions(-) delete mode 100644 _maps/map_catalogue.txt diff --git a/_maps/map_catalogue.txt b/_maps/map_catalogue.txt deleted file mode 100644 index 7309dbb6f42b..000000000000 --- a/_maps/map_catalogue.txt +++ /dev/null @@ -1,238 +0,0 @@ -Find the key for using this catalogue in "map_catalogue_key.txt" - - - IceRuins: - File Name = _maps\RandomRuins\IceRuins\icemoon_hydroponics_lab.dmm - Size = (x = 33)(y = 33)(z = 1) - Tags = "Medium Loot", "Medium Combat Challenge", "Antag_Gear", "Shelter" - - File Name = _maps\RandomRuins\IceRuins\icemoon_surface_corporate_rejects.dmm - Size = (x = 34)(y = 38)(z = 1) - Tags = "Boss Combat Challenge", "Major Loot", "Antag Gear", "Shelter", "Lava" - - File Name = _maps\RandomRuins\IceRuins\icemoon_surface_engioutpost.dmm - Size = (x = 40)(y = 20)(z = 1) - Tags = "No Combat", "Minor Loot", "Shelter" - - File Name = _maps\RandomRuins\IceRuins\icemoon_underground_abandoned_newcops.dmm - Size = (x = 37)(y = 32)(z = 1) - Tags = "Medium Combat Challenge", "Minor Loot", "Shelter" - - File Name = _maps\RandomRuins\IceRuins\icemoon_underground_abandoned_village.dmm - Size = (x = 28)(y = 28)(z = 1) - Tags = "Medium Combat Challenge", "Minor Loot", "Antag Gear", "Inhospitable" - - File Name = _maps\RandomRuins\IceRuins\icemoon_underground_brazillianlab.dmm - Size = (x = 40)(y = 30)(z = 1) - Tags = "Boss Combat Challenge", "Major Loot", "Inhospitable" - - File Name = _maps\RandomRuins\IceRuins\icemoon_underground_burnies_lair.dmm - Size = (x = 20)(y = 20)(z = 1) - Tags = "Boss Combat Challenge", "Minor Loot", "Shelter", "Antag Gear" - - File Name = _maps\RandomRuins\IceRuins\icemoon_underground_drakelair.dmm - Size = (x = 29)(y = 30)(z = 1) - Tags = "Boss Combat Challenge", "Megafauna", "Major Loot", "Shelter", "Necropolis Loot" - - File Name = _maps\RandomRuins\IceRuins\icemoon_crashed_holemaker.dmm - Size = (x = 47)(y = 37)(z = 1) - Tags = "Medium Combat Challenge", "Minor Loot", "Shelter" - - - - JungleRuins: - File Name = "_maps\RandomRuins\JungleRuins\jungle_syndicate.dmm" - Size = (x = 15)(y = 15)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Liveable", "Antag Gear" - - File Name = "_maps\RandomRuins\JungleRuins\jungle_interceptor.dmm" - Size = (x = 53)(y = 51)(z = 1) - Tags = "No Combat", "Medium Loot", Liveable" - - File Name = "_maps\RandomRuins\JungleRuins\jungle_medtech_outbreak.dmm" - Size = (x = 31)(y = 25)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", Liveable" - - File Name = "_maps\RandomRuins\JungleRuins\jungle_paradise.dmm" - Size = (x = 70)(y = 66)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", Liveable", "Hazardous" - - File Name "_maps\RandomRuins\JungleRuins\jungle_bombed_starport - Size = (x = 100)(y = 75)(z = 1) - Tags = "Medium Combat Challenge", "Major Loot", "Hazardous", "Liveable" - - File Name "_maps\RandomRuins\JungleRuins\jungle_cavecrew - Size = (x = 43)(y = 63)(z = 1) - Tags = "Medium Combat Challenge", "Hazardous", "Liveable", "Major Loot" - - File Name "_maps\RandomRuins\JungleRuins\jungle_abandoned_library - Size = (x = 36)(y = 35)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Antag Gear", "Necropolis Loot", "Liveable" - - LavaRuins: - File Name = "_maps\RandomRuins\LavaRuins\lavaland_surface_buried_shrine.dmm" - Size = (x = 67)(y = 55)(z = 1) - Tags = "Medium Combat", "Medium Loot", "Hazardous", "Lava", "Inhospitable" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_surface_biodome_winter.dmm" - Size = (x = 46)(y = 42)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Shelter" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_surface_elephant_graveyard.dmm" - Size = (x = 29)(y = 35)(z = 1) - Tags = "No Combat", "Minor Loot", "Hazardous", "Inhospitable" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_surface_lava_canyon.dmm" - Size = (x = 90)(y = 63)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Megafauna", "Necropolis Loot", "Inhospitable", "Lava" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_surface_wrecked_factory.dmm" - Size = (x = 47)(y = 47)(z = 1) - Tags = "Boss Combat Challenge", "Major Loot", "Shelter", "Lava" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_crashed_starwalker.dmm" - Size = (x = 33)(y = 56)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "Lava" - - File Name = "_maps\RandomRuins\LavaRuins\lavaland_abandonedlisteningpost.dmm" - Size = (x = 33)(y = 56)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Shelter" - - - ReebeRuins: - File Name = "_maps\RandomRuins\Ruins\reebe_swarmers.dmm" - Size = (x = 20)(y = 20)(z = 1) - Tags = "Medium Combat Challenge", "Minor Loot", "Liveable" - - File Name = "_maps\RandomRuins\Ruins\reebe_arena.dmm" - Size = (x = 79)(y = 60)(z = 1) - Tags = "Boss Combat Challenge", "Medium Loot", "Liveable" - - File Name = "_maps\RandomRuins\Ruins\reebe_decayed_sm.dmm" - Size = (x = 10)(y = 10)(z = 1) - Tags = "No Combat", "Medium Loot", "Liveable", "Hazardous" - - File Name = "_maps\RandomRuins\Ruins\reebe_floating_island.dmm" - Size = (x = 20)(y = 20)(z = 1) - Tags = "Boss Combat Challenge", "Minor Loot", "Liveable" - - - RockRuins: - File Name = "_maps\RandomRuins\RockRuins\rockplanet_budgetcuts.dmm" - Size = (x = 52)(y = 44)(z = 1) - Tags = "Hard Combat Challenge", "Medium Loot", "hospitable" - - File Name = "_maps\RandomRuins\RockRuins\rockplanet_harmfactory.dmm" - Size = (x = 42)(y = 41)(z = 1) - Tags = "Boss Combat Challenge", "Major Loot", Shelter", "Antag Gear", "Hazardous" - - File Name = "_maps\RandomRuins\RockRuins\rockplanet_shippingdock.dmm" - Size = (x = 85)(y = 73)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Hazardous", "Shelter" - - File Name = "_maps\RandomRuins\RockRuins\rockplanet_nomadcrash.dmm" - Size = (x = 58)(y = 48)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Hazardous", "Hospitable" - - File Name = "_maps\RandomRuins\RockRuins\rockplanet_distillery.dmm" - Size = (x = 44)(y = 45)(z = 1) - Tags = "Medium Combat Challenge", "Major Loot", "Hazardous", "Hospitable" - - - SandRuins: - File Name = "_maps\RandomRuins\Ruins\whitesands_surface_camp_saloon.dmm" - Size = (x = 30)(y = 30)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Inhospitable" - - File Name = "_maps\RandomRuins\Ruins\whitesands_surface_camp_combination.dmm" - Size = (x = 59)(y = 59)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Inhospitable", "Hazardous" - - File Name = "_maps\RandomRuins\Ruins\whitesands_surface_medipen_plant.dmm" - Size = (x = 23)(y = 29)(z = 1) - Tags = "No Combat", "Major Loot", "Shelter" - - File Name = "_maps\RandomRuins\Ruins\whitesands_surface_pubbyslopcrash.dmm" - Size = (x = 40)(y = 25)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "Shelter" - - - - SpaceRuins: - File Name = "_maps\RandomRuins\SpaceRuins\astraeus.dmm" - Size = (x = 47)(y = 35)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "Inhospitable" - - File Name = "_maps\RandomRuins\SpaceRuins\bigderelict1.dmm" - Size = (x = 40)(y = 34)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "Shelter" - - File Name = "_maps\RandomRuins\SpaceRuins\corporate_mining.dmm" - Size = (x = 50)(y = 50)(z = 1) - Tags = "No Combat", "Medium Loot", "Shelter" - - File Name = "_maps\RandomRuins\SpaceRuins\onehalf.dmm" - Size = (x = 29)(y = 20)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "inhospitable" - - File Name = "_maps\RandomRuins\SpaceRuins\power_puzzle.dmm" - Size = (x = 30)(y = 30)(z = 1) - Tags = "Minor Combat Challenge", "Major Loot", "Shelter", "Hazardous" - - File Name = "_maps\RandomRuins\SpaceRuins\singularitylab.dmm" - Size = (x = 118)(y = 75)(z = 1) - Tags = "Boss Combat Challenge", "Major Loot", "Shelter" - - File Name = "_maps\RandomRuins\SpaceRuins\spacemall.dmm" - Size = (x = 86)(y = 48)(z = 1) - Tags = "Medium Combat Challenge", "Major Loot", "Shelter" - - BeachRuins: - File Name = "_maps\RandomRuins\BeachRuins\beach_ancient_ruin.dmm" - Size = (x = 75)(y = 76)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", Liveable" - - File Name = "_maps\RandomRuins\BeachRuins\beach_colony.dmm" - Size = (x = 30)(y = 30)(z = 1) - Tags = "Minor Combat Challenge", "Minor Loot" - - File Name = "_maps\RandomRuins\BeachRuins\beach_fishing_hut.dmm" - Size = (x = 30)(y = 40)(z = 1) - Tags = "Hard Combat Challenge, "Major Loot", "Hazardous" - - File Name = "_maps\RandomRuins\BeachRuins\beach_crashed_engineer.dmm" - Size = (x = 32)(y = 32)(z = 1) - Tags = "Minor Combat Challenge, "Medium Loot", "Hazardous" - - File Name = "_maps\RandomRuins\BeachRuins\beach_pirate_crash.dmm" - Size = (x = 33)(y = 26)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Liveable" - - File Name = "_maps\RandomRuins\BeachRuins\beach_ocean_town.dmm" - Size = (x = 80)(y = 83)(z = 1) - Tags = "No Combat", "Minor loot", "Liveable" - - File Name = "_maps\RandomRuins\BeachRuins\beach_treasure_cove.dmm" - Size = (x = 37)(y = 43)(z = 1) - Tags = "Medium Combat Challenge", "Medium Loot", "Liveable" - - File Name = "_maps\RandomRuins\BeachRuins\beach_float_resort.dmm" - Size = (x = 38)(y = 52)(z = 1) - Tags = "No Combat", "Minor Loot", "Liveable" - - Waste Ruins: - File name ="_maps\RandomRuins\wasteruins\wasteplanet_lab.dmm" - Size = (x = 26)(y = 25)(z = 1) - Tags = "No Combat", "Medium Loot" "Shelter" "hazardous" "hospitable" - - File name ="_maps\RandomRuins\wasteruins\wasteplanet_pandora.dmm" - Size = (x = 18)(y = 21)(z = 1) - Tags = "Boss Combat Challenge", "Medium Loot" "Megafauna", "hospitable" - - File name ="_maps\RandomRuins\wasteruins\wasteplanet_unhonorable.dmm" - Size = (x = 34)(y = 34)(z = 1) - Tags = "Minor Combat Challenge", "Medium Loot", "Shelter", "Hazardous" - - File name = "_maps\RandomRuins\wasteruins\wasteplanet_abandoned_mechbay.dmm" - Size = (x = 45)(y = 47)(z = 1) - Tags = "Boss Combat Challenge", "Medium Loot", "Shelter", "Hazardous" diff --git a/code/__DEFINES/ruins.dm b/code/__DEFINES/ruins.dm index 894b9c0863f4..93a63d207c30 100644 --- a/code/__DEFINES/ruins.dm +++ b/code/__DEFINES/ruins.dm @@ -32,3 +32,52 @@ return SSmapping.ruins_templates else return SSmapping.ruin_types_list[ruintype] + +/* +Maps described in the catalogue must be described with at least one or more of the following tags. + +*Loot Summary +Minor Loot = Has negligable/no loot at all, only contains fluff items or just the loot found from enemy drops or structures in the ruin. +Medium Loot = Has a pool of loot that is useful for the average player or ship, but not in large amounts, and does not have more than one or two boss drops. +Major Loot = Contains a large pool of loot useful to the average player or ship. Or includes more boss drops or necropolis loot than there are challenges for. +*/ +#define RUIN_TAG_MINOR_LOOT "Minor Loot" +#define RUIN_TAG_MEDIUM_LOOT "Medium Loot" +#define RUIN_TAG_MAJOR_LOOT "Major Loot" + +/*Combat Summary +No Combat = Contains no enemies or combat challenges. +Minor Combat Challenge = Has only 1-2 hit melee mobs in small or moderate amounts. +Medium Combat Challenge = Contains more than just simple low health melee mobs, or a moderate amount of mobs. +Boss Combat Challenge = Contains either one or more bossmobs, has a large number of mobs that are either overwhelming or considerably challenging, or has a significant combat challenge overall. +*/ +#define RUIN_TAG_NO_COMBAT "No Combat" +#define RUIN_TAG_MINOR_COMBAT "Minor Combat Challenge" +#define RUIN_TAG_MEDIUM_COMBAT "Medium Combat Challenge" +#define RUIN_TAG_HARD_COMBAT "Hard Combat Challenge" +#define RUIN_TAG_BOSS_COMBAT "Boss Combat Challenge" + + +/*Qualities +Megafauna = Map contains one or more megafauna. +Antag Gear = Map contains one or more items typically only obtainable by antag roles. +Necropolis Loot = Map contains an item or chest from the necropolis loot pool. +Liveable = The entirety of the map is inhabitable without protective gear, and the map is not surrounded by an inhospitable environment. +Inhospitable = The majority of the map is uninhabitable without protective gear, and the map is not surrounded by a hospitable environment. +Shelter = The map contains a portion that is hospitable without protective gear, with a surrounding section that is inhospitable. Or the map is an enclosed hospitable space that spawns on an inhospitable planet. +Bad Shelter = The map contains a portion that is inhospitable without protective gear, with a surround section that is hospitable. Or the map is an enclosed inhospitable space that spawn on a hospitable planet. +No Content = A map that contains no objects. It contains only turfs, walls, and or areas. +Hazardous = Contains hazardous environment elements. Elements include but are not limited to: Mines, IEDs, Chasms appearing more than twice or more than once if one is 3x3 or more, disease spawns, beartraps. +Unknown Details = Something about the map can't be checked with a map editor alone, and has not been tested for confirmation yet. +Lava = Contains lava or liquid plasma tiles. +Ghost Role = Contains a ghost role. +*/ +#define RUIN_TAG_MEGAFAUNA "Megafauna" +#define RUIN_TAG_LIVEABLE "Liveable" +#define RUIN_TAG_INHOSPITABLE "Inhospitable" +#define RUIN_TAG_SHELTER "Shelter" +#define RUIN_TAG_BAD_SHELTER "Bad Shelter" +#define RUIN_TAG_NO_CONTENT "No Content" +#define RUIN_TAG_HAZARDOUS "Hazardous" +#define RUIN_TAG_UNKNOWN_DETAILS "Unknown Details" +#define RUIN_TAG_LAVA "Lava" diff --git a/code/datums/ruins.dm b/code/datums/ruins.dm index 9b7c86c22b0e..3554faf3e2ca 100644 --- a/code/datums/ruins.dm +++ b/code/datums/ruins.dm @@ -16,6 +16,7 @@ var/suffix = null var/ruin_type + var/ruin_tags = list() /datum/map_template/ruin/New() if(!name && id) diff --git a/code/datums/ruins/beachplanet.dm b/code/datums/ruins/beachplanet.dm index b258ef45f0e8..3b048ab940c1 100644 --- a/code/datums/ruins/beachplanet.dm +++ b/code/datums/ruins/beachplanet.dm @@ -9,39 +9,46 @@ id = "fishinghut" description = "A small fishing hut floating on the ocean." suffix = "beach_fishing_hut.dmm" + ruin_tags = list(RUIN_TAG_HARD_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/beachplanet/ancient name = "Ancient Danger" id = "beach_ancient" description = "As you draw near the ancient wall, a sense of foreboding overcomes you. You aren't sure why, but you feel this dusty structure may contain great dangers." suffix = "beach_ancient_ruin.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/beachplanet/town name = "Beachside Town" id = "beach_town" description = "A fresh town on a lovely coast, where its inhabitants are is unknown." suffix = "beach_ocean_town.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/beachplanet/scrapvillage name = "Pirate Village" id = "beach_pirate" description = "A small pirate outpost formed from the remains of a wrecked shuttle." suffix = "beach_pirate_crash.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/beachplanet/treasurecove name = "Treasure Cove" id = "beach_treasure_cove" description = "A abandoned colony. It seems that this colony was abandoned, for a reason or another" suffix = "beach_treasure_cove.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/beachplanet/crashedengie name = "Crashed Engineer Ship" id = "beach_crashed_engineer" description = "An abandoned camp built by a crashed engineer" suffix = "beach_crashed_engineer.dmm" + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/beachplanet/floatresort name = "Floating Beach Resort" id = "beach_float_resort" description = "A hidden paradise on the beach" suffix = "beach_float_resort.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_LIVEABLE) diff --git a/code/datums/ruins/icemoon.dm b/code/datums/ruins/icemoon.dm index 60304e86f6f0..81b7aea8582c 100644 --- a/code/datums/ruins/icemoon.dm +++ b/code/datums/ruins/icemoon.dm @@ -9,21 +9,25 @@ id = "hydroponicslab" description = "An abandoned hydroponics research facility containing hostile plant fauna." suffix = "icemoon_hydroponics_lab.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_SHELTER) /datum/map_template/ruin/icemoon/abandonedvillage name = "Abandoned Village" id = "abandonedvillage" description = "Who knows what lies within?" suffix = "icemoon_underground_abandoned_village.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/icemoon/brazillian_lab name = "Barricaded Compound" id = "brazillian-lab" description = "A conspicuous compound in the middle of the cold wasteland. What goodies are inside?" suffix = "icemoon_underground_brazillianlab.dmm" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/icemoon/crashed_holemaker name = "Crashed Holemaker" id = "crashed_holemaker" description = "Safety records for early Nanotrasen Spaceworks vessels were, and always have been, top of their class. Absolutely no multi-billion credit projects have been painstakingly erased from history. (Citation Needed)" suffix = "icemoon_crashed_holemaker.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_SHELTER) diff --git a/code/datums/ruins/jungle.dm b/code/datums/ruins/jungle.dm index f1e2e16bfec8..faaefea4fd8b 100644 --- a/code/datums/ruins/jungle.dm +++ b/code/datums/ruins/jungle.dm @@ -9,39 +9,46 @@ id = "syndicatebunkerjungle" description = "A small bunker owned by the Syndicate." suffix = "jungle_syndicate.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/jungle/interceptor name = "Old Crashed Interceptor" id = "crashedcondor" description = "An overgrown crashed Condor Class, a forgotten remnant of the Corporate Wars." suffix = "jungle_interceptor.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/jungle/paradise name = "Hidden paradise" id = "paradise" description = "a crashed shuttle, and a hidden beautiful lake." suffix = "jungle_paradise.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/jungle/airbase name = "Bombed Airbase" id = "airbase" description = "A bombed out airbase from the ICW, taken back over by nature" suffix = "jungle_bombed_starport.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_HAZARDOUS, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/jungle/medtech name = "MedTech facility" id = "medtech-facility" description = "A MedTech pharmaceutical manufacturing plant where something went terribly wrong." suffix = "jungle_medtech_outbreak.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/jungle/cavecrew name = "Frontiersmen Cave" id = "cavecrew" description = "A frontiersmen base, hidden within a cave. They don't seem friendly" suffix = "jungle_cavecrew.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_HAZARDOUS, RUIN_TAG_LIVEABLE, RUIN_TAG_MAJOR_LOOT) /datum/map_template/ruin/jungle/library name = "Abandoned Library" id = "abandoned-library" description = "A forgotten library, with a few angry monkeys." suffix = "jungle_abandoned_library.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) diff --git a/code/datums/ruins/lavaland.dm b/code/datums/ruins/lavaland.dm index 6f57fe8adb82..4afa13dee07c 100644 --- a/code/datums/ruins/lavaland.dm +++ b/code/datums/ruins/lavaland.dm @@ -10,6 +10,7 @@ description = "A Solarian frontier research facility created by the Pionierskompanien \ This one seems to simulate the wintery climate of the northern provinces, including a sauna!" suffix = "lavaland_surface_biodome_winter.dmm" + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_SHELTER) /datum/map_template/ruin/lavaland/elephant_graveyard name = "Elephant Graveyard" @@ -18,6 +19,7 @@ suffix = "lavaland_surface_elephant_graveyard.dmm" allow_duplicates = FALSE cost = 10 + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_HAZARDOUS, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/lavaland/buried_shrine name = "Buried Shrine" diff --git a/code/datums/ruins/reebe.dm b/code/datums/ruins/reebe.dm index fa89ada7788c..bec9986d75b8 100644 --- a/code/datums/ruins/reebe.dm +++ b/code/datums/ruins/reebe.dm @@ -9,21 +9,25 @@ id = "clockcultarena" description = "A abandoned base, once belonging to clock cultists." suffix = "reebe_arena.dmm" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/reebe/swarmers name = "Swarmer Island" id = "swarmers" description = "Looks like someone has occupied Reebe in the cultists' absence." suffix = "reebe_swarmers.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/reebe/island name = "Island Cache" id = "islandcache" description = "Reebe is full of these things. Something is hidden within here." suffix = "reebe_floating_island.dmm" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MINOR_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/reebe/sm name = "Decayed Supermatter" id = "smdecay" description = "It seems whoever left here was so nice they left very vauluable items behind. How thoughtful." suffix = "reebe_decayed_sm.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE, RUIN_TAG_HAZARDOUS) diff --git a/code/datums/ruins/rockplanet.dm b/code/datums/ruins/rockplanet.dm index ac9e2ffc4081..7382b2c5768a 100644 --- a/code/datums/ruins/rockplanet.dm +++ b/code/datums/ruins/rockplanet.dm @@ -10,12 +10,14 @@ description = "A factory made for HARM and AGONY." id = "rockplanet_harmfactory" suffix = "rockplanet_harmfactory.dmm" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_SHELTER, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/rockplanet/budgetcuts name = "Budgetcuts" description = "Nanotrasen's gotta lay off some personnel, and this facility hasn't been worth the effort so far" id = "rockplanet_budgetcuts" suffix = "rockplanet_budgetcuts.dmm" + ruin_tags = list(RUIN_TAG_HARD_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/rockplanet/shippingdock name = "Abandoned Shipping Dock" diff --git a/code/datums/ruins/space.dm b/code/datums/ruins/space.dm index 1aedb0b9be82..f8cda3a84426 100644 --- a/code/datums/ruins/space.dm +++ b/code/datums/ruins/space.dm @@ -11,6 +11,7 @@ suffix = "corporate_mining.dmm" name = "Corporate Mining Module" description = "An old and rusty mining facility, with big ore potential." + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER) /datum/map_template/ruin/space/bigderelict1 id = "bigderelict1" @@ -18,12 +19,14 @@ name = "Derelict Tradepost" description = "A once-bustling tradestation that handled imports and exports from nearby stations now lays eerily dormant. \ The last received message was a distress call from one of the on-board officers, but we had no success in making contact again." + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER) /datum/map_template/ruin/space/onehalf id = "onehalf" suffix = "onehalf.dmm" name = "DK Excavator 453" description = "Formerly a thriving planetary mining outpost, now a bit of an exploded mess. One has to wonder how it got here" + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/space/power_puzzle id = "power_puzzle" @@ -31,21 +34,25 @@ name = "Power Puzzle" description = "an abandoned secure storage location. there is no power left in the batteries and the former ocupants locked it pretty tight before leaving.\ You will have to power areas to raise the bolts on the doors. look out for secrets." + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_SHELTER, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/space/astraeus id = "astraeus" suffix = "astraeus.dmm" name = "Astraeus Ruin" description = "This vessel served a lengthy period in the Nanotrasen fleet, before an accident in the munitions bay caused to to be destroyed while in active combat." + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/space/singularitylab id = "singularitylab" suffix = "singularity_lab.dmm" name = "Singularity Lab" description = "An overgrown facility, home to an unstarted singularity and many plants" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_SHELTER) /datum/map_template/ruin/space/spacemall id = "spacemall" suffix = "spacemall.dmm" name = "Space Mall" description = "An old shopping centre, owned by a former member of Nanotrasen's board of directors.." + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_SHELTER) diff --git a/code/datums/ruins/wasteplanet.dm b/code/datums/ruins/wasteplanet.dm index 3d51594a40c2..40c6d19cfd5e 100644 --- a/code/datums/ruins/wasteplanet.dm +++ b/code/datums/ruins/wasteplanet.dm @@ -9,21 +9,25 @@ id = "guntested" description = "A abandoned Nanotrasen weapons facility, presumably the place where the X-01 was manufactured." suffix = "wasteplanet_lab.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER, RUIN_TAG_HAZARDOUS, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/wasteplanet/pandora id = "pandora_arena" suffix = "wasteplanet_pandora.dmm" name = "Pandora Arena" description = "Some... thing has settled here." + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_MEGAFAUNA, RUIN_TAG_LIVEABLE) /datum/map_template/ruin/wasteplanet/radiation name = "Honorable deeds storage" id = "wasteplanet_radiation" description = "A dumping ground for nuclear waste." suffix = "wasteplanet_unhonorable.dmm" + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER, RUIN_TAG_HAZARDOUS) /datum/map_template/ruin/wasteplanet/abandoned_mechbay name = "Abandoned Exosuit Bay" description = "A military base formerly used for staging 4 exosuits and crew. God knows what's in it now." id = "abandoned_mechbay" suffix = "wasteplanet_abandoned_mechbay.dmm" + ruin_tags = list(RUIN_TAG_BOSS_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER, RUIN_TAG_HAZARDOUS) diff --git a/code/datums/ruins/whitesands.dm b/code/datums/ruins/whitesands.dm index b3e0cb13adcc..4731adeddf41 100644 --- a/code/datums/ruins/whitesands.dm +++ b/code/datums/ruins/whitesands.dm @@ -9,12 +9,14 @@ id = "medipenplant" description = "A once prosperous autoinjector manufacturing plant." suffix = "whitesands_surface_medipen_plant.dmm" + ruin_tags = list(RUIN_TAG_NO_COMBAT, RUIN_TAG_MAJOR_LOOT, RUIN_TAG_SHELTER) /datum/map_template/ruin/whitesands/pubbyslopcrash name = "Pubby Slop Crash" id = "ws-pubbyslopcrash" description = "A failed attempt of the Nanotrasen nutrional replacement program" suffix = "whitesands_surface_pubbyslopcrash.dmm" + ruin_tags = list(RUIN_TAG_MINOR_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_SHELTER) //////////OUTSIDE SETTLEMENTS/RUINS////////// /datum/map_template/ruin/whitesands/survivors/saloon @@ -22,6 +24,7 @@ id = "ws-saloon" description = "A western style saloon, most popular spot for the hermits to gather planetside" suffix = "whitesands_surface_camp_saloon.dmm" + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_INHOSPITABLE) /datum/map_template/ruin/whitesands/survivors/combination //combined extra large ruin of several other whitesands survivor ruins name = "Wasteland Survivor Village" @@ -29,4 +32,5 @@ description = "A small encampment of nomadic survivors of the First Colony, and their descendants. By all accounts, feral and without allegance to anyone but themselves." suffix = "whitesands_surface_camp_combination.dmm" allow_duplicates = FALSE + ruin_tags = list(RUIN_TAG_MEDIUM_COMBAT, RUIN_TAG_MEDIUM_LOOT, RUIN_TAG_INHOSPITABLE, RUIN_TAG_HAZARDOUS) diff --git a/code/modules/vending/cigarette.dm b/code/modules/vending/cigarette.dm index 1c377c309464..65437f3bb4ec 100644 --- a/code/modules/vending/cigarette.dm +++ b/code/modules/vending/cigarette.dm @@ -41,7 +41,7 @@ /obj/item/lighter/greyscale = 4, /obj/item/storage/fancy/rollingpapers = 5) -/obj/machinery/vending/cigarette/beach //Used in the lavaland_biodome_beach.dmm ruin +/obj/machinery/vending/cigarette/beach //Used in the old lavaland biodome ruin name = "\improper ShadyCigs Ultra" desc = "Now with extra premium products!" product_ads = "Probably not bad for you!;Dope will get you through times of no money better than money will get you through times of no dope!;It's good for you!" From b7ab315bdaf5a893f83e931a1b413b6e3085052c Mon Sep 17 00:00:00 2001 From: Changelogs Date: Fri, 20 Sep 2024 18:01:55 -0500 Subject: [PATCH 20/61] Automatic changelog generation for PR #3077 [ci skip] --- html/changelogs/AutoChangeLog-pr-3077.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3077.yml diff --git a/html/changelogs/AutoChangeLog-pr-3077.yml b/html/changelogs/AutoChangeLog-pr-3077.yml new file mode 100644 index 000000000000..0d56f7c87f83 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3077.yml @@ -0,0 +1,4 @@ +author: FalloutFalcon +changes: + - {code_imp: added ruin tags to ruin map templates to be used soon for stuff.} +delete-after: true From 150d8fdd609e52101badba8cd062d5620c07ff65 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sat, 21 Sep 2024 00:59:43 +0000 Subject: [PATCH 21/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3077.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3344.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3381.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3389.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3394.yml | 4 ---- html/changelogs/archive/2024-09.yml | 14 ++++++++++++++ 6 files changed, 14 insertions(+), 23 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3077.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3344.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3381.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3389.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3394.yml diff --git a/html/changelogs/AutoChangeLog-pr-3077.yml b/html/changelogs/AutoChangeLog-pr-3077.yml deleted file mode 100644 index 0d56f7c87f83..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3077.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: FalloutFalcon -changes: - - {code_imp: added ruin tags to ruin map templates to be used soon for stuff.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3344.yml b/html/changelogs/AutoChangeLog-pr-3344.yml deleted file mode 100644 index dec12298d07a..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3344.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Gristlebee -changes: - - {rscadd: 'Inteq wintercoats and hoodies in the Talos, Colossus, Vaquero and Valor - uniform lockers'} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3381.yml b/html/changelogs/AutoChangeLog-pr-3381.yml deleted file mode 100644 index 8d0deedcad6f..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3381.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Bjarl -changes: - - {rscadd: "The PGF now has it's own turret offerings. They come in light, normal, - and heavy flavor."} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3389.yml b/html/changelogs/AutoChangeLog-pr-3389.yml deleted file mode 100644 index 88825da0aedb..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3389.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Sadhorizon -changes: - - {rscadd: Added "ballistic goggles" - new indie security clothing item.} - - {imageadd: Added Kepori bulletproof helmet sprites.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3394.yml b/html/changelogs/AutoChangeLog-pr-3394.yml deleted file mode 100644 index d6b767e99157..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3394.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: PositiveEntropy -changes: - - {rscadd: A new and refurbished Elite Syndicate suit has just been unveiled!} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index 1e76f75faf34..c3b2ce482d47 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -110,3 +110,17 @@ Rye-Rice, Gristlebee: - rscadd: Comfortable Temperature ranges - imageadd: Temperature HUD alerts +2024-09-21: + Bjarl: + - rscadd: The PGF now has it's own turret offerings. They come in light, normal, + and heavy flavor. + FalloutFalcon: + - code_imp: added ruin tags to ruin map templates to be used soon for stuff. + Gristlebee: + - rscadd: Inteq wintercoats and hoodies in the Talos, Colossus, Vaquero and Valor + uniform lockers + PositiveEntropy: + - rscadd: A new and refurbished Elite Syndicate suit has just been unveiled! + Sadhorizon: + - rscadd: Added "ballistic goggles" - new indie security clothing item. + - imageadd: Added Kepori bulletproof helmet sprites. From 3a29bbc6c86d2c637441cb4cdf15322334223020 Mon Sep 17 00:00:00 2001 From: Imaginos16 <77556824+Imaginos16@users.noreply.github.com> Date: Sat, 21 Sep 2024 00:59:30 -0700 Subject: [PATCH 22/61] Gorlex DLC 2: Winter Coats! (#3400) ## About The Pull Request Wow, didn't expect me to be back so early huh? The Main Gorlex Splinters now have Winter Coats! ![image](https://github.com/user-attachments/assets/10926115-0384-4592-b4bf-8d2bab7fe84a) ![image](https://github.com/user-attachments/assets/f4ae8f99-98f2-42f0-8c52-326a6a0c0308) ## Why It's Good For The Game I never want to hear the excuse of "It gives cold protection" for wearing a hermit uniform in an NGR ship ever again. ## Changelog :cl: PositiveEntropy add: Gorlex Splinters now have winter coats! /:cl: --- code/modules/clothing/factions/hardliners.dm | 14 ++++++++++++++ code/modules/clothing/factions/ngr.dm | 14 ++++++++++++++ .../mob/clothing/faction/hardliners/head.dmi | Bin 5347 -> 6021 bytes .../mob/clothing/faction/hardliners/suits.dmi | Bin 3865 -> 11885 bytes icons/mob/clothing/faction/ngr/head.dmi | Bin 7017 -> 7766 bytes icons/mob/clothing/faction/ngr/suits.dmi | Bin 2996 -> 9696 bytes .../obj/clothing/faction/hardliners/head.dmi | Bin 1128 -> 1216 bytes .../obj/clothing/faction/hardliners/suits.dmi | Bin 1587 -> 1913 bytes icons/obj/clothing/faction/ngr/head.dmi | Bin 1411 -> 1494 bytes icons/obj/clothing/faction/ngr/suits.dmi | Bin 1247 -> 4919 bytes 10 files changed, 28 insertions(+) diff --git a/code/modules/clothing/factions/hardliners.dm b/code/modules/clothing/factions/hardliners.dm index 731cdcb3fc78..43faee3ccb19 100644 --- a/code/modules/clothing/factions/hardliners.dm +++ b/code/modules/clothing/factions/hardliners.dm @@ -44,6 +44,20 @@ icon_state = "hl_hazard" item_state = "whitecloth" +/obj/item/clothing/suit/hooded/wintercoat/security/hardliners + name = "hardliner winter coat" + desc = "A stark-white winter coat used by Marauders of the Hardliner movement, the zipper tab displaying the cracked emblem of the Gorlex Marauders." + icon_state = "coathl" + item_state = "coathl" + icon = 'icons/obj/clothing/faction/hardliners/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/hardliners/suits.dmi' + hoodtype = /obj/item/clothing/head/hooded/winterhood/security/hardliners + +/obj/item/clothing/head/hooded/winterhood/security/hardliners + icon_state = "hood_hl" + icon = 'icons/obj/clothing/faction/hardliners/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/hardliners/head.dmi' + ////////////////// //Armored suits// ///////////////// diff --git a/code/modules/clothing/factions/ngr.dm b/code/modules/clothing/factions/ngr.dm index 7098dd6f1de9..401f82795f68 100644 --- a/code/modules/clothing/factions/ngr.dm +++ b/code/modules/clothing/factions/ngr.dm @@ -66,6 +66,20 @@ item_state = "redcloth" supports_variations = VOX_VARIATION +/obj/item/clothing/suit/hooded/wintercoat/security/ngr + name = "NGR winter coat" + desc = "A sleek beige winter coat used by the Second Battlegroup of the New Gorlex Republic, the zipper tab proudly displays the official emblem of the NGR." + icon_state = "coatngr" + item_state = "coatngr" + icon = 'icons/obj/clothing/faction/ngr/suits.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/ngr/suits.dmi' + hoodtype = /obj/item/clothing/head/hooded/winterhood/security/ngr + +/obj/item/clothing/head/hooded/winterhood/security/ngr + icon_state = "hood_ngr" + icon = 'icons/obj/clothing/faction/ngr/head.dmi' + mob_overlay_icon = 'icons/mob/clothing/faction/ngr/head.dmi' + ////////////////// //Armored suits// ///////////////// diff --git a/icons/mob/clothing/faction/hardliners/head.dmi b/icons/mob/clothing/faction/hardliners/head.dmi index a606fdb5fd84158181e099eead13b131993ad807..c9c1d5a73f0aff1d57f14e4daea2bfd803f22b16 100644 GIT binary patch literal 6021 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

nb%sY! zeNS9}(vKs^%*^0uF4I>9c{l#o<;wja?6i$g!^zmGU()~bn2o1cNNJm=o+T^(iXAD3 zz^3URRt2LSKJpj_KAsHYlfSb;VxweJ6(8FcY7c#H__c^KK1M|GkQ^F$%n!MWslQOk zM_zM5H5Zf;X>s#T0!1NH?xkY7*~{Pfc$n187xAhUUFfky+wa#G<)>UyvmU!6mzm6J z5fO3#+ycCovXsTAChW(p1<30p`m9YZXnT-nTFBP^!O1fRXT2=rtbzhbx>s+a zFf-L)1qPnzwybm6FZ-l&>pA2Ffev-dgJ{MU$&g*%a#LNyRZtAc44m9$4A=sqW z!7g%U@Sd%F#_Rkt)^tVUL8HM{2cgOuJCV4sRx0P$s^-el%dhoSJd`azZ@U|D3t=~- zrUG|Vxdf{N2aM{k`dP=sdu>MWcU{nYZj>NUB@JXNDy(*zScTDnws8$}Kf#}XiO$wC zI$SfU5nTQ~#qn%;){Q+iNtM1v3CF|(-tNnqc;%feofPyH=r**>kT_x>c)%rZ^FCHl_Cr> zXeO{_xgPq7ker=mf{0e(>Pr)~=f3A3`xHJk5{<$cFTR)#0^Tf|E&{q`^1^G0t&lUZ zuvrboERKs6aBUI(7!A~8WRNO|4e*)T&az38g5bL?XZDm@4GGTZB;|G4`0QLTtIEve z=u6ydj-;^N{ijih*xE^b+{K>4q)_W^g*)L`TlDabeNs*UqeI5+?}Ow9=vq7ex3V0=sp9>fg2v52YA4r(ou$(9u)~1b3A0j*B_2G4+|sF7IS4s zLvITtCAVrSpX+sM3}x(h6Ve4KbS^l*-QBlBi`QtFX(t%=zpx$~vhK@#a*2!OFpS6J e`A=j6hZn_Lywqh`cmej+0qw{78Z~M*um2A!l7t}u literal 5347 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 diff --git a/icons/mob/clothing/faction/ngr/head.dmi b/icons/mob/clothing/faction/ngr/head.dmi index c370f07aa0f3bffdc00455c09a2904b791e54831..eb0a316211eed4c77335ec6256fc06bbd53d69de 100644 GIT binary patch literal 7766 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 LUG+*;tB8LCM6y*H literal 7017 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 diff --git a/icons/mob/clothing/faction/ngr/suits.dmi b/icons/mob/clothing/faction/ngr/suits.dmi index ac4fceb11caeae0267ff596278469c1da3d90de3..05561408e367fd8426e79f6a6b7bfb7ac5d85b23 100644 GIT binary patch literal 9696 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 AIsgCw literal 2996 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 delta 1028 zcmV+f1pE8I3FrurBmq&8B~pJ+Pf#6|Y;FJm00DGTPE!Ct=GbNc006CeR9JLGWpiV4 zX>fFDZ*Bkpc$}4yy$-@K420+8DWY~RYJimmwL%@}E1-zFwWZJ?C*|ku33OqCbi1=Y zpHFhG_VuA@RdsCS4cL<#)lO|!r4)DS0!Fi0OMyTGhS~UF0z{diJ^6o$2jFKWMMv!8 zP)pIXxxlQyQ8e742@BA|jVbg)>lExt)+JqceNSiL|7dLKCkkbOHW}7S;CC`u3a}{t z=SHsTw)%Yg1tMdT`T-cpD*ylk3`s;mRA_&i3rC{P-m2G@yS=dO9T~CH)$yPY2NW2Tt3gs6pE}1_0x&YKNmuZ%fNuXeAF}p;W1JK&sZOAuSt5^au z@TZ3YMEK7Iq6UConQKh}s0O}r0kpvyv;2rcj$j1gZ~sMrbii`sPa6g zL&gMfyeNtQS4w+fhgJcG6eR!twSk87-Aa$_$&a^0q@V{@&={8obx~V z`JziU0P^CBKLP#|fEvvPh`2ikTju#C&r8eIA2@a($n{)|x#Uj{6)8|(=21nvKRJ}7 zaD9mQqAIcxa{KiF8_3ZaV**He_I^iT^!%#UmqY_9N*>N9snO#taT49yn)1b`vcGeD?YY$tbxQ2 z@UN<&ewQ&fnZ)-B%uwH`SJyHI5pQx z7&0(ufJ@{82>h4;MhFn$M+WHdBEQWK41m{|y$R#|xByr^+JOK+B!Jr}#`64pALqN} yzvqMVy}%DhFn-Yn=X-(g*SNyXJSi#ZOZ5+qPA`0zWDuSJ0000C0000yktH;LFEKXqn~2$9P{6>z#I@cu00001 zbW%=J06^y0W&i*HyLwbubVOxyV{&P5bZKvH004NLm6EXzfM=Ih@-O=EM&k40&+Q=unxo`&A+&2F7&^`M4rD7G7| zEK+NKc`iHyV~~;UstG+uS~cW+=%iYm9o%r%zuX1tD~d=M-Ox)w3r}#3g!JfIgkH41 zhLM3p0lsJ@@C`xzoj6(9P7J3@;I}h&#JI>_Hc=12f+#cg{~EE$%k1-KFMFJ}*Oy6c zy8r+NBuPX;RCt{2TZ?v_It;{EKvEl)^#4D9wllIfZG&WQ(?j+?m^5S)fi;$8;}LWi zE?l_qUqblhc*Hoy@*$3+cZv|6weNol<2d4IH$Km^GKlzK_`n~Fe=xwgRuj`SEz5$V zMPlV}ncUS3~czlnUqj~C0{BLD`I+A$FJ zAh2`jUbMPb2)vNMi$egj0|_Gd9?dR@#+b!u`(AdZ{`+E2^O+$%}wW})2S5eN)l^im*lB`wR1ZT=+!&LEd8 zbc`gB2$z6{A4fZfBA0q4APpZ)q&sZ0Iwu7?2gvMBz)SN78Mt=QdyO}ObbkMT{+$26 z1=-z?7cN}5aN)xL7w!A`-y#&W&Y0le+tohcplDOS^#!}a#t94n#C0nKqgy)wuqz*N zeQ@RZG?i_s*MN+ZMqqNb<)uR5GC=>S4}&93VGk3e8&2?q19XE{7(miwkXP=RWzFX0 zdZ`Y=V#;$Z9)N&n9~hgY+x|p<1!WPOi$XT($qaGK5G;_##u>#<0=Au-LAX}kki=53 zT0)sKzPtiP)PH(7o>1))9s4k>oPnx5_+d2~khuoHW-vm0YJJD9auquTqE`i5w=HQI zD{b4s|G*39QomtCRs#{T5JTYZ>LZ0Qa=@_X;&4lvNog}LXJuks@#SrQ+&P9w;RXRA zfyuDn)~ymCYyxbcNavP=M){x;FzvUzF$fTrTu8i?XwBQ2b6y>O!+Q=i?3#o}6S9s$ z*vJ6>y$G;?A#M*@pGsOPv)3_}Pf89P?U;H90(k`1np}NdDw#fkIk8gKAut(sPJXz> z_~M7S>%GKA0CXkOdFrfx!G!_pdj9dVd7ZC!hg{ZXx!< zg$w@>bo6_3sei!UMMuBu{mzxPeS04r{jQG|8(r+#duZzSe7kM+kx0DVjtaVGf5d-7 zzoU6NkcmZz$Y1gw*&p)X(C_Pt7IQA;fq+l9+i&}tp8X*-_4@`vn^P%IED7pq+y2N- z?7MEL_T3@S*6-tgOmSTw9B$iTYu~d2RMsLmdLd}*cZR5HOHVzw?U2^XE;|BbrFdJv z7d;!Ls_Vn9s%O{kA;WeM*pXq!?sfG0R32DM)DR!VXV1>2a|VM1Z8*<{FzD!aIN%?3 zj*GF__Ut6L=6CIw*8|0let&!W&Q7Z8v6i}?T{nbLDgnNK!|;(oN5A7rIuNbm7*B_L z_JR2~yce+sX5z;dn))5A(aE7cfIrIno_$C=M~G2S>6q~Q?7{u z85xR+9PD?0IC^$n3N!+(>Oe=oqwUzz*KK>Fj#$yr@A@KFL)vxhyjLRom%|kNiH?5n z$@`uiw*nB@KhD6P=;(LcC__u$_v~GC^m}G^?Tsss>x09uKmJ=e+in8 zZqEny3HyHH)Ag?ZU3HDWRGy7}fux9O@ubt)Nbt{pT~qS!R%a8a@3cORz+MSFD+$tG z9~(Z8K+S=tO#|$fFbf(xrjw!iJvsXQ3sCfXa`gN8sQNuR`u%(q{azl88v6Zw|3$wm z0ZYH1jk|u=H()INema4w-}T|JrQg24}w4ph3C6pae-L_>gr-3hC%)U zX`pgd1aem~@z;BbgOe%Sd(GF^H#9bf{8*GGI~96D=V|E8-t5+iRu5{}2D9C0WszFT zv+)dnj6p`Wt0wduY1NSPVUlWfc5uU4|8f_ouP7p6bVDxzEj+PbXFRA_&R!Ftd1&mvrkpdbcIWH5DuaR#h7bI4_y+^DwYsRaZrg^dM6x-bmoh zA%N9^1QC2^a|kK5rg&>k5){o}w6F;<#l{q5n_?+v5;{G!v?;u$=6In0?5$%>@sohf z0N_X>ZxYkS24W|G&cLev?Ky}E=t5b4?KLt8RE3?51_abSlF%g}Bp?$48e*3~tGZ8B zX9h~QIaIjS zD*>7Km|FWV8&>C}VCMjteGu@{{3Zhz7k$=vGf3wj-=FjURU^BP>tl~S_Sj>8kNtmb z{yhJxrD3xc75=?b?F|P*oBF+PI2BGBFaQwOvk+vrb^ybvJmdc4%JW*svDE88a@7b_ z=U6@}6fOgdpZYL4(iC{AkZx$;2?yu~tuTP3$zVTtW|m_&Z`WIO5;jwwYw-XCJbYnn znjZTb6_iDA9SYf`Co9A;L$E=A9vdwNP69U0!ysI%ZfIgDSS_KfJHEUEM$vzIxi&a) zDGt6Y2Unmf4}Lg|4rDz8U^B=NpIYCst6T%8K=i6$NAFF`SgrSq|AjZMqkhAVtPTof zA*R4R)fWn50IF=rQKpu&;CRbmNN~TX>ZLE|91ge2^@xv|V7eB<^@1;xvpgWnaQ)eev zoKs-n*n2@CajiFdmESOb*04q`(I+5mWD#VAIMcVVp6We|A_8X;`UDuk;zS5RXkDc1 zQ>Mn{d!*(O+FxK*Ji^WT*fA{`Eoc&*1MTpaCduA@;Gy9{ZPnSfJmhTm20@v_QY> z^UjsFF&-}TkvWQY+S*;K#puU9``iImsts-PqMj{k{%NB49fl|_icU-n;m-7YuRo+KAK^DF(C>t`?{P72pW$~b(C?JS*rJk{cnJ>%#K)>TbnP&1n!ejq){XX8NG k-xFU~RX@ce{4vM=0Mj=!ZNnC}kpKVy07*qoM6N<$g6AUG{r~^~ diff --git a/icons/obj/clothing/faction/ngr/head.dmi b/icons/obj/clothing/faction/ngr/head.dmi index d2258c5565ddcfe653cb3097f6a62a48a40c7e13..92e8a9f45d90b799af99fdb7f0f9d5ec2ab696af 100644 GIT binary patch delta 1403 zcmV->1%S)TyeBmrHKB}{)WF*Z#iO>{JLqe-Oy$qvVU$GvL3N&8(D00001bW%=J z06^y0W&i*H&w5l?bVOxyV{&P5bZKvH004NLmD0fuf-npQ;4^!Q1)`PTet8p(5Z%?o+C8r{=I1fd*`} zUmE9?hp7xrLuI3g&{-3Tph9xfb1H(GR0m7_h2206(2HfYqDm{zvb81X6feU%H)cj& zN3(gWdKP@9Da-ZPTHX?DUE>{S)6NTU1NtPMezA4R(sK?lBa+q7c7O7?oo{SAk+oI% zBTOW-;_|uYH*8zjB%ps*P_qC41WZXpK~#90?VAs8n=lZ?W3a)0Xyz1B5wh+3f6U$4 zPD;ZaG`L$e$&aX1dcpVOz!A?)4~L?nqN0xyLVR!is;c%A)KRQ2qgF1mDDuzH-kw8eg2W_o1 zDAXVT)cq2WEs)}V378h3FX4xj%tdHxgC!UO1c>4RqSgSaP`(n2x3q10Xbs)~sx~zR z&^FKku%QD@OAK$Zzfc|w^;@ti^CmY)m_)&&Jn}6aAp#G+);o5 zKu9<@v8DcF0R34pD^JOp_W08M=w6PkApvTe zd|NZ)$at4n+i%FOq30FZcmi;q(fPaiJ= z0TA;2>2!Zu&G+Cl`F;i5C@N1x31@byy3cqMuJ|5BLp$9sc1K-_78{eMlgJ zaQ%Ozrn2v0)?m3@9oY6k{rPHvSwod^d(a`;Gev#09ki zaG9ow_eYHn{Z5bj>tBDu##R9T7i^sGv*d0(v0bL?^*V9B)9G(Z zF8cvei&+3M{r>fP;(RwIfZaEN70`nVlbw@4@xB|ww^yXye-~QO$cC-I<-0N60~yo6 zD%f`WPHUJ2diO1mEdUtp_>BN?5da|L0(=31vn72N6%`ddt3PImLWVyg7bpM#002ov JPDHLkV1fodnMVKs delta 1297 zcmV+s1@8LR3xf-gBmr8HB}^wxB29EObfZb6|H%%=e#gCPy*l=VBLDyZ0d!JMQvg8b z*k%9#0Lqb@8h-%LGy94K&KOXyUW~+WkY6y1bgT(5(hbzVcL)~`#(Ha;*QRNj$YXIX zD|xzZzL=aq*L#(hKAMiHU2eJr9H$%S$*B2B7; zCH}x}qz358vPMyDlxJCO2|C5wVV#>YS6)Z6d8-B%e1GIQ%MI9C-VvfN25x8h&WaT!gx`Sb`xyfG8dy zDg{u4@`YNxrLOB;ZSe*$r7bCdx`GaX4IQXzVt@G-`wQi@^RnOL)6^tDt7c!dEC4(W z0MMTmi}IA5t@kh8ukK}ETN0pbXTL3(b#%N-xR0t-^+4cl*X_H`da6DgZ_418hF^*O zq<^fp>mvc~(uS#z1aX^guS6aEk)xbNarN;kpq{EP5{X12kx29-bcr3zcS`%!_2*<8 z2q*;nrslnYCy$bo??bG)Fi^Py0DMzHv}`;_kd^OMgp1{=^yhXq)^9k1ynH_=Pu+sZ zHaY9(`i&(4GV^_?9IChB*EN8@HGm|@%zyVw0JsM2D&Ru{0Ko@Y&j4iP`vpK7F2$<; z+yIXapwd%jzFz`>)csq0+=6)eco7JIknazNLo(lk&*b|BfNJ%6BSK`m$a*rrVZJ{c zkH2O!@cj_^q2`{Gv8kc)YAiJ$@e0WNF)-8^3~tHKI&&n-@QKSe>Z@I;9wK+eN*k- z>x2Frp6KZK4*={UypeAp^3FTmzH`$Bw*2e-!qNi-496*i_?;TRRiD5|t{;X0{||#I(7!tO+V`x#1R!sM2D!o>HPk544TH5%-!TQYd_0BIFn{!?VJo4A zZV~|DIN0Pk!yzuwmLCWlV6x+bE%mR~h8Ble;p2X;>=5_|7e*AsO}OFb1I)Y3!SYlK zxBP6)A9P^?M2%p!{Lds{20$DBClDmYPap9`B9TZW5{do`6_u%q3_n+@sNli>$!*Ke z2N+QafN`3pgr8sk{2Lx@1zPam;PG_?dK}Nwc^ugp+c=%i=ZW?60p=F70BZX4_Gd~@ zs&dpS=)uTj=h>eU{$~(Wx=O6S<$nT!fk%cf5{X12(NEN0A)Y;xrL8R;00000NkvXX Hu0mjfzz=oF diff --git a/icons/obj/clothing/faction/ngr/suits.dmi b/icons/obj/clothing/faction/ngr/suits.dmi index 49344c553e03307da71a0e28df69292ae5f680b4..9c05f154c70c96b74ff371f053cca5bfee042423 100644 GIT binary patch literal 4919 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 S9}C`u0jf$`iq(&-L;nX5Vn+P{ literal 1247 zcmV<51R(o~P)V=-0C=2@k--jvFc3t~?N>B#)_{8T zVjzTr{DRrYLN}3?Y!^)YdK)=;(cWe@Zzq#XZZ37xcBZDPz1V1u z2dym9Xk{}&KrqV8jeJ`%NTyX!9O9|eYG9af(_bLW>|GLR;RW0$p@V0fAT9PmxClCM zX?^c73()^)8@q;uq};`?WV-l8=cewe&mwQvIC!tJkmjra00XB5aPOtAs9_kW+c;o zrVs+Iy8Tj$C`8;S3fq>JeJG?-Q~~0?kxm2zmcRzff?N!N8bb-O+5#ZCjVh2J0FlH( zp{UbDwJ;0;kYNcxp(+g$ZQByrNMD9n#km?)_VIjsdwZ|-9Y0Tv_XXHFxED3|mcWw* zo`%4K5)nd#@T*(E_+h_BV+0`gDGIs^u)JV|$wTZ1Tuu8Q0=fcanV&5ifiCgE_VqdP z1vrod#!jnI%wv&Ffyx5)L_lW95{QALNc_}jUfZ?E<|^k8m;!YLswxow9)S@DYn82s zS(NF)Ro@5@s7s)l0_PCpETOLfD}M-Bd+~yVWnL86h4p>Sz6VzSxZb#NKNfTLQgX3ax`bQJAxgIm*=gOKY zyJ5fg8fK`vhhPUZ2Ii?7EkbUght`cbEIff_7M@1M1r`9ae-#t0my}v#E9wYm33C^i zp&Se>?;C#Fz$lKPgwCO-O_o`ApceGT6rppe2NyP-fdUOpq=hD=Y%)I&=Jw zR`|;|hXy=COu>Z0Y}yDP937)UfTv(8n`sQxKMbOwbjP4(gK4b8)JDh#AW%nbd~>7$ zl)0Of(+XEGund9Lz+;$dq{8z!qUyfja|9|I0tzG~_gn@WM+tKmur}&IoFGsd?!jdN zV+s(aQv}RKas}o%>o3o8-U}}aJa`M9bmt9v+TehYd=J{1)Y<#h4eyoYtNE}73dW&bAcqVloyCYjF`YdM^)dc2Pq zGp)nlL|Hj^^LQ7Nr*|cXxI1PB9)CdrNzr=8LPITK9R3V@D)VXJyS$6OQh~f5E+2N1 z$NK_J%3l%}mHgS`U0~JN$-F1%2M;~|!U%}V9+DD3d7OE?F8~YZhU}6f@R+@NybDge z8)anQlcrK6dc2Rp6}I%vssWF`HVESMmGmOh<$WM)<@z)0MX1kT!tUYAyaRdDXuX8G zz`MXhz<$wqf%i~Ts%K9!k9Y0kAF Date: Sat, 21 Sep 2024 03:10:44 -0500 Subject: [PATCH 23/61] Automatic changelog generation for PR #3400 [ci skip] --- html/changelogs/AutoChangeLog-pr-3400.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3400.yml diff --git a/html/changelogs/AutoChangeLog-pr-3400.yml b/html/changelogs/AutoChangeLog-pr-3400.yml new file mode 100644 index 000000000000..3149437636dc --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3400.yml @@ -0,0 +1,4 @@ +author: PositiveEntropy +changes: + - {rscadd: Gorlex Splinters now have winter coats!} +delete-after: true From 9943ca082966979f9549c24e26f1e35c83e37ab2 Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Sat, 21 Sep 2024 18:32:19 -0400 Subject: [PATCH 24/61] Makes Ship Turrets Connectable Without Areas (#3386) ## About The Pull Request Hacks some stuff onto the code for turrets and turretid machines so that they can see turrets outside the area (thanks fallcon). Applies this to every single ship so that ship turrets are a little less weird. ## Why It's Good For The Game Extendable + Useful for mappers. Also less area gore. ## Changelog :cl: code: Ship Turrets can now be attached to control consoles outside the area they are in. please look at ship maps for examples on how. add: Every single ship with turrets now does the above /:cl: --- _maps/shuttles/inteq/inteq_colossus.dmm | 183 ++++++++------ _maps/shuttles/inteq/inteq_talos.dmm | 182 ++++++++------ _maps/shuttles/inteq/inteq_vaquero.dmm | 153 ++++++------ .../shuttles/nanotrasen/nanotrasen_delta.dmm | 19 +- _maps/shuttles/nanotrasen/nanotrasen_meta.dmm | 59 ++++- _maps/shuttles/pgf/pgf_crying_sun.dmm | 235 ++++++++++-------- _maps/shuttles/pirate/pirate_noderider.dmm | 53 ++-- _maps/shuttles/solgov/solgov_chronicle.dmm | 8 +- _maps/shuttles/solgov/solgov_inkwell.dmm | 103 ++++++-- .../shuttles/subshuttles/frontiersmen_gut.dmm | 16 +- _maps/shuttles/subshuttles/inteq_anvil.dmm | 14 +- _maps/shuttles/subshuttles/pgf_nail.dmm | 10 +- .../syndicate/syndicate_cybersun_kansatsu.dmm | 38 ++- .../syndicate/syndicate_gorlex_hyena.dmm | 43 +++- .../syndicate/syndicate_gorlex_komodo.dmm | 95 +++++-- .../syndicate/syndicate_twinkleshine.dmm | 54 ++-- .../machinery/porta_turret/portable_turret.dm | 40 ++- code/modules/shuttle/shuttle.dm | 3 + 18 files changed, 826 insertions(+), 482 deletions(-) diff --git a/_maps/shuttles/inteq/inteq_colossus.dmm b/_maps/shuttles/inteq/inteq_colossus.dmm index f26053f39b44..e1cad73bdb2e 100644 --- a/_maps/shuttles/inteq/inteq_colossus.dmm +++ b/_maps/shuttles/inteq/inteq_colossus.dmm @@ -180,29 +180,6 @@ /obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/engine/hull/reinforced/interior, /area/ship/maintenance/starboard) -"cd" = ( -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/structure/closet/wall/directional/north{ - icon_door = "orange_wall"; - name = "uniform closet" - }, -/obj/machinery/firealarm/directional/east, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/turf/open/floor/plasteel/grimy, -/area/ship/crew) "cq" = ( /obj/structure/cable{ icon_state = "1-2" @@ -268,6 +245,29 @@ /obj/machinery/newscaster/directional/west, /turf/open/floor/plasteel/dark, /area/ship/crew/office) +"cT" = ( +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/structure/closet/wall/directional/north{ + icon_door = "orange_wall"; + name = "uniform closet" + }, +/obj/machinery/firealarm/directional/east, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/turf/open/floor/plasteel/grimy, +/area/ship/crew) "dq" = ( /obj/effect/spawner/structure/window/plasma/reinforced/plastitanium, /obj/structure/cable{ @@ -652,6 +652,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"gH" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 6; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew) "gJ" = ( /obj/effect/turf_decal/siding/thinplating/corner{ dir = 8 @@ -894,6 +901,25 @@ }, /turf/open/floor/plating, /area/ship/engineering) +"ja" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/yellow{ + dir = 1 + }, +/obj/machinery/turretid/ship{ + pixel_y = 24; + id = "colossus_grid" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) "jo" = ( /obj/machinery/atmospherics/components/unary/tank/toxins{ piping_layer = 1 @@ -1111,6 +1137,13 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/fore) +"mb" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 5; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/hallway/port) "mq" = ( /obj/structure/cable{ icon_state = "1-8" @@ -1430,12 +1463,6 @@ /obj/effect/turf_decal/techfloor, /turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) -"qJ" = ( -/obj/machinery/porta_turret/ship/ballistic{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) "qK" = ( /obj/structure/cable/yellow{ icon_state = "1-4" @@ -1706,6 +1733,13 @@ /obj/item/pen, /turf/open/floor/plasteel/dark, /area/ship/crew/office) +"sT" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 5; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/crew) "td" = ( /obj/structure/cable{ icon_state = "1-2" @@ -2033,6 +2067,13 @@ "vH" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/cargo) +"vJ" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 5; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/port) "vZ" = ( /obj/effect/turf_decal/industrial/warning/fulltile, /obj/machinery/door/poddoor{ @@ -2135,12 +2176,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) -"xh" = ( -/obj/machinery/porta_turret/ship/ballistic{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "xr" = ( /obj/effect/turf_decal/trimline/opaque/yellow/line{ dir = 1 @@ -2406,6 +2441,13 @@ }, /turf/open/floor/plating, /area/ship/maintenance/port) +"Bi" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 9; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew/office) "Bj" = ( /obj/effect/turf_decal/trimline/opaque/yellow/line, /obj/effect/turf_decal/siding/thinplating, @@ -3005,12 +3047,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/hidden/layer1, /turf/open/floor/plasteel/tech, /area/ship/engineering) -"Hu" = ( -/obj/machinery/porta_turret/ship/ballistic{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) "HD" = ( /obj/effect/spawner/structure/window/plasma/reinforced/plastitanium, /obj/structure/cable{ @@ -3486,24 +3522,6 @@ /obj/effect/landmark/start/security_officer, /turf/open/floor/plasteel/dark, /area/ship/crew/office) -"NH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 8 - }, -/obj/machinery/turretid/lethal{ - pixel_y = 22 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/corner/opaque/brown{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/ship/bridge) "NP" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/corner/opaque/yellow, @@ -3611,6 +3629,13 @@ }, /turf/open/floor/engine/hull/reinforced, /area/ship/maintenance/starboard) +"OI" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 6; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/starboard) "OV" = ( /obj/structure/cable{ icon_state = "2-4" @@ -3764,6 +3789,13 @@ }, /turf/open/floor/plating, /area/ship/maintenance/starboard) +"Qw" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 10; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/security/armory) "QC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 10 @@ -3820,12 +3852,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) -"QZ" = ( -/obj/machinery/porta_turret/ship/ballistic{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) "Rb" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ name = "exhaust injector" @@ -3917,6 +3943,13 @@ /obj/effect/landmark/start/station_engineer, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo) +"RZ" = ( +/obj/machinery/porta_turret/ship/ballistic{ + dir = 6; + id = "colossus_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/security) "Sa" = ( /obj/effect/turf_decal/borderfloor{ dir = 4 @@ -4758,7 +4791,7 @@ XJ (8,1,1) = {" XJ XJ -xh +vJ bo bo bo @@ -4774,7 +4807,7 @@ rl rl rl rl -Oa +OI XJ "} (9,1,1) = {" @@ -4955,7 +4988,7 @@ XJ "} (17,1,1) = {" XJ -qJ +Bi ZB ZB ZB @@ -4973,7 +5006,7 @@ Dq Dq Dq Dq -QZ +Qw "} (18,1,1) = {" XJ @@ -5193,7 +5226,7 @@ XA XA XA XA -Oa +RZ "} (28,1,1) = {" Yy @@ -5219,7 +5252,7 @@ XJ "} (29,1,1) = {" XJ -Ll +mb hD hD hD @@ -5287,7 +5320,7 @@ XJ XJ XJ tX -NH +ja tI Ae Sj @@ -5320,7 +5353,7 @@ fN fN Yr zF -cd +cT GW vq gu @@ -5364,11 +5397,11 @@ XJ XJ XJ XJ -xh +sT xT xT xT -Hu +gH XJ "} (36,1,1) = {" diff --git a/_maps/shuttles/inteq/inteq_talos.dmm b/_maps/shuttles/inteq/inteq_talos.dmm index 12143aa9fe2f..906f803d7c9a 100644 --- a/_maps/shuttles/inteq/inteq_talos.dmm +++ b/_maps/shuttles/inteq/inteq_talos.dmm @@ -102,6 +102,13 @@ }, /turf/open/floor/circuit/telecomms/mainframe, /area/ship/engineering/communications) +"aC" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/port) "aD" = ( /obj/machinery/computer/telecomms/monitor{ network = "irmg_commnet" @@ -841,6 +848,13 @@ /obj/item/cigbutt, /turf/open/floor/plating/airless, /area/ship/storage/port) +"fs" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/engineering/communications) "fC" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/opaque/yellow/warning{ @@ -2674,6 +2688,20 @@ /obj/item/radio/headset, /turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) +"qt" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/starboard) +"qz" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/hallway/port) "qB" = ( /obj/effect/turf_decal/industrial/traffic, /obj/effect/decal/cleanable/dirt, @@ -4053,32 +4081,6 @@ /obj/effect/mapping_helpers/airlock/abandoned, /turf/open/floor/plating/airless, /area/ship/maintenance/port) -"zf" = ( -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/structure/closet{ - icon_door = "orange"; - name = "inteq wardrobe" - }, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/turf/open/floor/carpet/black, -/area/ship/crew/dorm) "zg" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/lootdrop/grille_or_trash, @@ -4443,12 +4445,6 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/engineering/engine) -"Bd" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 9 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "Bh" = ( /obj/structure/cable{ icon_state = "1-2" @@ -4559,6 +4555,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/grimy, /area/ship/crew) +"Cr" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 9; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/engineering/communications) "Cs" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -4653,6 +4656,32 @@ }, /turf/open/floor/plasteel/grimy, /area/ship/crew) +"CY" = ( +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/structure/closet{ + icon_door = "orange"; + name = "inteq wardrobe" + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/turf/open/floor/carpet/black, +/area/ship/crew/dorm) "Dd" = ( /obj/structure/cable{ icon_state = "1-8" @@ -4823,6 +4852,13 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/engineering/communications) +"ED" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 10; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/storage) "EL" = ( /obj/structure/cable{ icon_state = "4-8" @@ -5153,12 +5189,6 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/storage) -"GA" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "GG" = ( /obj/machinery/light/small/directional/west, /obj/structure/cable{ @@ -5902,9 +5932,6 @@ /obj/effect/spawner/structure/window/plasma/reinforced/plastitanium, /turf/open/floor/plating, /area/ship/engineering/engine) -"Me" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/template_noop) "Mf" = ( /obj/structure/chair{ dir = 4 @@ -6332,12 +6359,6 @@ /obj/structure/closet/crate, /turf/open/floor/plating/airless, /area/ship/storage/starboard) -"Pw" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "Py" = ( /obj/structure/cable{ icon_state = "1-2" @@ -6602,6 +6623,13 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/engineering/communications) +"Rf" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/security) "Rg" = ( /obj/structure/cable{ icon_state = "4-8" @@ -6693,12 +6721,6 @@ }, /turf/open/floor/carpet/black, /area/ship/crew/dorm) -"RO" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium, -/area/template_noop) "RT" = ( /turf/open/floor/plating/airless, /area/ship/storage/port) @@ -6709,12 +6731,6 @@ /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/ship/maintenance/port) -"RW" = ( -/obj/machinery/turretid/lethal{ - pixel_y = 32 - }, -/turf/open/floor/carpet/orange, -/area/ship/bridge) "RY" = ( /obj/effect/turf_decal/industrial/warning/fulltile, /obj/machinery/door/airlock/hatch{ @@ -7474,6 +7490,13 @@ }, /turf/open/floor/plating, /area/ship/engineering/engine) +"WN" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6; + id = "talos_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/storage) "WR" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 4 @@ -7483,12 +7506,6 @@ }, /turf/open/floor/carpet/orange, /area/ship/bridge) -"Xa" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "Xg" = ( /turf/open/floor/carpet/black, /area/ship/crew/dorm) @@ -7510,6 +7527,13 @@ /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2, /turf/open/floor/plasteel/tech/grid, /area/ship/engineering) +"Xo" = ( +/obj/machinery/turretid/ship{ + pixel_y = 24; + id = "talos_grid" + }, +/turf/open/floor/carpet/orange, +/area/ship/bridge) "Xs" = ( /obj/effect/turf_decal/techfloor{ dir = 4 @@ -8020,7 +8044,7 @@ sw "} (5,1,1) = {" sw -Bd +Cr vp vp vp @@ -8049,7 +8073,7 @@ sV sV sV sV -Pw +ED sw "} (6,1,1) = {" @@ -8224,7 +8248,7 @@ cV "} (11,1,1) = {" sw -GA +fs vp vp sW @@ -8253,7 +8277,7 @@ sc jW sV sV -Xa +WN sw "} (12,1,1) = {" @@ -8262,7 +8286,7 @@ MV sw og sW -zf +CY GG tr Xg @@ -8601,7 +8625,7 @@ sw sw sw sw -Me +sw lC Ks IT @@ -8674,7 +8698,7 @@ lC ae bU mX -RW +Xo WR Tj mX @@ -8737,7 +8761,7 @@ sw sw sw sw -Me +sw lC qF Zj @@ -8770,8 +8794,8 @@ sw sw sw sw -Me -RO +sw +sw lC UP gp @@ -8974,7 +8998,7 @@ sw sw sw sw -GA +qz yp jj Gl @@ -8999,7 +9023,7 @@ as QR WG mK -Xa +Rf sw sw sw @@ -9589,7 +9613,7 @@ sw sw sw sw -GA +aC Pp fN Pp @@ -9608,7 +9632,7 @@ Gq If YZ fK -Xa +qt sw sw sw diff --git a/_maps/shuttles/inteq/inteq_vaquero.dmm b/_maps/shuttles/inteq/inteq_vaquero.dmm index 71e191e5e584..04e3e5684ba7 100644 --- a/_maps/shuttles/inteq/inteq_vaquero.dmm +++ b/_maps/shuttles/inteq/inteq_vaquero.dmm @@ -1191,31 +1191,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull/reinforced, /area/ship/external/dark) -"tx" = ( -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/storage/backpack/messenger/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/beret/sec/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/item/clothing/head/soft/inteq, -/obj/structure/closet/wall/directional/north{ - icon_door = "orange_wall"; - name = "uniform closet" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ - dir = 8 - }, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, -/turf/open/floor/carpet/black, -/area/ship/crew) "ui" = ( /turf/closed/wall/mineral/plastitanium, /area/ship/hallway/central) @@ -1282,18 +1257,6 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/crew/toilet) -"vd" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 5 - }, -/obj/docking_port/mobile{ - dir = 2; - launch_status = 0; - port_direction = 8; - preferred_direction = 4 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "vg" = ( /obj/docking_port/stationary{ dir = 8; @@ -1429,12 +1392,6 @@ }, /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/cargo) -"xX" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) "xZ" = ( /obj/effect/turf_decal/industrial/warning/fulltile, /obj/machinery/door/airlock/external{ @@ -1587,12 +1544,6 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) -"zP" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 6 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "zR" = ( /obj/structure/chair{ dir = 1 @@ -1981,6 +1932,13 @@ /obj/item/clothing/suit/armor/vest/security/warden/inteq, /turf/open/floor/plasteel/dark, /area/ship/security) +"DT" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6; + id = "vaquero_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew) "Eh" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/cargo) @@ -2068,6 +2026,13 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/plasteel/dark, /area/ship/crew/office) +"Fm" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 5; + id = "vaquero_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew/office) "Fu" = ( /obj/machinery/door/airlock{ dir = 4; @@ -2274,19 +2239,6 @@ /obj/machinery/holopad/emergency/command, /turf/open/floor/carpet/orange, /area/ship/bridge) -"Iy" = ( -/obj/effect/turf_decal/corner/opaque/brown{ - dir = 4 - }, -/obj/effect/turf_decal/corner/opaque/yellow{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/turretid{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/dark, -/area/ship/bridge) "IN" = ( /obj/effect/turf_decal/industrial/warning{ dir = 1 @@ -2570,6 +2522,13 @@ }, /turf/open/floor/plasteel/patterned/grid, /area/ship/hallway/central) +"NO" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 6; + id = "vaquero_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/security) "NR" = ( /obj/structure/cable{ icon_state = "1-8" @@ -2875,12 +2834,6 @@ /obj/structure/ore_box, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo) -"Td" = ( -/obj/machinery/porta_turret/ship/weak{ - dir = 5 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) "Ti" = ( /obj/machinery/vending/coffee, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, @@ -2899,6 +2852,20 @@ /obj/effect/turf_decal/siding/thinplating/dark, /turf/open/floor/plasteel/tech, /area/ship/cargo) +"TC" = ( +/obj/effect/turf_decal/corner/opaque/brown{ + dir = 4 + }, +/obj/effect/turf_decal/corner/opaque/yellow{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/turretid/ship{ + pixel_y = 26; + id = "vaquero_grid" + }, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) "TK" = ( /obj/machinery/computer/cargo{ dir = 8 @@ -2939,6 +2906,31 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"TX" = ( +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/storage/backpack/messenger/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/beret/sec/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/item/clothing/head/soft/inteq, +/obj/structure/closet/wall/directional/north{ + icon_door = "orange_wall"; + name = "uniform closet" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ + dir = 8 + }, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/obj/item/clothing/suit/hooded/wintercoat/security/inteq/alt, +/turf/open/floor/carpet/black, +/area/ship/crew) "Uf" = ( /obj/structure/table, /obj/item/flashlight/lamp/green, @@ -2958,6 +2950,19 @@ /obj/machinery/light/small/directional/west, /turf/open/floor/carpet/black, /area/ship/crew) +"UO" = ( +/obj/docking_port/mobile{ + dir = 2; + launch_status = 0; + port_direction = 8; + preferred_direction = 4 + }, +/obj/machinery/porta_turret/ship/weak{ + dir = 5; + id = "vaquero_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/medical) "UV" = ( /obj/machinery/door/airlock/public/glass{ dir = 4; @@ -3647,7 +3652,7 @@ ec lr FK Ul -Iy +TC In qe VI @@ -3675,7 +3680,7 @@ Ul sS bu Gq -tx +TX jg LB "} @@ -3700,7 +3705,7 @@ bL Gq "} (17,1,1) = {" -Td +Fm VN VN VN @@ -3717,7 +3722,7 @@ id te Gq Gq -xX +DT "} (18,1,1) = {" ww @@ -3883,7 +3888,7 @@ ww ww ww ww -vd +UO lo lo lo @@ -3894,7 +3899,7 @@ ww te te te -zP +NO ww ww ww diff --git a/_maps/shuttles/nanotrasen/nanotrasen_delta.dmm b/_maps/shuttles/nanotrasen/nanotrasen_delta.dmm index e5890b401cfa..00967afb927e 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_delta.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_delta.dmm @@ -1372,7 +1372,8 @@ /area/ship/engineering) "jH" = ( /obj/machinery/porta_turret/ship/weak{ - dir = 9 + dir = 9; + id = "delta_grid" }, /turf/closed/wall/mineral/titanium, /area/ship/bridge) @@ -2057,18 +2058,14 @@ pixel_x = -24; pixel_y = -5 }, -/obj/machinery/turretid{ - icon_state = "control_kill"; - lethal = 1; - locked = 0; - pixel_y = -28; - req_access = null - }, /obj/structure/table, /obj/machinery/recharger, /obj/item/spacecash/bundle/c1000, /obj/item/spacecash/bundle/c1000, /obj/item/areaeditor/shuttle, +/obj/machinery/turretid/ship{ + pixel_y = -24 + }, /turf/open/floor/plasteel/dark, /area/ship/bridge) "Aw" = ( @@ -2895,7 +2892,8 @@ /area/ship/science/robotics) "WG" = ( /obj/machinery/porta_turret/ship/weak{ - dir = 4 + dir = 4; + id = "delta_grid" }, /turf/closed/wall/mineral/titanium, /area/ship/bridge) @@ -3021,7 +3019,8 @@ /area/ship/science/robotics) "YZ" = ( /obj/machinery/porta_turret/ship/weak{ - dir = 10 + dir = 10; + id = "delta_grid" }, /turf/closed/wall/mineral/titanium, /area/ship/bridge) diff --git a/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm index 663a567b8bbc..1bcf7707a157 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm @@ -1679,6 +1679,13 @@ /obj/machinery/door/firedoor, /turf/open/floor/plating, /area/ship/cargo) +"jo" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 4; + id = "meta_grid" + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew) "jw" = ( /obj/effect/turf_decal/corner/transparent/bar/diagonal, /obj/effect/decal/cleanable/dirt/dust, @@ -2198,6 +2205,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/dark, /area/ship/cargo) +"uT" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 4; + id = "meta_grid" + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/canteen/kitchen) "ve" = ( /obj/effect/turf_decal/box/corners, /obj/machinery/light/broken/directional/south, @@ -2384,6 +2398,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel, /area/ship/crew/canteen/kitchen) +"yF" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 1; + id = "meta_grid" + }, +/turf/closed/wall/mineral/titanium, +/area/ship/engineering) "yS" = ( /obj/structure/table, /obj/item/storage/box/lights/mixed{ @@ -2910,10 +2931,9 @@ /obj/effect/decal/cleanable/blood/old, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/turretid{ +/obj/machinery/turretid/ship{ pixel_y = -24; - req_access = null; - locked = 0 + id = "meta_grid" }, /turf/open/floor/plasteel/dark, /area/ship/bridge) @@ -3060,10 +3080,11 @@ /area/ship/engineering) "Lo" = ( /obj/machinery/porta_turret/ship/weak{ - dir = 1 + dir = 2; + id = "meta_grid" }, /turf/closed/wall/mineral/titanium, -/area/ship/bridge) +/area/ship/engineering) "Lq" = ( /obj/structure/cable{ icon_state = "4-8" @@ -3458,6 +3479,20 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/dark, /area/ship/cargo) +"TR" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 2; + id = "meta_grid" + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/canteen) +"TV" = ( +/obj/machinery/porta_turret/ship/weak{ + dir = 1; + id = "meta_grid" + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew) "Uk" = ( /obj/structure/cable{ icon_state = "4-8" @@ -3861,7 +3896,7 @@ aa "} (6,1,1) = {" aa -Lo +yF ac ri Pr @@ -4186,7 +4221,7 @@ aa "} (19,1,1) = {" aa -Lo +TV ai ai MU @@ -4206,7 +4241,7 @@ sA Uk an bD -Lo +TR aa "} (20,1,1) = {" @@ -4412,12 +4447,12 @@ aa (28,1,1) = {" aa aa -Lo +jo ai ai ai ai -Lo +jo aa aa aa @@ -4425,12 +4460,12 @@ aa aa aa aa -Lo +uT cO cO cO cO -Lo +uT aa aa "} diff --git a/_maps/shuttles/pgf/pgf_crying_sun.dmm b/_maps/shuttles/pgf/pgf_crying_sun.dmm index ad52c8b853d8..bbfb109c6c36 100644 --- a/_maps/shuttles/pgf/pgf_crying_sun.dmm +++ b/_maps/shuttles/pgf/pgf_crying_sun.dmm @@ -424,16 +424,6 @@ }, /turf/open/floor/plating, /area/ship/engineering/engines/starboard) -"du" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 6; - mode = 1 - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "dv" = ( /obj/structure/cable/blue{ icon_state = "0-4" @@ -534,6 +524,29 @@ }, /turf/open/floor/plasteel/mono/dark, /area/ship/hallway/central) +"ee" = ( +/obj/effect/turf_decal/corner_steel_grid{ + dir = 9 + }, +/obj/effect/turf_decal/corner_steel_grid{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "lib_bridge_shut"; + name = "Bridge Shutters"; + pixel_y = 20; + pixel_x = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/machinery/turretid/ship{ + pixel_y = 24; + pixel_x = -7; + id = "crying_sun_grid" + }, +/turf/open/floor/plasteel/mono/dark, +/area/ship/bridge) "ej" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 8 @@ -1046,17 +1059,6 @@ }, /turf/open/floor/plating, /area/ship/bridge) -"if" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/structure/catwalk/over/plated_catwalk/dark, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 4; - mode = 1 - }, -/turf/open/floor/plating/airless, -/area/ship/external/dark) "ih" = ( /obj/structure/table/reinforced, /obj/item/modular_computer/laptop/preset, @@ -1188,6 +1190,17 @@ }, /turf/open/floor/plasteel/mono, /area/ship/hangar/starboard) +"jg" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "jh" = ( /obj/effect/turf_decal/industrial/traffic{ dir = 1 @@ -1473,6 +1486,17 @@ /obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating/airless, /area/ship/external/dark) +"mf" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 8; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull/reinforced, +/area/ship/external/dark) "mk" = ( /obj/structure/table/wood, /obj/item/toy/plush/sharai{ @@ -3071,28 +3095,6 @@ }, /turf/open/floor/vault, /area/ship/security/armory) -"Aq" = ( -/obj/effect/turf_decal/corner_steel_grid{ - dir = 9 - }, -/obj/effect/turf_decal/corner_steel_grid{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "lib_bridge_shut"; - name = "Bridge Shutters"; - pixel_y = 20; - pixel_x = 8 - }, -/obj/structure/chair/comfy/shuttle{ - dir = 4 - }, -/obj/machinery/turretid{ - pixel_y = 23; - pixel_x = -8 - }, -/turf/open/floor/plasteel/mono/dark, -/area/ship/bridge) "Ar" = ( /obj/effect/turf_decal/corner_steel_grid{ dir = 9 @@ -3162,6 +3164,18 @@ "At" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/security/armory) +"Az" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 4; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/plating/airless, +/area/ship/external/dark) "AL" = ( /obj/machinery/vending/toyliberationstation, /turf/open/floor/plasteel/tech, @@ -3441,16 +3455,6 @@ "CD" = ( /turf/open/floor/plasteel/white, /area/ship/crew/canteen) -"CF" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 10; - mode = 1 - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "CO" = ( /obj/machinery/vending/coffee, /obj/effect/turf_decal/corner_steel_grid/full{ @@ -3608,6 +3612,17 @@ /obj/item/clothing/head/helmet/space/gezena, /turf/open/floor/plating, /area/ship/engineering) +"DG" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "DJ" = ( /obj/effect/turf_decal/industrial/traffic, /obj/structure/sign/flag/gezena{ @@ -3721,14 +3736,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, /turf/open/floor/plasteel, /area/ship/hallway/central) -"Eu" = ( -/obj/structure/cable, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 5; - mode = 1 - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "EA" = ( /obj/structure/sign/poster/contraband/pgf{ pixel_y = 32 @@ -3985,16 +3992,6 @@ }, /turf/open/floor/plasteel/mono/dark, /area/ship/hallway/central) -"FJ" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 5; - mode = 1 - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "FN" = ( /obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/door/poddoor{ @@ -4006,16 +4003,6 @@ }, /turf/open/floor/plating, /area/ship/engineering/engines/starboard) -"FO" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 8; - mode = 1 - }, -/turf/open/floor/engine/hull/reinforced, -/area/ship/external/dark) "FU" = ( /obj/effect/turf_decal/corner_steel_grid{ dir = 10 @@ -4242,16 +4229,6 @@ /obj/effect/turf_decal/corner/opaque/neutral/full, /turf/open/floor/vault, /area/ship/security/armory) -"Hb" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/machinery/porta_turret/ship/pgf/light{ - dir = 5; - mode = 1 - }, -/turf/open/floor/engine/hull, -/area/ship/external/dark) "Hf" = ( /obj/structure/railing, /obj/effect/turf_decal/corner_steel_grid{ @@ -4259,6 +4236,18 @@ }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/crew/cryo) +"Hl" = ( +/obj/structure/catwalk/over/plated_catwalk/dark, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 4; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/plating/airless, +/area/ship/external/dark) "Hn" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ship/crew/cryo) @@ -5846,6 +5835,17 @@ /obj/machinery/light/floor/hangar, /turf/open/floor/engine/hull/reinforced, /area/ship/external/dark) +"Tp" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 10; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "Tw" = ( /obj/structure/cable{ icon_state = "0-2" @@ -6287,6 +6287,17 @@ }, /turf/open/floor/plasteel/tech, /area/ship/bridge) +"Wi" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 6; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "Wk" = ( /obj/machinery/power/smes/shuttle/precharged{ dir = 4 @@ -6357,6 +6368,17 @@ /obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating/airless, /area/ship/external/dark) +"WU" = ( +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "WV" = ( /obj/effect/turf_decal/trimline/opaque/bottlegreen/filled/line{ dir = 4 @@ -6676,6 +6698,15 @@ }, /turf/open/floor/plasteel/tech, /area/ship/engineering/engines/port) +"Zr" = ( +/obj/structure/cable, +/obj/machinery/porta_turret/ship/pgf/light{ + dir = 5; + mode = 1; + id = "crying_sun_grid" + }, +/turf/open/floor/engine/hull, +/area/ship/external/dark) "Zw" = ( /obj/structure/railing{ dir = 4 @@ -6849,7 +6880,7 @@ CB AM UM lc -FO +mf LD TV bB @@ -7203,7 +7234,7 @@ xz (15,1,1) = {" xz xz -FJ +jg ow ow mG @@ -7281,7 +7312,7 @@ xK zz DT SB -CF +Tp xz "} (18,1,1) = {" @@ -7400,7 +7431,7 @@ xz xz xz Si -KB +DG KM Te EM @@ -7457,7 +7488,7 @@ xz xz xz eR -Eu +Zr KP BX xy @@ -7589,7 +7620,7 @@ Bq oR Ne SB -du +Wi xz "} (29,1,1) = {" @@ -7794,7 +7825,7 @@ xz xz xz xz -Hb +WU xk UE pW @@ -7992,7 +8023,7 @@ xz xz xz MF -Aq +ee Xs jm jH @@ -8075,7 +8106,7 @@ xz xz xz xz -Hb +WU vr dK Gb @@ -8252,11 +8283,11 @@ xz xz xz xz -if +Hl xz xz xz -if +Az xz xz xz diff --git a/_maps/shuttles/pirate/pirate_noderider.dmm b/_maps/shuttles/pirate/pirate_noderider.dmm index 2e0352c54a58..6861f971143f 100644 --- a/_maps/shuttles/pirate/pirate_noderider.dmm +++ b/_maps/shuttles/pirate/pirate_noderider.dmm @@ -341,10 +341,11 @@ /area/ship/crew) "et" = ( /obj/machinery/porta_turret/ship{ - dir = 5 + dir = 5; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/security/armory) "ev" = ( /obj/machinery/power/rtg, /obj/structure/cable{ @@ -578,10 +579,11 @@ /area/ship/crew) "iH" = ( /obj/machinery/porta_turret/ship{ - dir = 9 + dir = 9; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "iJ" = ( /obj/effect/turf_decal/industrial/warning, /obj/effect/turf_decal/spline/fancy/opaque/black{ @@ -965,6 +967,13 @@ /obj/item/pickaxe/drill, /turf/open/floor/plasteel/dark, /area/ship/cargo) +"oX" = ( +/obj/machinery/porta_turret/ship{ + dir = 4; + id = "jupiter_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/security/armory) "pi" = ( /obj/structure/cable{ icon_state = "1-2" @@ -1596,6 +1605,13 @@ /obj/effect/turf_decal/spline/fancy/opaque/black, /turf/open/floor/plasteel/tech/grid, /area/ship/maintenance/central) +"yH" = ( +/obj/machinery/porta_turret/ship{ + dir = 4; + id = "jupiter_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/bridge) "yI" = ( /obj/structure/cable{ icon_state = "1-2" @@ -1733,7 +1749,8 @@ /area/ship/engineering) "Az" = ( /obj/machinery/porta_turret/ship{ - dir = 6 + dir = 6; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, /area/ship/bridge) @@ -2578,10 +2595,11 @@ /area/ship/maintenance/central) "MX" = ( /obj/machinery/porta_turret/ship{ - dir = 1 + dir = 1; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/maintenance/central) "MZ" = ( /obj/structure/cable{ icon_state = "0-8" @@ -2862,10 +2880,11 @@ /area/ship/cargo) "RE" = ( /obj/machinery/porta_turret/ship{ - dir = 4 + dir = 4; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/crew) "RI" = ( /obj/structure/cable{ icon_state = "1-8" @@ -2889,10 +2908,11 @@ /area/ship/engineering) "Ss" = ( /obj/machinery/porta_turret/ship{ - dir = 10 + dir = 10; + id = "jupiter_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "SP" = ( /obj/machinery/power/shieldwallgen/anchored, /obj/structure/cable, @@ -2982,9 +3002,12 @@ /turf/open/floor/plating/airless, /area/ship/external) "VC" = ( -/obj/machinery/porta_turret/ship, +/obj/machinery/porta_turret/ship{ + dir = 2; + id = "jupiter_grid" + }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/maintenance/central) "VF" = ( /obj/machinery/ai_slipper, /obj/effect/turf_decal/spline/fancy/opaque/black, @@ -4102,7 +4125,7 @@ qc Th Kc by -RE +oX by oJ Ne @@ -4192,7 +4215,7 @@ by by by by -RE +yH by by by diff --git a/_maps/shuttles/solgov/solgov_chronicle.dmm b/_maps/shuttles/solgov/solgov_chronicle.dmm index 19730904ab41..56cbecce667b 100644 --- a/_maps/shuttles/solgov/solgov_chronicle.dmm +++ b/_maps/shuttles/solgov/solgov_chronicle.dmm @@ -3352,12 +3352,6 @@ }, /turf/open/floor/plasteel/white, /area/ship/engineering) -"GH" = ( -/obj/effect/turf_decal/corner/opaque/solgovgold{ - dir = 6 - }, -/turf/template_noop, -/area/template_noop) "GP" = ( /obj/machinery/door/airlock/solgov{ dir = 4; @@ -5313,7 +5307,7 @@ pS pS KZ KZ -GH +pS AN Bz Wn diff --git a/_maps/shuttles/solgov/solgov_inkwell.dmm b/_maps/shuttles/solgov/solgov_inkwell.dmm index d89314c2f769..cb52200b4aa9 100644 --- a/_maps/shuttles/solgov/solgov_inkwell.dmm +++ b/_maps/shuttles/solgov/solgov_inkwell.dmm @@ -1,4 +1,11 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 6 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/canteen/kitchen) "af" = ( /obj/effect/turf_decal/techfloor{ dir = 1 @@ -62,6 +69,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/wood, /area/ship/crew/library) +"aB" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 5 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/security/armory) "aO" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 1 @@ -1045,6 +1059,13 @@ /obj/item/tank/jetpack/oxygen, /turf/open/floor/wood/maple, /area/ship/crew/dorm/dormtwo) +"hk" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 6 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/toilet) "hl" = ( /obj/effect/turf_decal/corner/opaque/solgovblue{ dir = 1 @@ -1088,9 +1109,12 @@ /turf/open/floor/plasteel/mono, /area/ship/cargo) "hE" = ( -/obj/machinery/porta_turret/ship/solgov, +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 6 + }, /turf/closed/wall/mineral/titanium, -/area/ship/bridge) +/area/ship/storage) "hF" = ( /obj/effect/turf_decal/siding/wood, /obj/effect/turf_decal/siding/wood/corner{ @@ -1620,6 +1644,13 @@ }, /turf/open/floor/plasteel/mono/dark, /area/ship/engineering) +"kE" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 9 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/maintenance/starboard) "kK" = ( /obj/machinery/door/window/brigdoor/westleft, /obj/structure/rack, @@ -1729,9 +1760,9 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/turretid/lethal{ +/obj/machinery/turretid/ship{ pixel_x = -26; - pixel_y = 0 + id = "inkwell_grid" }, /turf/open/floor/plasteel/stairs/wood/left{ dir = 1 @@ -2138,6 +2169,13 @@ }, /turf/open/floor/plasteel/mono, /area/ship/cargo) +"nN" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 10 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/maintenance/starboard) "nO" = ( /obj/machinery/computer/cargo/solgov, /turf/open/floor/wood/maple, @@ -2548,6 +2586,13 @@ }, /turf/open/floor/plasteel/mono, /area/ship/cargo) +"qF" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 10 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/maintenance/port) "qG" = ( /obj/machinery/light/small/directional/south, /obj/effect/decal/cleanable/dirt/dust, @@ -3572,6 +3617,13 @@ }, /turf/open/floor/plating, /area/ship/crew/dorm/dormthree) +"wn" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 5 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/toilet) "wo" = ( /obj/item/clothing/gloves/combat, /obj/item/folder/solgov, @@ -4346,6 +4398,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/white, /area/ship/engineering) +"BN" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 9 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/maintenance/port) "BO" = ( /obj/effect/turf_decal/industrial/warning, /obj/effect/turf_decal/industrial/warning{ @@ -4565,6 +4624,13 @@ }, /turf/open/floor/plasteel/patterned/cargo_one, /area/ship/cargo) +"CY" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 5 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/crew/canteen/kitchen) "Dc" = ( /obj/effect/turf_decal/corner/opaque/solgovblue/full, /obj/structure/cable{ @@ -5201,6 +5267,13 @@ }, /turf/open/floor/plasteel/mono, /area/ship/cargo) +"Hl" = ( +/obj/machinery/porta_turret/ship/solgov{ + id = "inkwell_grid"; + dir = 1 + }, +/turf/closed/wall/mineral/titanium, +/area/ship/bridge) "Ho" = ( /obj/structure/chair/comfy/grey/directional/south, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, @@ -7844,12 +7917,12 @@ (1,1,1) = {" iG -hE +BN UJ Hp Hp zI -hE +qF iG iG iG @@ -7867,12 +7940,12 @@ iG iG iG iG -hE +kE ni dv dv vY -hE +nN iG iG "} @@ -8047,7 +8120,7 @@ DH iG "} (7,1,1) = {" -hE +Hl XY DE Cq @@ -8077,7 +8150,7 @@ Np ts qx ts -hE +ts iG "} (8,1,1) = {" @@ -8489,7 +8562,7 @@ sJ iG "} (20,1,1) = {" -hE +aB SI kK LJ @@ -9000,7 +9073,7 @@ iG "} (35,1,1) = {" iG -hE +wn ea pc cH @@ -9028,7 +9101,7 @@ FE nA yE AA -hE +aa iG iG "} @@ -9038,7 +9111,7 @@ iG DS DS DS -hE +hk iG iG iG @@ -9058,7 +9131,7 @@ iG iG iG iG -hE +CY qc qc FE diff --git a/_maps/shuttles/subshuttles/frontiersmen_gut.dmm b/_maps/shuttles/subshuttles/frontiersmen_gut.dmm index 6044e1011891..d27da7c54e5e 100644 --- a/_maps/shuttles/subshuttles/frontiersmen_gut.dmm +++ b/_maps/shuttles/subshuttles/frontiersmen_gut.dmm @@ -61,7 +61,8 @@ /area/ship/storage) "dJ" = ( /obj/machinery/porta_turret/ship/ballistic{ - dir = 5 + dir = 5; + id = "gut_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal, /area/ship/storage) @@ -305,6 +306,10 @@ dir = 9 }, /obj/machinery/computer/helm, +/obj/machinery/turretid/ship{ + pixel_y = 24; + id = "gut_grid" + }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/storage) "sk" = ( @@ -397,7 +402,8 @@ /area/ship/storage) "vJ" = ( /obj/machinery/porta_turret/ship/ballistic{ - dir = 9 + dir = 9; + id = "gut_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal, /area/ship/storage) @@ -478,7 +484,8 @@ /area/ship/storage) "GQ" = ( /obj/machinery/porta_turret/ship/ballistic{ - dir = 5 + dir = 5; + id = "gut_grid" }, /turf/closed/wall/mineral/plastitanium, /area/ship/storage) @@ -576,7 +583,8 @@ /area/ship/storage) "RY" = ( /obj/machinery/porta_turret/ship/ballistic{ - dir = 9 + dir = 9; + id = "gut_grid" }, /turf/closed/wall/mineral/plastitanium, /area/ship/storage) diff --git a/_maps/shuttles/subshuttles/inteq_anvil.dmm b/_maps/shuttles/subshuttles/inteq_anvil.dmm index 4a4c4073ced1..002ddfe6d0d3 100644 --- a/_maps/shuttles/subshuttles/inteq_anvil.dmm +++ b/_maps/shuttles/subshuttles/inteq_anvil.dmm @@ -194,7 +194,8 @@ "x" = ( /obj/machinery/porta_turret/ship/weak{ faction = list("playerInteq","turret"); - dir = 1 + dir = 9; + id = "anvil_grid" }, /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/bridge) @@ -225,10 +226,11 @@ /obj/effect/turf_decal/corner/opaque/yellow, /obj/structure/chair/comfy/shuttle, /obj/effect/landmark/ert_shuttle_spawn, -/obj/machinery/turretid{ - pixel_y = 25 - }, /obj/machinery/light/directional/east, +/obj/machinery/turretid/ship{ + pixel_y = 24; + id = "anvil_grid" + }, /turf/open/floor/plasteel/dark, /area/ship/bridge) "B" = ( @@ -386,7 +388,9 @@ /area/ship/bridge) "T" = ( /obj/machinery/porta_turret/ship/weak{ - faction = list("playerInteq","turret") + faction = list("playerInteq","turret"); + dir = 10; + id = "anvil_grid" }, /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/bridge) diff --git a/_maps/shuttles/subshuttles/pgf_nail.dmm b/_maps/shuttles/subshuttles/pgf_nail.dmm index 02255b90a5c0..6b0c12bc7f53 100644 --- a/_maps/shuttles/subshuttles/pgf_nail.dmm +++ b/_maps/shuttles/subshuttles/pgf_nail.dmm @@ -115,6 +115,11 @@ /obj/structure/chair/comfy/shuttle{ dir = 8 }, +/obj/machinery/turretid/ship{ + pixel_y = -30; + pixel_x = -2; + id = "nail_grid" + }, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "p" = ( @@ -390,9 +395,10 @@ /obj/structure/cable{ icon_state = "0-4" }, -/obj/machinery/porta_turret/ship/weak{ +/obj/machinery/porta_turret/ship/pgf/light{ dir = 8; - mode = 1 + mode = 1; + id = "nail_grid" }, /turf/open/floor/engine/hull/reinforced/interior, /area/ship/external/dark) diff --git a/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm b/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm index ffc2472b5dec..67eaf609e080 100644 --- a/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm +++ b/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm @@ -887,13 +887,6 @@ /obj/effect/landmark/observer_start, /turf/open/floor/plasteel/white, /area/ship/hallway/central) -"tV" = ( -/obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 4; - pixel_x = 8 - }, -/turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) "uq" = ( /obj/effect/turf_decal/spline/fancy/opaque/syndiered{ dir = 10 @@ -902,10 +895,11 @@ /area/ship/bridge) "uR" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 9 + dir = 9; + id = "kansatsu_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "vk" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -1135,10 +1129,11 @@ /area/ship/cargo) "Ah" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 6 + dir = 6; + id = "kansatsu_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "AM" = ( /obj/effect/turf_decal/trimline/opaque/syndiered/filled/warning, /obj/effect/turf_decal/trimline/opaque/syndiered/filled/warning{ @@ -1194,10 +1189,11 @@ /area/ship/crew/dorm) "CR" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 10 + dir = 10; + id = "kansatsu_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "CU" = ( /obj/machinery/power/smes/shuttle/precharged{ dir = 4 @@ -1313,7 +1309,7 @@ /obj/machinery/porta_turret/ship/syndicate/weak{ dir = 4; pixel_x = 8; - pixel_y = 4 + id = "kansatsu_grid" }, /turf/closed/wall/mineral/plastitanium, /area/ship/bridge) @@ -1417,10 +1413,11 @@ /area/ship/bridge) "KA" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 5 + dir = 5; + id = "kansatsu_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "KP" = ( /obj/structure/closet/wall/directional/north{ name = "emergency rum cabinet" @@ -1457,10 +1454,11 @@ dir = 4; name = "Captain's Chair" }, -/obj/machinery/turretid{ - pixel_y = 28 - }, /obj/effect/turf_decal/trimline/opaque/bar, +/obj/machinery/turretid/ship{ + pixel_y = 26; + id = "kansatsu_grid" + }, /turf/open/floor/plasteel/dark, /area/ship/bridge) "MH" = ( @@ -2302,7 +2300,7 @@ YQ YQ YQ YQ -tV +GV bO bO dA diff --git a/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm b/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm index 3649eed505b2..66133d79d47a 100644 --- a/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm +++ b/_maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm @@ -333,6 +333,13 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, /turf/open/floor/mineral/plastitanium/red, /area/ship/security/armory) +"ge" = ( +/obj/machinery/porta_turret/ship/syndicate{ + dir = 2; + id = "hyena_grid" + }, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/ship/crew/dorm) "gg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, @@ -1619,15 +1626,19 @@ /turf/open/floor/plasteel/tech, /area/ship/hallway/central) "BG" = ( -/obj/machinery/porta_turret/ship/ballistic, +/obj/machinery/porta_turret/ship/syndicate{ + dir = 8; + id = "hyena_grid" + }, /turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) +/area/ship/storage) "BR" = ( /obj/machinery/porta_turret/ship/syndicate{ - dir = 1 + dir = 1; + id = "hyena_grid" }, /turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) +/area/ship/maintenance/port) "BZ" = ( /obj/structure/window/reinforced/tinted/frosted, /obj/machinery/suit_storage_unit/inherit{ @@ -2291,9 +2302,12 @@ /turf/open/floor/carpet/red_gold, /area/ship/bridge) "NA" = ( -/obj/machinery/porta_turret/ship/syndicate, +/obj/machinery/porta_turret/ship/syndicate{ + dir = 2; + id = "hyena_grid" + }, /turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ship/bridge) +/area/ship/maintenance/starboard) "NF" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/cargo) @@ -2459,10 +2473,11 @@ /area/ship/cargo) "Qz" = ( /obj/machinery/porta_turret/ship/syndicate{ - dir = 6 + dir = 6; + id = "hyena_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/maintenance/fore) "QG" = ( /obj/structure/closet/secure_closet{ anchored = 1; @@ -2861,8 +2876,9 @@ /turf/open/floor/carpet/red_gold, /area/ship/bridge) "Up" = ( -/obj/machinery/porta_turret/ship/syndicate/heavy{ - dir = 4 +/obj/machinery/porta_turret/ship/syndicate{ + dir = 4; + id = "hyena_grid" }, /turf/closed/wall/mineral/plastitanium, /area/ship/bridge) @@ -2878,10 +2894,11 @@ /area/ship/crew) "UN" = ( /obj/machinery/porta_turret/ship/syndicate{ - dir = 1 + dir = 1; + id = "hyena_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/hallway/central) "UX" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/crew) @@ -3581,7 +3598,7 @@ UX GV GV GV -NA +ge nn Zb "} diff --git a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm index d218dc5581b1..2b4cfd484e98 100644 --- a/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm +++ b/_maps/shuttles/syndicate/syndicate_gorlex_komodo.dmm @@ -122,6 +122,9 @@ }, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) +"bC" = ( +/turf/template_noop, +/area/ship/cargo) "bM" = ( /obj/effect/turf_decal/industrial/warning{ dir = 8 @@ -312,10 +315,11 @@ /area/ship/hallway/central) "ea" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 6 + dir = 6; + id = "komodo_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/maintenance/starboard) "en" = ( /obj/structure/railing/corner{ dir = 8 @@ -1126,10 +1130,11 @@ /area/ship/crew/canteen) "kG" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 1 + dir = 1; + id = "komodo_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/hallway/central) "kI" = ( /turf/open/floor/engine, /area/ship/bridge) @@ -1315,6 +1320,13 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/tech, /area/ship/engineering) +"mq" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 1; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/cargo) "my" = ( /obj/machinery/atmospherics/pipe/simple/orange/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, @@ -1681,10 +1693,11 @@ /area/ship/engineering) "pN" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 9 + dir = 9; + id = "komodo_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "qf" = ( /obj/structure/railing{ dir = 8 @@ -1892,10 +1905,11 @@ /area/ship/bridge) "rS" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 5 + dir = 5; + id = "komodo_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/maintenance/port) "rX" = ( /obj/effect/turf_decal/industrial/warning{ dir = 1 @@ -2914,9 +2928,12 @@ /turf/open/floor/plasteel/tech, /area/ship/bridge) "Bx" = ( -/obj/machinery/porta_turret/ship/syndicate/weak, +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 10; + id = "komodo_grid" + }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/crew/dorm) "BK" = ( /obj/effect/turf_decal/box, /obj/machinery/shower{ @@ -2968,6 +2985,13 @@ }, /turf/open/floor/mineral/plastitanium/red, /area/ship/engineering) +"BU" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 2; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/security/armory) "BY" = ( /obj/effect/turf_decal/industrial/warning/corner{ dir = 1 @@ -3113,6 +3137,13 @@ "Ep" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ship/cargo) +"Es" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 9; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/cargo) "EB" = ( /obj/structure/closet/crate{ name = "food crate" @@ -3442,6 +3473,13 @@ /obj/structure/catwalk/over, /turf/open/floor/plating, /area/ship/engineering) +"Hx" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 2; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/hallway/central) "HF" = ( /obj/effect/turf_decal/industrial/warning{ dir = 4 @@ -3754,6 +3792,13 @@ }, /turf/open/floor/mineral/plastitanium/red, /area/ship/hallway/central) +"KJ" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 10; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/starboard) "KK" = ( /obj/structure/closet/wall/orange/directional/south{ name = "Engineering locker" @@ -4142,8 +4187,8 @@ /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/airalarm/directional/north, -/obj/machinery/turretid{ - pixel_y = 2 +/obj/machinery/turretid/ship{ + id = "komodo_grid" }, /turf/open/floor/plasteel/dark, /area/ship/bridge) @@ -4181,10 +4226,11 @@ /area/ship/hallway/central) "OP" = ( /obj/machinery/porta_turret/ship/syndicate/weak{ - dir = 10 + dir = 10; + id = "komodo_grid" }, /turf/closed/wall/mineral/plastitanium, -/area/ship/bridge) +/area/ship/engineering) "OQ" = ( /turf/closed/wall/mineral/plastitanium, /area/ship/maintenance/starboard) @@ -4560,6 +4606,13 @@ }, /turf/open/floor/plasteel/tech, /area/ship/bridge) +"RX" = ( +/obj/machinery/porta_turret/ship/syndicate/weak{ + dir = 9; + id = "komodo_grid" + }, +/turf/closed/wall/mineral/plastitanium, +/area/ship/maintenance/port) "RZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -5735,7 +5788,7 @@ CM "} (11,1,1) = {" CM -CM +bC Ep uJ es @@ -5755,7 +5808,7 @@ Bx "} (12,1,1) = {" CM -kG +Es Ep jA jA @@ -5895,7 +5948,7 @@ tf "} (19,1,1) = {" CM -kG +mq Ep Ep We @@ -5911,7 +5964,7 @@ gE wT Im gE -Bx +BU "} (20,1,1) = {" CM @@ -5970,7 +6023,7 @@ Dd Dd Dd Dd -Bx +Hx CM "} (23,1,1) = {" @@ -6135,7 +6188,7 @@ CM "} (31,1,1) = {" CM -pN +RX gN nU iL @@ -6151,7 +6204,7 @@ Dd JJ Hc OQ -OP +KJ "} (32,1,1) = {" CM diff --git a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm index bca4d457916a..30ce8ed19013 100644 --- a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm +++ b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm @@ -263,11 +263,6 @@ "bQ" = ( /obj/effect/turf_decal/corner/opaque/syndiered/bordercorner, /obj/machinery/light/directional/north, -/obj/machinery/turretid{ - pixel_y = 32; - req_access = null; - req_access_txt = "150" - }, /obj/effect/turf_decal/spline/fancy/opaque/black/corner, /obj/effect/turf_decal/corner/opaque/syndiered/bordercorner{ dir = 4 @@ -1559,6 +1554,15 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/tech/grid, /area/ship/bridge) +"iX" = ( +/obj/machinery/porta_turret/ship/syndicate/heavy{ + dir = 10; + id = "twink_grid" + }, +/turf/closed/wall/r_wall/syndicate/nodiagonal{ + rad_insulation = 0 + }, +/area/ship/engineering/atmospherics) "iZ" = ( /obj/effect/turf_decal/trimline/opaque/syndiered/filled/line{ dir = 1 @@ -2178,12 +2182,13 @@ /area/ship/engineering/engine) "ms" = ( /obj/machinery/porta_turret/ship/syndicate/heavy{ - dir = 9 + dir = 9; + id = "twink_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal{ rad_insulation = 0 }, -/area/ship/bridge) +/area/ship/engineering/atmospherics) "mt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/atmos/nitrogen_output{ dir = 8 @@ -3631,12 +3636,13 @@ /area/ship/engineering/atmospherics) "vd" = ( /obj/machinery/porta_turret/ship/syndicate/heavy{ - dir = 5 + dir = 5; + id = "twink_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal{ rad_insulation = 0 }, -/area/ship/bridge) +/area/ship/hallway/port) "vl" = ( /obj/machinery/sleeper/syndie{ dir = 8 @@ -6691,12 +6697,13 @@ /area/ship/engineering/engine) "Mr" = ( /obj/machinery/porta_turret/ship/syndicate/heavy{ - dir = 6 + dir = 6; + id = "twink_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal{ rad_insulation = 0 }, -/area/ship/bridge) +/area/ship/hallway/starboard) "Mw" = ( /obj/effect/turf_decal/industrial/caution/red, /obj/effect/decal/cleanable/shreds{ @@ -7954,6 +7961,15 @@ /obj/machinery/vending/tool, /turf/open/floor/plasteel/dark, /area/ship/engineering/atmospherics) +"TH" = ( +/obj/machinery/porta_turret/ship/syndicate/heavy{ + dir = 9; + id = "twink_grid" + }, +/turf/closed/wall/r_wall/syndicate/nodiagonal{ + rad_insulation = 0 + }, +/area/ship/crew/canteen) "TI" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -8390,12 +8406,13 @@ /area/ship/crew/cryo) "We" = ( /obj/machinery/porta_turret/ship/syndicate/heavy{ - dir = 10 + dir = 10; + id = "twink_grid" }, /turf/closed/wall/r_wall/syndicate/nodiagonal{ rad_insulation = 0 }, -/area/ship/bridge) +/area/ship/security) "Wj" = ( /obj/effect/turf_decal/corner/opaque/syndiered{ dir = 5 @@ -8568,6 +8585,13 @@ dir = 8 }, /obj/machinery/fax/syndicate, +/obj/machinery/turretid/ship{ + pixel_y = 24; + pixel_x = -5; + id = "twink_grid"; + req_access = null; + req_access_txt = "150" + }, /turf/open/floor/mineral/plastitanium, /area/ship/bridge) "Xf" = ( @@ -9118,7 +9142,7 @@ FR FR LX ae -We +iX mp mp mp @@ -9617,7 +9641,7 @@ mp mp "} (17,1,1) = {" -ms +TH xj xj xj diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 884c103d0e0f..33e493b3819e 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -101,6 +101,9 @@ DEFINE_BITFIELD(turret_flags, list( var/datum/action/turret_toggle/toggle_action /// Mob that is remotely controlling the turret var/mob/remote_controller + /// For connecting to additional turrets + var/id = "" + /obj/machinery/porta_turret/Initialize() . = ..() @@ -122,6 +125,13 @@ DEFINE_BITFIELD(turret_flags, list( if(!has_cover) INVOKE_ASYNC(src, PROC_REF(popUp)) +/obj/machinery/porta_turret/connect_to_shuttle(obj/docking_port/mobile/port, obj/docking_port/stationary/dock) + id = "[REF(port)][id]" + port.turret_list |= WEAKREF(src) + +/obj/machinery/porta_turret/disconnect_from_shuttle(obj/docking_port/mobile/port) + port.turret_list -= WEAKREF(src) + /obj/machinery/porta_turret/proc/toggle_on(set_to) var/current = on if (!isnull(set_to)) @@ -901,7 +911,7 @@ DEFINE_BITFIELD(turret_flags, list( base_icon_state = "control" density = FALSE req_access = list(ACCESS_AI_UPLOAD) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF /// Variable dictating if linked turrets are active and will shoot targets var/enabled = TRUE /// Variable dictating if linked turrets will shoot lethal projectiles @@ -916,6 +926,8 @@ DEFINE_BITFIELD(turret_flags, list( var/shoot_cyborgs = FALSE /// List of all linked turrets var/list/turrets = list() + ///id for connecting to additional turrets + var/id = "" /obj/machinery/turretid/Initialize(mapload, ndir = 0, built = 0) . = ..() @@ -935,17 +947,13 @@ DEFINE_BITFIELD(turret_flags, list( if(!mapload) return - if(control_area) - control_area = get_area_instance_from_text(control_area) - if(control_area == null) - control_area = get_area(src) - stack_trace("Bad control_area path for [src], [src.control_area]") - else if(!control_area) - control_area = get_area(src) - - for(var/obj/machinery/porta_turret/T in control_area) - turrets |= T - T.cp = src +/obj/machinery/turretid/connect_to_shuttle(obj/docking_port/mobile/port, obj/docking_port/stationary/dock) + id = "[REF(port)][id]" + for(var/datum/weakref/ship_guns in port.turret_list) + var/obj/machinery/porta_turret/turret_gun = ship_guns.resolve() + if(turret_gun.id == id) + turrets |= turret_gun + turret_gun.cp = src /obj/machinery/turretid/examine(mob/user) . += ..() @@ -970,7 +978,8 @@ DEFINE_BITFIELD(turret_flags, list( if (issilicon(user)) return attack_hand(user) - if (get_dist(src, user) == 0) // trying to unlock the interface + // trying to unlock the interface + if (in_range(src, user)) if (allowed(usr)) if(obj_flags & EMAGGED) to_chat(user, "The turret control is unresponsive!") @@ -1069,6 +1078,10 @@ DEFINE_BITFIELD(turret_flags, list( /obj/machinery/turretid/lethal lethal = TRUE +/obj/machinery/turretid/ship + req_ship_access = TRUE + + /obj/item/wallframe/turret_control name = "turret control frame" desc = "Used for building turret control panels." @@ -1114,3 +1127,4 @@ DEFINE_BITFIELD(turret_flags, list( /obj/item/gun/energy/e_gun/turret/get_turret_properties() . = ..() + diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index 14a7497728a9..084d4a49f3e7 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -321,6 +321,9 @@ ///A list of all gravity generators currently linked to the shuttle. var/list/gravgen_list = list() + ///A list of all turrets currently linked to the shuttle. + var/list/turret_list = list() + ///if this shuttle can move docking ports other than the one it is docked at var/can_move_docking_ports = TRUE From 61653ee207db8914b6f09f2b445f0dba776459bf Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sat, 21 Sep 2024 17:43:09 -0500 Subject: [PATCH 25/61] Automatic changelog generation for PR #3386 [ci skip] --- html/changelogs/AutoChangeLog-pr-3386.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3386.yml diff --git a/html/changelogs/AutoChangeLog-pr-3386.yml b/html/changelogs/AutoChangeLog-pr-3386.yml new file mode 100644 index 000000000000..11e69ae29114 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3386.yml @@ -0,0 +1,6 @@ +author: Bjarl +changes: + - {code_imp: Ship Turrets can now be attached to control consoles outside the area + they are in. please look at ship maps for examples on how.} + - {rscadd: Every single ship with turrets now does the above} +delete-after: true From 5fcefb2f92ab1f4b6a674212b3728ada0208a614 Mon Sep 17 00:00:00 2001 From: Sadhorizon <108196626+Sadhorizon@users.noreply.github.com> Date: Sun, 22 Sep 2024 00:39:18 +0200 Subject: [PATCH 26/61] Panacea is no longer an indie ship. (#3404) ## Why It's Good For The Game ![obraz](https://github.com/user-attachments/assets/71ba7d3d-7152-4de1-ba8b-398a6bcb993e) ## About The Pull Request Yeah. _Someone_ forgot to define the faction. ## Changelog :cl: fix: Panacea-class is no longer an independent ship. /:cl: --- _maps/configs/syndicate_panacea.json | 1 + 1 file changed, 1 insertion(+) diff --git a/_maps/configs/syndicate_panacea.json b/_maps/configs/syndicate_panacea.json index 5ac45d571829..f56158d9d9df 100644 --- a/_maps/configs/syndicate_panacea.json +++ b/_maps/configs/syndicate_panacea.json @@ -3,6 +3,7 @@ "map_name": "Panacea-class Infirm Vessel", "map_short_name": "Panacea-class", "map_path": "_maps/shuttles/syndicate/syndicate_panacea.dmm", + "faction": "/datum/faction/syndicate/suns", "description": "Shortly after Solcon breached the Oort Cloud, SUNS joined into the Syndicate Coalition. Holding close ties to both the ACLF and GEC, students jumped at the opportunity to see the rest of the galaxy. The Panacea-class was the first of its kind out of Sol, moving typically planetside inpatient care to a space vessel and jumping system to system. The Panacea class is a moderately well supplied ship, allowing for emergency pharmaceutical compounding, mental and physical therapy, and general medical work, while doubling as a student run vessel.", "tags": [ "Generalist", From d0653887b9931b03c6826a619c8d4215608ed13f Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sat, 21 Sep 2024 17:56:34 -0500 Subject: [PATCH 27/61] Automatic changelog generation for PR #3404 [ci skip] --- html/changelogs/AutoChangeLog-pr-3404.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3404.yml diff --git a/html/changelogs/AutoChangeLog-pr-3404.yml b/html/changelogs/AutoChangeLog-pr-3404.yml new file mode 100644 index 000000000000..cff14d5c16ac --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3404.yml @@ -0,0 +1,4 @@ +author: Sadhorizon +changes: + - {bugfix: Panacea-class is no longer an independent ship.} +delete-after: true From e03aaab3b3a2b1a6fd8c1fa4b71d64308e0974a3 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sun, 22 Sep 2024 01:06:26 +0000 Subject: [PATCH 28/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3386.yml | 6 ------ html/changelogs/AutoChangeLog-pr-3400.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3404.yml | 4 ---- html/changelogs/archive/2024-09.yml | 9 +++++++++ 4 files changed, 9 insertions(+), 14 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3386.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3400.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3404.yml diff --git a/html/changelogs/AutoChangeLog-pr-3386.yml b/html/changelogs/AutoChangeLog-pr-3386.yml deleted file mode 100644 index 11e69ae29114..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3386.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: Bjarl -changes: - - {code_imp: Ship Turrets can now be attached to control consoles outside the area - they are in. please look at ship maps for examples on how.} - - {rscadd: Every single ship with turrets now does the above} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3400.yml b/html/changelogs/AutoChangeLog-pr-3400.yml deleted file mode 100644 index 3149437636dc..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3400.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: PositiveEntropy -changes: - - {rscadd: Gorlex Splinters now have winter coats!} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3404.yml b/html/changelogs/AutoChangeLog-pr-3404.yml deleted file mode 100644 index cff14d5c16ac..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3404.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Sadhorizon -changes: - - {bugfix: Panacea-class is no longer an independent ship.} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index c3b2ce482d47..fdd6138dd8c3 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -124,3 +124,12 @@ Sadhorizon: - rscadd: Added "ballistic goggles" - new indie security clothing item. - imageadd: Added Kepori bulletproof helmet sprites. +2024-09-22: + Bjarl: + - code_imp: Ship Turrets can now be attached to control consoles outside the area + they are in. please look at ship maps for examples on how. + - rscadd: Every single ship with turrets now does the above + PositiveEntropy: + - rscadd: Gorlex Splinters now have winter coats! + Sadhorizon: + - bugfix: Panacea-class is no longer an independent ship. From 05f9de18e4cb3a640f74ff6420230a48159ee79b Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:08:08 -0400 Subject: [PATCH 29/61] Adds Flares To Outpost (#3393) ## About The Pull Request You can now buy flares at the outpost ## Why It's Good For The Game flares r cool ## Changelog :cl: add: You can now buy flares at the outpost /:cl: --- code/modules/cargo/packs/exploration.dm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/code/modules/cargo/packs/exploration.dm b/code/modules/cargo/packs/exploration.dm index e88cf65a3931..5f70f2b9c2a1 100644 --- a/code/modules/cargo/packs/exploration.dm +++ b/code/modules/cargo/packs/exploration.dm @@ -129,3 +129,14 @@ contains = list( /obj/item/gps ) + +/datum/supply_pack/exploration/flares + name = "Flare Supply Pack" + desc = "Contains 4 boxes of flares (28 total)! Great for lighting things up." + cost = 100 + contains = list( + /obj/item/storage/box/flares, + /obj/item/storage/box/flares, + /obj/item/storage/box/flares, + /obj/item/storage/box/flares, + ) From b4148db6343b73c1e548f99588a98b00d502b3c2 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sun, 22 Sep 2024 19:21:32 -0500 Subject: [PATCH 30/61] Automatic changelog generation for PR #3393 [ci skip] --- html/changelogs/AutoChangeLog-pr-3393.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3393.yml diff --git a/html/changelogs/AutoChangeLog-pr-3393.yml b/html/changelogs/AutoChangeLog-pr-3393.yml new file mode 100644 index 000000000000..a1dfc982948e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3393.yml @@ -0,0 +1,4 @@ +author: Bjarl +changes: + - {rscadd: You can now buy flares at the outpost} +delete-after: true From b84274d49f6bc55c210982ec3f5902ee34ff934e Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:09:33 -0400 Subject: [PATCH 31/61] Adds new wasteplanet cave type (#3374) ## About The Pull Request Concrete Caves. They're caves but cement. ![dreamseeker_GF0CtB249n](https://github.com/user-attachments/assets/489c2127-0a7d-42f8-a7cf-49d14515433b) ![dreamseeker_3Ko7axdwIy](https://github.com/user-attachments/assets/d76b67ef-6d5f-483d-b569-6457dc983dff) ## Why It's Good For The Game planetary variety. ## Changelog :cl: add: Wasteplanets now will generate concrete filled caves. /:cl: --- .../datums/mapgen/planetary/WasteGenerator.dm | 65 ++++++++++++++--- .../turfs/open/floor/plating/wasteplanet.dm | 71 +++++++++++++++++++ 2 files changed, 125 insertions(+), 11 deletions(-) diff --git a/code/datums/mapgen/planetary/WasteGenerator.dm b/code/datums/mapgen/planetary/WasteGenerator.dm index 9b100412a391..67a9e5649a8c 100644 --- a/code/datums/mapgen/planetary/WasteGenerator.dm +++ b/code/datums/mapgen/planetary/WasteGenerator.dm @@ -66,9 +66,9 @@ BIOME_COLD_CAVE = list( BIOME_LOWEST_HUMIDITY = /datum/biome/cave/waste, BIOME_LOW_HUMIDITY = /datum/biome/cave/waste/rad, - BIOME_MEDIUM_HUMIDITY = /datum/biome/cave/waste, - BIOME_HIGH_HUMIDITY = /datum/biome/cave/waste/rad, - BIOME_HIGHEST_HUMIDITY = /datum/biome/cave/waste + BIOME_MEDIUM_HUMIDITY = /datum/biome/cave/waste/conc, + BIOME_HIGH_HUMIDITY = /datum/biome/cave/waste/conc, + BIOME_HIGHEST_HUMIDITY = /datum/biome/cave/waste/conc ), BIOME_WARM_CAVE = list( BIOME_LOWEST_HUMIDITY = /datum/biome/cave/waste, @@ -284,10 +284,10 @@ closed_turf_types = list( /turf/closed/mineral/random/wasteplanet = 40, - /turf/closed/wall/r_wall = 1, - /turf/closed/wall/r_wall/rust = 3, - /turf/closed/wall = 2, - /turf/closed/wall/rust = 6 + /turf/closed/wall/r_wall/wasteplanet = 1, + /turf/closed/wall/r_wall/rust/wasteplanet = 3, + /turf/closed/wall/wasteplanet = 2, + /turf/closed/wall/rust/wasteplanet = 6 ) flora_spawn_list = list( @@ -381,10 +381,10 @@ /turf/open/floor/plating/wasteplanet = 4 ) closed_turf_types = list( - /turf/closed/wall/r_wall = 1, - /turf/closed/wall/r_wall/rust = 1, - /turf/closed/wall = 5, - /turf/closed/wall/rust = 10 + /turf/closed/wall/r_wall/wasteplanet = 1, + /turf/closed/wall/r_wall/rust/wasteplanet = 1, + /turf/closed/wall/wasteplanet = 5, + /turf/closed/wall/rust/wasteplanet = 10 ) flora_spawn_list = list( /obj/effect/spawner/lootdrop/waste/mechwreck = 40, @@ -450,3 +450,46 @@ /obj/effect/spawner/minefield/manhack = 2 ) feature_spawn_chance = 2 //hivebot biomes should have their dongles + +/datum/biome/cave/waste/conc //da concrete jungle baybee + open_turf_types = list( + /turf/open/floor/concrete/wasteplanet = 10, + /turf/open/floor/concrete/reinforced/wasteplanet = 4, + /turf/open/floor/concrete/pavement/wasteplanet = 4 + ) + closed_turf_types = list( + /turf/closed/wall/concrete/wasteplanet = 15, + /turf/closed/wall/concrete/reinforced/wasteplanet = 3 + ) + + flora_spawn_list = list( + /obj/effect/spawner/lootdrop/waste/mechwreck = 20, + /obj/effect/spawner/lootdrop/waste/trash = 90, + /obj/effect/spawner/lootdrop/waste/radiation = 16, + /obj/structure/reagent_dispensers/fueltank = 10, + /obj/structure/reagent_dispensers/watertank = 20, + /obj/item/stack/cable_coil/cut = 50, + /obj/structure/closet/crate/secure/loot = 3, + /obj/effect/spawner/lootdrop/waste/atmos_can = 5, + /obj/effect/spawner/lootdrop/waste/atmos_can/rare = 1, + /obj/effect/spawner/lootdrop/waste/salvageable = 30, + /obj/effect/spawner/lootdrop/maintenance = 2, + /obj/effect/spawner/lootdrop/maintenance/two = 5, + /obj/effect/spawner/lootdrop/maintenance/three = 10, + /obj/effect/spawner/lootdrop/waste/salvageable = 40, + ) + mob_spawn_list = list( + /mob/living/simple_animal/hostile/hivebot/wasteplanet/strong = 80, + /mob/living/simple_animal/hostile/hivebot/wasteplanet/ranged = 50, + /mob/living/simple_animal/hostile/hivebot/wasteplanet/ranged/rapid = 50, + /mob/living/simple_animal/bot/firebot/rockplanet = 15, + /mob/living/simple_animal/bot/secbot/ed209/rockplanet = 3, + /mob/living/simple_animal/hostile/abandoned_minebot = 15, + /mob/living/simple_animal/bot/floorbot/rockplanet = 15, + /obj/structure/spawner/hivebot = 35 + ) + + flora_spawn_chance = 30 + feature_spawn_chance = 8 + mob_spawn_chance = 5 + diff --git a/code/game/turfs/open/floor/plating/wasteplanet.dm b/code/game/turfs/open/floor/plating/wasteplanet.dm index 011cab93d28a..3cf9b047662c 100644 --- a/code/game/turfs/open/floor/plating/wasteplanet.dm +++ b/code/game/turfs/open/floor/plating/wasteplanet.dm @@ -58,6 +58,43 @@ initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS planetary_atmos = TRUE +//cement + +/turf/open/floor/concrete/wasteplanet + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + +/turf/open/floor/concrete/wasteplanet/Initialize() + . = ..() + icon_state = pick(list( + "conc_smooth", + "conc_slab_1", + "conc_slab_2", + "conc_slab_3", + "conc_slab_4", + "conc_tiles" + )) + +/turf/open/floor/concrete/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) + return + +/turf/open/floor/concrete/reinforced/wasteplanet + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + +/turf/open/floor/concrete/reinforced/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) + return + +/turf/open/floor/concrete/pavement/wasteplanet + initial_gas_mix = WASTEPLANET_DEFAULT_ATMOS + planetary_atmos = TRUE + baseturfs = /turf/open/floor/plating/asteroid/wasteplanet + +/turf/open/floor/concrete/pavement/wasteplanet/MakeSlippery(wet_setting, min_wet_time, wet_time_to_add, max_wet_time, permanent) + return + //open turfs then open lits. /turf/open/floor/plating/wasteplanet/lit @@ -94,3 +131,37 @@ light_range = 2 light_power = 0.2 light_color = LIGHT_COLOR_FLARE + +/turf/open/floor/concrete/wasteplanet/lit + light_range = 2 + light_power = 0.2 + light_color = LIGHT_COLOR_FLARE + +/turf/open/floor/concrete/reinforced/wasteplanet/lit + light_range = 2 + light_power = 0.2 + light_color = LIGHT_COLOR_FLARE + +/turf/open/floor/concrete/pavement/wasteplanet/lit + light_range = 2 + light_power = 0.2 + light_color = LIGHT_COLOR_FLARE + +//closed turfs are a thing +/turf/closed/wall/r_wall/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet + +/turf/closed/wall/r_wall/rust/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet/rust + +/turf/closed/wall/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet + +/turf/closed/wall/rust/wasteplanet + baseturfs = /turf/open/floor/plating/wasteplanet/rust + +/turf/closed/wall/concrete/wasteplanet + baseturfs = /turf/open/floor/concrete/wasteplanet + +/turf/closed/wall/concrete/reinforced/wasteplanet + baseturfs = /turf/open/floor/concrete/wasteplanet From 468b8d9e9f675382c1cbe8806e2fd917bfc05bda Mon Sep 17 00:00:00 2001 From: Changelogs Date: Sun, 22 Sep 2024 19:34:50 -0500 Subject: [PATCH 32/61] Automatic changelog generation for PR #3374 [ci skip] --- html/changelogs/AutoChangeLog-pr-3374.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3374.yml diff --git a/html/changelogs/AutoChangeLog-pr-3374.yml b/html/changelogs/AutoChangeLog-pr-3374.yml new file mode 100644 index 000000000000..94c17bced2e2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3374.yml @@ -0,0 +1,4 @@ +author: Bjarl +changes: + - {rscadd: Wasteplanets now will generate concrete filled caves.} +delete-after: true From 0f9fe9af69403c5f268a7b8920e11f474a7c23b7 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 01:02:24 +0000 Subject: [PATCH 33/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3374.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3393.yml | 4 ---- html/changelogs/archive/2024-09.yml | 4 ++++ 3 files changed, 4 insertions(+), 8 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3374.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3393.yml diff --git a/html/changelogs/AutoChangeLog-pr-3374.yml b/html/changelogs/AutoChangeLog-pr-3374.yml deleted file mode 100644 index 94c17bced2e2..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3374.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Bjarl -changes: - - {rscadd: Wasteplanets now will generate concrete filled caves.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3393.yml b/html/changelogs/AutoChangeLog-pr-3393.yml deleted file mode 100644 index a1dfc982948e..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3393.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Bjarl -changes: - - {rscadd: You can now buy flares at the outpost} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index fdd6138dd8c3..d6027a6f2a58 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -133,3 +133,7 @@ - rscadd: Gorlex Splinters now have winter coats! Sadhorizon: - bugfix: Panacea-class is no longer an independent ship. +2024-09-23: + Bjarl: + - rscadd: You can now buy flares at the outpost + - rscadd: Wasteplanets now will generate concrete filled caves. From 6da28a5161805771be06abdc6f3c63016a4202d1 Mon Sep 17 00:00:00 2001 From: HelmCrab <90987989+Thera-Pissed@users.noreply.github.com> Date: Mon, 23 Sep 2024 00:04:23 -0500 Subject: [PATCH 34/61] removes the B.E.P.I.S. (#3414) ## About The Pull Request Removes the BEPIS and related tech nodes. Removes BEPIS disks from salvage and maps (just the tranq as of now) ## Why It's Good For The Game BEPIS is slated to be removed in the cargo rework doc, here it is. ## Changelog :cl: del: B.E.P.I.S. and related tech nodes. /:cl: --- .../independent/independent_tranquility.dmm | 4 - code/controllers/subsystem/research.dm | 3 - .../circuitboards/machine_circuitboards.dm | 11 - code/game/objects/structures/salvaging.dm | 3 - code/modules/autowiki/pages/techweb.dm | 9 - code/modules/research/bepis.dm | 275 ------------------ .../research/designs/machine_designs.dm | 8 - code/modules/research/research_disk.dm | 11 - code/modules/research/techweb/_techweb.dm | 13 - .../modules/research/techweb/_techweb_node.dm | 1 - code/modules/research/techweb/all_nodes.dm | 106 +------ shiptest.dme | 1 - tgui/packages/tgui/interfaces/Bepis.js | 123 -------- 13 files changed, 1 insertion(+), 567 deletions(-) delete mode 100644 code/modules/research/bepis.dm delete mode 100644 tgui/packages/tgui/interfaces/Bepis.js diff --git a/_maps/shuttles/independent/independent_tranquility.dmm b/_maps/shuttles/independent/independent_tranquility.dmm index 641a74a202ef..d526a2a79b85 100644 --- a/_maps/shuttles/independent/independent_tranquility.dmm +++ b/_maps/shuttles/independent/independent_tranquility.dmm @@ -6540,10 +6540,6 @@ /obj/effect/turf_decal/techfloor{ dir = 1 }, -/obj/item/disk/tech_disk/major{ - pixel_x = -7; - pixel_y = -5 - }, /obj/item/disk/tech_disk{ pixel_x = -3; pixel_y = -2 diff --git a/code/controllers/subsystem/research.dm b/code/controllers/subsystem/research.dm index c8f3756c27cf..149df9bc9643 100644 --- a/code/controllers/subsystem/research.dm +++ b/code/controllers/subsystem/research.dm @@ -23,7 +23,6 @@ SUBSYSTEM_DEF(research) var/list/techweb_categories = list() //category name = list(node.id = TRUE) var/list/techweb_boost_items = list() //associative double-layer path = list(id = list(point_type = point_discount)) var/list/techweb_nodes_hidden = list() //Node ids that should be hidden by default. - var/list/techweb_nodes_experimental = list() //Node ids that are exclusive to the BEPIS. var/list/techweb_point_items = list( //path = list(point type = value) /obj/item/assembly/signaler/anomaly = list(TECHWEB_POINT_TYPE_GENERIC = 10000) @@ -217,8 +216,6 @@ SUBSYSTEM_DEF(research) D.unlocked_by += node.id if(node.hidden) techweb_nodes_hidden[node.id] = TRUE - if(node.experimental) - techweb_nodes_experimental[node.id] = TRUE CHECK_TICK generate_techweb_unlock_linking() diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm index 1d6a0d61c180..af7addd21a95 100644 --- a/code/game/objects/items/circuitboards/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm @@ -1111,17 +1111,6 @@ /obj/item/stack/sheet/glass = 1) def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial) -/obj/item/circuitboard/machine/bepis - name = "BEPIS Chamber (Machine Board)" - icon_state = "science" - build_path = /obj/machinery/rnd/bepis - req_components = list( - /obj/item/stack/cable_coil = 5, - /obj/item/stock_parts/capacitor = 1, - /obj/item/stock_parts/manipulator = 1, - /obj/item/stock_parts/micro_laser = 1, - /obj/item/stock_parts/scanning_module = 1) - /obj/item/circuitboard/machine/bluespace_miner name = "Bluespace Miner (Machine Board)" build_path = /obj/machinery/power/bluespace_miner diff --git a/code/game/objects/structures/salvaging.dm b/code/game/objects/structures/salvaging.dm index 8d5ee571e2e0..dbd75dac488f 100644 --- a/code/game/objects/structures/salvaging.dm +++ b/code/game/objects/structures/salvaging.dm @@ -242,7 +242,6 @@ /obj/item/research_notes/loot/medium = 20, /obj/item/research_notes/loot/big = 5, //you have a chance at summoning god damn ripley lobster from this thing, might as well - /obj/item/disk/tech_disk/major = 3, /obj/item/disk/tech_disk = 20, /obj/item/disk/data = 20, /obj/item/disk/holodisk = 20, @@ -303,7 +302,6 @@ /obj/item/research_notes/loot/medium = 20, /obj/item/research_notes/loot/big = 5, - /obj/item/disk/tech_disk/major = 3, /obj/item/disk/tech_disk = 20, /obj/item/disk/data = 20, /obj/item/disk/holodisk = 20, @@ -591,7 +589,6 @@ /obj/effect/spawner/lootdrop/random_machine_circuit_common loot = list( /obj/item/circuitboard/machine/autolathe = 5, - /obj/item/circuitboard/machine/bepis = 5, /obj/item/circuitboard/machine/biogenerator = 5, /obj/item/circuitboard/machine/cell_charger = 5, /obj/item/circuitboard/machine/chem_heater = 5, diff --git a/code/modules/autowiki/pages/techweb.dm b/code/modules/autowiki/pages/techweb.dm index 0f4b87f9e2a2..42e58dd1cc66 100644 --- a/code/modules/autowiki/pages/techweb.dm +++ b/code/modules/autowiki/pages/techweb.dm @@ -9,9 +9,6 @@ if (!node.show_on_wiki) continue - if (!valid_node(node)) - continue - output += "\n\n" + include_template("Autowiki/TechwebEntry", list( "name" = escape_value(node.display_name), "description" = escape_value(node.description), @@ -21,9 +18,6 @@ return output -/datum/autowiki/techweb/proc/valid_node(datum/techweb_node/node) - return !node.experimental - /datum/autowiki/techweb/proc/generate_designs(list/design_ids) var/output = "" @@ -50,9 +44,6 @@ /datum/autowiki/techweb/experimental page = "Template:Autowiki/Content/Techweb/Experimental" -/datum/autowiki/techweb/experimental/valid_node(datum/techweb_node/node) - return node.experimental - /proc/sort_research_nodes(node_id_a, node_id_b) var/datum/techweb_node/node_a = SSresearch.techweb_nodes[node_id_a] var/datum/techweb_node/node_b = SSresearch.techweb_nodes[node_id_b] diff --git a/code/modules/research/bepis.dm b/code/modules/research/bepis.dm deleted file mode 100644 index bb56a69adf2b..000000000000 --- a/code/modules/research/bepis.dm +++ /dev/null @@ -1,275 +0,0 @@ -//This system is designed to act as an in-between for cargo and science, and the first major money sink in the game outside of just buying things from cargo (As of 10/9/19, anyway). - -//economics defined values, subject to change should anything be too high or low in practice. - -#define MACHINE_OPERATION 100000 -#define MACHINE_OVERLOAD 500000 -#define MAJOR_THRESHOLD 5500 -#define MINOR_THRESHOLD 3500 -#define STANDARD_DEVIATION 1000 - -/obj/machinery/rnd/bepis - name = "\improper B.E.P.I.S. Chamber" - desc = "A high fidelity testing device which unlocks the secrets of the known universe using the two most powerful substances available to man: excessive amounts of electricity and capital." - icon = 'icons/obj/machines/bepis.dmi' - icon_state = "chamber" - base_icon_state = "chamber" - density = TRUE - layer = ABOVE_MOB_LAYER - use_power = IDLE_POWER_USE - active_power_usage = ACTIVE_DRAW_HIGH - circuit = /obj/item/circuitboard/machine/bepis - - var/banking_amount = 100 - var/banked_cash = 0 //stored player cash - var/datum/bank_account/account //payer's account. - var/account_name //name of the payer's account. - var/error_cause = null - //Vars related to probability and chance of success for testing - var/major_threshold = MAJOR_THRESHOLD - var/minor_threshold = MINOR_THRESHOLD - var/std = STANDARD_DEVIATION //That's Standard Deviation, what did you think it was? - //Stock part variables - var/power_saver = 1 - var/inaccuracy_percentage = 1.5 - var/positive_cash_offset = 0 - var/negative_cash_offset = 0 - var/minor_rewards = list( - //To add a new minor reward, add it here. - /obj/item/stack/circuit_stack/full, - /obj/item/pen/survival, - /obj/item/toy/sprayoncan, - ) - var/static/list/item_list = list() - -/obj/machinery/rnd/bepis/attackby(obj/item/O, mob/user, params) - if(default_deconstruction_screwdriver(user, "chamber_open", "chamber", O)) - update_icon_state() - return - if(default_deconstruction_crowbar(O)) - return - if(!is_operational) - to_chat(user, "[src] can't accept money when it's not functioning.") - return - if(istype(O, /obj/item/holochip) || istype(O, /obj/item/spacecash/bundle)) - var/deposit_value = O.get_item_credit_value() - banked_cash += deposit_value - qdel(O) - say("Deposited [deposit_value] credits into storage.") - update_icon_state() - return - if(istype(O, /obj/item/card/bank)) - var/obj/item/card/bank/bank_card = O - if(bank_card.registered_account) - account = bank_card.registered_account - account_name = bank_card.registered_name - say("New account detected. Console Updated.") - else - say("No account detected on card. Aborting.") - return - return ..() - -/obj/machinery/rnd/bepis/RefreshParts() - var/C = 0 - var/M = 0 - var/L = 0 - var/S = 0 - for(var/obj/item/stock_parts/capacitor/Cap in component_parts) - C += ((Cap.rating - 1) * 0.1) - power_saver = 1 - C - for(var/obj/item/stock_parts/manipulator/Manip in component_parts) - M += ((Manip.rating - 1) * 250) - positive_cash_offset = M - for(var/obj/item/stock_parts/micro_laser/Laser in component_parts) - L += ((Laser.rating - 1) * 250) - negative_cash_offset = L - for(var/obj/item/stock_parts/scanning_module/Scan in component_parts) - S += ((Scan.rating - 1) * 0.25) - inaccuracy_percentage = (1.5 - S) - -/obj/machinery/rnd/bepis/proc/depositcash() - var/deposit_value = 0 - deposit_value = banking_amount - if(deposit_value == 0) - update_icon_state() - say("Attempting to deposit 0 credits. Aborting.") - return - deposit_value = clamp(round(deposit_value, 1), 1, 15000) - if(!account) - say("Cannot find user account. Please swipe a valid ID.") - return - if(!account.has_money(deposit_value)) - say("You do not possess enough credits.") - return - account.adjust_money(-deposit_value, "bepis") //The money vanishes, not paid to any accounts. - SSblackbox.record_feedback("amount", "BEPIS_credits_spent", deposit_value) - log_econ("[deposit_value] credits were inserted into [src] by [account.account_holder]") - banked_cash += deposit_value - use_power(1000 * power_saver) - say("Cash deposit successful. There is [banked_cash] in the chamber.") - update_icon_state() - return - -/obj/machinery/rnd/bepis/proc/withdrawcash() - var/withdraw_value = 0 - withdraw_value = banking_amount - if(withdraw_value > banked_cash) - say("Cannot withdraw more than stored funds. Aborting.") - else - banked_cash -= withdraw_value - new /obj/item/spacecash/bundle(src.loc, withdraw_value) - say("Withdrawing [withdraw_value] credits from the chamber.") - update_icon_state() - return - -/obj/machinery/rnd/bepis/proc/calcsuccess() - var/turf/dropturf = null - var/gauss_major = 0 - var/gauss_minor = 0 - var/gauss_real = 0 - var/list/turfs = block(locate(x-1,y-1,z),locate(x+1,y+1,z)) //NO MORE DISCS IN WINDOWS - while(length(turfs)) - var/turf/T = pick_n_take(turfs) - if(T.is_blocked_turf(TRUE)) - continue - else - dropturf = T - break - if (!dropturf) - dropturf = drop_location() - gauss_major = (gaussian(major_threshold, std) - negative_cash_offset) //This is the randomized profit value that this experiment has to surpass to unlock a tech. - gauss_minor = (gaussian(minor_threshold, std) - negative_cash_offset) //And this is the threshold to instead get a minor prize. - gauss_real = (gaussian(banked_cash, std*inaccuracy_percentage) + positive_cash_offset) //this is the randomized profit value that your experiment expects to give. - say("Real: [gauss_real]. Minor: [gauss_minor]. Major: [gauss_major].") - flick("chamber_flash",src) - update_icon_state() - banked_cash = 0 - if((gauss_real >= gauss_major) && (SSresearch.techweb_nodes_experimental.len > 0)) //Major Success. - say("Experiment concluded with major success. New technology node discovered on technology disc.") - new /obj/item/disk/tech_disk/major(dropturf,1) - if(SSresearch.techweb_nodes_experimental.len == 0) - say("Expended all available experimental technology nodes. Resorting to minor rewards.") - return - if(gauss_real >= gauss_minor) //Minor Success. - var/reward = pick(minor_rewards) - new reward(dropturf) - say("Experiment concluded with partial success. Dispensing compiled research efforts.") - return - if(gauss_real <= -1) //Critical Failure - say("ERROR: CRITICAL MACHIME MALFUNCTI- ON. CURRENCY IS NOT CRASH. CANNOT COMPUTE COMMAND: 'make bucks'") //not a typo, for once. - new /mob/living/simple_animal/deer(dropturf, 1) - use_power(MACHINE_OVERLOAD * power_saver) //To prevent gambling at low cost and also prevent spamming for infinite deer. - return - //Minor Failure - error_cause = pick("attempted to sell grey products to American dominated market.","attempted to sell gray products to British dominated market.","placed wild assumption that PDAs would go out of style.","simulated product #76 damaged brand reputation mortally.","simulated business model resembled 'pyramid scheme' by 98.7%.","product accidently granted override access to all vessel doors.") - say("Experiment concluded with zero product viability. Cause of error: [error_cause]") - return - -/obj/machinery/rnd/bepis/update_icon_state() - if(panel_open == TRUE) - icon_state = "[base_icon_state]_open" - return ..() - if((use_power == ACTIVE_POWER_USE) && (banked_cash > 0) && (is_operational)) - icon_state = "[base_icon_state]_active_loaded" - return ..() - if (((use_power == IDLE_POWER_USE) && (banked_cash > 0)) || (banked_cash > 0) && (!is_operational)) - icon_state = "[base_icon_state]_loaded" - return ..() - if(use_power == ACTIVE_POWER_USE && is_operational) - icon_state = "[base_icon_state]_active" - return ..() - if(((use_power == IDLE_POWER_USE) && (banked_cash == 0)) || (!is_operational)) - icon_state = base_icon_state - return ..() - return ..() - -/obj/machinery/rnd/bepis/ui_interact(mob/user, datum/tgui/ui) - ui = SStgui.try_update_ui(user, src, ui) - if(!ui) - ui = new(user, src, "Bepis", name) - ui.open() - RefreshParts() - -/obj/machinery/rnd/bepis/ui_data(mob/user) - var/list/data = list() - var/powered = FALSE - var/zvalue = (banked_cash - (major_threshold - positive_cash_offset - negative_cash_offset))/(std) - var/std_success = 0 - var/prob_success = 0 - //Admittedly this is messy, but not nearly as messy as the alternative, which is jury-rigging an entire Z-table into the code, or making an adaptive z-table. - var/z = abs(zvalue) - if(z > 0 && z <= 0.5) - std_success = 19.1 - else if(z > 0.5 && z <= 1.0) - std_success = 34.1 - else if(z > 1.0 && z <= 1.5) - std_success = 43.3 - else if(z > 1.5 && z <= 2.0) - std_success = 47.7 - else if(z > 2.0 && z <= 2.5) - std_success = 49.4 - else - std_success = 50 - if(zvalue > 0) - prob_success = 50 + std_success - else if(zvalue == 0) - prob_success = 50 - else - prob_success = 50 - std_success - - if(use_power == ACTIVE_POWER_USE) - powered = TRUE - data["account_owner"] = account_name - data["amount"] = banking_amount - data["stored_cash"] = banked_cash - data["mean_value"] = (major_threshold - positive_cash_offset - negative_cash_offset) - data["error_name"] = error_cause - data["power_saver"] = power_saver - data["accuracy_percentage"] = inaccuracy_percentage * 100 - data["positive_cash_offset"] = positive_cash_offset - data["negative_cash_offset"] = negative_cash_offset - data["manual_power"] = powered ? FALSE : TRUE - data["silicon_check"] = issilicon(user) - data["success_estimate"] = prob_success - return data - -/obj/machinery/rnd/bepis/ui_act(action,params) - . = ..() - if(.) - return - switch(action) - if("deposit_cash") - if(use_power == IDLE_POWER_USE) - return - depositcash() - if("withdraw_cash") - if(use_power == IDLE_POWER_USE) - return - withdrawcash() - if("begin_experiment") - if(use_power == IDLE_POWER_USE) - return - if(banked_cash == 0) - say("Please deposit funds to begin testing.") - return - calcsuccess() - use_power(MACHINE_OPERATION * power_saver) //This thing should eat your APC battery if you're not careful. - set_idle_power() //Machine shuts off after use to prevent spam and look better visually. - update_icon_state() - if("amount") - var/input = text2num(params["amount"]) - if(input) - banking_amount = input - if("toggle_power") - if(use_power == ACTIVE_POWER_USE) - set_idle_power() - else - set_active_power() - update_icon_state() - if("account_reset") - if(use_power == IDLE_POWER_USE) - return - account_name = "" - account = null - say("Account settings reset.") - . = TRUE diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index fdfe0f7f7341..bbc83dd1e705 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -238,14 +238,6 @@ category = list("Research Machinery") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE -/datum/design/board/bepis - name = "Machine Design (B.E.P.I.S. Board)" - desc = "The circuit board for a B.E.P.I.S." - id = "bepis" - build_path = /obj/item/circuitboard/machine/bepis - category = list("Research Machinery") - departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_CARGO - /datum/design/board/rdserver name = "Machine Design (R&D Server Board)" desc = "The circuit board for an R&D Server." diff --git a/code/modules/research/research_disk.dm b/code/modules/research/research_disk.dm index 5f4fce5fd457..0354fddd50de 100644 --- a/code/modules/research/research_disk.dm +++ b/code/modules/research/research_disk.dm @@ -23,17 +23,6 @@ . = ..() stored_research = new /datum/techweb/admin -/obj/item/disk/tech_disk/major - name = "Reformatted technology disk" - desc = "A disk containing a new, completed tech from the B.E.P.I.S. Upload the disk to an R&D Console to redeem the tech." - color = "#FFBAFF" - illustration = "bepis" - custom_materials = list(/datum/material/iron=300, /datum/material/glass=100) - -/obj/item/disk/tech_disk/major/Initialize() - . = ..() - stored_research = new /datum/techweb/bepis - /obj/item/research_notes name = "research notes" desc = "Valuable scientific data. Use it in a research console to scan it." diff --git a/code/modules/research/techweb/_techweb.dm b/code/modules/research/techweb/_techweb.dm index 339edcfaa9a3..4aae75fbeab2 100644 --- a/code/modules/research/techweb/_techweb.dm +++ b/code/modules/research/techweb/_techweb.dm @@ -53,19 +53,6 @@ organization = ship_name return ..() -/datum/techweb/bepis //Should contain only 1 BEPIS tech selected at random. - id = "EXPERIMENTAL" - organization = "Nanotrasen R&D" - -/datum/techweb/bepis/New() - . = ..() - var/bepis_id = pick(SSresearch.techweb_nodes_experimental) //To add a new tech to the BEPIS, add the ID to this pick list. - var/datum/techweb_node/BN = (SSresearch.techweb_node_by_id(bepis_id)) - hidden_nodes -= BN.id //Has to be removed from hidden nodes - research_node(BN, TRUE, FALSE) - update_node_status(BN) - SSresearch.techweb_nodes_experimental -= bepis_id - /datum/techweb/Destroy() researched_nodes = null researched_designs = null diff --git a/code/modules/research/techweb/_techweb_node.dm b/code/modules/research/techweb/_techweb_node.dm index 73d732e28a1f..ff2b93791a77 100644 --- a/code/modules/research/techweb/_techweb_node.dm +++ b/code/modules/research/techweb/_techweb_node.dm @@ -7,7 +7,6 @@ var/display_name = "Errored Node" var/description = "Why are you seeing this?" var/hidden = FALSE //Whether it starts off hidden. - var/experimental = FALSE //If the tech can be randomly granted by the BEPIS as a reward. Meant to be fully given in tech disks, not researched. var/starting_node = FALSE //Whether it's available without any research. var/list/prereq_ids = list() var/list/design_ids = list() diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 5ad8c1915c97..12dee3405a8c 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -13,7 +13,7 @@ // Cargo Stuff "c-reader", "desttagger", "salestagger", "handlabel", "packagewrap", // Research Stuff - "destructive_analyzer", "experimentor", "rdconsole", "bepis", "rdserver", "design_disk", "tech_disk", "mechfab", + "destructive_analyzer", "experimentor", "rdconsole", "rdserver", "design_disk", "tech_disk", "mechfab", // Miscellaneous Stufff "paystand", "space_heater", "bucket", "plastic_knife", "plastic_fork", "plastic_spoon", "fax", // Security Stuff @@ -1159,110 +1159,6 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 1500) export_price = 5000 -////////////////////////B.E.P.I.S. Locked Techs//////////////////////// -/datum/techweb_node/light_apps - id = "light_apps" - display_name = "Illumination Applications" - description = "Applications of lighting and vision technology not originally thought to be commercially viable." - prereq_ids = list("base") - design_ids = list("bright_helmet", "rld_mini") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/rolling_table - id = "rolling_table" - display_name = "Advanced Wheel Applications" - description = "Adding wheels to things can lead to extremely beneficial outcomes." - prereq_ids = list("base") - design_ids = list("rolling_table") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/Mauna_Mug - id = "mauna_mug" - display_name = "Mauna Mug" - description = "A bored scientist was thinking to himself for very long...and then realized his coffee got cold! He made this invention to solve this extreme problem." - prereq_ids = list("base") - design_ids = list("mauna_mug") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/spec_eng - id = "spec_eng" - display_name = "Specialized Engineering" - description = "Conventional wisdom has deemed these engineering products 'technically' safe, but far too dangerous to traditionally condone." - prereq_ids = list("base") - design_ids = list("lava_rods", "eng_gloves") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/aus_security - id = "aus_security" - display_name = "Australicus Security Protocols" - description = "It is said that security in the Australicus sector is tight, so we took some pointers from their equipment. Thankfully, our sector lacks any signs of these, 'dropbears'." - prereq_ids = list("base") - design_ids = list("stun_boomerang") - - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/interrogation - id = "interrogation" - display_name = "Enhanced Interrogation Technology" - description = "By cross-referencing several declassified documents from past dictatorial regimes, we were able to develop an incredibly effective interrogation device. \ - Ethical concerns about loss of free will do not apply to criminals, according to galactic law." - prereq_ids = list("base") - design_ids = list("hypnochair") - - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 3500) - export_price = 3500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/sticky_advanced - id = "sticky_advanced" - display_name = "Advanced Tapenology" - description = "The absolute pinnacle of engineering!" - design_ids = list("electric_tape", "super_tape") - - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/tackle_advanced - id = "tackle_advanced" - display_name = "Advanced Grapple Technology" - description = "Nanotrasen would like to remind its researching staff that it is never acceptable to \"glomp\" your coworkers, and further \"scientific trials\" on the subject \ - will no longer be accepted in its academic journals." - design_ids = list("tackle_dolphin", "tackle_rocket") - - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - -/datum/techweb_node/fishing - id = "fishing" - display_name = "Fishing Technology" - description = "Cutting edge fishing advancements." - prereq_ids = list("base") - design_ids = list("fishing_rod_tech") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 2500 - hidden = TRUE - experimental = TRUE - //Helpers for debugging/balancing the techweb in its entirety! /proc/total_techweb_exports() var/list/datum/techweb_node/processing = list() diff --git a/shiptest.dme b/shiptest.dme index 8288edd38bea..4861e9ab8f44 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -3213,7 +3213,6 @@ #include "code\modules\religion\rites.dm" #include "code\modules\requests\request.dm" #include "code\modules\requests\requests_manager.dm" -#include "code\modules\research\bepis.dm" #include "code\modules\research\designs.dm" #include "code\modules\research\destructive_analyzer.dm" #include "code\modules\research\experimentor.dm" diff --git a/tgui/packages/tgui/interfaces/Bepis.js b/tgui/packages/tgui/interfaces/Bepis.js deleted file mode 100644 index 99718415ddc9..000000000000 --- a/tgui/packages/tgui/interfaces/Bepis.js +++ /dev/null @@ -1,123 +0,0 @@ -import { useBackend } from '../backend'; -import { - Box, - Button, - Grid, - LabeledList, - NumberInput, - Section, -} from '../components'; -import { Window } from '../layouts'; - -export const Bepis = (props, context) => { - const { act, data } = useBackend(context); - const { amount } = data; - return ( - - -

-
act('toggle_power')} - /> - } - > - All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. - performs hundreds of tests a second using electrical and financial - resources to invent new products, or discover new technologies - otherwise overlooked for being too risky or too niche to produce! -
-
act('account_reset')} - /> - } - > - Console is currently being operated by{' '} - {data.account_owner ? data.account_owner : 'no one'}. -
- - -
- - - {data.stored_cash} - - - {data.accuracy_percentage}% - - - {data.positive_cash_offset} - - - {data.negative_cash_offset} - - - - act('amount', { - amount: value, - }) - } - /> - - -
- -
- - - - - - ); -}; From fa98c060086109a1e1a43571c37d3eb09b0e63da Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 00:15:10 -0500 Subject: [PATCH 35/61] Automatic changelog generation for PR #3414 [ci skip] --- html/changelogs/AutoChangeLog-pr-3414.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3414.yml diff --git a/html/changelogs/AutoChangeLog-pr-3414.yml b/html/changelogs/AutoChangeLog-pr-3414.yml new file mode 100644 index 000000000000..a4603970da7e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3414.yml @@ -0,0 +1,4 @@ +author: Thera-Pissed +changes: + - {rscdel: B.E.P.I.S. and related tech nodes.} +delete-after: true From 8a454ce48df10e8648a00f0b0ee3658af95becd3 Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Mon, 23 Sep 2024 01:05:19 -0400 Subject: [PATCH 36/61] Turrets Now Actually Connect To Their Console Consistently (#3412) ## About The Pull Request makes turrets link to their console once everything has been linked to the shuttle. Adds a proc just in case anyone else needs 2 do this. ## Why It's Good For The Game functional code ## Changelog :cl: fix: turrets will now _actually_ connect to their console. i swear im a real coder. /:cl: --- code/__DEFINES/dcs/signals/signals_ship.dm | 2 ++ code/game/machinery/porta_turret/portable_turret.dm | 8 ++++++++ code/modules/shuttle/shuttle.dm | 1 + shiptest.dme | 1 + 4 files changed, 12 insertions(+) create mode 100644 code/__DEFINES/dcs/signals/signals_ship.dm diff --git a/code/__DEFINES/dcs/signals/signals_ship.dm b/code/__DEFINES/dcs/signals/signals_ship.dm new file mode 100644 index 000000000000..c18a26c5089d --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_ship.dm @@ -0,0 +1,2 @@ +///Sent when a shuttle finishes loading to allow for any machinery that requires a late connection to fire that connection +#define COMSIG_SHIP_DONE_CONNECTING "late_connect" diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 33e493b3819e..3e50954df0c7 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -949,6 +949,14 @@ DEFINE_BITFIELD(turret_flags, list( /obj/machinery/turretid/connect_to_shuttle(obj/docking_port/mobile/port, obj/docking_port/stationary/dock) id = "[REF(port)][id]" + RegisterSignal(port, COMSIG_SHIP_DONE_CONNECTING, PROC_REF(late_connect_to_shuttle)) + +/obj/machinery/turretid/disconnect_from_shuttle(obj/docking_port/mobile/port) + UnregisterSignal(port, COMSIG_SHIP_DONE_CONNECTING) + +/obj/machinery/turretid/proc/late_connect_to_shuttle(obj/docking_port/mobile/port, obj/docking_port/stationary/dock) + SIGNAL_HANDLER + for(var/datum/weakref/ship_guns in port.turret_list) var/obj/machinery/porta_turret/turret_gun = ship_guns.resolve() if(turret_gun.id == id) diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index 084d4a49f3e7..5af554a60557 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -431,6 +431,7 @@ for(var/each in place) var/atom/atom = each atom.connect_to_shuttle(src, dock) + SEND_SIGNAL(src, COMSIG_SHIP_DONE_CONNECTING, dock) //this is a hook for custom behaviour. Maybe at some point we could add checks to see if engines are intact /obj/docking_port/mobile/proc/can_move() diff --git a/shiptest.dme b/shiptest.dme index 4861e9ab8f44..c1a3a2111b2a 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -163,6 +163,7 @@ #include "code\__DEFINES\dcs\helpers.dm" #include "code\__DEFINES\dcs\signals\signals.dm" #include "code\__DEFINES\dcs\signals\signals_mod.dm" +#include "code\__DEFINES\dcs\signals\signals_ship.dm" #include "code\__DEFINES\dcs\signals\signals_storage.dm" #include "code\__DEFINES\dcs\signals\signals_mob\signals_mob_carbon.dm" #include "code\__DEFINES\dcs\signals\signals_obj\signals_object.dm" From 6a6940235e28ac696584bea0de50e40e23090092 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 00:28:08 -0500 Subject: [PATCH 37/61] Automatic changelog generation for PR #3412 [ci skip] --- html/changelogs/AutoChangeLog-pr-3412.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3412.yml diff --git a/html/changelogs/AutoChangeLog-pr-3412.yml b/html/changelogs/AutoChangeLog-pr-3412.yml new file mode 100644 index 000000000000..1c0b79981ecd --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3412.yml @@ -0,0 +1,5 @@ +author: Bjarl +changes: + - {bugfix: turrets will now _actually_ connect to their console. i swear im a real + coder.} +delete-after: true From 505c27d2edf0c220f3963056d517909570fb96c6 Mon Sep 17 00:00:00 2001 From: zimon9 <122945887+zimon9@users.noreply.github.com> Date: Mon, 23 Sep 2024 01:05:40 -0400 Subject: [PATCH 38/61] Changes the color of the text output of health analyzers to be readable by dark mode users (#3411) ## About The Pull Request This tweaks the color of body part lists as given by health analyzers, in an effort to enhance readability for dark mode users. ### Before the change: | Dark Mode | |-----------| |![image](https://github.com/user-attachments/assets/95d5fe3e-d565-4eec-be40-4ba6b58211ec)| | Light Mode | |------------| |![image](https://github.com/user-attachments/assets/45376b28-785b-40c3-9cdc-fecc49ecacaf)| ### After the change: | Dark Mode | |-----------| |![dreamseeker_vtOyuEpuir](https://github.com/user-attachments/assets/756b0163-99b9-4341-9420-07ded5cc07cf)| | Light Mode | |------------| |![image](https://github.com/user-attachments/assets/52b3d45d-5a57-4396-8e7f-81a976222e77)| ## Why It's Good For The Game This should make it easier for dark mode users to know, at a glance, what body parts might be damaged on a patient. As it stands right now, one would have to highlight the text in order to see which limb(s) have been damaged. ## Changelog :cl: add: Adds a bit more contrast to the output of health analyzers /:cl: --- code/game/objects/items/devices/scanners.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index cdded7e418ef..1f4b2ae6f6a2 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -226,12 +226,12 @@ GENE SCANNER if(length(damaged)>0 || oxy_loss>0 || tox_loss>0 || fire_loss>0) var/dmgreport = "General status:\ \ - \ + \ \ \ \ \ - \ + \ \ \ \ @@ -239,7 +239,7 @@ GENE SCANNER for(var/o in damaged) var/obj/item/bodypart/org = o //head, left arm, right arm, etc. - dmgreport += "\ + dmgreport += "\ \ " dmgreport += "
Damage:Damage:BruteBurnToxinSuffocation
Overall:
Overall:[CEILING(brute_loss,1)][CEILING(fire_loss,1)][CEILING(tox_loss,1)]
[capitalize(parse_zone(org.body_zone))]:
[capitalize(parse_zone(org.body_zone))]:[(org.brute_dam > 0) ? "[CEILING(org.brute_dam,1)]" : "0"][(org.burn_dam > 0) ? "[CEILING(org.burn_dam,1)]" : "0"]
" From 49305c7357ec2eee840e77c9ff5942bac6125018 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 00:41:12 -0500 Subject: [PATCH 39/61] Automatic changelog generation for PR #3411 [ci skip] --- html/changelogs/AutoChangeLog-pr-3411.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3411.yml diff --git a/html/changelogs/AutoChangeLog-pr-3411.yml b/html/changelogs/AutoChangeLog-pr-3411.yml new file mode 100644 index 000000000000..cb95ac44d223 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3411.yml @@ -0,0 +1,4 @@ +author: zimon9 +changes: + - {rscadd: Adds a bit more contrast to the output of health analyzers} +delete-after: true From c333b67b391533a8faf89a99e4ff97af55069330 Mon Sep 17 00:00:00 2001 From: thgvr <81882910+thgvr@users.noreply.github.com> Date: Sun, 22 Sep 2024 22:07:05 -0700 Subject: [PATCH 40/61] Adds a bunch of kepori underwear (#3392) ## About The Pull Request these styles ![image](https://github.com/user-attachments/assets/48149d12-95ca-47aa-9778-c4cb60c0a40a) ## Changelog :cl: add: A bunch of kepori underwear have sprites now /:cl: --- .../species/kepori/underwear_legs_kepori.dmi | Bin 330 -> 3560 bytes .../kepori/underwear_legs_keporiOLD.dmi | Bin 321 -> 0 bytes .../species/kepori/underwear_torso_kepori.dmi | Bin 1112 -> 1208 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 icons/mob/clothing/underwear/species/kepori/underwear_legs_keporiOLD.dmi diff --git a/icons/mob/clothing/underwear/species/kepori/underwear_legs_kepori.dmi b/icons/mob/clothing/underwear/species/kepori/underwear_legs_kepori.dmi index 166e1a7624d989077a4ed74d75d14280c7debb9b..1330611498898d4c7ffebe17060a7aba8c3d5b26 100644 GIT binary patch literal 3560 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 D*o1$7 diff --git a/icons/mob/clothing/underwear/species/kepori/underwear_legs_keporiOLD.dmi b/icons/mob/clothing/underwear/species/kepori/underwear_legs_keporiOLD.dmi deleted file mode 100644 index aa9c16beb0ab2cf3c5fa5e54022016b5d7620e58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 321 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K59xyTk$!q;u!a#~Sz$e7@z<~p4-uqI3T*i_h zzhDN3XE)M-oI_P15hX6E#mPmP1tppJc?=8{b9yJ8=W8c#(fglVuZy3Z_9{49A}I;lVH56^JrE2?%9{8 zeZRWE=Hs?g_bw`(<~=3E^#0dVy;aZmdLB>x@w+#JM~@-fob|1ZE`Mcc%?YUo_Zy8O zLw^1~9hbR%^Q>(F3XVYE$a%UrhD5Z!J;=xl^4o&%{<(bS3xG@zu;Y<=z`*Ex>&syf N&(qbf@=cC>X}SIK9kpLg7(T9!?}Y5i;*|1sL}uVFYvIu7HpU9ws+ zy(GLOhq!h9Y^)!DkDZ48oV@DmwyvLz^%JwMk6ZTp!1_OSVhg`0SMlBJ0{{R3z!!Xz z9IUvt->q}1rTTwaKCgdFHcg+2=X;AeRrWN`seY$g7Il{2oP%ZAyneD_K8(v5J3fvm zM6XE2F#pWsoOH|P*hK5BRKGZMPqDM(4b9@IU|lbLxqidM`uGIas$W*|)M$qsQ>3x4&u=T{+M@>vl1poj5@H1R* z+bMp=H$TOGHji+p@6r}hjw@xBNALEbX_BiDs+Y-biSwzv&x#d?XD66Xm`?09Pla`%JGZg0=c(!z_F7%< z2fJ5vGW~ztDo#Tx&?);-m6Hsptq$FzLZO7PA18Lcev|!sloLDMibK7B|M_0*+xlKB_EF)ORpaZ%t4>vY zez!vHxh@y7%ZCV`npnH5-mm5^D|i3dlX%IKch7%Ip>ouD|N8!#kQMEw+Z*pD@>ezg z*;@<%001CO4)#djDhIp8_sYRO?o&BfcKv@5*B;lGeJTgb@_AfzTz6C}2z}qjCYIM- zpZtf9x9kUdlyJ$xZoh2$ffJ6ajAd2DB?o)-AhuB*A3cJNRL4h;U?cW}0RR9100000 l005H;1U8cp1O*q|(_j1@Uy1^Xr>p<~002ovPDHLkV1l1JqyGQ^ delta 702 zcmV;v0zv(_3D^j*Yyp1))=5M`RCt{2++l9oFc=14o9qB3aDXJu0UFo=mMr%_(f|(fWt5N!BUarhQMfkK_0|J8)ZG6)Wl?H*nEb3)fH2KWu;6alG01JMCxtaeqB< zKlYifo3`99TR&5${CpyDJG!Q6>g;P}m=4_LdY0|5X#H@Sf0Z2g=Qth`1IJU_He0Q@ zz9hb9r?_6-5T^C>Js*~fVg8!NId|$*ZL-c> z^&i$W_r6?zU|~ag0dv)V*xUJ$GtH^;J##tLT=iFz&#AtmQ<@0~-*w402-tA+XKY;Q`&bF4g z+wW3`ZDM`wvguYFra4%Cch?g8W0wkhe$@S)vsSm~!RCzkW>F3&iQC;a{g6)nPV3m; zo(H>=->xF|hha!;SsYG(HksV6+xO+}s-fQZyL8{R#NBCO$J;kqJa1y=q+79Xc9);; z#jb0fZpVMBP@f(TUUjIO@xn-!n$pJxtrTiZlCOx_?ahf-|mIVNypvC zB-(=00000d2+Bd$-yqXYz`J~e;0A?d41VGpn@=3r}2Vi|R{_6!zMS8LB;A Date: Mon, 23 Sep 2024 00:54:10 -0500 Subject: [PATCH 41/61] Automatic changelog generation for PR #3392 [ci skip] --- html/changelogs/AutoChangeLog-pr-3392.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3392.yml diff --git a/html/changelogs/AutoChangeLog-pr-3392.yml b/html/changelogs/AutoChangeLog-pr-3392.yml new file mode 100644 index 000000000000..b1fd3875e1c8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3392.yml @@ -0,0 +1,4 @@ +author: thgvr +changes: + - {rscadd: A bunch of kepori underwear have sprites now} +delete-after: true From fe5e164e3f0a7d40821cc33f707c1fcacb0f900d Mon Sep 17 00:00:00 2001 From: Erika Fox <94164348+Bjarl@users.noreply.github.com> Date: Mon, 23 Sep 2024 01:07:17 -0400 Subject: [PATCH 42/61] Concrete Bags (#3397) ## About The Pull Request replaces concrete jugs with concrete bags ## Why It's Good For The Game 's fluff ## Changelog :cl: rye, erika add: concrete jugs have been replaced by much more appropriate concrete bags, jee, i hope whoever made *that* blunder got fired. /:cl: --- code/modules/cargo/packs/material.dm | 6 +- .../reagent_containers/concrete_bags.dm | 58 ++++++++++++++++++ .../reagents/reagent_containers/jug.dm | 5 -- .../inhands/misc/concrete_bag_lefthand.dmi | Bin 0 -> 307 bytes .../inhands/misc/concrete_bag_righthand.dmi | Bin 0 -> 309 bytes icons/obj/chemical/concrete.dmi | Bin 0 -> 399 bytes shiptest.dme | 1 + 7 files changed, 62 insertions(+), 8 deletions(-) create mode 100644 code/modules/reagents/reagent_containers/concrete_bags.dm create mode 100644 icons/mob/inhands/misc/concrete_bag_lefthand.dmi create mode 100644 icons/mob/inhands/misc/concrete_bag_righthand.dmi create mode 100644 icons/obj/chemical/concrete.dmi diff --git a/code/modules/cargo/packs/material.dm b/code/modules/cargo/packs/material.dm index 238b6491ea3b..e396854387de 100644 --- a/code/modules/cargo/packs/material.dm +++ b/code/modules/cargo/packs/material.dm @@ -112,8 +112,8 @@ crate_name = "wood planks crate" /datum/supply_pack/material/concrete_mix - name = "Concrete Mix (Jug)" - desc = "Feeling lazy? Need a structure and quick? Use concrete! Just add water." + name = "Concrete Bag" + desc = "Feeling lazy? Need a structure and quick? Use F.O.O.D.'s near-instant concrete mix! Just add water." cost = 500 - contains = list(/obj/item/reagent_containers/glass/chem_jug/concrete_mix) + contains = list(/obj/item/reagent_containers/glass/concrete_bag) crate_name = "Concrete Mix" diff --git a/code/modules/reagents/reagent_containers/concrete_bags.dm b/code/modules/reagents/reagent_containers/concrete_bags.dm new file mode 100644 index 000000000000..eaceb1c85631 --- /dev/null +++ b/code/modules/reagents/reagent_containers/concrete_bags.dm @@ -0,0 +1,58 @@ +/* In a better world, the logic for transfering reagents out of containers wouldn't be in /glass */ + +/obj/item/reagent_containers/glass/concrete_bag + name = "\improper concrete mix bag" + desc = "A bag of concrete mixture from the F.O.O.D corportation. Just add water!" + w_class = WEIGHT_CLASS_HUGE //25+ kg + throw_range = 1 + + amount_per_transfer_from_this = 25 + possible_transfer_amounts = list(25,50,75,100) + list_reagents = list(/datum/reagent/concrete_mix = 200) + reagent_flags = OPENCONTAINER + volume = 200 + + icon = 'icons/obj/chemical/concrete.dmi' + icon_state = "concrete_bag" + item_state = "concrete_bag" + lefthand_file = 'icons/mob/inhands/misc/concrete_bag_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/concrete_bag_righthand.dmi' + fill_icon_thresholds = null + + var/opened = FALSE + var/opened_icon_state = "concrete_bag_open" + + drop_sound = 'sound/items/handling/cloth_drop.ogg' + pickup_sound = 'sound/items/handling/cloth_pickup.ogg' + +/obj/item/reagent_containers/glass/concrete_bag/examine(mob/user) + . = ..() + if(!opened) + . += span_notice("[src] is unopened") + else + . += span_notice("[src] has been opened") + +/obj/item/reagent_containers/glass/concrete_bag/AltClick(mob/user) + if(!can_interact(user)) + return + if(!opened) + if(do_after(user, 3 SECONDS)) + visible_message(span_notice("[user] tears the top of [src] off!"), span_notice("You tear the top off [src]!")) + playsound(src, 'sound/items/poster_ripped.ogg', 50, 1) + new /obj/effect/decal/cleanable/generic(get_turf(src)) + icon_state = opened_icon_state + spillable = TRUE + opened = TRUE + return + return + return + +/obj/item/reagent_containers/glass/concrete_bag/attack_self(mob/user) + if(!opened) + return + ..() + +/obj/item/reagent_containers/glass/concrete_bag/attack(mob/user) + if(!opened) + return + ..() diff --git a/code/modules/reagents/reagent_containers/jug.dm b/code/modules/reagents/reagent_containers/jug.dm index 8214a0747dfc..de1570a9ef5c 100644 --- a/code/modules/reagents/reagent_containers/jug.dm +++ b/code/modules/reagents/reagent_containers/jug.dm @@ -147,8 +147,3 @@ /obj/item/reagent_containers/glass/chem_jug/hexacrete name = "chemical jug (hexacrete)" list_reagents = list(/datum/reagent/concrete/hexacrete = 150) - -/obj/item/reagent_containers/glass/chem_jug/concrete_mix - name = "chemical jug (concrete mix)" - desc = "Just pour out and add water!" - list_reagents = list(/datum/reagent/concrete_mix = 150) diff --git a/icons/mob/inhands/misc/concrete_bag_lefthand.dmi b/icons/mob/inhands/misc/concrete_bag_lefthand.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9d331882dfc125e05858318800d50053043ec234 GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-t_KbrD2T9I-kIcXsS~8v zcONLuSQ6wH%;50sMjDV)SQQdc;*wgNT$EW*l9`{!z)&$KIIN(k^!u0Kf{$OHXnE^u zojY?rctfbcMdJsLbk6%|o@6NM>D^&r9Atdi*h^u~qe(|5g(w7TTH5RH)Yz(GYNu%! z+u3cbx_O1flIh*XYc&kbMUR+02?{ItTFf|`k3o?`=9SyW_y<7CBRpLkLo9le6C_wu z7~I&{+1SJ`vCL{<%8~J4TJ6B3ts#8EML6MKeM4iTyz>Ko!8$3{5EiBcp*b8KA_=n? z1T&n(BUptWD8(xX>wRGKX$)qS_^_CJ0vkiJk?alz@i&Wsb})Fl`njxgN@xNAikoE7 literal 0 HcmV?d00001 diff --git a/icons/mob/inhands/misc/concrete_bag_righthand.dmi b/icons/mob/inhands/misc/concrete_bag_righthand.dmi new file mode 100644 index 0000000000000000000000000000000000000000..707222f919ea5e4644585f80cc614d05bfc0263e GIT binary patch literal 309 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-u0XmV!fttIlDnnO?KvfK zKt5whkY6x^!?PP{Ku%#*NJNQCYH@N=WKhlO#F@nvH#g*lHV9hnrO5UgowufJ1ctBR?ereSPn zx3TKx6%tFPcN?$OFffFDZ*Bkp zc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LY zR3K9+IX^GCD77RtJ}EI>iHkEOv#1y-Y{heVF)clD9^>W1;OB! zttJJXPfVD Date: Mon, 23 Sep 2024 01:07:13 -0500 Subject: [PATCH 43/61] Automatic changelog generation for PR #3397 [ci skip] --- html/changelogs/AutoChangeLog-pr-3397.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3397.yml diff --git a/html/changelogs/AutoChangeLog-pr-3397.yml b/html/changelogs/AutoChangeLog-pr-3397.yml new file mode 100644 index 000000000000..673b299d889d --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3397.yml @@ -0,0 +1,5 @@ +author: rye, erika +changes: + - {rscadd: 'concrete jugs have been replaced by much more appropriate concrete bags, + jee, i hope whoever made *that* blunder got fired.'} +delete-after: true From 34802c2f75c0d481f41f36ffc9fe54b2720aaa9c Mon Sep 17 00:00:00 2001 From: Imaginos16 <77556824+Imaginos16@users.noreply.github.com> Date: Sun, 22 Sep 2024 22:07:59 -0700 Subject: [PATCH 44/61] Updates Balaclava Sprites (#3409) ## About The Pull Request Just a quickie, this PR updates all balaclavas to follow the aesthetic set by the NGR's balaclava. This also removes the unused russian balaclava sprites, which is non-player facing. ![image](https://github.com/user-attachments/assets/83a7c85e-823d-47b9-bb2f-4d62ced93f24) ## Why It's Good For The Game Clean sprite good ## Changelog :cl: PositiveEntropy imageadd: Resprites all balaclavas! /:cl: --- code/modules/clothing/masks/boxing.dm | 2 +- icons/mob/clothing/mask.dmi | Bin 56392 -> 55254 bytes icons/obj/clothing/masks.dmi | Bin 40341 -> 40179 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/masks/boxing.dm b/code/modules/clothing/masks/boxing.dm index c532202a3df3..6bb58bb2b4e5 100644 --- a/code/modules/clothing/masks/boxing.dm +++ b/code/modules/clothing/masks/boxing.dm @@ -4,7 +4,7 @@ icon_state = "balaclava" item_state = "balaclava" flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR - visor_flags_inv = HIDEFACE|HIDEFACIALHAIR + visor_flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR w_class = WEIGHT_CLASS_SMALL actions_types = list(/datum/action/item_action/adjust) diff --git a/icons/mob/clothing/mask.dmi b/icons/mob/clothing/mask.dmi index bfcc9970930fe2ebe376db8a936370324dc78d5e..8affe54d81d4f43418d8b79c4ed990564adf11f5 100644 GIT binary patch literal 55254 zcmd3O2UHVLzh@8?6$KQLPEaYL0-`kO3W5Ovr3whBC_VHZlAwr)H0jc%caYwRf`Ig1 z1BBi?gg`=)o#^+y^X+@@?0b98?%ADl!pz*c_s*SrfB*i!1U%JHxp0o{90&xu0C}vW z1p=Mq27aJ3r-70?3OBStAnIH%o#!q}Z=KDYtQ=gd?Cn4xkA#A+T~27p^Q}Dx+Lq&a zaRD1HXxYP(h;9wKja!xqm-sF|OOFOW8_dEe%FVyI&KT|P#(5_D(4E91s5YtzYm zeSZ*Vi?u0~?}?(V)F1EmYqP*q#R61^(V>9W}T5mVZ#w zw(-HPdt$*yFKi%x8C)D>6Tx1mws#q(=HEpA_G246RT;#`?31ufy?1Foh`T4^l8vD! zTeM_0DC>jfbjzOQ6*jc30UfF_2qv{(*LGL+OtyzQvj>N2KSLbNv@Z7LjjQo=*`v0} ziuOnSay|pzFKConGyS@}tzJE-u=P^1A^vCy?cWn2EDfG%s4w%$gVtB$P3#NZdQg>M z&)T};x{nsszam2y*i?AGznITnj}ELGJaY0|c_BC=d9z^Q8m?i2rs-G$(|&jvmYfSO zKQbgc=6i34(&nG+KKLG?x98j{}k)m-^jL^t0O3Nk|s|URrG}La!byP2x?PyLk<8`-Y7m5H|>-^gzcWVSN(jp)*uZ z-s#~xdvYOH#OLWrrHcY7=PZjW?qMUZ?7aV!TJgCz&EseGZ+a#U-sh{qpJz`+Rp=?* za?1Dd_?hZKIDYTisZk<|| z26)`dkiq8#vh)BRuk=@!^5m#3b)WNlXx<(vpz+>6iouR$`k;x{u7_8^fItTV)j4nc z?lT{zy_e`X$FFR9($i&?Is`W1MpW~slPKzmH!5fV?%)Fb)VRILN76$juIv!4mb0v0 zKs~+IJ9fuP+Ew-64WW?TRC1^M9=PX--$$YT!^5i)QBfJOF`|iETG^qpQSao@wng07k-|#h;iNk=*fq+;_NyC`d zH(<241f}Yqf4E2PM9M6orm|iRRuIvF&>8>SpTjP-*5|-HR*SsqOBQe68f>AG7v;sh zpL^&odS_*i=Jh*${#?GD+j#^WyQy1+NKVP87Kw_J^c=wpD=V30&KBC^)ujeWNnFHF zveC;T;^s~M^hKp8{~EHTdV*wecdPs$amSpn2EAdXu)927U+c!aF({I3KbXxM@6x%% zo>za#M%y-#7c5k;Qw1$9@^RmoGF}@g2t1gZD%y~xufwg)TK0?-8D$kt){aQ>#ZMf8 z%in14`yQDxZ}>6q$y>K&e&|8gAxLZG)UVe^i_L%dP>Bh7l$4Z+x~)Io8#N0xPB^C~8O&#(@@Z!;3dWnkdc`etuUcw=JBTUb!t z2t}$f45s5xwk2t6r4Fjc=MTxJRgLy#s)zNMZDp@~<;_TxRzZ@7hiQeY;qGJWjNuOcCr4bIfILJcbI68SU|EQbq>^fwwdCu{RE=XMr_4r^Uj zQr$Mj1*E0XGDq_feMQn0{5yKs;?mMm^;)+Lm!(AaxC_7sf9?zm9{0(6yC&{cX<0fI zl`b2GX61k5p#^jA(=e8Dsj?cY2{uWV7^!xfw{%{4y7f>J$7Eh@jPd8Cs#yNuDxwXob6 zFPFj&YNsKEOdDQ^H_-@`fY|T8`Gm)9nHF?sB_ph_+HUVP5Oj2Ei0N}rQ--hxCH&nKQxng5R^ULU8kynTS!t zNH@u&H*@|;wGTc>UqS!$P4*lMRKmf3eY&{V%xvnS9K`aB);eYPRwh*TpepPd(XEJ@+tYayd3#a*{ZXi7+)g~K7z0__$dVo`IO?}o+hx*?!YYhoT41i(l#Yv_gdW}!wR)^HU z$m3$ea%*0Q9`ls$8sRNzGTB!Sj@MaL3FVT_4>IeD6EhzvG-kW=(x>5YmbTz|apOR; z>_{UHBatXnrQj>=Hi(XwFv7U@GTheGl&B!gJPO7KHAOA&@PxqpiH(?~Bq2x=P9{wHCC^Yb_2N64 zI^&bPd87Ks5pY7FlHdtqW8kS`@RiBpxtF9{cgQN@N!QPDr?=C-LI>I%stqNAwRRiW z71sqs?Bs1XeLiheM~*hs(q6+cktx)5sh(Fh%r^PNjBaofr$3<@+!FEFQbk<^7bA z|4FY%D_8tB_>)4eCD58cKg_c#pkhNDhSS+S66u(_V@Jxu)!Ztqvf z&Ek*rV7t1}Q?r{2kT-`v=)QiUP`?{Z(W9trZHEddI(lCo24dqoafYLK>tIt1@%#+I zkD2&w3FM>nlIF?VHn($hpkHeBn2(GO#SDd=frwsbkixajMClR7CK?Hc$HUtXKA!|N zH#eUYSi71%Y02Ql0#B@jV1|;?Ko%6%ZgGfg}IA&!02s|9CfAjItn(*!6YW zIRt4wLQ|?u4+-Fo@8BR%xM6vP<&rTN1QNBgAZ@fSI|uh5rLu;XSp5k&HbbJ)kd>tw z6&stIf~dmS*w|v(fX0C5QexJChID}z%a`+53a-8Oms7Z8y_VNYdxpm>l8pr!z8fQ# zdsF(xWxe*d%Nlt69$uY8co>Wn)vf!2z2rQ$U(O+Tylx|=--3^O_g+q?_gp6rzL5y7lNui!B-ah->+*+2@6R|?nUJReg`#V1Z&7NlMKegFF-;rnFfq5o z^-{f%^S+cJg_oDxPAZ2-IzIf!m5BEl5(#3L@4IX#oUdmTZeD+906&rpP-UEieIX!7 z^3>zS$E%&QK7amPW{;86bi4M(!Xo})0}VX*Tm)O{PHgY#!KF8_%Uxz-f`kJsP!M80 zkQpp@G|#vueQ{#@RY$a7-&F0~^HTF*e(9@#GS}AL{&~uz+9@ORNo;uJN-g_omz4>F zkzlS32tDbJbLQB0s|X(6^etZ+`a*HCJ&Ne2)s6aF>0T0iID%`!doH-|NK*;pKPflH zfzEZ^KbSIpgzuP(2zMe)-kFZO7rh*AgV{@`*|Q*acAAjPAiHH-jCOVXW$K|a*p;E` zxBG|8@osA2ZkMIKwhdrKjWyUU@8cnBF|KOjIkQ>>bPiy&RnsBz9$JI~s}WXVFBA0p zgZRLye7F38Mp_&1pfpe2h6=oxtT~)ySJygskoK~NOLI}a^bzg#v6Z8luOen2Sw$_M z?jNK+3Ut})l7JmJ$Hc_o5S4b5q`V5Wi8J-Pmv@#S^mT<+5(geK-#Z>-|Zra>*ttA)=khz4=H2^OL^a9^ROpNn!{(tt3{_%dV7n*0HVW(hDY!{XO|dil>&H06$ddBI2O zJoh5wNpHy*yr?hu>dGD>SaXdFxgOb5T32YvYl*dFEnJXTsJa zdSDe}@7;Aqn46nF#BYA2*ImNU|63iB)Li6|$^Ogj>7R>5_cQ{!Q6q5oCVw?egtq3f zQ-hG~kvb=^XpJUOn&}iu;7^RsFf%G2Hi9zu?4{B)*(KXfS=V|@6&Dz;r4N+IY!O0U zt4M$5gqOL6@~otl!%|yq^8~%Wq)UU5Lyk=#;pT%mV37>KKa2(n@0lFP42Rg`tXnH# zybxK!fp$*=e5lkOWsMulH$~6l_maCEZAXf%WQvJrPM#QEl4m%>A`CMb3SzzY+J_J3!0k`7N>MyyvV0C!Ye%ZsR!wE{B`j2iu+I5y^ldhjEDvp37}rFnWfsLp1P}M z4a|Wvin0wOSr6X4eJda@Z%SL#p0IU!EEyJ~t&{Jk|F*jaAY;)F4$KopQ#On8F0NC@ z1xA&tDS3N~D6gW}t>)LGntNLZz_3iKH7nyyD~f*P_1{G6f1AicKU%`%F*IHP$6;%s zQ| z)tNr=$>qpS(Jlj-r(m+QX(_2ejdFIrLO&=FYgNJtN{~Jl7c{OJl)=u=4ar3d8C!RA zBI1Yey46Gn*j;R}tDa^63n0y7@hvr$C@5~ic)eA~1s8H0&(r1@#IrP=%+zW|-t23* zWU5V646qMlC9rTpa=0Fhv#w`qM@67|Xb1i+dBx`LF(}4ZOmNa|x`gtHVvw z;|_pZ-fJf%!XqOh<_vy*HB3U()5{;eOvKW;qQGk-glmz2eYZ+6<~oL<`}n%*?(*v@ z?7}8T?$ueIRbsVnTZPdD=;g`OE-(Es?l;jH|HB$h`_Wlv|*?RjG^8OqK)a_EE;pWoG6)$_>Cxhwy;Z2B>}nkU#|hH7fzK z=c$)h4Ug4pb8~+M?r(tjGh5U70-PAnoD>z2sBEG>b;@X9U?45aq{^&>^L_q{YOV1r zkZBBT>)uKNf~i$-4KTD3d+`_+$ZBt)@&4hkZ>=d{dfCFyYs&0=2uttm>|8D`Nem+& z-@A8@>6~9s!N4^NOYiIq8g_nbZm!(wx>itWNR(xWU789{$4$XBYf{`h9cwA}TkTc@ z`mq+yZjuLLLEQESNRfOSvI?*otVj^Y{gUzHC42Nu-01XA-(aBI)AU@ne+;vUW4U|x zw6Cj#h*~6hW@3*pwRw-b=n!(SqfplgPo`EV`fw|X&5fYytcq{2-XrTe?)f5ZvH`hP zwdHsnQk?azYJ#C<*y^ILCOn{EEo7~kU|&g+na&Xb+Z;DfmU|3{)ExL1><@kog~mkk zBszEB@BS$-o1-6*mE=8O8%U7Gki#dDZ=3 z%&^QdY@xkh`1A!Qo*eW~3{eQ@HZ*6_-qyDBM*ra*mVMFnPvuB5LiTvtcd_s+BL^_Y zD3k$tB@3_dk$Kg+>@i=qyggBp3+dPN&ZviEKP#q1$SyKnYpz+uqQ??1hW z087ir%F;Kq%*x8TB`=S`&!Rb-T7ubmA-DAMpK>$w{+gYo1GrjWccOGb(zy~STD;sI zV?rrW%2AwNFO32u5@0VtC#w1)ijcp*Ty2j-k-`DHZ#B-QFl;j!4$;$#uAyU1JwsZw*(@YvWKK%Y?yKX>k&Ozo9lU#=>;G~3@?L@h0Z9f4}(zQcoPAW=X$~P3QWK$@|f(ds{>0 z+!|7XYJSP;;2L-RFs}s8!8rO&@M;p>_Z`fEVs?Z^N57&3U4b~+T}Hac;~BuOK80+Num;99cqluOWfg;iQ}eEPdYRN$2T z07ZLrHQt(jifaY*MdVDNCQBt)>yf5y&bYlmzcc!0C%)r~GHS8Yx2R?_8UHD6a!iu| z_EhR>(I>+yR+G~VQ5qKYSH^Fcww+=&b~*AgzFcoy4z6gVfwW(cUp<+C$gD_0(}C?8 zj?7yp7w%a0a$}_lwvaFz1rIpq8PwU+zUTa#h852UTMsTaBycQ|5;#g_WGByWjy?+? zoSBd40<1+FGKp9t%-_0tT#MyjnD>5)Z6G*1g=8b@g&(fy7uVjgJ$21wP%`r3b!8U! z6m*7KjOFr|q@>NZQw)=M=OsOFBH){nFc}J+e7$n|>ZZ`A0~*Dzqs7g&6|fq=bjuBZ zb?8C$fmI)Q;T-IRUCjuUCp|APe3bOAD@hg|@yG!xecpCcCfnw=fq}v5K$d0(VszOL zjWe!wvjUt>_}M_=ve(V$dW1nz9^2D~OPIiaX;R*WtZSV;sLwpY?XGdT5#9{Ut$#C2 z=zZq5rYBI3bqr4zOa35haB`%g>BnNXZ%vC+zmg(%jhDhpKL?UD z*~#_&d$iAz!ecYtpmC2vq3CK;Q>I7{C#v7$4^Im>`j5BF9n1x)*V@!8KdO^)A~0p@ zFGVLE$V9`aekH*P*5tt)YjK44ew2r>P~+FJRKJ`Y4QOjUOQ=p?C@R@CdPwAW8%(}q zf~(7ox2tLEL=s)QOus9{07zC7s@Lg}*?ZFekv{y%lRGbK=}m@n`~ID2zZUd5R9Kl& zC793W%e9eL-;Xp{Hl<&Bl+UH`QC8udft?l=utF?a3rBw*E7C{g*a<0P{Q6wtV^-fp;9VwaHpaez5zs;;xyIsIAi|0QTU91 zO*qBRc<;?`2ByoGZvdi(_R8&EvryUS$USgJy|Qnx_BC5MH~1;v2hKaq%qmOdV2P=x zk{lZNBln`dmvfP4;zNy1nTa^)VkGGSpv`0lF>3bfCx0y84jqUAZZLAn zRSDs@(5e3{I18Aql3xF`uxt1Nxc=JDmd9tf|6KilVt)U-(e(a~jEwxM6iSu-nc@QY zcJcKNRRc}9k)dH+6ApCzky5A->|DGUQJzRl- zzEHZg)KOJcJ+HaCRwQz8TTrlTXJEFei1w*GHd`bwr)Qt*v0M&iR=DLR_;+Peq`fXw z$6RpiL?~d^a|=-WoS<-8s*}BsMdwdNB#Wgt;H`pG(3MKKNzHoO->cH00ZHzF$71AJ z;`^O#UwS@obON|#n%TCtJnQQIu%;1oZb(>ue^L_;eH>C@zhCc|y(M#Zi{eVa(s7@o z=eV=kN+J?&odOvXa1wwoxIpkqbXHb;A(5a0CeP4-MG3gAB2hl0a^iOesmt=Rjy6wd zpSGFSL(j|(3FCnv21t|(=;>~pxa&kH!O1BB5NS4^UNtKYyKTzhr`^|YuwVTJ_?GWg znW;du{3A5QDGq1gm9C~5A&k+ z$7bTQ7q)MIE`MaOx1Y+lpYl>;CXOIIYwmPaiCB6SguJ;WJi+mF%Qjme%V_vZv(% z_5d8SLCrLWT#xOntgPrT)I)##ZQL_#bBwMiZ*|w;>wRWVT;TEj{rw3_p+9wjrmtbf zSn>7k0i2I%IuJhtj$l8+ha~<)>;Mb%Lj-~AhJb*GZtJ{%1ED}OSa(Qnz@6tD#YN}% zqwyYs%}JOjx`;mz34`ObF>Gn$cr^@_M=&snv)`@?e?88>iXGB4lNoQ|t=U4X@`6C0 zz$eadYg{6Js28z0Q;!`O1(5uokqG(>cQ5zhtE(rMB1_e`|zQ8l0_msMk+$^GZnV4k9z;o9f1q**O+ScQy9NOW*pO1GfGJp}JNi3#s;vi&;mwwjRzs(@NDn zQ-@e5eT!BL61?9X71UJ3Mm#3W;{d?^!jJ)C3mGx{>)0I3hNMzLn83j%|Nl4K{%f!7 zACCJZwbkd>EbK?}9{~ICjIc1K%J z0ttW&^J7)g{_^TqR9=>d)n{gU+Q|{+xIcUv^rO!y`8WR>V~vOP?|R!$W(U-GbA2c= zW9zXpK(Icii~b|(-YV*0JfG~>QTs3hqY*tP<5>EKJ(~sUqmFys<+0^g?~gb1;aXA} z_I}qP?Vvruo9_N7#Y@i1Dv;e~A$JKvhnhLJibKEC>ehbT~ zdTwK9C!`r-cJjo#&x?{FPE9ja`>n$8qJ1o{0|(-5o;+d&))M^S9zwHuqt@he56<0e zXM5=9vWzKD4AaEUl^si0|v$Oms8pcvu92WjqP}nmLeJm3xwVxHbM_7nCze6An9Ee z`WJLhv;Iqc;LGnu%YWtq0NDJ0;+p@jIpFv1Qc!Ao`Y#V%+CL=3qYPa`_MG@sRwnAt zKnWpO9(zpDQxpiGTvPMsV>LDBx_k<~iJlC0{GYUlh~!~}7`9pjHzjP1=bC1t#4kPt zhKFBjiooM-f@IZzrq6x2;*z}vzYYyrcqOy^MWyB8f37}ka{-)kI$P|2p+5Y9+w6OO zy93b=Q+O-eoz)mHelx2i3q%AJh)+=|0s5$A zX+Rb72DtnM5N!(n6%{2D>rgZ895+{k6ia>h#$aAX2 zPR)66Tecu$|DsFY_+|pjUv$}>kK2L$16_jYjTV2zaII+rJu$bh2c<~@@8&6!$>hav ztVsRY)*1b%Me?hh?`8>$7=AeYzIXrmO+w6v(59l-OXQ8WO_8-y(tlI{;x2qyKbW|L z5hl|&M=;X)Gs;pj#DJuY-(rycKUW}yx&Qldp8p1z{trc+gv9!&0oC=Yr`h;q3-NeX zn#<|Z{b(h0xm#vfx?WbuK{~z3NZ#2!(|1P}q>TAEBuFKc6M!4XM=`a`Sc%L@=zC_j zfv-DDw>(}+)QfD`m72GSIxi#P`_{P&A#H(pJ6ZSho3Fp=_i**~K*xb@SB6Se_V;q< zii3e3W6AT0NYIWV5IOttYPq-2Fa0;;W?Tq*v0;2wZpMwgzpFb+w_#}6m37Js7$M)W zc@mF+u!JrA;;fL|u2WNZ`gXi$*r~CsQ%Trlpg-P4d4nae!ZCva2;{)hXur5}TpFj6 zd{RPqGO~72_H;DnwK{}kfF?ow$TN5+X~aO!411!-|53$NCsWJ5W-#Q$0hD|ZbSMCn4{JP zRUCR#ey<1UzD=48nhgX5jZf2b5_z)jWnRsx_w5}QR7}J6oY-B~^WXsuESMt;vCxB5 zBkpW+u+`>-^5bm{06D3;v*6}c!My9i9hFEJmF!_}AjF|+?5vSX*; z&o7J4ndVl(N7QyaC%i)E-hE>wzx@ZDxa2sz2Ixcuj!Pht&Go}C9X8!?ZVk&w zRvM-NYZTpybm~IgIw;V*&vY{TANoqRUoABcfFc03+C@pS`^~Fjedr4JS5?f{qHg*N z6*JRd%~)nnEBl{Yqr+{bI8H+)DPri`mEu4Ij*Yu~(!QzLU1nYfjvgAVw7{wzQpP+N z(s6;w3%mXdihFt+XRPs>tiC??ZRe^Fg=6?geZX`MP!_C#({k^9ffPA^@f<4FqTbDR zlmS*}eIv}0bG*DaPLp=OrK~m>9aA^qP;gagsPg#*RBRT7!iK#KpUz?BdL=2S2KcDp z#3>T6&{=lxzVYN3akIen>CjX^fDUr~7>Z|n357fXWi}g62380AG`1V<&Y6s=YwzRwEjD`dmbWH4?0|>nVOjOp0 z=_lhz!b;rP;*m6m<_7gV9eCa5h!z&Am+{-EKsBJc*V1?*@C$ySEau~lKimZ95aq-? z0xY&N^MKu%nJIhclowd&<4Jd_u^K@q$4;d>CaWP@6}|P&PZL{0gOhTuv?sC2CGDXz zNr;Q+j`1r80d-H`4h4QuWnw9mXapZjuS_@ zF+I<-iEY7y)HKt46KxCAzl?X9A=f10hh~-nPe0JEYZwY!t#fz-t8t9a~0 z)qlNuIXm$0gnXOl#91x_J;wD|B=Grx;-Gk5U|)F4S{+vpa0Vzg9NsI zIa>+f%alW=mxm%IC`T~(e<$yOlCVHI6uN2}+``5tUsoD#S_$BKurY!zCjj48bz-t( z9gD9~UPZBo$Z1hJz}nE*X8{^mm#wwm3+5@0+w&~Ybf90_;!ua`tA`>bku*QT49KhS zzT~1p{fVu|Va-*w(*-M}79Esz@SaxmEw>$0$s6k{Tk%1U9x$@Yct3Sh-j_2nm1j#n zT}^!rNXE=<1tRpbV-j${quQeMaauBD3Cp|k4l`wMSZ-Sg`2F4l;joG+UmQ7dCeId> z+u-EX>z3p+*ZiAimT?MqSmv3zK%x(e0}00ZNmf$zN9yIMy)M7Rn?$0=DUhzOAO2W6 z{_2N<@6A1P&t-VgkNbc0MubcqML;&-A*%XAHK0>ar;~x77uYb5AKZ7 zaoO&^wo>=?&aaBXBI7r5Hwcij3Z0|19)Q7%Q-?YJd|8fZ3;kG6`|^^pX*fyp)%&C4 zxzH$~93`!#LSrnMw9l{EvR(Tutuqt57R8tIyg!!u^fC(Uz5U5rq6$QrEsVTZJzZpa zw$(u9O#y*thSoWSVCK6fw;TDNe0`aOJXYqEoX)l?H3uH*0uPlZ-6}noQ~YI)PJ3)u z-d}WQ^zV4A3W45iwMrGiX^7vC;Pcdyx7dBNH=&4%7FoD?OO{)u{}8kI^(=1QLrb26 zF8<}6Y#_=vG4TQ?e)S|s^ja~M!pszBczQB&J5#F_lW{pJ?}@sO6!sO-d5bALJ;)5L zOg64#Znh)pxlSw%SLRrA4-mV`!_(i(!eox*?@*E#AZtQ0<^5lQplvtUGjJ+497;L! z2$bXQ_n|i*jt1gKe=PHhtW5RbgY}90GIJ|R4XM;$-;=QP91dlK zf{Uv~^ig+RqOo{ETp19Lt51Q?|KRl ztV!6-ocdk5kn-M#lRwVd$0jEb-V1SY2P2nNH>ToKqg$h`RwtcZwt73d{K3IGn+LS{ z#Pd~HVOl*@Par=0vgAsU`TWA(ysc3|)+YHK0x&QlQ?&$5tF=>1jcqnPJ)?*4DB@7L zdAn@AtMYKDPNoi#=!;y{M3J8(@kohSW|Bp=lLV>G1j|17=*HxBO1h{nkUOJmxc3CG zjdOrI6mlQW=C1r}09rX|p7gu=aWf$}PTVFl(!BMSprAU9s@DFm`9Lwd3CTPxuYgOB zEPx5&2%d~gv4}a*K1T4SR?&l|%Q9a(7v|^Ff7KQezW#jKyU!;2MAN%UEo49`$Eu45 zf{OQueTbVdBd!4{7XUzf=bqhR$uGNpZS3R;D#r7tgPCO|N0C50_|oteldp1o2&c5N zyxw`X#4=~p>t4&bgQmPVyPk;Zt!)heOMRzE^yCWTJpYMrI<1eLB3D@oxSV_uhm{*c zq{3kQH7?4z5;QI95fABhhP}$Qu%v^ zjm4{9z_?t8LdS_-NO`;?>9>(ijdc!Ie|i#ccgPLFdcI$rOTo;s1%`31vkzWsR&YaAy zxEv2;`g*KQNK9MZXgfz0miJLIxpHDaD>1%&)CH;r_8{xZFy35vf3a5NH}zoQ)TH zm*(0eRx0|f!>tRmla6p{3XL4giK3iEk*yJIy>Dyns?7E3)bxrl&{{*TG;1(*%~+8z zMB+Rl&2ZDWps#XYe|z`d;PC{Nwby2-t5z0YJNg*BhTRheW-|AC z(pR}Ij*$voD;b+9cMQCha=pShkQM8i*JwR_+ql56Tq`F|)hRMOTF6W_Dkdlk+iVkA! zj+a=2H4%so#l2>Wxa1T+L-C27x=S=y4QCeikzSS19#%|dcl3h`+)_)4_r5e$wYCc-<_o=(PJeWmVO<@d{|c7G0zjfB^G4ltyd1_%qedlg&i{ z6Uw|>0d}dex`_mH{(c-Q=vEnp@89(tri(kVUpMW@99FPpK_JL7@65MN9 z(GMQQ86D^XTy9)+Qxl&eG)T(P94bD!@Vii&Y2@m-ajw~Uij|whYOo|oKrKQm$otgYqTRv(v%Xaty|cRjtPF;*ZJI{CsWe zWaWi$jT(p4cDnVaNAG0A)1UQtXKyp9=(!Kx1Fr^}1`h`Ov>8mdqRkM6=IxeTy8jmQ z+v?JoA7a|arL%ZL*X?B`kCl7iWSRaIX6jffEF9N<0VBILhSfGFL`rcT5dj> zJNh_`W3g&fVL1F0+Zd`^s}rH_@v;y*zOu4Xvs8?-+3m8(POpnPxMHhsZC#_KjT6`( zZMBXYR+0!#+%D)6xx6JD6%k&zTSBd>9!AIUrM;u#X2#e~4S91-$FM|EJwDQEUCban zT>#Z4k^);pLO%vD@@Ikv>Q)-0m6f=%tRn74MXwJK-A%K0cb%d((7F93P8q8{?HzQ# zArSo?Qk7j@HXqA*sTqe+KrFMG%}a(%1it&&G?U)Il7SBW-fa3FknN5f{9aVUO04jK z#}-=4m5U=|D3>Px^h9^ac%5hIbx4l2b-kXomA1v+V%P8*U`&BcyjFOZR`ZI)fsB8# z4-EZ7`le9Z(|3#El{<(2PTRQJHt8)HY-AZZ?AG8Dttro?M_WCx!FGYszSbVwzQ#e9 z0>92Hft=RXi z*rdUzYqa*bAyRI#O>AOs4j%yQn{E=y)?3c$b;08$W+`4dB-(dP#cx|5CXODYT7u?= z4_@PZ^U|xHYih8js3WWId#(SP7E2n!)UJZ9-K@b;k(K>`lr4vm?V`AT>#wlEs2YA`cbG?B4Mp+Ct02V7;co}4~G276KRXL^p~q#a-e~i;T5Y!#GT;!@yQ&2 zzNu*AEs{jG_8p4#WP9sIIf`81Of%4QVp>6MI0>ICp-Zpl( zTUs+OMlg_TFBbt1K|jSljIjfilEbch=ah0yu-SEux4dZrjK1z!-@s!=w2972PjiPH zZk~;ym^m)U*aNlKsGWpjd}K@P*Hs&`>FnW*H)8>G$Q7~0C5@pP6Nt2Xcqy-pkx^sm z&`#D!?wlqvCq$l80QY>n+D*7|Q;tL`zcpC$Hey+fdt&>iIgw&byH$=B0Os#n>3v}} zr!t_mdiz0cS^f(G3SAg3OYS>#MivCaaI57gk}f-LQ#O}5y>aF{BjNd653yYJ;8=xH z5uj%=0d$_=%vd-FTzqL^*~oX?TO!0fd zD#@@A87&ou>!TC&HcL$M2ji*dk zu)O4~1>P_b&a?a+bgk}@TxWoNJ&R2v0=uVq)Wz_H7#K-B(tXM^OF&3y7)S)bPB`~? zHk|Ro2dEfDMa3|cTP6wdX9RGx_WdSvX+t?udc#oCkD=rPKY2N5kjUM)3*)6l&jr-A z3`473Ckn6UP=O?!bQNRsiW#)g$T$b074g`u*IK*;S0SwIX;; z4A@6OemdufiF#N9{xGQ15m1|m{R5lm-I z#>t1OVh~7RQphvJ%g~nAb;GK?8}6rMF6~7}Xv=$l3XWq5Se$R4kgPYM9@SikYP^z1D1-(0G z$1;Q63{)D5x+WY{f4o_X-$#=5iOBuy#8qb0_VKCTN}u2s0hBM%;M5)@wd(8PrPW^- z`new*jd?lG7^w`!u-i9G9lu@tu)MKb60V9{5{^x?7mvw7uFGd@`mwJQv78qCG}OWm_Wei1CB}Z zct+ip^Yb)Ae_x^r#l7@x=8WG>x5<*zAhyiYoIpRo;qx)&K|Sr?@Qvlye~YO2pXYWf zNVEceZM7VKD_+;L02Nalrg;{j%S+*9fJe9S?+kj_V&J@B@Ta}Qb2`s+fFE%Cei=b=-e{cSUpkbN`ZmMmMN&0kB&D-ziVPfY6_s z3UDC*;IBW=L6q)DJmF6%NQDw?pdA0L{YyX`@yAS+^EF$fPOepoYM4Du^YG@jxmMaM84fz6WA$q|5W_dxBM0-e-O~)k1$Kyz;YnWc^!f{ zj9XoWrV^5t@olM@a{M-1^sp4f(6(AIA(s#~flN1vCDepP?k?!Zmz7T&L7c`b+hXi7yDip|L`e!j7)}fgno%-BWUV`aWUi6}(swt7s-h~j&kd_`7Q^Qu z{ZS)Rw{u=!^uBZQ6YO3Q8^Vea^0tMg96I@siT&a=w@rLEeuY8*0&1`f3eT5%!&M|a zLR87qD~uFTX5G*j^xvv8vB|41R2XyorkCmFM1?_kB#@{(pt+J?a0+9s(r41+ zrtqQZ)jg~J^yLk}Y`n#Co^OGk0rUfWyl-uxs3J@Ss^B;fVA-670hPOA#T4aPUHo`f znjRIcw%gc8!;-rmZBrJ`*}UtE$WT+`E#-+fCU9s27W6Rpj1fm`*qkJO&A)?(6<%d& zS8X*lrFsUShw%MU=bmhrWcG8O7Zs{zeCH$qPb&GzBEvOc+exb?er=8O}$rp$crV*wj|@t?i;t z_@qb|T3RYov78<~<9qom*K1Ap!`B0u|E>+hkJe`DEs z&^r7AkT;Z5bfK;9Ahe*CUT;iBfb>6SlqwYJrva>l&>SbZI6yVQ>Ol57Wiqbr9WHOs#kSh0^i5UK zwHH;`-WmkxLd(B%uDpC2y*!HqkbJjgIk!V7d`?m?>2}SGqHPy|3gtqTXO8bQ^4|aa zcF%M74dipe>A5#5n*NYQ?K?aIci%MuDN9G`Tf9iH zg(^u-Xy(CV#fv~m#ukEAMe*k`zr><^wFtQ__()zR2Yb{(S)ZdW*-CauyXA<8S6yc1 z2iu_WWQPPm9s^_iyovv0d}u$Wmkj`Q{e{?Z|E`BI!$3VKn_XO|U?qfC{Bnr^U?%i@ zY%&iQis+08Pq&Eo4*RR6F@E)qHTeGW-N&!|851vRPjyA$3GYv_0o$gtMtnxYVzS

)} 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 literal 56392 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 Q-300D+`C-~x&PvS0J&BZ)c^nh literal 28291 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 diff --git a/icons/obj/improvised.dmi b/icons/obj/improvised.dmi index 43fc38a4be59ff9c8bfb9de3e7f4dd75ae044e9f..20890be4cbc166a81cb4cdebca9a7b75d1c91a1b 100644 GIT binary patch delta 1270 zcmcb?wwP;zIG+Ot8v_HwQpd;YPb)IkHYeVhJ=I`IjD4Z7;!*Jrk zeg=km7JE+@$B>FSZ)czPmUa|59xr4XCY*g#zI~RMj#AW7`6U-7Uy1HYSoa zep$KMd+YqNva)N;Tm~%_EA=1jI?N;hNA++PoDm$B)86TRwd?xgt-3XKpPt;GZP?|W zZ@@SAzQh%_lX;)^Jej=PbHze+=To1KKlR={FX*(k6ywb+>_yRQ+ZN~_|MvE|rVn3; zcACqK+4F*8s?h^d4 zWqr_-d;4SKPVFpeaS#+(thB&+*Y4d%cU^xi+I{?SV{jQ+>i5>Xh8=*8?z0_re;ic#zF0bdxuhe3~uH^W*JDB}!IT6D!`LTTc zOX=Gz31<#E3m)0PKmwXkr&>8TvTFYl9)5o31y%_^d*$~F8Xx>}X3M2px46nW4lvC) zq9+)^zM7+;{bjYh7X{w{J^&V$GKO z`eW(!&IcamC2yY25UP|ZT)5?&fwl4Ln>TJ4l&)Erm+^LORB!P2@81`0+7#q-(ay?B zXq$%$lf7QuMt{TO>ZyAry$gcE!($bp&>)3^M19naXrs&_r9r`WXrkzPPU-??YDoN1RMIMn6MY` z->)@I|6Fb|OTuk?Q`6K;ofDS|w%qLtpB%gYn40d>_kX;e-8iE(zi#cLQwuqcyiIm2 zyHa;#tA5HHiOq$|>v|csAAZjqbD;jO-GfyMt`fC&r delta 807 zcmV+?1K9kd3fKma7k^*~0{{R3)kcR30002DP)t-s0RI4HKMQC;3w%rsPEJmdSrCbd ziH3%TgM)*NjEsPQfF2$m6ciLuF$lQ0xVpN!yu7@R$f|~@l|A%k* z?`n1KFT<$1>mZ+y2xCwub=>Wxc;Un@mqROs1GJ8}LaZ5btZs`AzLH|XM7cLo%t_y2 z%U_jnUVu27GDUKc?HY*T(fp;`@(eJ5`NAUf$h0CGO;EIiiziMP>@QlYe(XNqeFI3? zX#zU_f6^fU00E#$L_t(&f$f)TQ-VMgh6xfdV7rNi*Uf4%$;wJ&$p8Pl+T~I%EQ6@q zjCLM|+2I54!*W>WtfBw_02~k}Dn(|#Mp1v+;Fi<+f|v#)XV4A9FipMLZ0cvGX&R7D5)yw`vNQf5LH8H8b!6x83e^+_vko^M*aXXVslT z>PQrYcf?_*)E6*CYN#ypR`Ho)gYRhTd?hJ{v%~!W000000OfQ=>@&aD?@{_0@kMV3 z!(h0pK-k-lDEM}a@i3RaCh)w1VB_8%-&v#k2SWTwKL1DHCFBI6-d-yn@qRJX%y?wgV-~{e`P6&B>{~#nUSS%Nm zWk!6lC@->|ZJ8RyCY=O9@dn{CC|?LkiP=6tD+)yUO7}CQ2V;G#S_i^yfG|IuK^TVI zxW}d3jh~uE^5gyl(*H#O006+B5`9S)J*>d+Uko6qLUs*g7devrh9cP$SjjH2^nB@` l(7`XVqxhFbk_Eu=@eTGpM-DwTHedh%002ovPDHLkV1hNdVBi1% diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi new file mode 100644 index 0000000000000000000000000000000000000000..e38eb539cf4dbf5725b58e3f653773b6c6b71f2f GIT binary patch literal 61369 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 DND(s; literal 0 HcmV?d00001 diff --git a/icons/obj/weapon/blunt.dmi b/icons/obj/weapon/blunt.dmi new file mode 100644 index 0000000000000000000000000000000000000000..480515bbd79403d8ba02016cd71120b565ef7b9e GIT binary patch literal 4469 zcmb_gdpr}~``_G2AER6%4Y@@k*N6>?RB{`mB85bsrb45p&7Be=$?Y>C%aEi9naN#A zirmKBW}(>TvdwJ!tY`5F8PBJM?B`XgC4@h%U;_ZkPIKB%M6C;`!va-W!+p z9L4c0Rg!-C(-*I@8@}D?pPrukE8cjym*UD|tczz4dB!5npZ8N{09ML}Hcl}oi!@!w zIqIe@*_y(=D>KyYm__y8$bi#vX7=TpOE01>duKWLR0RAWmuJKmSfd~(ja{wjg$wcL-!uNBJHgQ^9|5C-`;sp#Ly?9OR7}2D!^GIZ5HHv zkti<<3Z`V86bXW-8|5=E5gL$V6HK@(-I=)jjD{Yz`jdx!T+Tj5|T%ElJV1+l#lPcEw%u#DsryIk8tkXs7}}4z1ZGuORezVIMK} z9`mJqcx_MuW)kWriz=T}PpGy(MXRYI;S@g{FfGBEq2n_*M(Pk@Q@?l_ZB%WgyVR+u zyDp$H#9vL^Lb-P4;sdYcejsCH8coDoIM8C>pz@ckZoam99nNB7c$$reEDq8QCh@TK)z}3L{duBPTMgCjzk5B}niM4|m?Hqqgt4g&umW{-=b? zFTg*OYX@Y`TVkR7Z>KlAAMB3f;Nol9?Ou4=)7*@?tEeg(T$^`n+de(U^P`MKV#%{eRoKrXR_IlSW4`Unn2@L__^DKZR_ zNY2YcBGPXOmv@eNd3!IS6c+lZTS)yFV!J3Hzz*?x2)&8ut+0@eyoyo{gRfxjy~M!#QqbpbyZ-9&QU9`<#Ef1V!}Q` zAsdl2*rqOvLeSJEY0tMQNGLo(d^~w@_kllF;k3tM89kfZFeKv^V+!=OU^_?~XaAl% z6(#{GbV1y18@!V<2|_JloCJ2YI29dZ*OKZ-EtfFFDV+}GSYy)^`9XOrHI^(J%cVKK zW0BH+aGiy)P?nl&Spbp}XS5I1uTxuTp_kc{?es$PYzoQB(Dk>!m5+S7FSSbUF?8nm zPVbu6^xK}{aYO5C17JDUPKS8#Mc|Uipda}p7Di0TfS!Z!iWjMFX{Vk^bocQ&KlP$0 zHrS=Gg?DmIT>jXVhUD6<+~6NO>T!e8C^tuWkPdlj@HU(PBma(=xUT$k;eq5elNx(% z?)s6RrHj^#L|lRx;Fc#aNChGR@SmZSKfISVIDQ%@lex^UJww+QFAKcB$kmb2(_g%-%GAK>Knu;nMmH||Z+X3srcaolKx zeA61@jS_6^+L*%NC$bnf&s-f}SQ=p0lS8Nq?uATnC8T*>%!?vS*u0)sIW(_*0ZS4^ z`At~Bv8$H-#!dS>c{tG$j^^E_4-|w|>*t<)2Gsm*+x8hD2sAfy4`JG7qKd&}E(n&J zvyOQQS(OqBovkRE zvB$ZNn^+VAtt(BVgi#Kfjfq73r+S-muvkRx97H?p7F4wp2*&-Z)5>_f3>2`piMteP zc9AlJStCq}g`x|n^Unghn~_v|FGMK67$VR^%q=8le#aiEot5edbo~+>7rsH$px)8@ zi*++*H~d&w!;!iMzOt?Lx76dOX#p}poP`KZ&fie;C4~cpI|CbCfAc`Z`kFDKde<$I z-A*GLTgj+7eZ!j6WrZr@A(GS~2`hTyiF&Ly!#fF#}i zc%RxicL`i|ZvY5vL}zVxJUKq!%8_>S$yPU&QkyBXj(Ouh38;(ZY~4Cs!J8fu0Th95 za>Uh%ql7@kcR`mc?~|7~#lxPiJ453ZfdDxa=!ZyYWgGS|hS~ATPhMdU=+%S@(s5@0 zzgn;sN#wbq+UwWDM&h$Amp_%i+|RHPkoq@3jcv|Ah-nj_N3}N#pm~KYoiW5GaH>YK`xS?O#q9b_5!UX2dwEel zB*(u>{QCSvN;=m7?{INIy|GPF7WHs(&;!2nOWCUxS!>02VuvxO{WfP3(mx9ey-wSs z6UJgN82csY%DJEd%ZLhNUr8tFU;ELw=ojBLZyebq=71|l;iJkmap*9OggQ}N_Q}_3-}-dBm*Q%_Cn{?* z_Pe*-S@SkCGwXK!%R+?2%YQJF@D~_Tt$!(yX6Lw#0TD|p?u@;@to-4r(;fYhHwjj> z+4CdI@q~)%>a^`3Cs)%XOu*=y!g*D3Xy`lFUdo!+(ns-qwHT0|YTuNpaOXF4jfsb- zJ85ka7X!^DV>{7kGIi&c{HVFmbD=RTSl%{OMF@dzRK}z7iQ+M0Su-5xhtA7&UXMDcJZObuyU0wO zu=ucIT9*O_^k>)HZc{j{9OiKOq3^YTGaBeJ2#9azfZ>8<4{eZEGd>?M0B#c^Xr*Z zhlxQ_88$Q4YyHtWuUpd9w>6HK3~h(|HVr5Vq7|T7A3TaVm`mVpU5MIY-C7;^sv*(s zTJ-6*;+ZTSf`!MMPks^?K`CNS6^7^kq@_p_np-X(@vJ%ng^iM0+<#AiGahb`EI`k; zWaJ>aS{MYY#HG+YNerT^@NfyDwwhd7S$X-lu(m#2OThYf6rOrjLntN73SsTbu&%V4xf}t zwu`s9SV5J=aNDP^Pxyw87s1yj zpXZ$SG4|wcj>CTm4zWeM5Vp6XC?#9OS~f*f^-QN;U}kW3e}8|Zr~k!^pFP|U{=O7j zvvuTxNpcU`g&FO;d6sMJhb{xm&0vw!F<-7%(<3k1*~R4w%f;|TqG^Ul3ZBy7TiiXg z;AVa|pgaK@*ey-1uk^$%n?ZWo#A866{Nw!W$xmLPq4m{c=!3DgjWPG{6Y6JdAmoM{ zg*^YcShc)TAMTz3|FJD}H-j!I0T1b-Gk2?T-Hn}^UUap}!XETws9xVtd(9bKb)IZ* z;CJ27uG&d}kFGmK{7g2g?jc)X(u`H~4Gf|_I|m&L8`gbyZAioH_QEN_`$k{@I_&RX z^La~ni>R5RyF9lsCixWjb$Pj_BYLl+Zj%u%0W-?dDsjbZW~d%NJC;0wUN%sX8*v}s z1pADV`@>BP=u1kwgN2gZ!05nr%*HOjZ&SIC-2u(2?x2aZyxZ6;8|X z^utx z^zGzRCP%blLaH8lrNH{SWj0<)locbUnnxxjbW@9ETA&4BJiwjAhw%u2$Qq5*qI~gEl2b&OvTU#{rK7(OkYm=?%nkXPgv9jbea5D zo4(YT1Cw%m64O<(q!7iFMyg#<=RMwZ9Ty2P?o&$agevnk0g+JCk4O6s@rKrsfb#qs zq)N=Lo(3JuE@%Poi|SAx^6kV^meY4KFbe@HSCP7LW~Xck?E%i}HyS6zNHi&ZQ6W@#WMhlQ{yYqd(=?Th~9>%U??ap!yAzXF-*w#O(30?JmiS@FhE}c6_*W659HfAoo3+e?a6+BVe zQKLUdNW#LT~-V1w&TnFpJS(9TF9Qd{%Gq$-Iljkx}?0(^#JcnRg)3c4|=j) z8!PU8sJ>fqKi_~I-L#0U{JbcvP3&+ZyuWsS&Q_Phj+A7*F#sFp?X>DB}JhzNI@vL63W+qc#!0+hkJzlOj)gsV9 zb&3u4+)hleIrwIPAa)%|zxp{%XI5V$KT}Z)4K*&1NxiB_Q{Lum_TMW^P{ zQMPBhV6b6I$828eq5N*f>{-r87C3z7Dgn;SkQx^~j z7X7V1ZcbRzlaN;kFYE&^+TA&I_4XA%&zpBVeSHv!dl{Lj{XP+UMWRZk70w0?D-|!O z1XNVo2bMLr-^#GwS;%?wtuH!8B>#;@#yz&F;CB#_#rai9bj_r~D1iDden`1cJ;XG? z+$*&*{CV5?>Ro2MA~S7wguPo{?orW`+;1??VODGL(R)t$322on+U?|< zP0A$eSE;8!HDdi3tg>4BoTuJ2i`vdF4~hMnaDtw7$|gH>Td{zj7lE;BCd}J_aZ#wQFgTmVE1ixG`VY?{-iBzg7ySJ^~hM@+E zXjL1~rFd`*g}dI{N!)#FORDNUuiDsDVnOvdE*T1c+iR!bFCoRz{|Mq3OB;{S`OurJ zxi4T<`=EyJO{cy-)MU5>s@_vXLa38#dDB?j!F8Vry3jR2+R`VR1BNFQ{N^~F(%rd@4;BBZiV$hL#U~N4A z3%!^F$X!$&v_!~4+-TTE>>DxYk>!VavVj@rpK^Xke2 zZNBe`yx4NK{j!jond46A-T%4Dm4;qg3bb@JyP))bjK3kFyd!Q$I8K~wLVh2bZ#R(& zu7X(fMxq|zf6uRxas-+k7zmV)VVn8-+9tW56Qhg^Mb^lW&&4+e7mHB#s0wHeKcngG^ndQWYMl^w|zzq)Rj{Sgxzf2H-)@3zQY=LuCq2ZIT_ z*cHhd2$V>x@5eh8kIlzDSeoCX!-?PBci~%lS%Zbf1G?mfo?Q)QMe~sjc0f;*HM>D} ztY@hC;1R?n6{_;yS(?cOc0Aa-idHcqKLVI`!oi}~)a;&sl*LfY78g*XW#O-=hUfdJU98V8&Uizd*_1Un|VekwGjkIo*)Q+uPWiA&t zc*l2DR~Lf#=ax~uM*}K@-|S)j5)P;h=~Y&umG}cH#6|So=&tIcXvVZJ=J!al$H;P$ zicLJTc+qxL*muNw9W(bro1{W52uLlw;k7b}4|#g~xt3^G%}nl2T$YQoD-m4N)ybK8 z0Wz*|6#rIz!l2Qck82}H;4$zan?%FJgm`Y%}MwK4P&QN@;z-dcGxpIr&PEZJ52blV_lH(e=1-jlpy@Pc<;46K*qNl90tb@f9DPNyL?#Ynp~ysysWJ0 zZ&s^|f)|gS_@lJy*woN`>3i1VN$R}6om&{Ti9c4Uuf+E0 zkWvEKED9we5{jLyN$`(znFou#Rvm`k_neG#@G3LDOPBoKiuh*`)U0^<4v9I;SNR0Z zgMDW2x)VB5(IN{@EAth#m}jY9cCubDFMyv|fxwg<5iB>E-%vgy4fjVx{ruiklP{U% zYa%m8ij?QUTNVoEy;75&S4BpgyyZ}ykx`_)d+^af%=FYm<0G;cKl)+PUXd@C_Ce1g zP%vs;PrT#F}X*iSPK>T?5M$GHmJLnV;ywGy3#BO!|Fn;j2}CJEwf zli`w)j}sqI^dIwG7uk7cXD8cXmDiTa04pOQ{KWY{gaIFqRBL6Z&Py8 zp1m-TIQ~c+mxIOIaMo&mH&h7wt6*T9D~>x9+fFDZg7m2PVWBvHH#h-_Mh4dkQ25H9 z5V=r3A>hV%yEpgNV=)qqf;B8#k87lv2xQFz%<;KXpn)>m&FLEP)aIJy(|0fpB*X3! zy5Fx~WdmF&`3PkB6I_1?-_N!k0ct@CQ@RfpW zTe<_0*BH7{%Oa6 zVd)fa?+M)IyFEU{+kD+*$9b%C^C<4O;Fg$aLw&RONNds0r|Sas9Zx`=c~ixaS$3{a ztxJ~!rpt~(!ORzaf^O5mXcI~0m`xOMKlM4BsYE^m`iMl#O2?UYMc~m8_4nf!K@+ri z(LPb9)7_fbUG{$wN@K;u_8xt1z6a_TZN5D!9=>Td8KHW@FtDHa3B4n< zs`(ycUWO<_|KC@-M|T6kJDYp62;o?WBs1IiY%He=|G7hx}Gjbx>QxVdH26M`&)|i5> zT$}TBr*uDEvtjgcXl#C*NK53gVWhO5jdR4sLNbkVr zuwX3;|IJOLl*thn*#2G|@me@4nHRycm9*@KjHRHL)hwsCZ~+DvNjN+>{`J?-i@x^m ze_ZsCBaGSqMr!>*u=LL$FMS;fSL>t_UZVb0AaR?yecMZ$(mk$5zceIDizQi{0i} z*Zxn16xF{uN`MWy;t5(7C+Qv<@zY~Q5}O~aK10??4FDI)BZ(4T;P(#HGjv=-3wqwq zL}mE+H9e+i{^&yFSa6^NJ3gnkr?2|%l~ME2`QDH55RN`_a!a{*!shXK1(X|GRXpmo zw82H41;%!4pl`J~pKloE3vvBA_?ptwJiFW5tL9f;(ujX-!+xf!a{A&CDfl+!vxQ8gSx8_`oBr~z(ttN#yw)TP>TchWPQ<+45z;AIi zWAjDk;-e+>D@pA?bPme7hu-IT!C1}5HPfS6)XZB4@Ql^o8eA3t0CSHNOX?36x?bLK z;*a$vl5MY%x@`qyo8zHP}`G-{M^WCQ7;^<^T@t2_5x3wRYus423qkW3U z*aXGOmOESbZEIRu_thRi+?MwOjq;yKbV*{hzr5>0l}Dk@TbD0Kvtxx={?RZZw|54z zS?~GfCfkCPnpd7e{c<~S?82v$jHiA!iTkHdT}PZErz)s^s%XDDjpwi)AJXU*D5`Vz z&rDmpe>Y)k4@$b$DgdL{JMeMp{xg`h&Ie7anJY4t9&TstB$F-nO{J%>d%k=jeutg`=1_16i3MY$>Y7M zqs|v1Dg|F`xktB^q_AE-m(p>=_-m_UJCf_z^`WANv_G^`p)&dqB>c{p_&84ZT$WRQ z=f>bJGc9*EtkNExALCqA0xga0y=e#78{%&~8XvIwmbK{Z zT)!i5rg9;IeC&2fwWb;2$;9U}Z~rhJU{aI+lue#g77W3c|3a|4ZT${b=%XHUnTYEC zT$XV4m)*<_Gs4Mk=lQ%VCj9zssyGfe7$MKEpe)7zA8)rY`F^#;Gi9dVib$oz8@k+&Vbm=Ga zgU2iBd347OL%SI{;XR(9)+on8h%*w<{%4^oLCNn)YNLENX6gnB`C*@j(*6Ea;QjYD zRHD%*yX9F1UFO+-=zQvjR z=+{1+@>V@boj+9kMgo?98i2*L@b4~;eA}QVE{L`0;V-rNy7AcNk3bA-ahda)0LlyJ z^+zC$?NdWIv=e?19sXoQEl9~~eonrSTV5QnmD#pcJ{S6RUgqA5+J9Dj=+k*>$E`7c zHnb!6Au9H? zw4*&C8-}&8G$)*s;mM^5Xp(EzmLF4rP1rL_%Vu}|Gt%5dju7G zI9BvA%H>57?xgm=Q4*`Dji?}#wv$j3@PLB+e^y^EI7ar*EAXN8w!`iCf^Ta$M@o9J z|NNcU_L@nQEPSKk$Wq0Sb^Mpz??Z5I0 z1CvWJwBGiaY9oEiCJwhzg;CMfy<1-qj`xRR7ac7mE1GAE#-ryR&3w{)`{LRlL+vN$ zx1zZP|2I)Df-3lPj#YRxj50^-+VH7(@M75=O2MUd9j$fM)Xfsp_45bVDpj1*1^$q#u@D$x4znY)Y)P}s#x*gryZ{eoz!CQVSm1Ydcjkj z$>NaqR)qQXEya)=)bfrwGknl=Qfr%G3_#s2fW}Pf!dJG+L|G_2*fQx4^`k?_mfejDP5ZTZUFFwJI~FQxd#cv~yZ<@8D>U z-l{)|V%YhilK66kmKopXmCRY);03FQBx$XYn}%O{Cl0?L%zOHWB|-fi#WScS)|w2K zi3pf?{%rk(NoGgMhY#n+9BAQ8|L62L^-=up+ddxJxNAb;9T!H>o(F65gtM+@_QPfM z6KSvb8UwqT=rTP%7|PtIRp+5VUY)a0@nlKHRPaw1VOSclTDR*U!~Po1LKl3f_9>d8 z_q4^g?bFOKwzmf~R3EeT;^7~>!)fRL&qT6E2DJ0Yf!GW!U&)MxFUi3Bp*A9B3UcT@ zAtyAL=nq-PW(2Gs3wxPbD1OZMHmia1)hxO}Pn(H)Yat;_1E`$~Ganq3aQ)1CdjZg+ z?2&%PFxA<8gr0Qw-jo94-5%)}czxms9S*LSHsfq8fqwR&R!$URYW=8>@8o)Qu(z+- z1#Zx-6;Sz4bVV+g@U$oegWI^X11m!pX89))iT}e^s+CN&|3v8kxrEhKOfUFPhYPLD zqK^Hspcz_`Bh5f1_Geirk&l`R^*8Tw#&NcY{uHY*Ae-83o_CA<&qw6vvj{ zG!7`(z6NM4gh>=hgdt4<>MDPLa@zy^!M3jpswLNd9g)~-AzVmkn}xf1IR*tO9l7!` zUC&}-7ax5Ufm?{WPWESEiz0<^l#T7Zc#enrw)zWCtT?c`E7`wQ1r2vJw1lnUwdhx; zRX+u&)}IS`^_)@7NN&E~<~v))toVqqvMKwfwU^otGJ0^@6V+pSkZOFC5}k6)Zlimt zWpkzXjSoXLAlHFfBdQsWX_U&4L|CRfzpZ5S_D`YGjx>v-)yIEAMgQn9?WrGW0b-0> zpnZqAz@a3y)#R?@`ubcc-;I2wwS`0#d}!!TwZM_;urNk84m}29snp4f4H)}nLJh#* z?$m+zaK8UVQ*``X=G|AcPZ(nHW?efo?pB2p#~p$C)`GiXc=Wx#(b6l?Y>$=H4}0TU z1k-TDdWt8F=8Oe~6&VjO*ay!#LdP=V8N;(DM=$d+nfDkExbI{KUJ3O!4-ftWd{&#bT@gLRUaMJ_sa(UH#R>3_h<&tTAoOR~Q|Y@|zdlBd_q3t#jeIF{ zxi=e5*SAQfzg)t#%Fej3vR_Geg^0O{EUfCYci+NjSK-kU^P+tcM!Pg1qhmbXPL~O6 zeyzEvZaLqXCW=!AH`3)uX#!caV{l<;{gaFA=^ru47&WQpcMsQu(;8jQhx}&+Rg%lJ z!+L3BOsrNza8SE|Rx*(LYmjr#BPLOABbQc!p*fUd!mTIGx`LOrf4VOqMG4e%o&U6JM(0775(5tl4sQ4-%U!ljTC;a-64Zh%D`xakWMgc;|UP8SD#==iK>~YW@BRJ zE5wvBBCDLKZN>~-Cfz14Xno%F{Q?bhjuX(7N3-E-V$p9^>Kh$mXgP0UReXOWF1}K_ z?>Pttb4Mne)wXkck>LMR6yqWBnfWX%ObZi~4BFq9#dGIOh4>E(+I6FO!WW*f9qhS#-2+Q8YBm)X%zF7ed80W& z17tl(Co*rc2(|eW0{|)K{@8)$M;%;mB*&^*vg#Q<_mE?+SXftl zTzKXHb0fQf-o`f?IqmgxgfRNG*bq}QuyndPay@vD&~imYRMO6K8>)A&GIg#8O|Eye z?R`xRZaToMh4NIy$Yuk$Qxz@u3#H~1J*!291@9@lO_tPrItLj7T<`0Ly%tnALx_75 z#Lhhz(|vKoGjX_n^J)u6sMj4n@OO%rY(@DaMz720V=Zi>GOooW_1PW&IIS?uGlnvo znmKu;A|{Z`BOu*~>^WQ_tEoY{qDxXwq=xbcKBj1H9&@`?!hg_p@f~AsQ&S>Bk*)N5 z*wP^|nVz3U53t|R+VI`CK`yhK+t~&jK>XyvHY=&eYX>XewR>1z`RVYR*o@donu^b| ziAlzW{U(7lu&HyyJPUdb*SPswKV{25LglP@<9Q{`&OOg9cj=>GORH$iHRkz9)Sw7r zg%>@WdaL`)D;@rrki2_8^I0%Y{h_ano~}SSV|nKJDAb@(=mUJnB({%BMy=kM zLV7CSISAcI5eE$(?Q(S?iKA`~`2?>)n(8e|@8TT?$$Oz2$#S59W1+0$OD{$b67211`4>c=WWVlLF8Jwwc+umR`St`S&p|9HTmJeH z1yEw#amBaJX>n_8bmbaQ#i-;WuWMVJk$ zf)_hVINA?*am|+&IZ3=agwbWe&V0(;(ZP)MsIlJC72BG}PT)5{={1lApgy^62?56@ z3MYobNgNuSy@J7>jzAzhq)Yy8k_}RQq-{k3PX6a4^HP7I-FCgjLe#R}RB3#S>Uh39w+b7IYit$`FSu*|E)NX+9xMcJSPZ zri*KKp%M7u^gC8a>n&BMi!D}rYYz1N-Cg2^TdnGi~w8aY26WDYy#EkAISC{(du{(Jbgf(huGHXix-fj$olN4VjX-wEr()1JZuPOQk5zB|A(%x?AzNmC z@81nNjE&vYo`%>hPf|R%3%!Wx6D7BCw6`>ri5&m_TeEAp31rjCig5JRaG9nMCb5@M zrL#%)Y*%mXn`c5Gj!K&OR|U;SkC>upi=}7PRyWaThSYkobSh8O>N-7t&qgV2)z@ch z>B5{LpvgIS{%&@|KpI1wK{BYh+|m8Vp~JL!p^iZUc2ZU7N#(8S;X1DBI*;hnMJ({| zvt}uydUS1ZDb{5m6q5qz4D6}9@n$~6uMfk9rGP}Zt+wk#Q1;M~aoYt9V^LQF_zma< zp4-wbov=~LM@2;2d9{>m(w0VYxEAGU#63-~Sb%#F>L1N7-b8hYYEHP(EZ#+A&Wi;! zMB5^NT!*O}GF4__Mnp1W*d-e}GAyNSju9M((}lcgG4AHgf!z&v8b=J59R8JgA?j>W<8t%2LjFd&1_Id*UBT{qTC z_*%{*|GtG6s~Ym(Zrwh_%FeAG9W$7QWOIEHzWpY?OgI^}clH+j+r6X3?^wBw24x1e z9S>lJfzKRc4IVWgZXMme2;XVUcb;(X1GQDN)U7UHJ`jnUGkPi?lWiOuE@qq$XW``+ zih0vy6?oY_2MG_&VwUwK*Aylav$Ye9Lmt-V$_wOL;=>A66+W|h4t9TdR&-y;wvS(^ zHCtX=<-U^bY0QrC==Ra8+V@ltTK1)YL8!hP4Q175KQoR+mE5C`lO_@&bo zI916>Z6gWDEhIC&bmRRt&gH6UPPMBg`_xfh)yMIX8>V}gc#rlehnj^ut!9XH3CgnU zRzZcc0(}hDTG{ucV}Nc{Lgg(dJ@%w~LMK_ZQGN_BJ!CdjYT_K&x?bP>TE5npybpz) zaYoxE>j<_dERzD3l5MlIzip!?P(u~X&K`tce~zIoDi3y%5rhQt8}0-Jj2=A5o=>0Q z{5m4NuFJo{$NpyAcD=+pS4TN3le8=&Pc{q+zBm5qB_$TnS9`=I(*RtXsSW1lg<2v~ z__z*H@&#K0$w`Fe+nzy&YvXe9(=#W*p$PnmR6HLEp4@HW?E^IXdzQO+`fraM)$wd} zUG)P(=oR_izzdO>@CmqP8+w3AO#A`7y56c9=<6w|$@Uj)%cVy6p_6wbo`>O$wIqJj zQT+pcCKm__WqcVH*8OV1UaNjB+pN4r0y-JTvhPhSVrE0GRdr1FycJ^i4@s2|@SzVr zP0oi!g5D!kbGTp%%6Ns)uJm_G+&TlI&M85ki5hj?LTmfG5i)Ol)K()<&`a{q)`%VK zHNWpE2R@#8DiF2KIeTdD{3|KCWU?hYj!&%$z z1&QzFWw&zXj2K7bzI!+?B@x(4Qh1^y*jm)n%+Nq3f8$z83*0S{Nqy&<-n|9nXJ0gA zhQ75qC~?`8KeZ03>9DPfwiVCV76qE}s{`?PrU5l6jTzrw9E$w@GAioaJw%}HO1OFW z!~eXT5SF$aR$S-6v+w9g%6yMIk9S}d!ILF!(Awn;E^zEUs>y79w=(jfM*4PBcf6s6 z7ea)gYgIqWGYnV?u1kq>UvDvoB}4hUI{eURvR!4ipbq_y~U#sxHgCTG0l}x8E{%V zVUT8~#pXoUmpT6R=TgJyxB2ykvFK=za2XHWJ6t%ejJ9BoOh$(;3Bo9@5+%k=lhd0Y z3tS3QzrPLgPW;M@UOnQ%Sp9S`jPB&K7FQ0h76>0abp`u*A<_j+P91p0UUw7np@yS> ziuXe7XT#`s*j<*WpI)fK)>T&*W_FLc%wrD&9XoF z5TY#W{#>O-&VKJ#^%|pa56XD-lKc@UY6EV{w}!Z52lqssY*$@e>SDx8*Y2MaG|VE2 zQ*l|)2BxM~2VOdiy0~E(528=x!|Z}9S7iJ4#f2t*`Kb0HbNrEq;1VxV;oXIQ3VU&W z8=D3TRX7=UxZ0Fsj*{P&%CjR2A+7UweMrciLkt5}!l0lbSqhJ-wBtOkNt&T``-z_e zHyGQT&Xnb#;N%E{Trql`vcw;dm6MsYI)PkkI1`&nOJycw<}3HRh6inusN@9BCPjQ-}s zz*WSV(ev*MDFYZHrd~>j^SR7|>K1!d#!KZw@$)j2-j)=2o4?SVfYE7sbETQ~HVDaI<^a-uyL{LG(zW=shI4E2=ga?B)PE z88;f)_cJb@@sr%Wyw78E0C4{DaodOo4XaCW`~L2T_KC(NYS4cX;nRfmEn7R>8R`S> zWo__<*N{sP7I($%H1#&6Xlcy3t{v+M+n=b09ADpZEqDe?HhdL_XGAf^&Pp{uu=CM} zS+*5W=d2Cr^+}pcp7mW)#b`gSv*QnhSrDGmX72rF6X_UxOLcRYX13#Ytbs4wo9seY z?WZWf)cE{A)Hw7w_w){tdJ9Xj14fB2`yvy|>>V3-vvi5#_Vi|*KKAxVh+{u|xG&{qBnVJQo3@|lE>l4XSY@O50om1_|1yz_2cfUwF`729SV0Rjl z#S_Y+bKHdK=U{39|6X`9u>Crv;H;zlHD+-&u-Dm@XSs2nB2)YNP%?Y`kBqF?WU~b7 z`CEDE@k@`~;ZuXu^Y=SG+$Pa6t*SCH7`?l-Hgd{bpHI>vf?W{@; zn%VatrAwkA#l52#p5ub(Mrqy$iPz;ex})QV4Bf*%(^HJaqfstMj+4LU4s4iB66UkY zUlv}TGVF_ON0vl)Z5=9#eag2wL2idN`t$3=>ol__zQ-?R7mRp!FRh@MUTXhHM}tD_ zKC`R@8bqit5N8huEeDJc9B7MeWS^R|>IZ@6j830-k+?PG{PAuhO(3DAV|B~%QH+n)chNkC+Xe3XUF z51ht=>KA^C>j4vL?Q|(Qlin|9f(-e?HyPbnYT0a^!|0gMB+iskRo^6Y&>)yup?B}h zs#CF#??Vb8%XAoR7D_@iGp7O=hXdc*)M&kvJ)Js%*1qrc$Hp{4shVlLpjyRGPL=YF z5j>K7r6@^Ek9WiHY$SnBaoUYN$$;+&O-{K{gehcpDRCmc-CRBXj|dWlMFta$M|}8b zbwG&R?Esnb;Sa3vm5Chm+WvOC)Fl*LSywdU^)7fiF_LRfhnpucs-P_JNx~KnESZ0Z zooYANplwls$!Tuz%Q7|X!NXiiemZ?{xdg`gT-fV%h>*IayU74KHT zf~FgSTI?^0)aw6P4vq4rtr=BsTN9sLhYuqBTRjQ0$b04kWiD3Rx)KuR3rA|YSgh#S zpY;NUW$)|QNw);QlRvgApnRa3`RKBWhBD)M-_Gr$3XY)3l~6kjTUM|4;aSt|k0G{& zWRub2Chwl7E-vQm9~-cm%<;m+kUyNepbpeU8qN0liRko8P~K7ZZSwPjP;A~`)= z)HuGoo-#9v&wfq1!1B_6vbO(Wu zP+FBFPTqHeiD{}@&CUa^LLx?*HbMyAV3o~u+U2HB)FIjqFr%tbjqsUx2pg0A%xVtt zQ75>Ft`KwGrQivRgBIh=&$>o^5I&q_QE)Z1=T6Yovq}%%0WLoku7u0bizo8s3;nAy zSl<$l zAU5rh(pt}Ma#`6@QMOiokZSx}3(H({7u%@jLqTZP za&EnIZK~e56YEX4hPkn8*r@E+zYADfa(M)u5WLb_A0elO->-KaIH&eL=vpT*R_mt2 z=y`|d3|5HwY&#+0+9=}-ospr;zT!R7HQIcnv+4SIwL$IUUDWt;)si>QUg6roXohnG zL&WIUp)N$8j9HCvZ_hK$H?nAUiFX>$!NlYvG$GJG$2b1p^8 zAlz^p@#5B3)jcw98S{uQ=8y;;K?B#J&vD+J@POVku3=+u1)1vKZzOKr+DnDM3Een~ zl!heJP)9X$V03h$zP>(NNw$FWp?4A+oSkdEkuIYD`7zKk)cftn8i8&z5gj1OxaA!9 zD=*I&zQVj5dA3!l6)SUH>y`s?H$Uf^_9Gc{wm=LgnD7g6G45_e)h=AJj76oj93-9h=Kp{ZE2lR!-nkjptDNXkHz#cHMdx+u6CU z%{Zaa!#G#HBM8Y2uh%bd4mgDI92^0(7=*mN#Rc0>z7KGWrJBas`0sgN=u!nZha}{F z3c*Wqo)OGccC0RyI%}y=ST0y566 zBauwe$RY_7<9|npr>CU?jnRe5;bHLo_-wfkj?gkXp8)+!wv{jVG&-Yef;WXy-R1R+ zVW@NJ$hJ+-3L-CykGo0=+tK?v^=%a#?xZy)3*iuu$|2uChX0=jVQO^#)Z3G;;r|cf C(`z08 literal 0 HcmV?d00001 diff --git a/icons/obj/item/knife.dmi b/icons/obj/weapon/knife.dmi similarity index 100% rename from icons/obj/item/knife.dmi rename to icons/obj/weapon/knife.dmi diff --git a/icons/obj/weapon/misc.dmi b/icons/obj/weapon/misc.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9eabb2c3eaf703f138b6904c3e8b70fa3e991ff5 GIT binary patch literal 2364 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 b0KMvezFY_!?X&_900000NkvXXu0mjfUqbqj literal 0 HcmV?d00001 diff --git a/icons/obj/weapon/sword.dmi b/icons/obj/weapon/sword.dmi new file mode 100644 index 0000000000000000000000000000000000000000..dc8fd8fd5d7d78e510c79cc23e27de0db4fbceb2 GIT binary patch literal 15674 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 E2TU{#PXGV_ literal 0 HcmV?d00001 diff --git a/shiptest.dme b/shiptest.dme index c5770b4a4b81..88900c60e222 100644 --- a/shiptest.dme +++ b/shiptest.dme @@ -1159,7 +1159,6 @@ #include "code\game\objects\items\cardboard_cutouts.dm" #include "code\game\objects\items\cards_ids.dm" #include "code\game\objects\items\cash.dm" -#include "code\game\objects\items\chainsaw.dm" #include "code\game\objects\items\charter.dm" #include "code\game\objects\items\chromosome.dm" #include "code\game\objects\items\chrono_eraser.dm" @@ -1179,19 +1178,15 @@ #include "code\game\objects\items\dna_injector.dm" #include "code\game\objects\items\documents.dm" #include "code\game\objects\items\door_seal.dm" -#include "code\game\objects\items\dualsaber.dm" #include "code\game\objects\items\dyekit.dm" #include "code\game\objects\items\eightball.dm" -#include "code\game\objects\items\energyhalberd.dm" #include "code\game\objects\items\etherealdiscoball.dm" #include "code\game\objects\items\extinguisher.dm" -#include "code\game\objects\items\fireaxe.dm" #include "code\game\objects\items\flamethrower.dm" #include "code\game\objects\items\gift.dm" #include "code\game\objects\items\granters.dm" #include "code\game\objects\items\handcuffs.dm" #include "code\game\objects\items\holosign_creator.dm" -#include "code\game\objects\items\holy_weapons.dm" #include "code\game\objects\items\hot_potato.dm" #include "code\game\objects\items\hourglass.dm" #include "code\game\objects\items\inducer.dm" @@ -1204,10 +1199,8 @@ #include "code\game\objects\items\paiwire.dm" #include "code\game\objects\items\pet_carrier.dm" #include "code\game\objects\items\pinpointer.dm" -#include "code\game\objects\items\pitchfork.dm" #include "code\game\objects\items\plushes.dm" #include "code\game\objects\items\pneumaticCannon.dm" -#include "code\game\objects\items\powerfist.dm" #include "code\game\objects\items\puzzle_pieces.dm" #include "code\game\objects\items\RCD.dm" #include "code\game\objects\items\RCL.dm" @@ -1221,20 +1214,15 @@ #include "code\game\objects\items\shrapnel.dm" #include "code\game\objects\items\shuttle_creator.dm" #include "code\game\objects\items\signs.dm" -#include "code\game\objects\items\singularityhammer.dm" -#include "code\game\objects\items\spear.dm" -#include "code\game\objects\items\stunbaton.dm" #include "code\game\objects\items\survery_handheld.dm" #include "code\game\objects\items\taster.dm" #include "code\game\objects\items\teleportation.dm" -#include "code\game\objects\items\teleprod.dm" #include "code\game\objects\items\theft_tools.dm" #include "code\game\objects\items\toy_mechs.dm" #include "code\game\objects\items\toys.dm" #include "code\game\objects\items\trash.dm" #include "code\game\objects\items\vending_items.dm" #include "code\game\objects\items\wayfinding.dm" -#include "code\game\objects\items\weaponry.dm" #include "code\game\objects\items\attachments\_attachment.dm" #include "code\game\objects\items\attachments\bayonet.dm" #include "code\game\objects\items\attachments\laser_sight.dm" @@ -1323,9 +1311,20 @@ #include "code\game\objects\items\implants\implanter.dm" #include "code\game\objects\items\implants\implantpad.dm" #include "code\game\objects\items\implants\implantuplink.dm" +#include "code\game\objects\items\melee\chainsaw.dm" +#include "code\game\objects\items\melee\dualsaber.dm" #include "code\game\objects\items\melee\energy.dm" +#include "code\game\objects\items\melee\energyhalberd.dm" +#include "code\game\objects\items\melee\fireaxe.dm" +#include "code\game\objects\items\melee\knife.dm" #include "code\game\objects\items\melee\misc.dm" +#include "code\game\objects\items\melee\powerfist.dm" +#include "code\game\objects\items\melee\spear.dm" +#include "code\game\objects\items\melee\stunbaton.dm" +#include "code\game\objects\items\melee\sword.dm" +#include "code\game\objects\items\melee\teleprod.dm" #include "code\game\objects\items\melee\transforming.dm" +#include "code\game\objects\items\melee\weaponry.dm" #include "code\game\objects\items\robot\ai_upgrades.dm" #include "code\game\objects\items\robot\robot_items.dm" #include "code\game\objects\items\robot\robot_parts.dm" @@ -1700,7 +1699,6 @@ #include "code\modules\antagonists\cult\cult_items.dm" #include "code\modules\antagonists\cult\cult_structures.dm" #include "code\modules\antagonists\cult\cult_turf_overlay.dm" -#include "code\modules\antagonists\cult\ritual.dm" #include "code\modules\antagonists\cult\rune_spawn_action.dm" #include "code\modules\antagonists\cult\runes.dm" #include "code\modules\antagonists\devil\devil.dm" @@ -2145,7 +2143,6 @@ #include "code\modules\events\holiday\vday.dm" #include "code\modules\events\holiday\xmas.dm" #include "code\modules\events\wizard\aid.dm" -#include "code\modules\events\wizard\curseditems.dm" #include "code\modules\events\wizard\departmentrevolt.dm" #include "code\modules\events\wizard\embeddies.dm" #include "code\modules\events\wizard\fakeexplosion.dm" diff --git a/tools/UpdatePaths/Scripts/2776_cultbegone.txt b/tools/UpdatePaths/Scripts/2776_cultbegone.txt index f2297a7003e7..a4da9dcb3d80 100644 --- a/tools/UpdatePaths/Scripts/2776_cultbegone.txt +++ b/tools/UpdatePaths/Scripts/2776_cultbegone.txt @@ -32,12 +32,12 @@ /obj/item/toy/plush/narplush : /obj/item/toy/plush/lizardplushie /obj/item/bedsheet/cult : /obj/item/bedsheet/dorms -/obj/item/melee/cultblade : /obj/item/claymore/weak -/obj/item/melee/cultblade/dagger : /obj/item/kitchen/knife/combat -/obj/item/melee/cultblade/ghost : /obj/item/kitchen/knife/combat -/obj/item/toy/toy_dagger : /obj/item/kitchen/knife -/obj/item/kitchen/knife/bloodletter : /obj/item/kitchen/knife/combat -/obj/item/kitchen/ritual : /obj/item/kitchen/knife/combat +/obj/item/melee/cultblade : /obj/item/melee/sword/claymore/weak +/obj/item/melee/cultblade/dagger : /obj/item/melee/knife/combat +/obj/item/melee/cultblade/ghost : /obj/item/melee/knife/combat +/obj/item/toy/toy_dagger : /obj/item/melee/knife/kitcken +/obj/item/melee/knife/kitcken/bloodletter : /obj/item/melee/knife/combat +/obj/item/kitchen/ritual : /obj/item/melee/knife/combat /obj/item/restraints/legcuffs/bola/cult : /obj/item/restraints/legcuffs/bola /obj/effect/rune : @DELETE diff --git a/tools/UpdatePaths/Scripts/2932_melee.txt b/tools/UpdatePaths/Scripts/2932_melee.txt new file mode 100644 index 000000000000..60b81ff02b18 --- /dev/null +++ b/tools/UpdatePaths/Scripts/2932_melee.txt @@ -0,0 +1,17 @@ +/obj/item/kitchen/knife : /obj/item/melee/knife/kitchen {@OLD} +/obj/item/kitchen/knife/plastic : /obj/item/melee/knife/plastic {@OLD} +/obj/item/kitchen/knife/letter_opener : /obj/item/melee/knife/letter_opener {@OLD} +/obj/item/kitchen/knife/combat : /obj/item/melee/knife/combat {@OLD} +/obj/item/kitchen/knife/combat/bone : /obj/item/melee/knife/bone {@OLD} +/obj/item/kitchen/knife/combat/survival : /obj/item/melee/knife/survival {@OLD} +/obj/item/kitchen/knife/switchblade : /obj/item/melee/knife/switchblade {@OLD} +/obj/item/kitchen/knife/hunting : obj/item/melee/knife/hunting {@OLD} +/obj/item/kitchen/knife/shiv : obj/item/melee/knife/shiv {@OLD} + +/obj/item/spear : /obj/item/melee/spear {@OLD} +/obj/item/spear/explosive : /obj/item/melee/spear/explosive {@OLD} +/obj/item/spear/bonespear : /obj/item/melee/spear/bone {@OLD} +/obj/item/melee/spear/bonespear : /obj/item/melee/spear/bone {@OLD} + +/obj/item/claymore : /obj/item/melee/sword/claymore {@OLD} +/obj/item/claymore/bone : /obj/item/melee/sword/bone {@OLD} From d7201a1455d9f5b063a66600a39417f099671cba Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 11:59:42 -0500 Subject: [PATCH 53/61] Automatic changelog generation for PR #2932 [ci skip] --- html/changelogs/AutoChangeLog-pr-2932.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-2932.yml diff --git a/html/changelogs/AutoChangeLog-pr-2932.yml b/html/changelogs/AutoChangeLog-pr-2932.yml new file mode 100644 index 000000000000..14c0c5985f64 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-2932.yml @@ -0,0 +1,5 @@ +author: FalloutFalcon +changes: + - {code_imp: bunch of code organization related to melee} + - {refactor: cleaned up a bunch of melee items to have better inheritance and paths} +delete-after: true From 33f866427081eb7d08a9f9403c998325e7f8cb8e Mon Sep 17 00:00:00 2001 From: thgvr <81882910+thgvr@users.noreply.github.com> Date: Mon, 23 Sep 2024 10:48:02 -0700 Subject: [PATCH 54/61] reduces recruit slots on colossus to 2 (#3416) ## About The Pull Request Title ## Changelog :cl: balance: Colossus now only has 2 recruit slots instead of a whopping !!5!! /:cl: --- _maps/configs/inteq_colossus.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_maps/configs/inteq_colossus.json b/_maps/configs/inteq_colossus.json index 973a80045e93..68bc1e2ec1b3 100644 --- a/_maps/configs/inteq_colossus.json +++ b/_maps/configs/inteq_colossus.json @@ -42,7 +42,7 @@ }, "Recruit": { "outfit": "/datum/outfit/job/inteq/assistant", - "slots": 5 + "slots": 2 } }, "enabled": true From 88a64b889e83a0019ccb9fc2d378ffc763f38ba8 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 12:59:13 -0500 Subject: [PATCH 55/61] Automatic changelog generation for PR #3416 [ci skip] --- html/changelogs/AutoChangeLog-pr-3416.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3416.yml diff --git a/html/changelogs/AutoChangeLog-pr-3416.yml b/html/changelogs/AutoChangeLog-pr-3416.yml new file mode 100644 index 000000000000..b99d0706e9ef --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3416.yml @@ -0,0 +1,4 @@ +author: thgvr +changes: + - {balance: Colossus now only has 2 recruit slots instead of a whopping !!5!!} +delete-after: true From 243ce9ea61b463f6de3cd4bb5453dc844e534f06 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 24 Sep 2024 01:02:51 +0000 Subject: [PATCH 56/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-2932.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3370.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3377.yml | 6 ------ html/changelogs/AutoChangeLog-pr-3392.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3397.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3409.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3411.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3412.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3414.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3415.yml | 4 ---- html/changelogs/AutoChangeLog-pr-3416.yml | 4 ---- html/changelogs/archive/2024-09.yml | 26 +++++++++++++++++++++++ 12 files changed, 26 insertions(+), 49 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-2932.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3370.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3377.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3392.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3397.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3409.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3411.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3412.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3414.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3415.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3416.yml diff --git a/html/changelogs/AutoChangeLog-pr-2932.yml b/html/changelogs/AutoChangeLog-pr-2932.yml deleted file mode 100644 index 14c0c5985f64..000000000000 --- a/html/changelogs/AutoChangeLog-pr-2932.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: FalloutFalcon -changes: - - {code_imp: bunch of code organization related to melee} - - {refactor: cleaned up a bunch of melee items to have better inheritance and paths} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3370.yml b/html/changelogs/AutoChangeLog-pr-3370.yml deleted file mode 100644 index 95a56f2e9b49..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3370.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: trazodont -changes: - - {bugfix: miso soup spelling error} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3377.yml b/html/changelogs/AutoChangeLog-pr-3377.yml deleted file mode 100644 index 26fbe6b2eec3..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3377.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: Apogee-dev -changes: - - {balance: Changed decoration on Miskilamo ships to look similar to each other} - - {balance: reduced Kilo starting funds to 1500} - - {bugfix: fixed wires on Mudskipper} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3392.yml b/html/changelogs/AutoChangeLog-pr-3392.yml deleted file mode 100644 index b1fd3875e1c8..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3392.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: thgvr -changes: - - {rscadd: A bunch of kepori underwear have sprites now} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3397.yml b/html/changelogs/AutoChangeLog-pr-3397.yml deleted file mode 100644 index 673b299d889d..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3397.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: rye, erika -changes: - - {rscadd: 'concrete jugs have been replaced by much more appropriate concrete bags, - jee, i hope whoever made *that* blunder got fired.'} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3409.yml b/html/changelogs/AutoChangeLog-pr-3409.yml deleted file mode 100644 index e2ad0fc06bde..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3409.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: PositiveEntropy -changes: - - {imageadd: Resprites all balaclavas!} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3411.yml b/html/changelogs/AutoChangeLog-pr-3411.yml deleted file mode 100644 index cb95ac44d223..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3411.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: zimon9 -changes: - - {rscadd: Adds a bit more contrast to the output of health analyzers} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3412.yml b/html/changelogs/AutoChangeLog-pr-3412.yml deleted file mode 100644 index 1c0b79981ecd..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3412.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Bjarl -changes: - - {bugfix: turrets will now _actually_ connect to their console. i swear im a real - coder.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3414.yml b/html/changelogs/AutoChangeLog-pr-3414.yml deleted file mode 100644 index a4603970da7e..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3414.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Thera-Pissed -changes: - - {rscdel: B.E.P.I.S. and related tech nodes.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3415.yml b/html/changelogs/AutoChangeLog-pr-3415.yml deleted file mode 100644 index 05558e44aa1c..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3415.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: Thera-Pissed -changes: - - {rscdel: unused did_fire var} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3416.yml b/html/changelogs/AutoChangeLog-pr-3416.yml deleted file mode 100644 index b99d0706e9ef..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3416.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: thgvr -changes: - - {balance: Colossus now only has 2 recruit slots instead of a whopping !!5!!} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index d6027a6f2a58..130805ee50eb 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -137,3 +137,29 @@ Bjarl: - rscadd: You can now buy flares at the outpost - rscadd: Wasteplanets now will generate concrete filled caves. +2024-09-24: + Apogee-dev: + - balance: Changed decoration on Miskilamo ships to look similar to each other + - balance: reduced Kilo starting funds to 1500 + - bugfix: fixed wires on Mudskipper + Bjarl: + - bugfix: turrets will now _actually_ connect to their console. i swear im a real + coder. + FalloutFalcon: + - code_imp: bunch of code organization related to melee + - refactor: cleaned up a bunch of melee items to have better inheritance and paths + PositiveEntropy: + - imageadd: Resprites all balaclavas! + Thera-Pissed: + - rscdel: unused did_fire var + - rscdel: B.E.P.I.S. and related tech nodes. + rye, erika: + - rscadd: concrete jugs have been replaced by much more appropriate concrete bags, + jee, i hope whoever made *that* blunder got fired. + thgvr: + - balance: Colossus now only has 2 recruit slots instead of a whopping !!5!! + - rscadd: A bunch of kepori underwear have sprites now + trazodont: + - bugfix: miso soup spelling error + zimon9: + - rscadd: Adds a bit more contrast to the output of health analyzers From de14f00d60e1943d8dd43c1cd3c53154f696853c Mon Sep 17 00:00:00 2001 From: Jedi-Toothpaste <53096233+Jedi-Toothpaste@users.noreply.github.com> Date: Tue, 24 Sep 2024 23:47:10 +0100 Subject: [PATCH 57/61] mudskipper and shetland window fix (#3426) ## About The Pull Request Added windows to the mudskipper and shetland's engines as well for consistency see #3434 for the Kilo fixes too. Also seperated the Shetland's engine rooms so both buttons don't open both sides. Now the button in each engine room will open only it's respective side. ## Changelog :cl: fix: Added windows to the mudskipper and shetland's engines. fix: Adjusted the blast doors which open on the Shetland's engines. /:cl: --- .../independent/independent_mudskipper.dmm | 6 +++++ .../independent/independent_shetland.dmm | 24 ++++++++++++++----- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/_maps/shuttles/independent/independent_mudskipper.dmm b/_maps/shuttles/independent/independent_mudskipper.dmm index ac2be582662a..be3d9a994e7f 100644 --- a/_maps/shuttles/independent/independent_mudskipper.dmm +++ b/_maps/shuttles/independent/independent_mudskipper.dmm @@ -1096,6 +1096,9 @@ dir = 4; id = "mudskipper_engine" }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/engineering/engine) "zR" = ( @@ -1670,6 +1673,9 @@ dir = 4; id = "mudskipper_engine" }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/engineering/engine) "MK" = ( diff --git a/_maps/shuttles/independent/independent_shetland.dmm b/_maps/shuttles/independent/independent_shetland.dmm index 256e9bc75c88..89dd45bb2262 100644 --- a/_maps/shuttles/independent/independent_shetland.dmm +++ b/_maps/shuttles/independent/independent_shetland.dmm @@ -1492,7 +1492,7 @@ }, /obj/machinery/button/door{ dir = 1; - id = "amogusthrusters"; + id = "shetportthrusters"; name = "Thruster Lockdown"; pixel_y = -21 }, @@ -2297,7 +2297,7 @@ pixel_y = 5 }, /obj/machinery/button/door{ - id = "amogusthrusters"; + id = "shetstarboardengine"; name = "Thruster Lockdown"; pixel_y = 24 }, @@ -2748,11 +2748,14 @@ }, /obj/machinery/door/poddoor{ dir = 4; - id = "amogusthrusters" + id = "shetstarboardengine" }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/maintenance/starboard) "wU" = ( @@ -4423,11 +4426,14 @@ }, /obj/machinery/door/poddoor{ dir = 4; - id = "amogusthrusters" + id = "shetportthrusters" }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/maintenance/port) "Lx" = ( @@ -4989,11 +4995,14 @@ }, /obj/machinery/door/poddoor{ dir = 4; - id = "amogusthrusters" + id = "shetportthrusters" }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/maintenance/port) "PR" = ( @@ -5157,11 +5166,14 @@ }, /obj/machinery/door/poddoor{ dir = 4; - id = "amogusthrusters" + id = "shetstarboardengine" }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/structure/window/reinforced{ + dir = 8 + }, /turf/open/floor/plating, /area/ship/maintenance/starboard) "Ri" = ( From 5a7fcb32088ac609ee462c51d7da4ff73e2fd076 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 24 Sep 2024 17:57:55 -0500 Subject: [PATCH 58/61] Automatic changelog generation for PR #3426 [ci skip] --- html/changelogs/AutoChangeLog-pr-3426.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3426.yml diff --git a/html/changelogs/AutoChangeLog-pr-3426.yml b/html/changelogs/AutoChangeLog-pr-3426.yml new file mode 100644 index 000000000000..476c9d7c88aa --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3426.yml @@ -0,0 +1,5 @@ +author: Jedi-Toothpaste +changes: + - {bugfix: Added windows to the mudskipper and shetland's engines.} + - {bugfix: Adjusted the blast doors which open on the Shetland's engines.} +delete-after: true From d52f36b1ce04ae3f2091c787858d3a4ddd205688 Mon Sep 17 00:00:00 2001 From: Theos Date: Tue, 24 Sep 2024 19:44:59 -0400 Subject: [PATCH 59/61] Sawn variants for the illestren and improvised shotgun now properly have their stats set (#3427) ## About The Pull Request If the illestren's sawn off accuracy is unreasonably high I'd like to know because it's TERRIBLE ## Changelog :cl: fix: sawn off illestren/improvised shotgun stats are now consistent if they are spawned in /:cl: --------- Signed-off-by: Theos --- code/modules/projectiles/guns/ballistic/rifle.dm | 2 ++ code/modules/projectiles/guns/ballistic/shotgun.dm | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/code/modules/projectiles/guns/ballistic/rifle.dm b/code/modules/projectiles/guns/ballistic/rifle.dm index 2d3cb6908c83..2be77ee20835 100644 --- a/code/modules/projectiles/guns/ballistic/rifle.dm +++ b/code/modules/projectiles/guns/ballistic/rifle.dm @@ -127,6 +127,8 @@ sawn_off = TRUE weapon_weight = WEAPON_MEDIUM w_class = WEIGHT_CLASS_NORMAL + spread = 24 + spread_unwielded = 30 slot_flags = ITEM_SLOT_BELT /obj/item/gun/ballistic/rifle/solgov diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index eb8ea3355fe9..2d70bf9851bb 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -432,6 +432,14 @@ EMPTY_GUN_HELPER(shotgun/automatic/bulldog/inteq) sawn_off = TRUE slot_flags = ITEM_SLOT_BELT + wield_slowdown = 0.25 + wield_delay = 0.3 SECONDS //OP? maybe + + spread = 8 + spread_unwielded = 15 + recoil = 3 //or not + recoil_unwielded = 5 + /obj/item/gun/ballistic/shotgun/automatic/combat/compact/compact name = "compact compact combat shotgun" desc = "A compact version of the compact version of the semi automatic combat shotgun. For when you want a gun the same size as your brain." From fcdc0c0dddfea17b3f62d5733bda8c95499f86bd Mon Sep 17 00:00:00 2001 From: Changelogs Date: Tue, 24 Sep 2024 18:55:45 -0500 Subject: [PATCH 60/61] Automatic changelog generation for PR #3427 [ci skip] --- html/changelogs/AutoChangeLog-pr-3427.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3427.yml diff --git a/html/changelogs/AutoChangeLog-pr-3427.yml b/html/changelogs/AutoChangeLog-pr-3427.yml new file mode 100644 index 000000000000..9db44c29cad7 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3427.yml @@ -0,0 +1,5 @@ +author: SomeguyManperson +changes: + - {bugfix: sawn off illestren/improvised shotgun stats are now consistent if they + are spawned in} +delete-after: true From d0171aa08ab7d4770422af584432490c1956b374 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Wed, 25 Sep 2024 01:03:35 +0000 Subject: [PATCH 61/61] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-3426.yml | 5 ----- html/changelogs/AutoChangeLog-pr-3427.yml | 5 ----- html/changelogs/archive/2024-09.yml | 7 +++++++ 3 files changed, 7 insertions(+), 10 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-3426.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-3427.yml diff --git a/html/changelogs/AutoChangeLog-pr-3426.yml b/html/changelogs/AutoChangeLog-pr-3426.yml deleted file mode 100644 index 476c9d7c88aa..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3426.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Jedi-Toothpaste -changes: - - {bugfix: Added windows to the mudskipper and shetland's engines.} - - {bugfix: Adjusted the blast doors which open on the Shetland's engines.} -delete-after: true diff --git a/html/changelogs/AutoChangeLog-pr-3427.yml b/html/changelogs/AutoChangeLog-pr-3427.yml deleted file mode 100644 index 9db44c29cad7..000000000000 --- a/html/changelogs/AutoChangeLog-pr-3427.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: SomeguyManperson -changes: - - {bugfix: sawn off illestren/improvised shotgun stats are now consistent if they - are spawned in} -delete-after: true diff --git a/html/changelogs/archive/2024-09.yml b/html/changelogs/archive/2024-09.yml index 130805ee50eb..d86f5c86c955 100644 --- a/html/changelogs/archive/2024-09.yml +++ b/html/changelogs/archive/2024-09.yml @@ -163,3 +163,10 @@ - bugfix: miso soup spelling error zimon9: - rscadd: Adds a bit more contrast to the output of health analyzers +2024-09-25: + Jedi-Toothpaste: + - bugfix: Added windows to the mudskipper and shetland's engines. + - bugfix: Adjusted the blast doors which open on the Shetland's engines. + SomeguyManperson: + - bugfix: sawn off illestren/improvised shotgun stats are now consistent if they + are spawned in

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 ABme*a From 309385c55cc28f0b6481e3c534c8b7e1fb69eeb1 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 01:20:26 -0500 Subject: [PATCH 45/61] Automatic changelog generation for PR #3409 [ci skip] --- html/changelogs/AutoChangeLog-pr-3409.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3409.yml diff --git a/html/changelogs/AutoChangeLog-pr-3409.yml b/html/changelogs/AutoChangeLog-pr-3409.yml new file mode 100644 index 000000000000..e2ad0fc06bde --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3409.yml @@ -0,0 +1,4 @@ +author: PositiveEntropy +changes: + - {imageadd: Resprites all balaclavas!} +delete-after: true From b065692e3a4c69f30b2ac6de8ac26566dc960c90 Mon Sep 17 00:00:00 2001 From: "bork (Shiiba)" <97755577+trazodont@users.noreply.github.com> Date: Mon, 23 Sep 2024 00:08:53 -0500 Subject: [PATCH 46/61] Miso Soup Spelling Error (#3370) ## About The Pull Request Corrects spelling for "milo soup" to "miso soup" ![image](https://github.com/user-attachments/assets/8636445c-126c-4248-99ed-ad1ea1e4a9a2) ## Why It's Good For The Game idk why it was named milo anyways, there's literally a comment that says "wtf is milo". ## Changelog :cl: fix: miso soup spelling error /:cl: --- .../food_and_drinks/food/snacks_soup.dm | 8 ++++---- .../recipes/tablecraft/recipes_soup.dm | 6 +++--- icons/obj/food/soupsalad.dmi | Bin 24607 -> 23903 bytes 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/code/modules/food_and_drinks/food/snacks_soup.dm b/code/modules/food_and_drinks/food/snacks_soup.dm index c7bcf963faf2..5ec9408dc414 100644 --- a/code/modules/food_and_drinks/food/snacks_soup.dm +++ b/code/modules/food_and_drinks/food/snacks_soup.dm @@ -159,12 +159,12 @@ tastes = list("tomato" = 1, "squirming" = 1) foodtype = MEAT | GORE -/obj/item/reagent_containers/food/snacks/soup/milo - name = "milosoup" +/obj/item/reagent_containers/food/snacks/soup/miso + name = "miso soup" desc = "The universes best soup! Yum!!!" - icon_state = "milosoup" + icon_state = "misosoup" bonus_reagents = list(/datum/reagent/consumable/nutriment = 1, /datum/reagent/consumable/nutriment/vitamin = 3) - tastes = list("milo" = 1) // wtf is milo + tastes = list("miso" = 1) // wtf is milo foodtype = VEGETABLES /obj/item/reagent_containers/food/snacks/soup/mushroom diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm index daf98f0444a4..3443b32e931e 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_soup.dm @@ -115,15 +115,15 @@ subcategory = CAT_SOUP -/datum/crafting_recipe/food/milosoup - name = "Milo soup" +/datum/crafting_recipe/food/misosoup + name = "Miso soup" reqs = list( /datum/reagent/water = 10, /obj/item/reagent_containers/glass/bowl = 1, /obj/item/reagent_containers/food/snacks/soydope = 2, /obj/item/reagent_containers/food/snacks/tofu = 2 ) - result = /obj/item/reagent_containers/food/snacks/soup/milo + result = /obj/item/reagent_containers/food/snacks/soup/miso subcategory = CAT_SOUP /datum/crafting_recipe/food/bloodsoup diff --git a/icons/obj/food/soupsalad.dmi b/icons/obj/food/soupsalad.dmi index 1205fd888adcc118baf8c894ede382b9f4340fef..d1baf327dd89f97236865ee261ba45a0843ec3c1 100644 GIT binary patch literal 23903 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 qCwUTJnEyMJ@t Date: Mon, 23 Sep 2024 01:34:03 -0500 Subject: [PATCH 47/61] Automatic changelog generation for PR #3370 [ci skip] --- html/changelogs/AutoChangeLog-pr-3370.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3370.yml diff --git a/html/changelogs/AutoChangeLog-pr-3370.yml b/html/changelogs/AutoChangeLog-pr-3370.yml new file mode 100644 index 000000000000..95a56f2e9b49 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3370.yml @@ -0,0 +1,4 @@ +author: trazodont +changes: + - {bugfix: miso soup spelling error} +delete-after: true From d423267ffd409c99b6c09db205d086e0a20fc144 Mon Sep 17 00:00:00 2001 From: Apogee-dev <60533805+Apogee-dev@users.noreply.github.com> Date: Sun, 22 Sep 2024 22:13:14 -0700 Subject: [PATCH 48/61] Miskilamo Style Consistency (#3377) ## About The Pull Request ![mudskipper](https://github.com/user-attachments/assets/85d29f5d-ed85-48a9-ac6f-aa1d485b0416) ![kilo](https://github.com/user-attachments/assets/32e04076-29e0-438b-a212-4649de4d4abf) ![shetland](https://github.com/user-attachments/assets/57f46122-4ba8-4140-b003-a3a3ac3bec75) - Re-palettes the Mudskipper, Kilo, and Shetland for aesthetic consistency across the Miskilamo ships - Changes Mudskipper to use the same cheap captain outfit as shetland and kilo - Cuts Kilo's starting funds to 1500, same as Shetland - fixes Mudskipper's wires :) ## Why It's Good For The Game Manufacturer consistency good and kilo had a bit too much money ## Changelog :cl: balance: Changed decoration on Miskilamo ships to look similar to each other balance: reduced Kilo starting funds to 1500 fix: fixed wires on Mudskipper /:cl: --- _maps/configs/independent_kilo.json | 2 +- _maps/configs/independent_mudskipper.json | 2 +- .../shuttles/independent/independent_kilo.dmm | 741 ++++---- .../independent/independent_mudskipper.dmm | 1518 ++++++++--------- .../independent/independent_shetland.dmm | 225 ++- 5 files changed, 1242 insertions(+), 1246 deletions(-) diff --git a/_maps/configs/independent_kilo.json b/_maps/configs/independent_kilo.json index a5a3881f23f2..0890ba4a9cef 100644 --- a/_maps/configs/independent_kilo.json +++ b/_maps/configs/independent_kilo.json @@ -13,7 +13,7 @@ "NATURAL" ], "map_short_name": "Kilo-class", - "starting_funds": 3500, + "starting_funds": 1500, "map_path": "_maps/shuttles/independent/independent_kilo.dmm", "job_slots": { "Captain": { diff --git a/_maps/configs/independent_mudskipper.json b/_maps/configs/independent_mudskipper.json index 85f9c5f291a0..8db7b5668e03 100644 --- a/_maps/configs/independent_mudskipper.json +++ b/_maps/configs/independent_mudskipper.json @@ -19,7 +19,7 @@ "starting_funds": 1500, "job_slots": { "Salvage Leader": { - "outfit": "/datum/outfit/job/independent/captain", + "outfit": "/datum/outfit/job/independent/captain/cheap", "officer": true, "slots": 1 }, diff --git a/_maps/shuttles/independent/independent_kilo.dmm b/_maps/shuttles/independent/independent_kilo.dmm index 8e307abc2825..4577678b7f21 100644 --- a/_maps/shuttles/independent/independent_kilo.dmm +++ b/_maps/shuttles/independent/independent_kilo.dmm @@ -7,23 +7,21 @@ /area/ship/cargo) "ak" = ( /obj/machinery/power/shuttle/engine/fueled/plasma, -/turf/open/floor/plating/airless, +/turf/open/floor/engine/hull, /area/ship/engineering) "am" = ( /obj/machinery/autolathe, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "ar" = ( /obj/machinery/atmospherics/components/unary/shuttle/heater, -/obj/structure/window/reinforced/tinted{ - dir = 8 - }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/machinery/door/poddoor{ + dir = 4; + id = "kilothrusters" + }, /turf/open/floor/plating/airless, /area/ship/engineering) "av" = ( @@ -37,7 +35,8 @@ /obj/effect/decal/cleanable/blood/old, /obj/structure/table_frame, /obj/item/shard, -/turf/open/floor/plating, +/obj/effect/decal/cleanable/glass, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "ay" = ( /obj/effect/decal/cleanable/glass, @@ -60,40 +59,31 @@ /obj/structure/cable/pink{ icon_state = "0-2" }, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/tech/grid, /area/ship/hallway/port) "aJ" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2, -/obj/effect/turf_decal/industrial/warning{ - dir = 9 - }, /obj/structure/chair/bench/olive/directional/east, /obj/structure/railing{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/turf/open/floor/plasteel/dark, /area/ship/hallway/port) "aS" = ( -/obj/effect/turf_decal/borderfloor, -/obj/effect/turf_decal/box/corners{ - dir = 4 - }, -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/closet/secure_closet/engineering_personal{ - populate = 0; - anchored = 1 + anchored = 1; + populate = 0 }, /obj/item/storage/backpack/industrial, /obj/item/clothing/under/rank/engineering/engineer, /obj/item/clothing/suit/hazardvest, /obj/item/clothing/shoes/workboots, /obj/item/clothing/head/hardhat/dblue, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "aU" = ( /obj/structure/cable/cyan{ @@ -104,20 +94,11 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/obj/effect/turf_decal/industrial/warning{ - dir = 5 - }, -/obj/effect/decal/cleanable/glass, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "aZ" = ( /obj/machinery/airalarm/directional/south, -/obj/effect/turf_decal/siding/wood{ - dir = 4; - color = "#E3994E" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "bg" = ( /obj/structure/catwalk/over/plated_catwalk, @@ -132,8 +113,8 @@ pixel_x = -5 }, /obj/machinery/light_switch{ - pixel_x = 5; dir = 1; + pixel_x = 5; pixel_y = -19 }, /turf/open/floor/plating, @@ -147,15 +128,14 @@ icon_state = "0-4" }, /obj/machinery/power/shuttle/engine/electric, -/turf/open/floor/plating/airless, +/turf/open/floor/engine/hull, /area/ship/engineering) "by" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/wrapping, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "bA" = ( /obj/structure/chair/plastic, @@ -163,16 +143,13 @@ icon_state = "4-6" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 5; + list_reagents = null; pixel_x = -14; - list_reagents = null + pixel_y = 5 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "bF" = ( /turf/closed/wall, @@ -191,19 +168,15 @@ dir = 8 }, /obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "bH" = ( -/obj/effect/turf_decal/borderfloor{ - dir = 1 - }, /obj/machinery/firealarm/directional/west, -/obj/effect/decal/cleanable/dirt, /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 5 }, -/turf/open/floor/plasteel/tech/grid, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "bL" = ( /obj/structure/cable/pink{ @@ -216,7 +189,6 @@ /obj/structure/extinguisher_cabinet/directional/east{ pixel_y = 7 }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ship/hallway/central) "bM" = ( @@ -242,7 +214,7 @@ "bQ" = ( /obj/machinery/atmospherics/pipe/simple/orange/hidden, /obj/machinery/light/small/directional/west, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/engineering) "bT" = ( @@ -255,8 +227,7 @@ /obj/structure/cable/pink{ icon_state = "4-9" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "bU" = ( /obj/structure/catwalk/over/plated_catwalk, @@ -299,16 +270,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 }, -/obj/effect/turf_decal/borderfloor{ - dir = 8 - }, /obj/machinery/door/firedoor/border_only{ dir = 8 }, /obj/machinery/door/firedoor/border_only{ dir = 4 }, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/cargo) "bY" = ( /obj/structure/cable/pink{ @@ -320,8 +289,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "bZ" = ( /obj/structure/closet/crate/secure/exo, @@ -336,11 +304,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "ca" = ( -/obj/structure/catwalk/over/plated_catwalk, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 }, @@ -352,33 +318,28 @@ }, /obj/machinery/light_switch{ dir = 1; - pixel_y = -19; - pixel_x = 4 + pixel_x = 4; + pixel_y = -19 }, /obj/structure/extinguisher_cabinet/directional/south{ pixel_x = -6 }, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering) "cb" = ( -/obj/effect/turf_decal/borderfloor, -/obj/effect/turf_decal/box/corners{ - dir = 4 - }, -/obj/effect/turf_decal/box/corners{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, /obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "cf" = ( /obj/machinery/door/poddoor{ id = "kilocargo" }, /obj/machinery/power/shieldwallgen/atmos/roundstart{ - id = "kilofield"; - dir = 8 + dir = 8; + id = "kilofield" }, /obj/structure/cable/pink{ icon_state = "0-10" @@ -427,7 +388,8 @@ dir = 1 }, /obj/machinery/door/firedoor/border_only, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/crew/dorm) "cq" = ( /turf/closed/wall, @@ -437,7 +399,8 @@ /obj/structure/cable/pink{ icon_state = "0-10" }, -/turf/open/floor/plasteel, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "cw" = ( /obj/structure/table/wood, @@ -448,20 +411,16 @@ dir = 4 }, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 7; + list_reagents = list(/datum/reagent/consumable/ethanol/beer = 10); pixel_x = -6; - list_reagents = list(/datum/reagent/consumable/ethanol/beer = 10) - }, -/obj/effect/turf_decal/siding/wood{ - dir = 1; - color = "#E3994E" + pixel_y = 7 }, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "cB" = ( /obj/structure/closet/secure_closet/miner{ - populate = 0; - anchored = 1 + anchored = 1; + populate = 0 }, /obj/effect/turf_decal/borderfloor{ dir = 1 @@ -505,7 +464,8 @@ /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/turf/open/floor/plasteel/mono, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/hallway/port) "cJ" = ( /obj/structure/chair/handrail{ @@ -514,12 +474,6 @@ /obj/machinery/advanced_airlock_controller{ pixel_y = -21 }, -/obj/effect/decal/cleanable/crayon{ - icon_state = "space"; - pixel_y = 2; - pixel_x = 6; - paint_colour = "#FF0000" - }, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable/pink{ icon_state = "0-9" @@ -529,14 +483,15 @@ pixel_x = -19; pixel_y = 13 }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance/fore) "cK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/passive_vent{ dir = 4 }, -/turf/open/floor/plasteel/mono/dark, +/turf/open/floor/engine/hull, /area/ship/external/dark) "cM" = ( /obj/structure/cable/pink{ @@ -545,25 +500,21 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, /obj/structure/cable/pink{ icon_state = "6-8" }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "cP" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, -/obj/machinery/atmospherics/pipe/layer_manifold, /turf/open/floor/plating/airless, /area/ship/hallway/port) "cV" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, /obj/structure/cable/pink{ icon_state = "2-9" }, @@ -571,20 +522,23 @@ icon_state = "2-5" }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/turf_decal/industrial/warning, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "cW" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/structure/sink/kitchen{ dir = 8 }, -/obj/effect/decal/cleanable/blood/old, /obj/machinery/light_switch{ dir = 8; pixel_x = 20; pixel_y = -12 }, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/crew) "cY" = ( /obj/structure/cable/pink{ @@ -594,22 +548,18 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/engineering) "cZ" = ( /obj/machinery/power/ship_gravity, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/structure/cable/pink{ icon_state = "0-8" }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "da" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "dc" = ( /obj/item/kirbyplants/fullysynthetic{ @@ -619,17 +569,15 @@ icon_state = "0-1" }, /obj/machinery/power/apc/auto_name/directional/west, -/obj/item/stack/tile/plasteel{ - pixel_x = 7; - pixel_y = -8 +/obj/effect/turf_decal/industrial/warning{ + dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/obj/effect/decal/cleanable/vomit/old{ + pixel_x = -5 + }, +/turf/open/floor/plasteel/patterned, /area/ship/hallway/central) "de" = ( -/obj/machinery/door/airlock/grunge{ - name = "Cryogenics" - }, /obj/structure/cable/pink{ icon_state = "2-9" }, @@ -637,15 +585,19 @@ /obj/machinery/door/firedoor/border_only{ dir = 1 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock{ + dir = 1; + name = "Cryo Room" + }, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "dt" = ( /obj/machinery/vending/cigarette, -/obj/effect/turf_decal/industrial/warning{ - dir = 9 - }, /obj/machinery/airalarm/directional/west, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "dF" = ( /obj/effect/turf_decal/miskilamo_small/right{ @@ -654,7 +606,7 @@ /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 10 }, -/turf/open/floor/plasteel/mono/dark, +/turf/open/floor/engine/hull, /area/ship/external/dark) "eo" = ( /obj/machinery/power/port_gen/pacman{ @@ -663,15 +615,9 @@ /obj/structure/cable/cyan{ icon_state = "0-2" }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "eN" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/machinery/light/directional/west, /obj/structure/crate_shelf, /turf/open/floor/plasteel/patterned/grid, @@ -683,11 +629,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 9 }, -/obj/effect/turf_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/effect/decal/cleanable/insectguts, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "fu" = ( /obj/effect/turf_decal/corner/opaque/black/mono, @@ -700,11 +642,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 4 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "gp" = ( /obj/structure/closet/wall/blue/directional/north{ @@ -727,10 +665,9 @@ /obj/structure/cable/pink{ icon_state = "4-10" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "gs" = ( -/obj/structure/catwalk/over/plated_catwalk, /obj/structure/cable/pink{ icon_state = "4-10" }, @@ -745,6 +682,7 @@ dir = 6 }, /obj/item/cigbutt, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering) "gC" = ( @@ -759,15 +697,15 @@ /obj/structure/table, /obj/machinery/light/small/directional/west, /obj/item/clothing/glasses/welding{ - pixel_y = -9; - pixel_x = 5 + pixel_x = 5; + pixel_y = -9 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "hh" = ( /obj/structure/chair, /obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "hN" = ( /obj/machinery/mineral/processing_unit{ @@ -785,8 +723,8 @@ /obj/effect/turf_decal/arrows{ dir = 4 }, -/obj/effect/decal/cleanable/glass, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "hS" = ( /obj/structure/chair/sofa/brown/old/left/directional/east, @@ -797,12 +735,8 @@ dir = 5 }, /obj/machinery/light/directional/west, -/obj/effect/turf_decal/siding/wood{ - dir = 1; - color = "#E3994E" - }, /obj/effect/decal/cleanable/confetti, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "ig" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, @@ -811,11 +745,10 @@ pixel_x = 17 }, /obj/item/reagent_containers/glass/bucket{ + list_reagents = list(/datum/reagent/water = 20); pixel_x = 8; - pixel_y = 7; - list_reagents = list(/datum/reagent/water = 20) + pixel_y = 7 }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, /area/ship/crew/dorm) "im" = ( @@ -844,43 +777,41 @@ /obj/machinery/door/firedoor/border_only{ dir = 4 }, -/turf/open/floor/plasteel/mono, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "iM" = ( /obj/structure/cable/pink{ icon_state = "2-6" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, -/obj/effect/turf_decal/industrial/warning{ - dir = 5 - }, /obj/structure/chair/bench/beige/directional/east{ dir = 8 }, /obj/structure/railing{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/turf/open/floor/plasteel/dark, /area/ship/hallway/port) "iT" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 8 }, /obj/effect/decal/cleanable/food/flour, /mob/living/simple_animal/hostile/cockroach, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/crew) "jl" = ( /obj/machinery/mineral/processing_unit_console{ - pixel_y = 0; + dir = 8; + machinedir = 1; output_dir = 4; pixel_x = 20; - dir = 8; - machinedir = 1 + pixel_y = 0 }, -/obj/effect/turf_decal/industrial/warning/corner, /obj/effect/turf_decal/corner_techfloor_grid{ dir = 5 }, @@ -889,8 +820,8 @@ /area/ship/cargo) "jx" = ( /obj/machinery/conveyor{ - id = "kiloconveyor"; - dir = 4 + dir = 4; + id = "kiloconveyor" }, /obj/structure/sign/poster/random{ pixel_y = 32 @@ -905,16 +836,16 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 4 }, -/obj/structure/catwalk/over/plated_catwalk, /obj/machinery/light_switch{ dir = 1; - pixel_y = -19; - pixel_x = -10 + pixel_x = -10; + pixel_y = -19 }, /obj/structure/cable/pink{ icon_state = "4-8" }, /obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/bridge) "jU" = ( @@ -940,11 +871,14 @@ dir = 8 }, /obj/machinery/light/small/directional/north, -/turf/open/floor/plasteel/tech/grid, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance/fore) "kA" = ( /turf/closed/wall/r_wall, /area/ship/engineering) +"lw" = ( +/turf/closed/wall/rust, +/area/ship/bridge) "mr" = ( /obj/machinery/suit_storage_unit/inherit, /obj/item/clothing/suit/space/eva, @@ -953,10 +887,6 @@ /obj/effect/turf_decal/borderfloor{ dir = 1 }, -/obj/effect/turf_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/box/corners{ dir = 8 }, @@ -964,6 +894,10 @@ /obj/structure/cable/pink{ icon_state = "1-5" }, +/obj/machinery/firealarm/directional/south, +/obj/structure/sign/warning/vacuum/external{ + pixel_x = 32 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "mz" = ( @@ -974,7 +908,6 @@ pixel_y = 20 }, /obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, /area/ship/crew/dorm) "nd" = ( @@ -984,14 +917,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 9 }, -/obj/structure/catwalk/over/plated_catwalk, /obj/structure/cable/pink{ icon_state = "8-9" }, /obj/structure/cable/pink{ icon_state = "1-5" }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "ng" = ( /obj/structure/cable/pink{ @@ -1001,7 +933,6 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/effect/decal/cleanable/glass, /obj/structure/cable/pink{ icon_state = "4-5" }, @@ -1009,28 +940,28 @@ /turf/open/floor/plating, /area/ship/engineering) "nJ" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, /obj/machinery/button/door{ + dir = 4; id = "kilocargo"; name = "blast door control"; pixel_x = -20; - pixel_y = 7; - dir = 4 + pixel_y = 7 }, /obj/machinery/button/shieldwallgen{ dir = 4; - pixel_y = -2; + id = "kilofield"; pixel_x = -19; - id = "kilofield" + pixel_y = -2 }, /obj/item/clothing/head/cone{ - pixel_y = 4; - pixel_x = -8 + pixel_x = -8; + pixel_y = 4 }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/turf_decal/industrial/warning, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "nO" = ( /turf/closed/wall/r_wall, @@ -1039,6 +970,7 @@ /obj/structure/table, /obj/machinery/atmospherics/pipe/manifold/orange/hidden, /obj/machinery/cell_charger, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/ship/engineering) "oP" = ( @@ -1048,18 +980,18 @@ }, /obj/item/stack/sheet/mineral/plasma/ten, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 11; + list_reagents = null; pixel_x = -13; - list_reagents = null + pixel_y = 11 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "pV" = ( /obj/machinery/conveyor_switch/oneway{ id = "kiloconveyor"; + layer = 3.09; pixel_x = 11; - pixel_y = 14; - layer = 3.09 + pixel_y = 14 }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/patterned/grid, @@ -1069,7 +1001,8 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/maintenance/fore) "qw" = ( /obj/machinery/door/airlock/external{ @@ -1079,7 +1012,8 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/maintenance/fore) "rc" = ( /obj/structure/catwalk/over/plated_catwalk, @@ -1123,7 +1057,8 @@ /obj/machinery/door/firedoor/border_only{ dir = 4 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/crew) "rW" = ( /turf/closed/wall/yesdiag, @@ -1154,22 +1089,31 @@ /obj/structure/cable/pink{ icon_state = "6-10" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, /area/ship/crew/dorm) "sW" = ( -/obj/effect/turf_decal/borderfloor{ - dir = 1 - }, /obj/machinery/computer/cargo/retro{ dir = 8 }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"tb" = ( +/turf/closed/wall/rust, +/area/ship/crew/dorm) +"tW" = ( +/turf/closed/wall/rust, +/area/ship/crew) +"vl" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/hallway/port) "vv" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, /turf/open/floor/plating/airless, @@ -1178,8 +1122,7 @@ /obj/structure/cable/pink{ icon_state = "1-2" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "wc" = ( /obj/structure/table/wood, @@ -1190,13 +1133,13 @@ pixel_y = 22 }, /obj/item/reagent_containers/food/snacks/sandwich{ - pixel_y = 9; - pixel_x = -1 + pixel_x = -1; + pixel_y = 9 }, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "wh" = ( -/turf/closed/wall/r_wall, +/turf/closed/wall/r_wall/rust, /area/ship/crew/dorm) "xe" = ( /obj/machinery/door/airlock/external/glass{ @@ -1211,11 +1154,15 @@ /obj/structure/cable/pink{ icon_state = "6-10" }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/maintenance/fore) "xk" = ( /turf/closed/wall, /area/ship/hallway/central) +"xn" = ( +/turf/closed/wall/rust, +/area/ship/hallway/central) "xF" = ( /obj/structure/cable/pink{ icon_state = "8-9" @@ -1227,14 +1174,9 @@ pixel_x = 11 }, /obj/machinery/airalarm/directional/east, -/obj/effect/turf_decal/siding/wood{ - dir = 1; - color = "#E3994E" - }, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew/dorm) "yd" = ( -/obj/structure/catwalk/over/plated_catwalk, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 }, @@ -1244,10 +1186,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 4 }, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering) "yn" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/structure/closet/secure_closet/freezer/fridge{ populate = 0 }, @@ -1272,15 +1214,14 @@ /obj/effect/spawner/lootdrop/ration, /obj/item/reagent_containers/food/snacks/icecreamsandwich, /obj/item/reagent_containers/food/snacks/icecreamsandwich, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/crew) "yF" = ( /turf/closed/wall/r_wall, /area/ship/crew) "zc" = ( -/obj/effect/turf_decal/corner_techfloor_grid{ - dir = 8 - }, /obj/structure/curtain, /obj/machinery/shower{ dir = 1 @@ -1292,6 +1233,9 @@ pixel_x = -9; pixel_y = -7 }, +/obj/effect/turf_decal/steeldecal/steel_decals10{ + dir = 6 + }, /turf/open/floor/plasteel/freezer, /area/ship/crew) "zH" = ( @@ -1311,22 +1255,22 @@ dir = 4 }, /obj/machinery/door/airlock{ - name = "Dormitory"; - dir = 8 + dir = 8; + name = "Dormitory" }, /obj/effect/turf_decal/siding/wood{ - dir = 8; - color = "#E3994E" + color = "#E3994E"; + dir = 8 }, /obj/effect/turf_decal/siding/wood{ - dir = 4; - color = "#E3994E" + color = "#E3994E"; + dir = 4 }, /turf/open/floor/wood/yew, /area/ship/crew) "AB" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "AE" = ( /obj/structure/closet/cabinet, @@ -1340,11 +1284,8 @@ /obj/structure/cable/pink{ icon_state = "0-4" }, -/obj/effect/turf_decal/siding/wood{ - dir = 1; - color = "#E3994E" - }, -/turf/open/floor/wood/yew, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/grimy, /area/ship/crew/dorm) "AP" = ( /obj/machinery/atmospherics/components/binary/pump{ @@ -1353,8 +1294,7 @@ target_pressure = 500 }, /obj/machinery/airalarm/directional/south, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "AQ" = ( /turf/closed/wall, @@ -1370,18 +1310,13 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/ship/engineering) "Bm" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 8 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "Bu" = ( /turf/closed/wall/r_wall/yesdiag, @@ -1390,24 +1325,23 @@ /obj/structure/chair/comfy/shuttle{ dir = 4 }, -/obj/effect/turf_decal/borderfloor/corner{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 8 }, -/turf/open/floor/plasteel/tech/grid, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "BS" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor{ - id = "kilobridge"; - dir = 4 + dir = 4; + id = "kilobridge" }, /turf/open/floor/plating/airless, /area/ship/bridge) +"Ce" = ( +/turf/closed/wall/rust, +/area/ship/maintenance/fore) "Co" = ( /obj/machinery/door/poddoor{ id = "kilocargo" @@ -1431,17 +1365,15 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate/medical, /obj/item/clothing/gloves/color/latex/nitrile, /obj/item/storage/firstaid/regular, /obj/item/roller, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Da" = ( -/obj/effect/decal/cleanable/dirt, /obj/item/cigbutt, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Ds" = ( /obj/structure/filingcabinet/chestdrawer{ @@ -1456,7 +1388,11 @@ /obj/structure/cable/pink{ icon_state = "0-8" }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "Ew" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ @@ -1466,8 +1402,8 @@ /obj/machinery/light/small/directional/south, /obj/machinery/light_switch{ dir = 1; - pixel_y = -19; - pixel_x = -8 + pixel_x = -8; + pixel_y = -19 }, /obj/structure/catwalk/over/plated_catwalk, /obj/structure/cable/pink{ @@ -1477,7 +1413,6 @@ /turf/open/floor/plating, /area/ship/hallway/central) "EG" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 10 }, @@ -1485,24 +1420,23 @@ dir = 1 }, /obj/effect/decal/cleanable/confetti, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/crew) "EU" = ( /obj/structure/cable/pink{ icon_state = "1-2" }, -/obj/effect/decal/cleanable/vomit/old{ - pixel_x = -5 - }, /obj/item/cigbutt, /obj/machinery/computer/cryopod/retro/directional/west, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/hallway/central) "GK" = ( /obj/structure/table, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/machinery/light_switch{ pixel_x = -10; pixel_y = 20 @@ -1534,7 +1468,10 @@ /obj/structure/sign/poster/random{ pixel_y = 32 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "HP" = ( /obj/item/kirbyplants/fullysynthetic{ @@ -1546,20 +1483,16 @@ /obj/machinery/firealarm/directional/east{ pixel_y = -5 }, -/obj/effect/turf_decal/siding/wood{ - dir = 4; - color = "#E3994E" - }, /obj/effect/decal/cleanable/confetti, /obj/item/cigbutt, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "Ih" = ( /obj/structure/cable/pink{ icon_state = "1-6" }, /obj/structure/ore_box, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Jf" = ( /turf/closed/wall/r_wall, @@ -1586,13 +1519,10 @@ /area/ship/maintenance/fore) "KM" = ( /obj/machinery/atmospherics/components/binary/valve/layer4, -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, /obj/effect/decal/cleanable/oil/streak, /obj/item/cigbutt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/turf/open/floor/plasteel/dark, /area/ship/hallway/port) "KR" = ( /obj/machinery/door/airlock/mining/glass{ @@ -1601,20 +1531,17 @@ /obj/structure/cable/pink{ icon_state = "1-2" }, -/obj/effect/turf_decal/borderfloor, /obj/machinery/door/firedoor/border_only, /obj/machinery/door/firedoor/border_only{ dir = 1 }, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "La" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, /obj/item/clothing/head/cone{ - pixel_y = 4; - pixel_x = 11 + pixel_x = 11; + pixel_y = 4 }, /obj/structure/extinguisher_cabinet/directional/east{ pixel_y = 7 @@ -1623,7 +1550,10 @@ pixel_y = -5 }, /obj/item/cigbutt, -/turf/open/floor/plasteel/patterned/grid, +/obj/effect/turf_decal/industrial/warning, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "LC" = ( /obj/structure/cable/cyan{ @@ -1632,11 +1562,7 @@ /obj/structure/cable/pink{ icon_state = "2-5" }, -/obj/effect/turf_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "Mj" = ( /obj/machinery/mineral/unloading_machine, @@ -1648,24 +1574,22 @@ icon_state = "0-8" }, /obj/machinery/power/smes/shuttle, -/obj/structure/window/reinforced/tinted{ - dir = 8 - }, /obj/effect/turf_decal/industrial/warning{ dir = 4 }, +/obj/machinery/door/poddoor{ + dir = 4; + id = "kilothrusters" + }, /turf/open/floor/plating, /area/ship/engineering) "MY" = ( /obj/structure/chair/sofa/brown/old/corner/directional/north, /obj/structure/sign/poster/random{ - pixel_y = 0; - pixel_x = -32 - }, -/obj/effect/decal/cleanable/vomit/old{ - pixel_x = -5 + pixel_x = -32; + pixel_y = 0 }, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "Ng" = ( /obj/structure/cable/pink{ @@ -1691,17 +1615,18 @@ /turf/closed/wall/r_wall/yesdiag, /area/ship/cargo) "NB" = ( -/obj/machinery/door/airlock/grunge{ - dir = 8; - name = "Bathroom" - }, /obj/machinery/door/firedoor/border_only{ dir = 4 }, /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/turf/open/floor/plasteel/patterned/brushed, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock{ + dir = 4; + name = "Restroom" + }, +/turf/open/floor/plasteel/dark, /area/ship/crew) "NI" = ( /obj/structure/sink{ @@ -1722,21 +1647,18 @@ pixel_x = -12; pixel_y = 20 }, -/obj/effect/decal/cleanable/greenglow, /obj/item/storage/pill_bottle/happy{ pixel_x = 12; pixel_y = 12 }, /mob/living/simple_animal/hostile/cockroach, -/turf/open/floor/plasteel/patterned/brushed, +/obj/effect/decal/cleanable/vomit/old{ + pixel_x = -5 + }, +/turf/open/floor/plasteel/patterned, /area/ship/crew) "NT" = ( -/obj/effect/turf_decal/borderfloor{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/ash, -/turf/open/floor/plasteel/tech/grid, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "NU" = ( /obj/structure/table/wood, @@ -1750,8 +1672,8 @@ pixel_y = 3 }, /obj/structure/sign/poster/random{ - pixel_y = 0; - pixel_x = -32 + pixel_x = -32; + pixel_y = 0 }, /turf/open/floor/carpet, /area/ship/crew/dorm) @@ -1772,19 +1694,32 @@ /obj/structure/cable/pink{ icon_state = "2-10" }, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) +"OQ" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/engineering) "Pg" = ( /obj/machinery/computer/helm/retro{ dir = 8 }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/obj/effect/turf_decal/industrial/outline/yellow, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) +"PJ" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/cargo) "PS" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/structure/table/reinforced, /obj/machinery/microwave, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel, /area/ship/crew) "PW" = ( /turf/closed/wall/r_wall/yesdiag, @@ -1796,7 +1731,7 @@ "Rq" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, /turf/open/floor/plating/airless, @@ -1809,36 +1744,36 @@ dir = 6 }, /obj/machinery/button/door{ - pixel_y = 20; - pixel_x = -6; id = "kilowindows"; - name = "Window Lockdown" + name = "Window Lockdown"; + pixel_x = -6; + pixel_y = 20 }, /obj/machinery/button/door{ - pixel_y = 20; - pixel_x = 6; id = "kilobridge"; - name = "Bridge Lockdown" + name = "Bridge Lockdown"; + pixel_x = 6; + pixel_y = 20 }, -/obj/effect/decal/cleanable/dirt, /obj/structure/cable/pink{ icon_state = "2-8" }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "Sx" = ( -/obj/effect/turf_decal/corner/opaque/red/diagonal, /obj/structure/table/reinforced, /obj/item/cutting_board{ anchored = 1 }, /obj/item/kitchen/knife, -/turf/open/floor/plasteel/white, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/crew) "Ti" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, /turf/open/floor/plating/airless, @@ -1850,7 +1785,6 @@ }, /obj/item/bedsheet/dorms, /obj/machinery/light/directional/west, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, /area/ship/crew/dorm) "To" = ( @@ -1861,31 +1795,40 @@ icon_state = "0-6" }, /obj/machinery/power/shieldwallgen/atmos/roundstart{ - id = "kilofield"; - dir = 4 + dir = 4; + id = "kilofield" }, /turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) +"Tr" = ( +/turf/closed/wall/rust, +/area/ship/engineering) "TD" = ( /obj/machinery/light/directional/south, /obj/structure/table/reinforced, /obj/item/megaphone/cargo{ - pixel_y = 5; - pixel_x = 4 + pixel_x = 4; + pixel_y = 5 }, /obj/item/cigbutt{ - pixel_y = 5; - pixel_x = -17 + pixel_x = -17; + pixel_y = 5 }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "TG" = ( /turf/closed/wall, /area/ship/hallway/port) +"TY" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/bridge) "Ua" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, /turf/open/floor/plating/airless, @@ -1896,24 +1839,23 @@ "Un" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, -/obj/machinery/door/poddoor{ +/obj/machinery/door/poddoor/shutters{ id = "kilowindows" }, /turf/open/floor/plating/airless, /area/ship/hallway/port) "Uv" = ( /obj/docking_port/stationary{ - width = 30; - height = 15; + dir = 4; dwidth = 15; - dir = 4 + height = 15; + width = 30 }, /turf/template_noop, /area/template_noop) "UY" = ( /obj/structure/chair/sofa/brown/old/right/directional/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "Va" = ( /obj/structure/closet/crate/secure/weapon, @@ -1929,7 +1871,7 @@ /obj/effect/decal/cleanable/oil, /obj/item/ammo_box/a12g, /obj/item/gun/ballistic/shotgun/doublebarrel/no_mag, -/turf/open/floor/plasteel/patterned/grid, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Vd" = ( /obj/structure/cable/pink{ @@ -1942,28 +1884,27 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, /obj/machinery/light/small/directional/east{ pixel_y = 8 }, -/obj/machinery/firealarm/directional/east{ - pixel_y = -2 - }, /obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, +/obj/machinery/button/door{ + dir = 8; + id = "amogusthrusters"; + name = "Thruster Lockdown"; + pixel_x = 21 + }, +/turf/open/floor/plasteel/dark, /area/ship/engineering) "Vh" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/machinery/atmospherics/components/unary/tank/air{ dir = 8; piping_layer = 2 }, -/turf/open/floor/plating, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/plasteel/tech, /area/ship/engineering) "Vq" = ( /turf/closed/wall/r_wall/yesdiag, @@ -1972,14 +1913,13 @@ /obj/effect/turf_decal/miskilamo_small{ dir = 1 }, -/turf/open/floor/plasteel/mono/dark, +/turf/open/floor/engine/hull, /area/ship/external/dark) "Vx" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, /obj/item/cigbutt, /turf/open/floor/carpet, /area/ship/crew/dorm) @@ -1987,7 +1927,7 @@ /obj/effect/turf_decal/miskilamo_small/left{ dir = 1 }, -/turf/open/floor/plasteel/mono/dark, +/turf/open/floor/engine/hull, /area/ship/external/dark) "We" = ( /obj/machinery/suit_storage_unit/inherit, @@ -2011,31 +1951,36 @@ "Xd" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ - pixel_y = 4; - pixel_x = -7 + pixel_x = -7; + pixel_y = 4 }, /obj/item/pen/fourcolor, /obj/machinery/airalarm/directional/south, /obj/item/radio/intercom/wideband/directional/west, /obj/item/reagent_containers/food/drinks/coffee{ - pixel_y = 7; - pixel_x = 10 + pixel_x = 10; + pixel_y = 7 }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "XQ" = ( /obj/machinery/cryopod{ dir = 8 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/machinery/light/small/directional/east, +/obj/effect/turf_decal/box, /turf/open/floor/plasteel/tech/grid, /area/ship/hallway/central) "XR" = ( /turf/closed/wall, /area/ship/crew) +"Yn" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/crew) "Yu" = ( /obj/structure/grille, /obj/structure/window/fulltile, @@ -2047,10 +1992,11 @@ dir = 1 }, /obj/item/reagent_containers/food/drinks/beer{ - pixel_y = 12; - pixel_x = -9 + pixel_x = -9; + pixel_y = 12 }, -/turf/open/floor/wood/yew, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/grimy, /area/ship/crew/dorm) "YL" = ( /obj/structure/chair/sofa/brown/old/directional/east, @@ -2058,7 +2004,7 @@ dir = 5 }, /obj/item/radio/intercom/directional/west, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "ZC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ @@ -2067,12 +2013,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4{ dir = 4 }, -/obj/effect/turf_decal/siding/wood{ - dir = 5; - color = "#E3994E" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood/yew, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "ZG" = ( /obj/structure/cable/pink{ @@ -2092,7 +2033,7 @@ AQ bn bn bn -AQ +Tr ak AQ aa @@ -2101,7 +2042,7 @@ aa (2,1,1) = {" aa aa -kA +OQ ar kA MI @@ -2179,7 +2120,7 @@ aa Ua aS ca -cq +tb cq cq cq @@ -2191,7 +2132,7 @@ aa (8,1,1) = {" aa aa -Jf +vl TG cC cq @@ -2228,7 +2169,7 @@ XR XR zH XR -XR +tW XR yF aa @@ -2288,10 +2229,10 @@ Ud XR XR rO -XR +tW NB XR -yF +Yn "} (15,1,1) = {" Nq @@ -2303,7 +2244,7 @@ cB im dt sD -xk +xn NI zc yF @@ -2365,7 +2306,7 @@ GM jK bF bF -bF +lw bP "} (20,1,1) = {" @@ -2385,7 +2326,7 @@ bP "} (21,1,1) = {" aa -ac +PJ hN jl OH @@ -2417,11 +2358,11 @@ aa aa KB bm -KB +Ce kb cJ -bP -bP +TY +TY BS BS BS diff --git a/_maps/shuttles/independent/independent_mudskipper.dmm b/_maps/shuttles/independent/independent_mudskipper.dmm index 618a40d3996f..64275521c4e0 100644 --- a/_maps/shuttles/independent/independent_mudskipper.dmm +++ b/_maps/shuttles/independent/independent_mudskipper.dmm @@ -9,7 +9,7 @@ icon_state = "0-1" }, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "ag" = ( /obj/machinery/power/shuttle/engine/electric{ @@ -18,34 +18,27 @@ /obj/structure/cable{ icon_state = "0-4" }, -/turf/open/floor/plating, +/turf/open/floor/engine/hull, /area/ship/engineering/engine) "ak" = ( -/obj/effect/turf_decal/siding/wood/end{ - dir = 8; - color = "#543C30" - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2, /obj/structure/extinguisher_cabinet/directional/south, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/wood/walnut, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "ao" = ( /obj/machinery/power/terminal{ dir = 8 }, /obj/machinery/atmospherics/components/binary/pump{ - name = "Plasma to Engines"; - dir = 1 + dir = 1; + name = "Plasma to Engines" }, /obj/structure/cable{ icon_state = "1-4" @@ -53,11 +46,6 @@ /obj/structure/cable{ icon_state = "0-4" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "ar" = ( @@ -70,70 +58,51 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/grimy, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "bS" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plasteel/grimy, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) -"bZ" = ( -/obj/machinery/power/smes/shuttle/precharged{ - dir = 4 - }, -/obj/structure/window/reinforced/spawner/west, -/obj/machinery/door/window/eastleft{ - layer = 3.1 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/shutters{ - dir = 4; - id = "mudskipper_engine" - }, -/turf/open/floor/plating, -/area/ship/engineering/engine) "cn" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, /obj/machinery/airalarm/directional/east, /obj/machinery/light_switch{ - pixel_y = 23; - pixel_x = -3 + pixel_x = -3; + pixel_y = 23 }, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/handrail, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance) "cs" = ( /turf/template_noop, /area/template_noop) "cx" = ( -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, /obj/machinery/door/firedoor/border_only{ dir = 8 }, /obj/effect/turf_decal/miskilamo_small{ dir = 8 }, +/obj/effect/decal/cleanable/dirt, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-10" + }, +/turf/open/floor/plasteel/mono{ + dir = 1 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, /area/ship/cargo) "cB" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 5 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 6 }, @@ -141,46 +110,42 @@ dir = 4 }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "4-9" }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/carpet, /area/ship/crew) "dc" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/hallway/central) "dw" = ( /obj/structure/window/reinforced/spawner, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, /obj/machinery/button/door{ dir = 8; - pixel_x = 22; - pixel_y = 15; id = "mudskipper_engine"; - name = "Engine Shutters" + name = "Engine Shutters"; + pixel_x = 22; + pixel_y = 15 }, /obj/machinery/cell_charger, /obj/item/storage/toolbox/mechanical, -/turf/open/floor/plasteel/tech/grid, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "dN" = ( /obj/machinery/modular_computer/console/preset/command{ dir = 8 }, -/obj/effect/turf_decal/corner/transparent/neutral, /obj/machinery/light_switch{ - pixel_y = 23; - pixel_x = -3 + pixel_x = -3; + pixel_y = 23 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "dQ" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 6 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, @@ -192,8 +157,10 @@ /obj/structure/cable{ icon_state = "0-8" }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/grimy, +/obj/structure/chair/handrail{ + dir = 1 + }, +/turf/open/floor/carpet, /area/ship/crew) "dT" = ( /obj/machinery/suit_storage_unit/inherit, @@ -207,41 +174,46 @@ dir = 4; pixel_x = -22 }, +/obj/effect/turf_decal/borderfloor{ + dir = 6 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "dZ" = ( -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/effect/decal/cleanable/glass, /obj/structure/extinguisher_cabinet/directional/west{ pixel_y = 5 }, /obj/machinery/button/door{ dir = 4; - pixel_x = -33; - pixel_y = -7; id = "mudskipper_door"; - name = "Cargo Door" + name = "Cargo Door"; + pixel_x = -33; + pixel_y = -7 }, /obj/machinery/button/shieldwallgen{ dir = 4; - pixel_x = -21; - pixel_y = -7; id = "mudskipper_shield"; - name = "Cargo Holofield" + name = "Cargo Holofield"; + pixel_x = -21; + pixel_y = -7 }, -/turf/open/floor/plasteel/dark, +/obj/structure/cable{ + icon_state = "2-10" + }, +/obj/structure/chair/handrail{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "ec" = ( -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "ee" = ( /obj/effect/turf_decal/industrial/warning, @@ -250,19 +222,15 @@ }, /obj/structure/window/reinforced/spawner/west, /obj/structure/window/reinforced/spawner/east, -/turf/open/floor/plasteel/tech/airless, +/turf/open/floor/engine/hull, /area/ship/external/dark) "en" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/orange/hidden{ dir = 10 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "eu" = ( -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/structure/railing{ dir = 8 }, @@ -274,8 +242,12 @@ /obj/structure/cable{ icon_state = "2-4" }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/tech, /area/ship/engineering/engine) +"ev" = ( +/turf/closed/wall, +/area/ship/crew/cryo) "eL" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, @@ -283,21 +255,18 @@ /obj/structure/sign/poster/contraband/smoke{ pixel_x = 32 }, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 4 - }, /obj/item/toy/cards/deck{ pixel_y = 3 }, -/turf/open/floor/wood/walnut, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "eX" = ( /obj/machinery/atmospherics/components/unary/passive_vent, -/turf/open/floor/engine/hull/reinforced, +/turf/open/floor/engine/hull, /area/ship/external/dark) "gf" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, @@ -310,6 +279,10 @@ /obj/structure/cable{ icon_state = "2-8" }, +/obj/structure/cable{ + icon_state = "5-6" + }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/hallway/central) "gB" = ( @@ -318,17 +291,19 @@ dir = 4; id = "mudskipper_door" }, -/turf/open/floor/engine, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "gR" = ( /obj/effect/turf_decal/box, -/obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/oil{ icon_state = "floor4" }, /obj/structure/closet/crate/secure{ - name = "scavenging supplies"; desc = "A secure crate. This one is particularly large."; + name = "scavenging supplies"; storage_capacity = 40 }, /obj/item/reagent_containers/glass/chem_jug/thermite, @@ -350,24 +325,28 @@ /obj/item/multitool, /obj/item/stack/marker_beacon/thirty, /obj/item/gun/energy/plasmacutter, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "2-10" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "gT" = ( -/obj/structure/chair{ +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/structure/chair/plastic{ dir = 1 }, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 6 - }, -/obj/machinery/light/directional/east, -/turf/open/floor/wood/walnut, +/turf/open/floor/plasteel, /area/ship/hallway/aft) +"hn" = ( +/turf/closed/wall/rust/yesdiag, +/area/ship/external/dark) "hr" = ( /obj/machinery/power/smes/engineering, -/obj/effect/turf_decal/techfloor{ - dir = 5 - }, /obj/structure/cable{ icon_state = "0-8" }, @@ -375,20 +354,20 @@ /turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "hH" = ( -/turf/closed/wall/mineral/plastitanium, +/turf/closed/wall/yesdiag, /area/ship/external/dark) "hX" = ( /obj/structure/grille, /turf/open/floor/engine/hull/reinforced, /area/ship/external/dark) "hY" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/structure/cable{ icon_state = "1-8" }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering/engine) "ib" = ( @@ -401,66 +380,67 @@ /obj/effect/turf_decal/industrial/warning{ dir = 4 }, -/turf/open/floor/engine/hull/reinforced, +/turf/open/floor/engine/hull, /area/ship/cargo) "ic" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/oil{ icon_state = "floor4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable{ - icon_state = "0-2" + icon_state = "0-6" }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, /turf/open/floor/plasteel/dark, /area/ship/bridge) "iy" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "iY" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/obj/structure/cable{ + icon_state = "4-9" }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 +/obj/structure/sign/poster/random{ + pixel_y = -32 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 +/obj/structure/chair/handrail{ + dir = 1 }, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel, /area/ship/hallway/central) +"js" = ( +/turf/closed/wall/rust, +/area/ship/bridge) +"jz" = ( +/turf/closed/wall/rust, +/area/ship/engineering/engine) "kB" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, /obj/machinery/airalarm/directional/west, /obj/machinery/light_switch{ - pixel_y = 23; - pixel_x = 3 + pixel_x = 3; + pixel_y = 23 }, -/turf/open/floor/plasteel/showroomfloor, +/turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "kV" = ( /obj/machinery/vending/coffee, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/structure/extinguisher_cabinet/directional/west{ pixel_y = -5 }, /obj/machinery/light/dim/directional/north, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) "kX" = ( @@ -468,33 +448,31 @@ dir = 4 }, /obj/machinery/airalarm/directional/north, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/dim/directional/west{ bulb_power = 0.5 }, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "kY" = ( /obj/effect/turf_decal/industrial/warning{ dir = 4 }, -/turf/open/floor/engine/hull/reinforced, +/turf/open/floor/engine/hull, /area/ship/cargo) +"lg" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/crew/toilet) "lj" = ( /obj/machinery/power/shuttle/engine/fueled/plasma{ dir = 4 }, -/turf/open/floor/plating, +/turf/open/floor/engine/hull, /area/ship/engineering/engine) "ma" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/turf/open/floor/plating, +/turf/open/floor/engine/hull, /area/ship/external/dark) "mt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, @@ -506,24 +484,14 @@ /obj/structure/cable{ icon_state = "1-2" }, +/obj/effect/turf_decal/industrial/warning/fulltile, /obj/machinery/door/airlock{ - name = "Bathroom" + dir = 1; + name = "Restroom" }, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/dark, /area/ship/crew/toilet) "mC" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, @@ -533,10 +501,11 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/structure/catwalk/over/plated_catwalk, +/turf/open/floor/plating, /area/ship/hallway/central) "mF" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall/r_wall, /area/ship/cargo) "mS" = ( /obj/structure/catwalk, @@ -551,12 +520,12 @@ dir = 1; id = "mudskipper_shield" }, -/turf/open/floor/engine, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "nj" = ( -/obj/effect/turf_decal/techfloor{ - dir = 5 - }, /obj/structure/sign/warning/vacuum/external{ pixel_y = 28 }, @@ -569,60 +538,45 @@ /obj/structure/cable{ icon_state = "2-4" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "nm" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/chair, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 9 - }, -/turf/open/floor/wood/walnut{ - icon_state = "wood-broken7" - }, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/structure/chair/plastic, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "nx" = ( /obj/machinery/door/airlock/external, /obj/machinery/atmospherics/pipe/layer_manifold, -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/turf_decal/industrial/warning, +/obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/tech, /area/ship/hallway/aft) "nM" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, /obj/machinery/light/small/directional/north{ pixel_x = 6 }, /obj/machinery/computer/helm/viewscreen/computer, /obj/machinery/airalarm/directional/east, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/box, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "nR" = ( -/obj/effect/turf_decal/corner_techfloor_grid{ - dir = 8 - }, -/obj/effect/turf_decal/techfloor/corner{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2{ dir = 8 }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "nV" = ( /obj/structure/closet/wall/blue/directional/west{ - secure = 1; - locked = 1 + locked = 1; + secure = 1 }, /obj/item/gun/energy/laser/scatter, /obj/item/stock_parts/cell/gun/upgraded, @@ -640,66 +594,48 @@ /turf/open/floor/plasteel/dark, /area/ship/bridge) "ot" = ( -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/number/four{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "ov" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/airalarm/directional/east, /obj/machinery/photocopier, /obj/machinery/firealarm/directional/north, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "oC" = ( -/obj/effect/turf_decal/siding/wood/end{ - dir = 4; - color = "#543C30" - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 8 }, /obj/machinery/firealarm/directional/south, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "4-10" }, -/turf/open/floor/wood/walnut, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "oG" = ( -/obj/machinery/door/airlock/grunge{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 8 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, +/obj/effect/turf_decal/industrial/warning/fulltile, /obj/machinery/door/firedoor/border_only{ dir = 4 }, @@ -709,10 +645,15 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock/public/glass{ + dir = 4; + name = "Office" + }, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "oU" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/crew/toilet) "po" = ( /obj/structure/catwalk, @@ -726,7 +667,10 @@ /obj/machinery/power/shieldwallgen/atmos/roundstart{ id = "mudskipper_shield" }, -/turf/open/floor/engine, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "pF" = ( /obj/machinery/firealarm/directional/west{ @@ -735,74 +679,72 @@ /obj/machinery/light/small/directional/south, /obj/structure/table/reinforced, /obj/structure/bedsheetbin, -/obj/effect/turf_decal/techfloor{ - dir = 10 - }, -/turf/open/floor/plasteel/tech/grid, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance) "pY" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "qy" = ( -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 4 - }, -/obj/machinery/computer/crew{ - dir = 8; - icon_state = "computer-right" - }, /obj/machinery/button/door{ dir = 1; - pixel_x = -6; - pixel_y = -21; + id = "mudskipper_bridge"; name = "Bridge Lockdown"; - id = "mudskipper_bridge" + pixel_x = -6; + pixel_y = -21 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/obj/effect/turf_decal/box, +/obj/machinery/computer/crew/retro{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "qE" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/manifold/orange/hidden{ dir = 4 }, /obj/structure/cable{ icon_state = "2-5" }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "qN" = ( -/obj/machinery/cryopod, -/obj/effect/turf_decal/techfloor{ - dir = 10 +/obj/machinery/cryopod{ + dir = 8 }, -/obj/effect/turf_decal/industrial/hatch/yellow, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/item/radio/intercom/directional/north{ pixel_x = -3 }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) "rr" = ( /obj/structure/chair/office{ dir = 8 }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/machinery/light_switch{ dir = 8; pixel_x = 22; pixel_y = -3 }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, +/turf/open/floor/plasteel/dark, /area/ship/bridge) +"rG" = ( +/turf/closed/wall/r_wall, +/area/ship/crew/toilet) "rO" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 9 }, @@ -812,15 +754,10 @@ /obj/structure/cable{ icon_state = "4-8" }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/cargo) "sa" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/chair, -/obj/effect/turf_decal/siding/wood{ - dir = 5; - color = "#543C30" - }, /obj/machinery/newscaster/directional/east{ pixel_y = -6 }, @@ -829,17 +766,20 @@ pixel_x = 22; pixel_y = 5 }, -/turf/open/floor/wood/walnut, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/structure/chair/plastic, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "sf" = ( -/obj/machinery/computer/helm{ - dir = 8; - icon_state = "computer-left" +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 }, -/obj/effect/turf_decal/corner/transparent/neutral{ - dir = 6 +/obj/effect/turf_decal/box, +/obj/machinery/computer/helm/retro{ + dir = 8 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "sp" = ( /obj/machinery/atmospherics/pipe/manifold/cyan/visible/layer4{ @@ -849,33 +789,26 @@ /obj/machinery/meter/atmos/layer2{ name = "waste to external meter" }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "sA" = ( -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor/border_only{ dir = 8 }, /obj/effect/turf_decal/miskilamo_small/right{ dir = 8 }, -/obj/structure/cable{ - icon_state = "1-2" +/turf/open/floor/plasteel/mono{ + dir = 1 }, -/turf/open/floor/plasteel/dark, /area/ship/cargo) "sH" = ( /obj/structure/catwalk, /obj/structure/window/reinforced/spawner/east, /obj/structure/window/reinforced/spawner/west, -/turf/open/floor/engine/airless, +/turf/open/floor/engine/hull, /area/ship/external/dark) "sI" = ( -/obj/effect/turf_decal/techfloor, /obj/structure/railing{ dir = 8 }, @@ -891,42 +824,42 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/table/reinforced, /obj/machinery/microwave, -/obj/effect/turf_decal/techfloor{ - dir = 5 - }, /obj/machinery/light/directional/east, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/opaque/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "th" = ( -/obj/effect/turf_decal/borderfloor/full, -/obj/effect/turf_decal/industrial/traffic{ - dir = 1 - }, -/obj/effect/turf_decal/industrial/traffic, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "2-8" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/tech/techmaint, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "ti" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/sign/warning/incident{ pixel_x = -32 }, /obj/machinery/computer/cargo/retro{ dir = 4 }, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "tI" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "2-6" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "tK" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -937,23 +870,13 @@ /obj/structure/cable{ icon_state = "0-8" }, -/turf/open/floor/plasteel/showroomfloor, +/turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "uk" = ( -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "uz" = ( -/obj/effect/turf_decal/corner_techfloor_grid{ - dir = 4 - }, -/obj/effect/turf_decal/techfloor/corner{ - dir = 4 - }, /obj/structure/reagent_dispensers/fueltank, /obj/effect/turf_decal/industrial/hatch/yellow, /obj/structure/railing{ @@ -963,17 +886,12 @@ pixel_x = 7; pixel_y = 28 }, -/turf/open/floor/plasteel/dark, -/area/ship/cargo) -"uW" = ( -/obj/machinery/door/airlock/grunge{ - name = "Bridge"; - req_one_access_txt = "20" - }, -/obj/effect/turf_decal/industrial/warning, /obj/effect/turf_decal/industrial/warning{ - dir = 1 + dir = 4 }, +/turf/open/floor/plasteel/patterned/grid, +/area/ship/cargo) +"uW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/machinery/door/firedoor/border_only{ @@ -984,6 +902,15 @@ dir = 2; id = "mudskipper_bridge" }, +/obj/structure/cable{ + icon_state = "1-5" + }, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock/command{ + dir = 1; + name = "Bridge"; + req_access_txt = "19" + }, /turf/open/floor/plasteel/dark, /area/ship/bridge) "vn" = ( @@ -992,11 +919,11 @@ /obj/structure/sign/poster/contraband/punch_shit{ pixel_x = 32 }, -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, /obj/item/storage/fancy/donut_box, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/opaque/neutral/half{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "vI" = ( /obj/structure/cable{ @@ -1008,10 +935,15 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/plastic, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "1-5" + }, +/turf/open/floor/plasteel/dark, /area/ship/engineering/engine) +"vP" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/bridge) "wi" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -1023,25 +955,24 @@ /obj/structure/cable{ icon_state = "0-1" }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance) "wj" = ( -/obj/effect/turf_decal/industrial/outline/red, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "4-5" + }, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "ws" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/engineering/engine) "xk" = ( -/obj/effect/turf_decal/techfloor, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/effect/decal/cleanable/dirt, /obj/machinery/light_switch{ dir = 8; pixel_x = 25; @@ -1050,6 +981,12 @@ /obj/item/kirbyplants{ icon_state = "plant-14" }, +/obj/structure/cable{ + icon_state = "5-9" + }, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters{ + dir = 4 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) "xo" = ( @@ -1061,9 +998,7 @@ pixel_x = 22; pixel_y = -6 }, -/turf/open/floor/wood/walnut{ - icon_state = "wood-broken7" - }, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "xp" = ( /obj/structure/toilet{ @@ -1071,39 +1006,32 @@ }, /obj/machinery/light/dim/directional/south, /obj/structure/curtain, -/turf/open/floor/plasteel/showroomfloor, +/turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "xH" = ( -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, /obj/machinery/recharger{ pixel_y = 4 }, -/turf/open/floor/plasteel/tech, +/obj/structure/table/reinforced, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "xU" = ( -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, /obj/machinery/power/terminal{ dir = 1 }, /obj/structure/cable{ icon_state = "0-2" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/small/directional/east{ bulb_power = 0.2 }, /turf/open/floor/plasteel/tech, /area/ship/engineering/engine) +"xZ" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/engineering/engine) "yg" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/structure/extinguisher_cabinet/directional/west{ pixel_y = -5 }, @@ -1115,24 +1043,23 @@ pixel_x = -22; pixel_y = 6 }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "yv" = ( -/obj/structure/window/plasma/reinforced/plastitanium, /obj/structure/grille, /obj/machinery/door/poddoor/shutters{ id = "mudskipper_window" }, +/obj/structure/window/fulltile, /turf/open/floor/plating, /area/ship/cargo) "yB" = ( -/obj/effect/turf_decal/techfloor, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable{ icon_state = "0-1" }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "yS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, @@ -1141,10 +1068,14 @@ /obj/structure/cable{ icon_state = "0-1" }, -/turf/open/floor/plasteel/grimy, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, +/area/ship/hallway/aft) +"yV" = ( +/turf/closed/wall/r_wall/rust, /area/ship/hallway/aft) "yY" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/dim/directional/west{ bulb_power = 0.5 }, @@ -1152,63 +1083,65 @@ dir = 1 }, /obj/machinery/portable_atmospherics/canister/toxins, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "zx" = ( /obj/machinery/atmospherics/components/unary/shuttle/heater{ dir = 4 }, -/obj/structure/window/reinforced/spawner/west, -/obj/structure/window/reinforced/spawner/north, -/obj/structure/window/reinforced/spawner, -/obj/structure/window/reinforced/spawner/east, -/obj/machinery/door/poddoor/shutters{ +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/door/poddoor{ dir = 4; id = "mudskipper_engine" }, /turf/open/floor/plating, /area/ship/engineering/engine) "zR" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "1-4" }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2, -/turf/open/floor/plasteel/grimy, +/obj/structure/cable{ + icon_state = "4-9" + }, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "zW" = ( /obj/structure/cable{ icon_state = "1-8" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 9 }, -/turf/open/floor/plating, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/crew/cryo) "zX" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall/r_wall/rust, /area/ship/crew/cryo) +"Ag" = ( +/turf/closed/wall/r_wall, +/area/ship/hallway/aft) "Ak" = ( /obj/structure/chair/comfy/shuttle{ dir = 4 }, -/obj/effect/turf_decal/box, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "AN" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 4 }, @@ -1216,9 +1149,6 @@ dir = 9 }, /obj/structure/extinguisher_cabinet/directional/east, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/structure/cable{ icon_state = "2-8" }, @@ -1227,11 +1157,13 @@ pixel_x = 22; pixel_y = -14 }, +/obj/structure/cable{ + icon_state = "1-10" + }, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering/engine) "Bj" = ( -/obj/effect/turf_decal/corner_techfloor_grid, -/obj/effect/turf_decal/techfloor/corner, /obj/effect/decal/cleanable/dirt/dust, /obj/structure/sign/poster/contraband/hacking_guide{ pixel_y = -32 @@ -1241,27 +1173,27 @@ dir = 8 }, /obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Bn" = ( /obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/industrial/warning, +/turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/aft) "Bw" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/oil{ icon_state = "floor4" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/borderfloor{ + dir = 5 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "BA" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ @@ -1273,10 +1205,8 @@ /obj/machinery/advanced_airlock_controller{ pixel_y = 24 }, -/obj/effect/turf_decal/techfloor{ - dir = 9 - }, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/handrail, +/turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/aft) "BW" = ( /obj/effect/turf_decal/box, @@ -1296,7 +1226,8 @@ /obj/item/storage/pill_bottle/charcoal/less, /obj/item/reagent_containers/hypospray/medipen/penacid, /obj/item/reagent_containers/hypospray/medipen/penacid, -/turf/open/floor/plasteel/tech, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Ch" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ @@ -1308,7 +1239,7 @@ /obj/structure/cable{ icon_state = "1-4" }, -/turf/open/floor/plasteel/showroomfloor, +/turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "Cr" = ( /obj/structure/table/reinforced, @@ -1316,36 +1247,34 @@ dir = 6 }, /obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/hallway/aft) +"Cv" = ( +/turf/closed/wall/r_wall, +/area/ship/maintenance) "CG" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/item/clothing/suit/space/eva, /obj/item/clothing/head/helmet/space/eva, /obj/machinery/suit_storage_unit/inherit/industrial, +/obj/effect/turf_decal/industrial/warning{ + dir = 9 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/hallway/aft) "Dj" = ( -/obj/effect/turf_decal/borderfloor/full, -/obj/effect/turf_decal/industrial/traffic{ - dir = 1 - }, -/obj/effect/turf_decal/industrial/traffic, -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable{ icon_state = "4-8" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/tech/techmaint, +/obj/structure/cable{ + icon_state = "5-8" + }, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Dp" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 1 - }, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30" - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 1 }, @@ -1353,14 +1282,18 @@ dir = 1 }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "2-8" }, -/turf/open/floor/wood/walnut{ - icon_state = "wood-broken2" +/obj/structure/cable{ + icon_state = "2-9" }, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, +/turf/open/floor/plasteel/dark, +/area/ship/bridge) +"DA" = ( +/turf/closed/wall/r_wall, /area/ship/bridge) "DC" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 1 }, @@ -1371,59 +1304,47 @@ icon_state = "2-8" }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "6-8" }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/hallway/central) "DS" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/item/kirbyplants{ icon_state = "plant-21" }, /obj/machinery/light_switch{ - pixel_y = 23; - pixel_x = -3 + pixel_x = -3; + pixel_y = 23 + }, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters{ + dir = 1 }, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) +"DU" = ( +/turf/closed/wall/r_wall, +/area/ship/crew/cryo) "Ed" = ( -/obj/effect/turf_decal/corner_techfloor_grid{ - dir = 1 - }, -/obj/effect/turf_decal/techfloor/corner{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Eg" = ( -/obj/effect/turf_decal/techfloor{ - dir = 4 - }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/number/eight{ dir = 4 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "Ey" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 10 - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 8 }, @@ -1434,39 +1355,37 @@ icon_state = "2-4" }, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "2-9" }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/carpet, /area/ship/crew) "EP" = ( -/obj/effect/turf_decal/techfloor{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/structure/cable{ - icon_state = "1-4" - }, /obj/machinery/button/shieldwallgen{ dir = 1; - pixel_x = -6; - pixel_y = -21; id = "mudskipper_shield"; - name = "Cargo Holofield" + name = "Cargo Holofield"; + pixel_x = -6; + pixel_y = -21 }, /obj/machinery/button/door{ dir = 1; - pixel_x = 6; - pixel_y = -21; id = "mudskipper_door"; - name = "Cargo Door" + name = "Cargo Door"; + pixel_x = 6; + pixel_y = -21 }, /obj/effect/turf_decal/number/six{ dir = 8 }, -/turf/open/floor/plasteel/dark, +/obj/structure/cable{ + icon_state = "4-9" + }, +/turf/open/floor/plasteel/mono{ + dir = 1 + }, /area/ship/cargo) "EQ" = ( /obj/structure/tank_dispenser/oxygen, @@ -1475,19 +1394,21 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/dim/directional/north, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/hallway/aft) "Ft" = ( /obj/structure/bed, /obj/item/bedsheet/dorms, /obj/structure/curtain/bounty, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light_switch{ dir = 1; - pixel_y = -21; - pixel_x = 3 + pixel_x = 3; + pixel_y = -21 }, -/turf/open/floor/wood/walnut, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "FN" = ( /obj/machinery/suit_storage_unit/inherit, @@ -1497,39 +1418,38 @@ }, /obj/item/clothing/suit/space/engineer, /obj/item/clothing/head/helmet/space/light/engineer, +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "Gk" = ( -/obj/effect/spawner/structure/window/plasma/reinforced/plastitanium, /obj/machinery/door/poddoor/shutters/preopen{ dir = 4; id = "mudskipper_bridge" }, +/obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/ship/bridge) "Gq" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/crew) "GI" = ( /obj/machinery/cryopod{ - dir = 1 - }, -/obj/effect/turf_decal/techfloor{ - dir = 9 + dir = 8 }, -/obj/effect/turf_decal/industrial/hatch/yellow, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/airalarm/directional/south, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) "GW" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/wood/walnut{ - icon_state = "wood-broken7" +/obj/structure/cable{ + icon_state = "6-10" }, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "Hk" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 6 }, @@ -1539,37 +1459,29 @@ /obj/structure/cable{ icon_state = "2-4" }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "Id" = ( -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, /obj/item/stack/sheet/metal/five{ pixel_y = 3 }, /obj/item/stack/sheet/glass/five{ pixel_y = 6 }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "IL" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" + icon_state = "2-8" }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "4-8" }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/hallway/central) "IP" = ( @@ -1588,18 +1500,17 @@ pixel_y = 3 }, /obj/item/radio{ - pixel_y = 3; - pixel_x = -6 + pixel_x = -6; + pixel_y = 3 }, /obj/item/radio{ - pixel_y = 3; - pixel_x = -6 + pixel_x = -6; + pixel_y = 3 }, /turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) "IU" = ( -/obj/structure/catwalk, -/turf/open/floor/engine/airless, +/turf/open/floor/engine/hull, /area/ship/external/dark) "JN" = ( /obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/layer2{ @@ -1608,14 +1519,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 1 +/obj/effect/turf_decal/industrial/warning{ + dir = 4 }, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/handrail, +/turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/aft) "JS" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 8 }, @@ -1625,10 +1535,9 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plasteel/grimy, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "Kt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ @@ -1637,14 +1546,19 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 9 }, -/turf/open/floor/plasteel/grimy, +/obj/effect/turf_decal/industrial/warning{ + dir = 8 + }, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "KA" = ( /obj/structure/window/reinforced/spawner, /obj/item/paper_bin, /obj/item/analyzer{ - pixel_y = 3; - pixel_x = 13 + pixel_x = 13; + pixel_y = 3 }, /obj/item/pen, /obj/structure/cable{ @@ -1653,17 +1567,14 @@ /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, -/turf/open/floor/plasteel/tech/grid, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "KT" = ( /obj/machinery/washing_machine, -/obj/effect/turf_decal/techfloor{ - dir = 6 - }, -/turf/open/floor/plasteel/tech/grid, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/patterned, /area/ship/maintenance) "KU" = ( /obj/machinery/power/apc/auto_name/directional/north, @@ -1671,11 +1582,14 @@ /obj/structure/cable{ icon_state = "0-2" }, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/structure/chair/handrail{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/crew/cryo) "Lw" = ( /obj/machinery/firealarm/directional/west{ @@ -1686,40 +1600,51 @@ pixel_x = -22; pixel_y = -9 }, -/obj/effect/turf_decal/techfloor, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, /obj/machinery/computer/cryopod/retro/directional/south, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/structure/chair/handrail{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/crew/cryo) "LV" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 8 }, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 1 }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/hallway/central) +"LY" = ( +/obj/effect/turf_decal/corner/opaque/neutral/half, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/dark, +/area/ship/hallway/central) "Mf" = ( /turf/template_noop, /area/space) "Mi" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer2{ dir = 1 }, +/obj/structure/cable{ + icon_state = "6-8" + }, +/obj/structure/cable{ + icon_state = "4-10" + }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/hallway/central) "MB" = ( @@ -1735,38 +1660,30 @@ /obj/machinery/power/smes/shuttle/precharged{ dir = 4 }, -/obj/structure/window/reinforced/spawner/west, -/obj/machinery/door/window/eastright{ - layer = 3.1 - }, /obj/structure/cable{ icon_state = "0-8" }, -/obj/machinery/door/poddoor/shutters{ +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/obj/machinery/door/poddoor{ dir = 4; id = "mudskipper_engine" }, /turf/open/floor/plating, /area/ship/engineering/engine) "MK" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/maintenance) +"Ne" = ( +/turf/closed/wall/rust, +/area/ship/crew) "Ni" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/turf_decal/industrial/warning, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/firedoor/border_only{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "Nj" = ( /obj/machinery/door/airlock/external{ @@ -1778,12 +1695,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 4 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, +/obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/tech, /area/ship/hallway/aft) "Nl" = ( @@ -1791,7 +1703,7 @@ dir = 4 }, /obj/machinery/light/floor, -/turf/open/floor/engine/hull/reinforced, +/turf/open/floor/engine/hull, /area/ship/cargo) "NJ" = ( /obj/effect/turf_decal/box, @@ -1813,52 +1725,50 @@ /obj/item/reagent_containers/food/drinks/waterbottle, /obj/item/reagent_containers/food/drinks/waterbottle, /obj/item/reagent_containers/food/drinks/waterbottle, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "1-6" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "NN" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "NU" = ( -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Oc" = ( /obj/item/paper_bin, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, -/turf/open/floor/plasteel/tech/grid, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/corner/opaque/bottlegreen/full, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "OB" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/bridge) "OD" = ( -/obj/structure/chair{ +/obj/machinery/airalarm/directional/east, +/obj/structure/chair/plastic{ dir = 8 }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) +"OR" = ( +/turf/closed/wall/r_wall, +/area/ship/crew) "Pr" = ( -/obj/machinery/door/airlock/grunge{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, /obj/machinery/door/firedoor/border_only{ dir = 8 }, @@ -1871,66 +1781,66 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock/public/glass{ + dir = 4; + name = "Canteen" + }, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "PO" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor/corner{ - dir = 8 - }, -/obj/effect/turf_decal/techfloor/corner, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "1-8" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/ship/hallway/central) "PR" = ( -/obj/structure/window/plasma/reinforced/plastitanium, /obj/structure/grille, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/poddoor/shutters{ id = "mudskipper_window" }, +/obj/structure/window/fulltile, /turf/open/floor/plating, /area/ship/hallway/aft) "PU" = ( -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Qp" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/hallway/aft) "Qt" = ( -/obj/structure/window/plasma/reinforced/plastitanium, /obj/structure/grille, /obj/machinery/atmospherics/pipe/layer_manifold, /obj/machinery/door/poddoor/shutters{ id = "mudskipper_window" }, +/obj/structure/window/fulltile, /turf/open/floor/plating, /area/ship/engineering/engine) "Qu" = ( /obj/machinery/autolathe/hacked, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "Qx" = ( /obj/effect/decal/cleanable/glass, -/obj/effect/turf_decal/techfloor/corner{ - dir = 8 - }, -/obj/effect/turf_decal/techfloor/corner, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-9" }, -/turf/open/floor/plasteel/dark, +/obj/structure/cable{ + icon_state = "2-5" + }, +/turf/open/floor/plasteel, /area/ship/hallway/central) "QF" = ( /obj/machinery/power/terminal{ @@ -1939,10 +1849,6 @@ /obj/structure/cable{ icon_state = "0-4" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "Rc" = ( @@ -1952,24 +1858,23 @@ }, /obj/machinery/button/door{ dir = 1; - pixel_x = 6; - pixel_y = -21; id = "mudskipper_window"; - name = "Window Shutters" + name = "Window Shutters"; + pixel_x = 6; + pixel_y = -21 }, /obj/machinery/light/small/directional/west{ - pixel_y = -6; - bulb_power = 0.6 + bulb_power = 0.6; + pixel_y = -6 + }, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters{ + dir = 8 }, /turf/open/floor/plasteel/dark, /area/ship/bridge) "Rl" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 8 - }, /obj/item/reagent_containers/food/condiment/saltshaker{ pixel_x = 10; pixel_y = 5 @@ -1979,11 +1884,13 @@ pixel_y = 2 }, /obj/item/paper/pamphlet{ + name = "Salvage And You"; pixel_x = -3; - pixel_y = 2; - name = "Salvage And You" + pixel_y = 2 }, -/turf/open/floor/wood/walnut, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "Rn" = ( /obj/machinery/door/firedoor/border_only, @@ -1995,15 +1902,16 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/door/airlock/grunge{ - name = "Utility Closet" +/obj/machinery/door/airlock{ + name = "Custodial Closet" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/maintenance) "Rv" = ( /obj/item/gps/mining{ - pixel_y = 6; - gpstag = "SCAV0" + gpstag = "SCAV0"; + pixel_y = 6 }, /obj/item/clipboard{ pixel_x = 5; @@ -2021,10 +1929,8 @@ pixel_y = 32 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/reinforced{ - color = "#c1b6a5" - }, -/turf/open/floor/plasteel/tech/grid, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "RR" = ( /obj/structure/tank_dispenser/oxygen, @@ -2035,19 +1941,14 @@ /obj/structure/filingcabinet/double, /obj/item/folder, /obj/machinery/light/small/directional/west{ - pixel_y = 6; - bulb_power = 0.6 + bulb_power = 0.6; + pixel_y = 6 }, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/dark, /area/ship/bridge) "So" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/turf_decal/industrial/warning, -/obj/machinery/door/airlock{ - name = "Crew Quarters" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/door/firedoor/border_only{ dir = 1 @@ -2057,7 +1958,11 @@ /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock{ + name = "Dormitory" + }, +/turf/open/floor/plasteel/dark, /area/ship/crew) "Sq" = ( /obj/structure/curtain, @@ -2070,10 +1975,6 @@ /turf/open/floor/plasteel/showroomfloor, /area/ship/crew/toilet) "ST" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/item/storage/cans/sixbeer, /obj/effect/spawner/lootdrop/donkpockets, /obj/structure/closet/secure_closet/freezer{ @@ -2082,17 +1983,18 @@ }, /obj/item/reagent_containers/food/snacks/meat/slab, /obj/item/reagent_containers/food/snacks/meat/slab, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/corner/opaque/neutral/half, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "Ti" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ dir = 4; name = "airlock waste injector" }, -/turf/open/floor/engine/hull/reinforced, +/turf/open/floor/engine/hull, /area/ship/external/dark) "Tn" = ( -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/structure/cable{ icon_state = "1-2" }, @@ -2105,19 +2007,10 @@ /obj/structure/cable{ icon_state = "2-4" }, +/obj/structure/catwalk/over/plated_catwalk/dark, /turf/open/floor/plating, /area/ship/engineering/engine) "TV" = ( -/obj/machinery/door/airlock/grunge{ - dir = 4; - name = "Cargo Bay" - }, -/obj/effect/turf_decal/industrial/traffic{ - dir = 4 - }, -/obj/effect/turf_decal/industrial/traffic{ - dir = 8 - }, /obj/machinery/door/firedoor/border_only{ dir = 4 }, @@ -2133,7 +2026,15 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "5-10" + }, +/obj/machinery/door/airlock/mining{ + dir = 8; + name = "Cargo Bay" + }, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/hallway/central) "Ud" = ( /obj/effect/turf_decal/box, @@ -2145,6 +2046,7 @@ pixel_y = -5 }, /obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/tech, /area/ship/engineering/engine) "Ui" = ( @@ -2152,8 +2054,11 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/plasteel/dark, /area/ship/bridge) +"Uo" = ( +/turf/closed/wall/r_wall/yesdiag, +/area/ship/crew/cryo) "UF" = ( /obj/machinery/door/airlock/engineering{ dir = 4; @@ -2165,12 +2070,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 8 }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, /obj/machinery/door/firedoor/border_only{ dir = 8 }, @@ -2180,7 +2079,8 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/turf/open/floor/plasteel/dark, /area/ship/bridge) "UL" = ( /obj/machinery/suit_storage_unit/inherit, @@ -2188,6 +2088,10 @@ /obj/machinery/light/directional/west, /obj/item/clothing/suit/space/engineer, /obj/item/clothing/head/helmet/space/light/engineer, +/obj/effect/turf_decal/borderfloor{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "UZ" = ( @@ -2197,16 +2101,17 @@ /obj/item/flashlight/lamp/green{ pixel_y = 4 }, -/turf/open/floor/wood/walnut, +/obj/structure/cable{ + icon_state = "5-6" + }, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "Vn" = ( /obj/machinery/vending/cigarette, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/wrapping, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, +/obj/effect/turf_decal/corner/opaque/neutral/half, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) "Vo" = ( @@ -2217,11 +2122,6 @@ /obj/structure/cable{ icon_state = "0-4" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 8 - }, /turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "Vy" = ( @@ -2230,38 +2130,23 @@ /obj/structure/curtain/bounty, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/dim/directional/north, -/turf/open/floor/wood/walnut, +/turf/open/floor/plasteel/grimy, /area/ship/crew) "VP" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor/corner{ - dir = 4 - }, -/obj/effect/turf_decal/techfloor/corner{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-10" }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/ship/hallway/central) "VW" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/turf/closed/wall, /area/ship/external/dark) +"Wk" = ( +/turf/closed/wall/rust, +/area/ship/maintenance) "Wm" = ( -/obj/machinery/door/airlock/grunge{ - dir = 4; - name = "Cryogenic Storage" - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/turf_decal/industrial/warning{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 4 }, @@ -2271,7 +2156,12 @@ /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/floor/plasteel/tech, +/obj/effect/turf_decal/industrial/warning/fulltile, +/obj/machinery/door/airlock{ + dir = 4; + name = "Cryo Room" + }, +/turf/open/floor/plasteel/dark, /area/ship/crew) "Wz" = ( /obj/structure/sink{ @@ -2286,7 +2176,7 @@ /obj/structure/window/reinforced/tinted/frosted{ dir = 8 }, -/turf/open/floor/plasteel/showroomfloor, +/turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "Xc" = ( /obj/machinery/blackbox_recorder, @@ -2294,35 +2184,46 @@ /obj/machinery/light/small/directional/north{ pixel_x = -6 }, +/obj/effect/turf_decal/box, /turf/open/floor/plasteel/telecomms_floor, /area/ship/bridge) "Xh" = ( /obj/structure/table/reinforced, -/obj/effect/turf_decal/techfloor, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable{ icon_state = "0-1" }, +/obj/effect/turf_decal/corner/opaque/neutral/three_quarters{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) "Xk" = ( -/obj/effect/turf_decal/industrial/outline/red, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/tech, +/obj/structure/cable{ + icon_state = "1-10" + }, +/obj/structure/cable{ + icon_state = "5-8" + }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, +/turf/open/floor/plasteel/patterned, /area/ship/cargo) "Xm" = ( -/obj/structure/window/plasma/reinforced/plastitanium, /obj/structure/grille, /obj/machinery/door/poddoor/shutters{ id = "mudskipper_window" }, +/obj/structure/window/fulltile, /turf/open/floor/plating, /area/ship/hallway/aft) +"XI" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/cargo) "XK" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer4{ dir = 1 @@ -2331,26 +2232,22 @@ dir = 10 }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "6-8" }, -/turf/open/floor/plasteel/dark, +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "XU" = ( -/obj/structure/chair{ +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/structure/chair/plastic{ dir = 1 }, -/obj/effect/turf_decal/siding/wood{ - color = "#543C30" - }, -/obj/effect/turf_decal/siding/wood{ - dir = 10; - color = "#543C30" - }, -/turf/open/floor/wood/walnut, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "Yc" = ( /obj/effect/turf_decal/box, -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/rack, /obj/item/gps/mining{ gpstag = "SCAV1" @@ -2368,16 +2265,19 @@ /obj/item/kitchen/knife/combat/survival, /obj/item/flashlight/seclite, /obj/item/flashlight/seclite, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Yd" = ( -/obj/structure/window/plasma/reinforced/plastitanium, /obj/structure/grille, /obj/machinery/door/poddoor/shutters{ id = "mudskipper_window" }, +/obj/structure/window/fulltile, /turf/open/floor/plating, /area/ship/crew) +"Yi" = ( +/turf/closed/wall/r_wall/yesdiag, +/area/ship/maintenance) "Yq" = ( /obj/effect/decal/cleanable/oil{ icon_state = "floor4" @@ -2387,45 +2287,40 @@ target_pressure = 1000 }, /obj/machinery/atmospherics/components/binary/volume_pump/layer2{ - name = "Scrubbers to External"; - dir = 1 + dir = 1; + name = "Scrubbers to External" }, /obj/structure/cable{ icon_state = "2-8" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel/dark, +/area/ship/engineering/engine) +"Yu" = ( +/turf/closed/wall/r_wall, /area/ship/engineering/engine) "Yv" = ( /obj/structure/closet/crate/bin, /obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor{ - dir = 1 - }, /obj/machinery/firealarm/directional/east{ pixel_y = -5 }, /obj/machinery/light/dim/directional/north, +/obj/effect/turf_decal/corner/opaque/neutral/half, /turf/open/floor/plasteel/dark, /area/ship/hallway/central) "YK" = ( -/obj/effect/turf_decal/industrial/warning{ - dir = 1 +/obj/structure/cable{ + icon_state = "2-9" }, -/obj/effect/turf_decal/industrial/warning, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/door/firedoor/border_only{ - dir = 1 +/obj/effect/turf_decal/corner/transparent/beige/full, +/obj/effect/turf_decal/corner/transparent/brown/diagonal, +/obj/structure/chair/handrail{ + dir = 8 }, -/turf/open/floor/plasteel/tech, +/turf/open/floor/plasteel, /area/ship/hallway/aft) "YL" = ( /obj/machinery/power/port_gen/pacman, -/obj/effect/turf_decal/techfloor{ - dir = 6 - }, /obj/structure/cable{ icon_state = "0-1" }, @@ -2435,7 +2330,6 @@ /area/ship/engineering/engine) "Zi" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/catwalk/over/plated_catwalk/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{ dir = 8 }, @@ -2443,39 +2337,33 @@ dir = 8 }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "1-2" }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "1-4" }, +/obj/structure/catwalk/over/plated_catwalk, /turf/open/floor/plating, /area/ship/cargo) +"Zx" = ( +/turf/closed/wall/r_wall/rust, +/area/ship/crew) "ZC" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#543C30"; - dir = 9 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2{ dir = 6 }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plasteel/grimy, +/turf/open/floor/carpet, /area/ship/crew) "ZJ" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/techfloor, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, /obj/machinery/airalarm/directional/south, -/turf/open/floor/plasteel/dark, +/obj/structure/chair/plastic{ + dir = 1 + }, +/turf/open/floor/plasteel, /area/ship/hallway/central) (1,1,1) = {" @@ -2490,7 +2378,7 @@ ag ag lj ag -ws +jz cs cs cs @@ -2501,16 +2389,16 @@ cs cs hX IU -ws -ws -bZ +Yu +Yu +MF zx -bZ +MF MF zx MF -ws -ws +xZ +Yu IU hX cs @@ -2520,7 +2408,7 @@ cs cs hX cs -ws +Yu kX QF en @@ -2529,7 +2417,7 @@ Vo qE ao yY -ws +Yu cs hX cs @@ -2548,7 +2436,7 @@ KA eu hY sI -ws +Yu IU hX hX @@ -2558,7 +2446,7 @@ cs hX cs cs -ws +xZ Ud Hk AN @@ -2567,7 +2455,7 @@ dw hr xU YL -ws +Yu cs cs hX @@ -2576,18 +2464,18 @@ cs (6,1,1) = {" hX IU -OB -OB +DA +DA OB UF OB +js +js OB -OB -OB -OB -Qp -Qp +js Qp +Ag +Ag Ti hX cs @@ -2595,7 +2483,7 @@ cs (7,1,1) = {" cs cs -OB +DA Xc ic ak @@ -2614,7 +2502,7 @@ cs (8,1,1) = {" cs cs -OB +DA Rv Oc Dp @@ -2633,18 +2521,18 @@ MB (9,1,1) = {" cs cs -OB +vP nM rr oC -OB +js dN sf qy OB JN CG -Qp +Ag IU cs cs @@ -2652,8 +2540,8 @@ cs (10,1,1) = {" hX IU -OB -OB +DA +DA OB oG OB @@ -2662,8 +2550,8 @@ Gk Gk OB Nj -Qp -Qp +yV +Ag IU hX cs @@ -2710,7 +2598,7 @@ cs hX cs cs -Qp +Ag sT vn Qp @@ -2719,7 +2607,7 @@ ar sa eL gT -Qp +Ag cs cs hX @@ -2728,9 +2616,9 @@ cs (14,1,1) = {" hX IU -Gq -Gq -Gq +OR +OR +Ne Gq Gq dc @@ -2738,8 +2626,8 @@ Pr dc oU oU -oU -oU +rG +rG IU hX cs @@ -2747,7 +2635,7 @@ cs (15,1,1) = {" cs cs -Gq +OR Vy UZ Ft @@ -2758,7 +2646,7 @@ Xh oU kB xp -oU +rG cs cs cs @@ -2777,7 +2665,7 @@ Qx mt Ch Wz -oU +lg cs cs cs @@ -2789,14 +2677,14 @@ Yd xo cB dQ -Gq +Ne DS Mi ZJ oU tK Sq -oU +lg IU hX cs @@ -2804,18 +2692,18 @@ cs (18,1,1) = {" hX cs -Gq +Zx Gq Wm Gq -Gq -dc +Ne +LY mC iY MK MK -MK -MK +Wk +Cv cs hX cs @@ -2827,14 +2715,14 @@ zX KU zW Lw -zX +ev Vn DC PO Rn wi pF -MK +Cv cs hX cs @@ -2842,18 +2730,18 @@ cs (20,1,1) = {" hX IU -zX +DU qN IP GI -zX +ev Yv LV xk MK cn KT -MK +Cv IU hX cs @@ -2861,18 +2749,18 @@ cs (21,1,1) = {" cs cs -zX -zX -zX -zX -zX +Uo +DU +ev +ev +ev dc TV dc MK MK -MK -MK +Cv +Yi cs cs cs @@ -2939,7 +2827,7 @@ cs hX IU mF -mF +XI uz gR Xk @@ -2984,7 +2872,7 @@ gB gB gB mS -mF +XI IU IU hX @@ -2996,7 +2884,7 @@ cs cs cs VW -hH +hn Nl kY ib @@ -3034,14 +2922,14 @@ cs cs cs cs -hH -hH +hn +hn cs cs cs cs hH -hH +hn cs cs cs @@ -3059,7 +2947,7 @@ cs cs cs cs -hH +hn cs cs cs diff --git a/_maps/shuttles/independent/independent_shetland.dmm b/_maps/shuttles/independent/independent_shetland.dmm index 0481bd2506fa..4fb22e45c7c2 100644 --- a/_maps/shuttles/independent/independent_shetland.dmm +++ b/_maps/shuttles/independent/independent_shetland.dmm @@ -131,12 +131,18 @@ dir = 4 }, /obj/item/radio/intercom/directional/south, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel/dark, /area/ship/engineering) "bm" = ( /obj/effect/turf_decal/industrial/warning{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/port) "bv" = ( @@ -169,6 +175,7 @@ dir = 4 }, /obj/structure/catwalk/over/plated_catwalk, +/obj/structure/chair/handrail, /turf/open/floor/plating, /area/ship/hallway/fore) "bD" = ( @@ -244,7 +251,7 @@ /obj/machinery/door/firedoor/border_only{ dir = 1 }, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/crew/canteen) "cD" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -336,6 +343,9 @@ /obj/structure/cable{ icon_state = "5-9" }, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "cR" = ( @@ -422,6 +432,7 @@ pixel_x = -20; pixel_y = 5 }, +/obj/effect/turf_decal/industrial/warning, /turf/open/floor/plating, /area/ship/engineering/electrical) "dT" = ( @@ -461,6 +472,7 @@ /obj/effect/decal/cleanable/cobweb, /obj/item/trash/candy, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/cockroach, /turf/open/floor/plating, /area/ship/engineering/electrical) "en" = ( @@ -475,6 +487,7 @@ /obj/machinery/door/firedoor/border_only{ dir = 8 }, +/obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/dark, /area/ship/bridge) "es" = ( @@ -512,7 +525,7 @@ "ez" = ( /obj/effect/landmark/start/shaft_miner, /obj/machinery/computer/helm/viewscreen/directional/east, -/turf/open/floor/plasteel/patterned/cargo_one, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "eC" = ( /obj/machinery/suit_storage_unit/inherit/industrial, @@ -700,6 +713,9 @@ dir = 9 }, /obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel, /area/ship/hallway/starboard) "gc" = ( @@ -764,6 +780,9 @@ "gt" = ( /obj/machinery/light/directional/south, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/fore) "gF" = ( @@ -838,7 +857,6 @@ /area/ship/hallway/fore) "hp" = ( /obj/structure/table, -/obj/machinery/computer/cryopod/directional/west, /obj/machinery/newscaster/directional/south, /obj/item/cigbutt{ pixel_x = -10; @@ -846,6 +864,7 @@ }, /obj/item/cigbutt, /obj/item/reagent_containers/food/snacks/chips, +/obj/machinery/computer/cryopod/retro/directional/west, /turf/open/floor/plasteel/tech/grid, /area/ship/crew/cryo) "hv" = ( @@ -983,6 +1002,7 @@ dir = 8 }, /obj/structure/extinguisher_cabinet/directional/north, +/obj/structure/chair/handrail, /turf/open/floor/plasteel, /area/ship/hallway/port) "is" = ( @@ -1076,6 +1096,9 @@ /obj/effect/turf_decal/corner/transparent/beige/full, /obj/effect/turf_decal/corner/transparent/brown/diagonal, /obj/item/radio/intercom/directional/east, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel, /area/ship/crew/canteen) "jj" = ( @@ -1127,6 +1150,7 @@ /obj/effect/turf_decal/corner/opaque/bottlegreen/full, /obj/machinery/firealarm/directional/west, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/cockroach, /turf/open/floor/plasteel/dark, /area/ship/security) "jC" = ( @@ -1182,7 +1206,7 @@ /obj/structure/cable{ icon_state = "0-1" }, -/turf/open/floor/engine/hull/interior, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "jY" = ( /turf/closed/wall, @@ -1233,6 +1257,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 }, +/obj/structure/chair/handrail, /turf/open/floor/plating, /area/ship/hallway/starboard) "ki" = ( @@ -1241,6 +1266,9 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel, /area/ship/hallway/port) "kt" = ( @@ -1590,6 +1618,9 @@ pixel_x = -25 }, /obj/machinery/atmospherics/components/unary/vent_pump/siphon/layer4, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/port) "of" = ( @@ -1724,6 +1755,9 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/fore) "ph" = ( @@ -1757,6 +1791,7 @@ dir = 1 }, /obj/effect/decal/cleanable/vomit/old, +/mob/living/simple_animal/hostile/cockroach, /turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "pI" = ( @@ -1841,6 +1876,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/layer2{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/starboard) "qa" = ( @@ -1850,7 +1888,8 @@ "qb" = ( /obj/structure/crate_shelf, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "qg" = ( /obj/structure/closet/secure_closet/engineering_personal{ @@ -1939,6 +1978,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel, /area/ship/hallway/central) "qM" = ( @@ -2196,7 +2238,10 @@ /obj/structure/cable{ icon_state = "2-9" }, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/borderfloor{ + dir = 9 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "su" = ( /obj/structure/disposalpipe/segment, @@ -2420,6 +2465,9 @@ pixel_y = 5 }, /obj/machinery/atmospherics/pipe/simple/dark/visible/layer1, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "uM" = ( @@ -2429,6 +2477,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/siphon/layer4{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/starboard) "uO" = ( @@ -2452,6 +2503,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair/handrail, /turf/open/floor/plasteel, /area/ship/hallway/starboard) "va" = ( @@ -2530,6 +2582,12 @@ }, /turf/open/floor/plasteel/dark, /area/ship/hallway/fore) +"vL" = ( +/obj/structure/chair/handrail{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ship/hallway/central) "vN" = ( /obj/structure/catwalk/over/plated_catwalk/dark, /obj/structure/cable/yellow{ @@ -2561,6 +2619,9 @@ "vV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, /obj/item/kirbyplants/fullysynthetic, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, /turf/open/floor/carpet/blue, /area/ship/bridge) "vX" = ( @@ -2689,6 +2750,9 @@ dir = 4; id = "amogusthrusters" }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plating, /area/ship/maintenance/starboard) "wU" = ( @@ -2927,6 +2991,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 }, +/obj/structure/chair/handrail, /turf/open/floor/plating, /area/ship/hallway/central) "yP" = ( @@ -2964,6 +3029,10 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/random{ + pixel_x = -32; + pixel_y = 0 + }, /turf/open/floor/plasteel/grimy, /area/ship/security) "yY" = ( @@ -3107,7 +3176,8 @@ /obj/effect/turf_decal/box, /obj/item/tank/internals/oxygen/red, /obj/item/radio/intercom/directional/east, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/borderfloor, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "Ab" = ( /obj/structure/catwalk/over/plated_catwalk/dark, @@ -3156,7 +3226,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer4, -/turf/open/floor/plating, +/turf/open/floor/plasteel/dark, /area/ship/crew/canteen) "Ax" = ( /obj/structure/table/wood, @@ -3346,6 +3416,9 @@ "CF" = ( /obj/machinery/light/small/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/layer2, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/port) "CH" = ( @@ -3414,7 +3487,10 @@ /obj/item/pickaxe, /obj/effect/turf_decal/box, /obj/machinery/light/small/directional/east, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/borderfloor{ + dir = 1 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "Dm" = ( /obj/machinery/cryopod{ @@ -3546,6 +3622,7 @@ }, /obj/item/radio/intercom/directional/north, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair/handrail, /turf/open/floor/plasteel/dark, /area/ship/engineering/atmospherics) "EA" = ( @@ -3631,6 +3708,9 @@ /area/ship/crew/janitor) "ER" = ( /obj/effect/turf_decal/industrial/warning, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel/tech/techmaint, /area/ship/hallway/starboard) "EX" = ( @@ -3643,6 +3723,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/structure/chair/handrail, /turf/open/floor/plasteel, /area/ship/hallway/central) "FE" = ( @@ -3672,7 +3753,7 @@ id = "amogusdoors"; name = "Cargo Bay Blast Door" }, -/turf/open/floor/engine/hull/interior, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "Gg" = ( /obj/machinery/light/dim/directional/south, @@ -3699,7 +3780,10 @@ /obj/item/clothing/gloves/color/black, /obj/item/clothing/head/hardhat/mining, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/borderfloor{ + dir = 10 + }, +/turf/open/floor/plasteel/tech/grid, /area/ship/cargo) "Gt" = ( /obj/effect/turf_decal/corner/opaque/neutral/three_quarters{ @@ -3711,6 +3795,7 @@ /obj/structure/sign/warning/vacuum/external{ pixel_y = 24 }, +/obj/structure/chair/handrail, /turf/open/floor/plasteel/dark, /area/ship/hallway/port) "Gw" = ( @@ -3973,6 +4058,7 @@ /obj/machinery/power/terminal{ dir = 1 }, +/obj/effect/turf_decal/industrial/warning, /turf/open/floor/plating, /area/ship/engineering/electrical) "IE" = ( @@ -3982,6 +4068,9 @@ /obj/structure/sign/warning/vacuum/external{ pixel_y = -21 }, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/starboard) "IJ" = ( @@ -4116,6 +4205,9 @@ /obj/machinery/atmospherics/pipe/simple/dark/visible/layer1{ dir = 9 }, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/aft) "JQ" = ( @@ -4194,6 +4286,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 }, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, /turf/open/floor/plating, /area/ship/hallway/central) "Kq" = ( @@ -4260,6 +4355,17 @@ /obj/effect/decal/cleanable/oil, /turf/open/floor/engine/vacuum, /area/ship/engineering/engine) +"Li" = ( +/obj/structure/bed, +/obj/structure/curtain/bounty, +/obj/item/bedsheet/dorms, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/random{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/ship/crew/dorm) "Ll" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -4319,6 +4425,9 @@ dir = 4; id = "amogusthrusters" }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plating, /area/ship/maintenance/port) "Lx" = ( @@ -4437,6 +4546,9 @@ /obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/dark, /area/ship/hallway/port) +"Mf" = ( +/turf/open/floor/plasteel/patterned, +/area/ship/cargo) "Mk" = ( /obj/structure/table/wood, /obj/structure/bedsheetbin, @@ -4444,6 +4556,13 @@ /obj/machinery/newscaster/directional/east, /turf/open/floor/plasteel/grimy, /area/ship/crew/dorm) +"Ml" = ( +/obj/effect/turf_decal/industrial/warning, +/obj/structure/chair/handrail{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/hallway/starboard) "Mr" = ( /obj/structure/window/reinforced/fulltile, /obj/structure/grille, @@ -4531,9 +4650,6 @@ }, /turf/open/floor/plasteel, /area/ship/hallway/central) -"MV" = ( -/turf/open/floor/plasteel/patterned, -/area/ship/cargo) "Na" = ( /turf/closed/wall/rust, /area/ship/crew/canteen) @@ -4548,13 +4664,17 @@ "Ne" = ( /obj/structure/crate_shelf, /obj/machinery/firealarm/directional/north, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Ni" = ( /obj/structure/bed, /obj/structure/curtain/bounty, /obj/item/bedsheet/dorms, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/grimy, /area/ship/crew/dorm) "Nl" = ( @@ -4613,6 +4733,7 @@ /obj/structure/cable{ icon_state = "4-8" }, +/mob/living/simple_animal/hostile/cockroach, /turf/open/floor/plating, /area/ship/engineering/engine) "NR" = ( @@ -4870,6 +4991,9 @@ dir = 4; id = "amogusthrusters" }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plating, /area/ship/maintenance/port) "PR" = ( @@ -4952,6 +5076,15 @@ }, /turf/open/floor/plating, /area/ship/hallway/fore) +"Qu" = ( +/obj/effect/turf_decal/industrial/warning{ + dir = 1 + }, +/obj/structure/chair/handrail{ + dir = 8 + }, +/turf/open/floor/plasteel/tech/techmaint, +/area/ship/hallway/port) "Qy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2{ dir = 4 @@ -5026,6 +5159,9 @@ dir = 4; id = "amogusthrusters" }, +/obj/effect/turf_decal/industrial/warning{ + dir = 4 + }, /turf/open/floor/plating, /area/ship/maintenance/starboard) "Ri" = ( @@ -5087,6 +5223,9 @@ }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden/layer2, /obj/structure/catwalk/over/plated_catwalk, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plating, /area/ship/hallway/port) "Ry" = ( @@ -5292,7 +5431,7 @@ /obj/structure/cable{ icon_state = "0-4" }, -/turf/open/floor/plasteel/patterned/cargo_one, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Tk" = ( /obj/structure/cable{ @@ -5318,7 +5457,7 @@ /obj/structure/cable{ icon_state = "2-4" }, -/turf/open/floor/plasteel/patterned/cargo_one, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "TO" = ( /obj/machinery/firealarm/directional/south, @@ -5358,6 +5497,7 @@ /obj/machinery/door/firedoor/border_only{ dir = 8 }, +/obj/effect/turf_decal/industrial/warning/fulltile, /turf/open/floor/plasteel/dark, /area/ship/bridge) "TX" = ( @@ -5377,6 +5517,9 @@ /obj/effect/turf_decal/corner/transparent/beige/full, /obj/effect/turf_decal/corner/transparent/brown/diagonal, /obj/machinery/light/directional/west, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel, /area/ship/crew/canteen) "Ug" = ( @@ -5421,7 +5564,7 @@ /turf/open/floor/plating, /area/ship/hallway/aft) "UJ" = ( -/turf/open/floor/plasteel/patterned/cargo_one, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "UT" = ( /obj/machinery/recharger, @@ -5495,6 +5638,7 @@ }, /obj/machinery/firealarm/directional/north, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/structure/chair/handrail, /turf/open/floor/plasteel/patterned, /area/ship/crew/cryo) "VN" = ( @@ -5532,6 +5676,9 @@ /area/ship/engineering/engine) "VS" = ( /obj/machinery/light/directional/south, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel, /area/ship/hallway/fore) "VV" = ( @@ -5556,7 +5703,8 @@ /obj/structure/cable{ icon_state = "1-6" }, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "We" = ( /turf/closed/wall/r_wall/rust/yesdiag, @@ -5585,7 +5733,8 @@ /obj/structure/crate_shelf, /obj/machinery/light/small/directional/west, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/patterned/cargo_one, +/obj/effect/turf_decal/box, +/turf/open/floor/plasteel/patterned/grid, /area/ship/cargo) "Wq" = ( /obj/structure/grille, @@ -5609,7 +5758,7 @@ /obj/structure/cable{ icon_state = "0-1" }, -/turf/open/floor/engine/hull/interior, +/turf/open/floor/plasteel/patterned/ridged, /area/ship/cargo) "Ws" = ( /obj/effect/turf_decal/corner/transparent/beige/full, @@ -5632,6 +5781,9 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 4 }, +/obj/structure/chair/handrail{ + dir = 4 + }, /turf/open/floor/plasteel/patterned, /area/ship/crew/toilet) "WB" = ( @@ -5650,6 +5802,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 1 }, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel/patterned, /area/ship/crew/cryo) "WG" = ( @@ -5662,6 +5817,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer2, /obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/industrial/warning, /turf/open/floor/plating, /area/ship/engineering/electrical) "WM" = ( @@ -5684,6 +5840,9 @@ /area/ship/bridge) "Xg" = ( /obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/chair/handrail{ + dir = 1 + }, /turf/open/floor/plasteel/dark, /area/ship/hallway/fore) "Xh" = ( @@ -5741,6 +5900,9 @@ dir = 8 }, /obj/structure/extinguisher_cabinet/directional/east, +/obj/structure/chair/handrail{ + dir = 8 + }, /turf/open/floor/plasteel/dark, /area/ship/engineering/engine) "XJ" = ( @@ -5749,6 +5911,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer2{ dir = 8 }, +/obj/structure/chair/handrail, /turf/open/floor/plasteel, /area/ship/hallway/central) "XK" = ( @@ -5950,6 +6113,10 @@ dir = 8 }, /obj/structure/curtain, +/obj/structure/sign/poster/random{ + pixel_x = -32; + pixel_y = 0 + }, /turf/open/floor/plasteel/white, /area/ship/medical) "ZJ" = ( @@ -5958,8 +6125,8 @@ }, /obj/structure/curtain, /obj/item/soap, -/obj/effect/turf_decal/corner_techfloor_grid{ - dir = 1 +/obj/effect/turf_decal/steeldecal/steel_decals10{ + dir = 9 }, /turf/open/floor/plasteel/freezer, /area/ship/crew/toilet) @@ -6483,7 +6650,7 @@ fz "} (18,1,1) = {" BL -bm +Qu CF XY we @@ -6505,7 +6672,7 @@ sk RP rJ pY -ER +Ml iG OU "} @@ -6640,7 +6807,7 @@ Gy ND jY Kn -ZV +vL rr fW fW @@ -6808,7 +6975,7 @@ aI aI aI iz -ZV +vL rr sX su @@ -6849,7 +7016,7 @@ OU ao Ok uh -Ni +Li mJ mJ mJ @@ -6922,7 +7089,7 @@ gq wQ MT pl -MV +Mf xZ qO CH From 73086a9b375aa31f5d32f72074a5bf1d0c49446a Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 02:08:42 -0500 Subject: [PATCH 49/61] Automatic changelog generation for PR #3377 [ci skip] --- html/changelogs/AutoChangeLog-pr-3377.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3377.yml diff --git a/html/changelogs/AutoChangeLog-pr-3377.yml b/html/changelogs/AutoChangeLog-pr-3377.yml new file mode 100644 index 000000000000..26fbe6b2eec3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3377.yml @@ -0,0 +1,6 @@ +author: Apogee-dev +changes: + - {balance: Changed decoration on Miskilamo ships to look similar to each other} + - {balance: reduced Kilo starting funds to 1500} + - {bugfix: fixed wires on Mudskipper} +delete-after: true From 643f8fb337b380e9af6f10c47f298941f6f89c78 Mon Sep 17 00:00:00 2001 From: HelmCrab <90987989+Thera-Pissed@users.noreply.github.com> Date: Mon, 23 Sep 2024 00:29:17 -0500 Subject: [PATCH 50/61] removes did_fire variable (#3415) ## About The Pull Request removes did_fire variable that does nothing but throw an error ## Why It's Good For The Game mildly annoying ## Changelog :cl: del: unused did_fire var /:cl: --- code/modules/projectiles/gun.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index f97dc5a5ce86..b59a1530a209 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -984,7 +984,6 @@ human_holder = src for(var/obj/item/gun/at_risk in get_all_contents()) var/chance_to_fire = GUN_NO_SAFETY_MALFUNCTION_CHANCE_MEDIUM - var/did_fire = FALSE if(human_holder) // gun is less likely to go off in a holster if(at_risk == human_holder.s_store) From b36487786b53cab3c8942e0f7d4488813e4d3cb9 Mon Sep 17 00:00:00 2001 From: Changelogs Date: Mon, 23 Sep 2024 02:22:05 -0500 Subject: [PATCH 51/61] Automatic changelog generation for PR #3415 [ci skip] --- html/changelogs/AutoChangeLog-pr-3415.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-3415.yml diff --git a/html/changelogs/AutoChangeLog-pr-3415.yml b/html/changelogs/AutoChangeLog-pr-3415.yml new file mode 100644 index 000000000000..05558e44aa1c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-3415.yml @@ -0,0 +1,4 @@ +author: Thera-Pissed +changes: + - {rscdel: unused did_fire var} +delete-after: true From f213d6c6068ceea9a832e7fbf02aa91a32cd0296 Mon Sep 17 00:00:00 2001 From: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> Date: Mon, 23 Sep 2024 11:48:43 -0500 Subject: [PATCH 52/61] Melee Code Cleanup (#2932) ## About The Pull Request Mostly cleaning up paths and de parenting some items like kitchen knife, clay more, or null rod, sprite and code organization. adds some stuff for scrap weapons and a cargo machete but nothing player facing besides a minor buff to scrap armour (rare drop from hostile rn). I'll work on implementing them in a second pr ## Why It's Good For The Game Makes it easier to work on melee code by making everything a lot clearer ## Changelog :cl: code: bunch of code organization related to melee refactor: cleaned up a bunch of melee items to have better inheritance and paths /:cl: --------- Signed-off-by: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com> --- .../BeachRuins/beach_ancient_ruin.dmm | 2 +- .../BeachRuins/beach_crashed_engineer.dmm | 2 +- .../BeachRuins/beach_fishing_hut.dmm | 9 +- .../BeachRuins/beach_float_resort.dmm | 2 +- .../BeachRuins/beach_ocean_town.dmm | 4 +- .../BeachRuins/beach_pirate_crash.dmm | 4 +- .../IceRuins/icemoon_crashed_holemaker.dmm | 2 +- .../icemoon_underground_abandoned_village.dmm | 4 +- .../icemoon_underground_brazillianlab.dmm | 28 +- .../JungleRuins/jungle_paradise.dmm | 2 +- .../JungleRuins/jungle_syndicate.dmm | 4 +- .../lavaland_abandonedlisteningpost.dmm | 2 +- .../LavaRuins/lavaland_crashed_starwalker.dmm | 2 +- .../lavaland_surface_biodome_winter.dmm | 2 +- .../lavaland_surface_buried_shrine.dmm | 4 +- .../lavaland_surface_elephant_graveyard.dmm | 2 +- .../lavaland_surface_lava_canyon.dmm | 10 +- .../lavaland_surface_wrecked_factory.dmm | 12 +- _maps/RandomRuins/ReebeRuins/reebe_arena.dmm | 50 +- .../ReebeRuins/reebe_decayed_sm.dmm | 38 +- .../whitesands_surface_camp_combination.dmm | 4 +- _maps/RandomRuins/SpaceRuins/spacemall.dmm | 6 +- .../WasteRuins/wasteplanet_pandora.dmm | 18 +- _maps/map_files/generic/CentCom.dmm | 39 +- _maps/outpost/nanotrasen_asteroid.dmm | 6 +- .../independent/independent_beluga.dmm | 2 +- .../independent/independent_dwayne.dmm | 2 +- .../independent/independent_junker.dmm | 4 +- .../shuttles/independent/independent_kilo.dmm | 2 +- .../independent/independent_lagoon.dmm | 7 +- .../independent/independent_mudskipper.dmm | 4 +- .../independent/independent_rigger.dmm | 2 +- .../independent/independent_schmiedeberg.dmm | 6 +- .../independent/independent_shetland.dmm | 8 +- .../independent/independent_sunskipper.dmm | 6 +- .../independent/independent_tranquility.dmm | 2 +- _maps/shuttles/inteq/inteq_colossus.dmm | 8 +- _maps/shuttles/inteq/inteq_talos.dmm | 6 +- _maps/shuttles/inteq/inteq_valor.dmm | 4 +- _maps/shuttles/inteq/inteq_vaquero.dmm | 6 +- .../shuttles/nanotrasen/nanotrasen_heron.dmm | 12 +- _maps/shuttles/nanotrasen/nanotrasen_meta.dmm | 2 +- .../shuttles/nanotrasen/nanotrasen_mimir.dmm | 12 +- .../shuttles/nanotrasen/nanotrasen_osprey.dmm | 2 +- .../shuttles/nanotrasen/nanotrasen_ranger.dmm | 6 +- .../nanotrasen/nanotrasen_skipper.dmm | 4 +- _maps/shuttles/pgf/pgf_crying_sun.dmm | 16 +- _maps/shuttles/pirate/pirate_libertatia.dmm | 6 +- _maps/shuttles/pirate/pirate_tortuga.dmm | 12 +- _maps/shuttles/roumain/srm_elder.dmm | 16 +- _maps/shuttles/solgov/solgov_chronicle.dmm | 4 +- _maps/shuttles/solgov/solgov_inkwell.dmm | 18 +- _maps/shuttles/solgov/solgov_paracelsus.dmm | 6 +- .../subshuttles/independent_sugarcube.dmm | 2 +- .../syndicate/syndicate_cybersun_kansatsu.dmm | 12 +- .../shuttles/syndicate/syndicate_panacea.dmm | 2 +- .../syndicate/syndicate_twinkleshine.dmm | 10 +- _maps/templates/shelter_2.dmm | 2 +- check_regex.yaml | 2 +- code/__DEFINES/inventory.dm | 2 +- code/_globalvars/lists/maintenance_loot.dm | 4 +- code/controllers/subsystem/traumas.dm | 11 +- code/datums/action.dm | 38 - code/datums/actions/ninja.dm | 4 +- .../components/crafting/recipes/misc.dm | 2 +- .../components/crafting/recipes/weapon.dm | 8 +- code/datums/components/riding.dm | 2 +- .../components/storage/concrete/pockets.dm | 4 +- code/datums/martial/sleeping_carp.dm | 93 -- code/game/gamemodes/clown_ops/clown_ops.dm | 2 +- code/game/gamemodes/nuclear/nuclear.dm | 4 +- code/game/machinery/cryopod.dm | 1 - code/game/machinery/doors/airlock.dm | 4 +- code/game/machinery/doors/door.dm | 2 +- .../game/objects/effects/spawners/lootdrop.dm | 6 +- code/game/objects/items.dm | 7 +- code/game/objects/items/blueprints.dm | 8 +- code/game/objects/items/clown_items.dm | 4 +- code/game/objects/items/cosmetics.dm | 4 +- code/game/objects/items/courtroom.dm | 4 +- code/game/objects/items/dna_injector.dm | 2 +- code/game/objects/items/door_seal.dm | 2 +- code/game/objects/items/gift.dm | 4 +- code/game/objects/items/handcuffs.dm | 6 +- code/game/objects/items/holy_weapons.dm | 522 ---------- .../objects/items/implants/implantcase.dm | 1 - code/game/objects/items/implants/implanter.dm | 2 +- .../game/objects/items/implants/implantpad.dm | 2 +- code/game/objects/items/kitchen.dm | 227 ----- .../objects/items/{ => melee}/chainsaw.dm | 1 + .../objects/items/{ => melee}/dualsaber.dm | 2 +- code/game/objects/items/melee/energy.dm | 3 +- .../items/{ => melee}/energyhalberd.dm | 3 +- .../game/objects/items/{ => melee}/fireaxe.dm | 50 +- code/game/objects/items/melee/knife.dm | 208 ++++ code/game/objects/items/melee/misc.dm | 927 +++--------------- .../objects/items/{ => melee}/powerfist.dm | 0 code/game/objects/items/melee/spear.dm | 137 +++ .../objects/items/{ => melee}/stunbaton.dm | 232 ++++- code/game/objects/items/melee/sword.dm | 539 ++++++++++ .../objects/items/{ => melee}/teleprod.dm | 0 code/game/objects/items/melee/weaponry.dm | 119 +++ code/game/objects/items/miscellaneous.dm | 296 +++++- code/game/objects/items/paint.dm | 1 - code/game/objects/items/pitchfork.dm | 102 -- code/game/objects/items/religion.dm | 12 - code/game/objects/items/singularityhammer.dm | 145 --- code/game/objects/items/spear.dm | 283 ------ code/game/objects/items/stacks/medical.dm | 2 +- .../game/objects/items/stacks/sheets/glass.dm | 2 +- .../objects/items/stacks/sheets/mineral.dm | 1 - .../items/stacks/sheets/sheet_types.dm | 3 +- code/game/objects/items/storage/belt.dm | 26 +- .../game/objects/items/storage/uplink_kits.dm | 27 +- code/game/objects/items/tanks/jetpack.dm | 2 +- code/game/objects/items/toys.dm | 6 +- code/game/objects/items/weaponry.dm | 759 -------------- .../crates_lockers/closets/job_closets.dm | 1 - code/game/objects/structures/fireaxe.dm | 6 +- code/game/objects/structures/girders.dm | 7 +- code/game/objects/structures/headpike.dm | 6 +- code/game/objects/structures/manned_turret.dm | 2 +- code/game/objects/structures/tables_racks.dm | 1 - code/game/objects/structures/watercloset.dm | 2 +- code/game/turfs/closed/wall/mineral_walls.dm | 2 +- .../blood_contract/blood_contract.dm | 2 +- code/modules/antagonists/cult/blood_magic.dm | 50 +- code/modules/antagonists/cult/cult.dm | 6 +- code/modules/antagonists/cult/cult_items.dm | 373 +------ .../antagonists/cult/cult_structures.dm | 7 - code/modules/antagonists/cult/ritual.dm | 155 --- code/modules/antagonists/cult/runes.dm | 17 - code/modules/antagonists/devil/devil.dm | 7 - .../nukeop/equipment/nuclearbomb.dm | 14 - .../antagonists/wizard/equipment/artefact.dm | 4 +- .../antagonists/wizard/equipment/spellbook.dm | 10 - .../awaymissions/mission_code/snowdin.dm | 6 +- .../blackmarket/blackmarket_items/weapons.dm | 4 +- code/modules/cargo/bounties/assistant.dm | 4 +- code/modules/cargo/bounties/mining.dm | 4 +- code/modules/cargo/exports/lavaland.dm | 4 - code/modules/cargo/exports/weapons.dm | 2 +- code/modules/cargo/packs/costumes_toys.dm | 2 +- code/modules/cargo/packs/sec_supply.dm | 19 +- .../clothing/outfits/ert/frontiersmen_ert.dm | 10 +- .../modules/clothing/outfits/ert/indie_ert.dm | 2 +- .../modules/clothing/outfits/ert/inteq_ert.dm | 2 +- .../clothing/outfits/ert/minutemen_ert.dm | 2 +- .../clothing/outfits/ert/nanotrasen_ert.dm | 6 +- .../clothing/outfits/ert/syndicate_ert.dm | 6 +- .../clothing/outfits/factions/frontiersmen.dm | 4 +- .../clothing/outfits/factions/independent.dm | 10 +- .../clothing/outfits/factions/nanotrasen.dm | 8 +- .../clothing/outfits/factions/solgov.dm | 4 +- .../clothing/outfits/factions/syndicate.dm | 16 +- code/modules/clothing/outfits/standard.dm | 1 - .../clothing/spacesuits/miscellaneous.dm | 8 +- code/modules/clothing/suits/armor.dm | 9 +- code/modules/clothing/suits/bio.dm | 2 +- code/modules/clothing/suits/chaplainsuits.dm | 4 +- code/modules/clothing/suits/cloaks.dm | 4 +- code/modules/clothing/suits/jobs.dm | 2 +- code/modules/clothing/suits/miscellaneous.dm | 2 +- code/modules/clothing/under/accessories.dm | 2 - code/modules/events/wizard/curseditems.dm | 60 -- code/modules/flufftext/Hallucination.dm | 4 +- .../food_and_drinks/drinks/drinks/bottle.dm | 2 +- .../recipes/tablecraft/recipes_misc.dm | 2 +- code/modules/holodeck/items.dm | 4 +- code/modules/hydroponics/grown/nettle.dm | 2 +- code/modules/hydroponics/grown/root.dm | 2 +- code/modules/hydroponics/hydroitemdefines.dm | 4 +- code/modules/jobs/job_types/chaplain.dm | 14 - code/modules/jobs/job_types/shaft_miner.dm | 2 +- code/modules/library/lib_items.dm | 2 +- code/modules/library/lib_machines.dm | 1 - code/modules/mapping/mapping_helpers.dm | 2 +- code/modules/mining/abandoned_crates.dm | 7 +- .../modules/mining/equipment/explorer_gear.dm | 34 + code/modules/mining/equipment/survival_pod.dm | 7 +- code/modules/mining/lavaland/ash_flora.dm | 2 +- .../mining/lavaland/necropolis_chests.dm | 103 +- code/modules/mining/machine_vending.dm | 2 +- .../mob/living/simple_animal/bot/cleanbot.dm | 2 +- .../mob/living/simple_animal/hostile/bear.dm | 2 +- .../hostile/human/frontiersman.dm | 2 +- .../simple_animal/hostile/human/skeleton.dm | 2 +- .../simple_animal/hostile/human/survivors.dm | 8 +- .../hostile/megafauna/codename_claw.dm | 2 +- .../hostile/megafauna/cult_templar.dm | 25 +- .../hostile/mining_mobs/hivelord_outfits.dm | 6 +- code/modules/mod/modules/modules_ninja.dm | 2 +- code/modules/ninja/energy_katana.dm | 25 +- code/modules/ninja/outfit.dm | 2 +- code/modules/ninja/suit/suit.dm | 2 +- code/modules/photography/_pictures.dm | 2 +- code/modules/photography/camera/camera.dm | 1 - code/modules/photography/camera/film.dm | 1 - code/modules/photography/photos/album.dm | 2 +- code/modules/photography/photos/photo.dm | 2 +- code/modules/power/supermatter/supermatter.dm | 2 +- .../reagents/reagent_containers/spray.dm | 2 +- .../research/designs/autolathe_designs.dm | 6 +- code/modules/research/designs/misc_designs.dm | 2 +- .../xenobiology/crossbreeding/_weapons.dm | 29 - .../xenobiology/crossbreeding/burning.dm | 8 - .../ruins/objects_and_mobs/sin_ruins.dm | 31 - code/modules/ruins/rockplanet_ruin_code.dm | 2 +- code/modules/shuttle/emergency.dm | 2 +- code/modules/spells/spell_types/conjure.dm | 2 +- code/modules/spells/spell_types/devil.dm | 22 - code/modules/spells/spell_types/godhand.dm | 2 +- code/modules/surgery/advanced/lobotomy.dm | 2 +- code/modules/surgery/amputation.dm | 4 +- code/modules/surgery/coronary_bypass.dm | 2 +- .../surgery/experimental_dissection.dm | 2 +- code/modules/surgery/gastrectomy.dm | 2 +- code/modules/surgery/hepatectomy.dm | 2 +- code/modules/surgery/lobectomy.dm | 2 +- code/modules/surgery/mechanic_steps.dm | 4 +- code/modules/surgery/organic_steps.dm | 10 +- code/modules/surgery/organs/augments_arms.dm | 4 +- code/modules/surgery/plastic_surgery.dm | 2 +- code/modules/surgery/tools.dm | 2 +- code/modules/uplink/uplink_items.dm | 2 +- code/modules/vehicles/scooter.dm | 8 +- code/modules/vending/drinnerware.dm | 6 +- code/modules/vending/games.dm | 4 +- code/modules/vending/sustenance.dm | 2 +- code/modules/vending/wardrobes.dm | 3 +- icons/mob/inhands/weapons/swords_lefthand.dmi | Bin 28291 -> 30216 bytes .../mob/inhands/weapons/swords_righthand.dmi | Bin 31883 -> 31326 bytes icons/obj/improvised.dmi | Bin 856 -> 1315 bytes icons/obj/items.dmi | Bin 0 -> 61369 bytes icons/obj/items_and_weapons.dmi | Bin 114846 -> 0 bytes icons/obj/mysterybox.dmi | Bin 12483 -> 0 bytes icons/obj/transforming_energy.dmi | Bin 12888 -> 0 bytes icons/obj/weapon/axe.dmi | Bin 0 -> 3273 bytes icons/obj/weapon/baton.dmi | Bin 0 -> 5584 bytes icons/obj/weapon/blunt.dmi | Bin 0 -> 4469 bytes icons/obj/weapon/energy.dmi | Bin 0 -> 13302 bytes icons/obj/{item => weapon}/knife.dmi | Bin icons/obj/weapon/misc.dmi | Bin 0 -> 2364 bytes icons/obj/weapon/spear.dmi | Bin 0 -> 2045 bytes icons/obj/weapon/sword.dmi | Bin 0 -> 15674 bytes shiptest.dme | 25 +- tools/UpdatePaths/Scripts/2776_cultbegone.txt | 12 +- tools/UpdatePaths/Scripts/2932_melee.txt | 17 + 248 files changed, 2208 insertions(+), 4527 deletions(-) delete mode 100644 code/game/objects/items/holy_weapons.dm rename code/game/objects/items/{ => melee}/chainsaw.dm (98%) rename code/game/objects/items/{ => melee}/dualsaber.dm (99%) rename code/game/objects/items/{ => melee}/energyhalberd.dm (98%) rename code/game/objects/items/{ => melee}/fireaxe.dm (72%) create mode 100644 code/game/objects/items/melee/knife.dm rename code/game/objects/items/{ => melee}/powerfist.dm (100%) create mode 100644 code/game/objects/items/melee/spear.dm rename code/game/objects/items/{ => melee}/stunbaton.dm (59%) create mode 100644 code/game/objects/items/melee/sword.dm rename code/game/objects/items/{ => melee}/teleprod.dm (100%) create mode 100644 code/game/objects/items/melee/weaponry.dm delete mode 100644 code/game/objects/items/pitchfork.dm delete mode 100644 code/game/objects/items/singularityhammer.dm delete mode 100644 code/game/objects/items/spear.dm delete mode 100644 code/game/objects/items/weaponry.dm delete mode 100644 code/modules/antagonists/cult/ritual.dm delete mode 100644 code/modules/events/wizard/curseditems.dm create mode 100644 icons/obj/items.dmi delete mode 100644 icons/obj/items_and_weapons.dmi delete mode 100644 icons/obj/mysterybox.dmi delete mode 100644 icons/obj/transforming_energy.dmi create mode 100644 icons/obj/weapon/axe.dmi create mode 100644 icons/obj/weapon/baton.dmi create mode 100644 icons/obj/weapon/blunt.dmi create mode 100644 icons/obj/weapon/energy.dmi rename icons/obj/{item => weapon}/knife.dmi (100%) create mode 100644 icons/obj/weapon/misc.dmi create mode 100644 icons/obj/weapon/spear.dmi create mode 100644 icons/obj/weapon/sword.dmi create mode 100644 tools/UpdatePaths/Scripts/2932_melee.txt diff --git a/_maps/RandomRuins/BeachRuins/beach_ancient_ruin.dmm b/_maps/RandomRuins/BeachRuins/beach_ancient_ruin.dmm index 77df46175bc6..cfe522aeb415 100644 --- a/_maps/RandomRuins/BeachRuins/beach_ancient_ruin.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_ancient_ruin.dmm @@ -1458,7 +1458,7 @@ /turf/open/floor/plasteel/mono, /area/ruin/beach/complex) "wV" = ( -/obj/item/kitchen/knife/hunting{ +/obj/item/melee/knife/hunting{ name = "machete"; pixel_y = 8; desc = "Space vines HATE this one simple trick!" diff --git a/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm b/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm index 998e43b9085a..971fde63cb03 100644 --- a/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_crashed_engineer.dmm @@ -1232,7 +1232,7 @@ /obj/machinery/atmospherics/components/unary/passive_vent{ dir = 1 }, -/obj/item/fireaxe{ +/obj/item/melee/axe/fire{ name = "rusty fire axe" }, /turf/open/floor/engine/airless, diff --git a/_maps/RandomRuins/BeachRuins/beach_fishing_hut.dmm b/_maps/RandomRuins/BeachRuins/beach_fishing_hut.dmm index ab5a6bb58d84..ed6c353d26d7 100644 --- a/_maps/RandomRuins/BeachRuins/beach_fishing_hut.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_fishing_hut.dmm @@ -204,7 +204,7 @@ /obj/structure/closet/cabinet, /obj/item/pneumatic_cannon/speargun, /obj/item/storage/backpack/magspear_quiver, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, /turf/open/floor/wood, /area/ruin/beach) "kr" = ( @@ -529,7 +529,7 @@ dir = 6 }, /obj/structure/table/reinforced, -/obj/item/kitchen/knife/butcher, +/obj/item/melee/knife/butcher, /turf/open/floor/plastic, /area/ruin/beach) "wg" = ( @@ -1032,7 +1032,7 @@ "Os" = ( /obj/structure/table/wood/reinforced, /obj/effect/turf_decal/corner/opaque/pink/diagonal, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = 12; pixel_x = 9 }, @@ -1052,7 +1052,7 @@ /obj/structure/closet/cabinet, /obj/item/pneumatic_cannon/speargun, /obj/item/storage/backpack/magspear_quiver, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, /obj/machinery/light/small/directional/east{ light_color = "#d8b1b1" }, @@ -1244,7 +1244,6 @@ /turf/open/water/beach/deep, /area/overmap_encounter/planetoid/beachplanet/explored) "Vt" = ( -/obj/item/nullrod/carp, /obj/structure/bed/dogbed, /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood/walnut, diff --git a/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm b/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm index 29ad64707d84..bf43f3ee9f94 100644 --- a/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_float_resort.dmm @@ -193,7 +193,7 @@ /turf/open/water/beach, /area/overmap_encounter/planetoid/beachplanet/explored) "eZ" = ( -/obj/item/melee/roastingstick, +/obj/item/roastingstick, /turf/open/floor/wood{ light_range = 2 }, diff --git a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm index a751740c08a2..d1a3ff05cf04 100644 --- a/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_ocean_town.dmm @@ -1628,7 +1628,7 @@ /obj/effect/turf_decal/weather/sand{ dir = 5 }, -/obj/item/melee/roastingstick, +/obj/item/roastingstick, /obj/item/reagent_containers/food/snacks/sausage, /turf/open/floor/plating/dirt{ light_range = 2 @@ -2304,7 +2304,7 @@ /obj/effect/turf_decal/weather/sand{ dir = 8 }, -/obj/item/melee/roastingstick, +/obj/item/roastingstick, /turf/open/floor/plating/dirt{ light_range = 2 }, diff --git a/_maps/RandomRuins/BeachRuins/beach_pirate_crash.dmm b/_maps/RandomRuins/BeachRuins/beach_pirate_crash.dmm index 2b2479ffe0fb..67ac69292603 100644 --- a/_maps/RandomRuins/BeachRuins/beach_pirate_crash.dmm +++ b/_maps/RandomRuins/BeachRuins/beach_pirate_crash.dmm @@ -16,7 +16,7 @@ /area/ruin/beach/piratecrash/storage) "af" = ( /obj/structure/table/wood, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/corner/opaque/black/diagonal, /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -37,7 +37,7 @@ }, /obj/structure/table/wood, /obj/item/reagent_containers/food/snacks/fishfry, -/obj/item/kitchen/knife/shiv{ +/obj/item/melee/knife/shiv{ pixel_x = -6; pixel_y = 5 }, diff --git a/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm b/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm index 82c054f8fabf..707be4573d13 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_crashed_holemaker.dmm @@ -887,7 +887,7 @@ /area/ruin/unpowered/crashed_holemaker) "oC" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /turf/open/floor/wood{ icon_state = "wood-broken7" }, diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm index 06d6a8e9fd27..d26f9458a943 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm @@ -332,7 +332,7 @@ /obj/item/restraints/legcuffs/beartrap, /obj/item/reagent_containers/glass/bottle/venom, /obj/item/reagent_containers/glass/bottle/curare, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/effect/decal/cleanable/dirt, /obj/item/reagent_containers/food/snacks/meat/slab/human, /obj/item/reagent_containers/food/snacks/meat/slab/human, @@ -384,7 +384,7 @@ /obj/effect/decal/cleanable/blood/gibs/torso, /obj/structure/safe, /obj/item/ammo_box/a12g/slug, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_brazillianlab.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_brazillianlab.dmm index 4954a9a5aaf4..d560e98b2f20 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_brazillianlab.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_brazillianlab.dmm @@ -367,23 +367,6 @@ initial_gas_mix = "ICEMOON_ATMOS" }, /area/ruin/unpowered) -"sf" = ( -/obj/structure/table/wood, -/obj/item/nullrod{ - block_chance = 50; - desc = "This massive chart appears to be the layout of a SolGov outpost. It's covered in marks, scribbles in a language you don't recognize, and several stains. It's unusually sturdy."; - icon_state = "blueprints"; - item_state = "blueprints"; - lefthand_file = 'icons/mob/inhands/items_lefthand.dmi'; - name = "facility blueprints"; - pixel_y = 10; - righthand_file = 'icons/mob/inhands/items_righthand.dmi'; - w_class = 5 - }, -/turf/open/floor/wood{ - initial_gas_mix = "ICEMOON_ATMOS" - }, -/area/ruin/unpowered) "si" = ( /obj/structure/flora/rock/jungle, /obj/structure/flora/grass/jungle/b, @@ -1248,13 +1231,6 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/ruin/unpowered) -"Zs" = ( -/obj/structure/table/wood, -/obj/item/banhammer, -/turf/open/floor/wood{ - initial_gas_mix = "ICEMOON_ATMOS" - }, -/area/ruin/unpowered) (1,1,1) = {" aW @@ -2252,7 +2228,7 @@ Hb aW WH jy -Zs +ib WH WH WH @@ -2284,7 +2260,7 @@ Hb aW Br ib -sf +ib WH WH fB diff --git a/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm b/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm index 86e2ac4e5477..39d17f372342 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_paradise.dmm @@ -798,7 +798,7 @@ /area/ruin/jungle/paradise/construction) "eY" = ( /obj/structure/table/reinforced, -/obj/item/kitchen/knife/butcher, +/obj/item/melee/knife/butcher, /obj/item/clothing/gloves/butchering, /turf/open/floor/pod/dark, /area/overmap_encounter/planetoid/cave/explored) diff --git a/_maps/RandomRuins/JungleRuins/jungle_syndicate.dmm b/_maps/RandomRuins/JungleRuins/jungle_syndicate.dmm index 3d00a493af05..2eba13537777 100644 --- a/_maps/RandomRuins/JungleRuins/jungle_syndicate.dmm +++ b/_maps/RandomRuins/JungleRuins/jungle_syndicate.dmm @@ -308,7 +308,7 @@ /turf/open/floor/plating/rust, /area/ruin/jungle/syndifort/jerry) "ik" = ( -/obj/item/kitchen/knife/combat{ +/obj/item/melee/knife/combat{ name = "bushcutter"; force = 18 }, @@ -627,7 +627,7 @@ /area/ruin/jungle/syndifort/jerry) "ud" = ( /obj/structure/table, -/obj/item/kitchen/knife/combat{ +/obj/item/melee/knife/combat{ name = "bushcutter"; force = 18 }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_abandonedlisteningpost.dmm b/_maps/RandomRuins/LavaRuins/lavaland_abandonedlisteningpost.dmm index 444f4ec52509..483580cf70dd 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_abandonedlisteningpost.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_abandonedlisteningpost.dmm @@ -1324,7 +1324,7 @@ /obj/item/cutting_board{ anchored = 1 }, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/siding/thinplating/dark, /turf/open/floor/plasteel/patterned/cargo_one, /area/ruin/unpowered/listening_post/canteen) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm b/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm index 935a852fac76..f9be78af5b89 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_crashed_starwalker.dmm @@ -637,7 +637,7 @@ /obj/structure/table, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/east, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_x = 7; pixel_y = 10 }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm index 739e427fc008..a53bebe1ff01 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm @@ -1072,7 +1072,7 @@ "qj" = ( /obj/effect/turf_decal/corner/opaque/solgovblue/diagonal, /obj/structure/table/wood, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /turf/open/floor/plasteel/white, /area/ruin/unpowered/winter_biodome/living_quarters) "qr" = ( diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_buried_shrine.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_buried_shrine.dmm index 9937cbeb46bb..17094a2d2bff 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_buried_shrine.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_buried_shrine.dmm @@ -1807,7 +1807,7 @@ /area/ruin/unpowered/buried_shrine) "UF" = ( /obj/structure/stone_tile/block, -/obj/item/claymore/bone{ +/obj/item/melee/sword/bone{ pixel_x = 8; pixel_y = 21 }, @@ -1823,7 +1823,7 @@ /area/ruin/unpowered/buried_shrine) "VG" = ( /obj/structure/table/wood, -/obj/item/kitchen/knife/combat/bone, +/obj/item/melee/knife/bone, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered/buried_shrine) "Wd" = ( diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm index 9babc1631c8f..911b6cf6f4e5 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm @@ -254,7 +254,7 @@ /turf/open/floor/plating/asteroid/basalt/wasteland, /area/ruin/unpowered/elephant_graveyard) "bk" = ( -/obj/item/kitchen/knife/combat/bone, +/obj/item/melee/knife/bone, /obj/item/organ/tongue, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating/asteroid/basalt/wasteland, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm index 3efc7429d803..a5547c39e8fd 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_lava_canyon.dmm @@ -345,7 +345,7 @@ /obj/effect/mob_spawn/human/corpse{ mob_species = /datum/species/lizard/ashwalker }, -/obj/item/spear/bonespear{ +/obj/item/melee/spear/bone{ pixel_x = 10; pixel_y = -2 }, @@ -611,7 +611,7 @@ /turf/open/floor/plating/asteroid/basalt/lava_land_surface/lit, /area/overmap_encounter/planetoid/lava/explored) "pX" = ( -/obj/item/claymore/bone{ +/obj/item/melee/sword/bone{ pixel_x = -12; pixel_y = 11 }, @@ -1101,7 +1101,7 @@ pixel_y = -11; pixel_x = -7 }, -/obj/item/kitchen/knife/combat/bone{ +/obj/item/melee/knife/bone{ pixel_x = 10; pixel_y = -10 }, @@ -1474,7 +1474,7 @@ /turf/closed/mineral/random/volcanic, /area/overmap_encounter/planetoid/cave/explored) "PP" = ( -/obj/item/kitchen/knife/combat/bone{ +/obj/item/melee/knife/bone{ pixel_x = -2; pixel_y = 4 }, @@ -1706,7 +1706,7 @@ pixel_x = -2; pixel_y = 1 }, -/obj/item/spear/bonespear{ +/obj/item/melee/spear/bone{ pixel_x = 8; pixel_y = 14 }, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm index 2c84843cf776..c4a3a0397508 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_wrecked_factory.dmm @@ -1098,7 +1098,7 @@ /obj/effect/decal/cleanable/blood{ icon_state = "drip1" }, -/obj/item/spear, +/obj/item/melee/spear, /obj/item/bodypart/l_arm, /turf/open/floor/plasteel/dark, /area/ruin/lavaland/factory/dorms) @@ -2691,8 +2691,8 @@ /turf/open/floor/carpet/blue, /area/ruin/lavaland/factory/manager_office) "zl" = ( -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /obj/structure/closet/crate/secure/gear, /turf/open/floor/plasteel/mono, /area/ruin/lavaland/factory/warehouse) @@ -2982,7 +2982,7 @@ dir = 1 }, /obj/machinery/light/directional/west, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, /obj/item/clothing/suit/hooded/cloak/goliath, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plasteel/white, @@ -3828,7 +3828,7 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/item/kitchen/knife/shiv, +/obj/item/melee/knife/shiv, /turf/open/floor/plasteel/white, /area/ruin/lavaland/factory/adminstrative) "LX" = ( @@ -4302,7 +4302,7 @@ "QM" = ( /obj/structure/table/wood, /obj/item/cutting_board, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /turf/open/floor/wood, /area/ruin/lavaland/factory/adminstrative) "QR" = ( diff --git a/_maps/RandomRuins/ReebeRuins/reebe_arena.dmm b/_maps/RandomRuins/ReebeRuins/reebe_arena.dmm index 448690c0e77a..6e7e5131b640 100644 --- a/_maps/RandomRuins/ReebeRuins/reebe_arena.dmm +++ b/_maps/RandomRuins/ReebeRuins/reebe_arena.dmm @@ -45,10 +45,6 @@ "pm" = ( /turf/open/floor/bronze, /area/ruin/reebe) -"pW" = ( -/obj/item/nullrod/spear, -/turf/open/floor/bronze, -/area/ruin/reebe) "qj" = ( /mob/living/simple_animal/hostile/asteroid/goliath/beast/ancient/crystal, /obj/structure/fans/tiny/invisible, @@ -56,7 +52,6 @@ /area/ruin/reebe) "qC" = ( /obj/structure/chair/comfy/shuttle/bronze, -/obj/item/nullrod/spear, /turf/open/floor/bronze, /area/ruin/reebe) "vz" = ( @@ -91,7 +86,6 @@ /area/ruin/reebe) "Ag" = ( /obj/structure/table/bronze, -/obj/item/nullrod/spear, /turf/open/floor/bronze, /area/ruin/reebe) "AT" = ( @@ -220,17 +214,13 @@ /turf/open/floor/bronze, /area/ruin/reebe) "Ux" = ( -/obj/item/spear, +/obj/item/melee/spear, /obj/item/grenade/c4, /turf/open/floor/bronze, /area/ruin/reebe) "UU" = ( /turf/open/chasm/reebe_void, /area/ruin/reebe) -"VT" = ( -/obj/structure/table/bronze, -/turf/open/floor/bronze, -/area/ruin/reebe) "Xr" = ( /obj/machinery/door/airlock/bronze/seethru{ name = "Summoning Chamber" @@ -2127,7 +2117,7 @@ Cj Cj Fz pm -VT +Ag Ib Cj FD @@ -2186,7 +2176,7 @@ IC IC Cj Cj -VT +Ag Fz pm pm @@ -2251,7 +2241,7 @@ la la pm pm -pW +pm pm xy pm @@ -2505,7 +2495,7 @@ pm pm pm Cj -VT +Ag pm pm pm @@ -2559,7 +2549,7 @@ pm Cj pm pm -pW +pm JC pm JC @@ -2567,7 +2557,7 @@ pm JC pm De -VT +Ag pm pm pm @@ -2815,7 +2805,7 @@ pm JC pm De -VT +Ag pm pm pm @@ -2877,7 +2867,7 @@ pm pm pm Cj -VT +Ag pm pm pm @@ -2996,11 +2986,11 @@ JC pm pm Rc -VT +Ag Cj Ag -VT -VT +Ag +Ag pm pm pm @@ -3053,7 +3043,7 @@ IC IC IC De -VT +Ag pm pm pm @@ -3127,7 +3117,7 @@ pm pm pm pm -VT +Ag Cj pm pm @@ -3178,7 +3168,7 @@ IC IC Cj Cj -VT +Ag hO pm hO @@ -3188,7 +3178,7 @@ pm pm pm pm -VT +Ag Cj Cj pm @@ -3242,14 +3232,14 @@ IC Cj Cj Pn -VT +Ag Pn -VT +Ag Cj -VT +Ag pm pm -VT +Ag Cj Cj pm diff --git a/_maps/RandomRuins/ReebeRuins/reebe_decayed_sm.dmm b/_maps/RandomRuins/ReebeRuins/reebe_decayed_sm.dmm index c768b54fe0ab..e1b0f36f687c 100644 --- a/_maps/RandomRuins/ReebeRuins/reebe_decayed_sm.dmm +++ b/_maps/RandomRuins/ReebeRuins/reebe_decayed_sm.dmm @@ -7,7 +7,6 @@ /turf/open/floor/bronze, /area/ruin/reebe) "d" = ( -/obj/item/nullrod/spear, /turf/open/floor/bronze, /area/ruin/reebe) "e" = ( @@ -57,9 +56,6 @@ "O" = ( /turf/closed/wall/mineral/bronze, /area/ruin/reebe) -"Y" = ( -/turf/open/floor/bronze, -/area/ruin/reebe) "Z" = ( /obj/effect/decal/remains/human, /turf/open/floor/bronze, @@ -78,8 +74,8 @@ a a "} (2,1,1) = {" -Y -Y +d +d C C x @@ -102,19 +98,19 @@ a o "} (4,1,1) = {" -Y +d O e C C O -Y +d O -Y +d E "} (5,1,1) = {" -Y +d B e C @@ -122,23 +118,23 @@ M v Z v -Y +d a "} (6,1,1) = {" -Y +d O C e e O -Y +d O -Y +d a "} (7,1,1) = {" -Y +d C y C @@ -154,19 +150,19 @@ E C C C -Y -Y -Y +d +d +d E a a "} (9,1,1) = {" -Y -Y +d +d E E -Y +d E a a diff --git a/_maps/RandomRuins/SandRuins/whitesands_surface_camp_combination.dmm b/_maps/RandomRuins/SandRuins/whitesands_surface_camp_combination.dmm index 485303fb66c3..d6238dcf237b 100644 --- a/_maps/RandomRuins/SandRuins/whitesands_surface_camp_combination.dmm +++ b/_maps/RandomRuins/SandRuins/whitesands_surface_camp_combination.dmm @@ -223,7 +223,7 @@ /area/overmap_encounter/planetoid/sand/explored) "iL" = ( /obj/structure/statue/snow/snowman, -/obj/item/kitchen/knife/shiv/carrot, +/obj/item/melee/knife/shiv/carrot, /turf/open/floor/plating/asteroid/snow/lit/whitesands, /area/overmap_encounter/planetoid/sand/explored) "iQ" = ( @@ -652,7 +652,7 @@ /turf/open/floor/wood, /area/ruin) "yZ" = ( -/obj/item/spear, +/obj/item/melee/spear, /obj/effect/mob_spawn/human/corpse/damaged/whitesands/survivor, /turf/open/floor/plating/asteroid/whitesands/dried{ light_range = 2 diff --git a/_maps/RandomRuins/SpaceRuins/spacemall.dmm b/_maps/RandomRuins/SpaceRuins/spacemall.dmm index eb48bcae1626..251b40fb4443 100644 --- a/_maps/RandomRuins/SpaceRuins/spacemall.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacemall.dmm @@ -1106,7 +1106,7 @@ "el" = ( /obj/structure/table/glass, /obj/item/toy/plush/lizardplushie, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /turf/open/floor/light, /area/ruin/space/has_grav/spacemall/shop2) "eo" = ( @@ -2138,7 +2138,7 @@ /area/ruin/space/has_grav/spacemall) "ip" = ( /obj/effect/turf_decal/corner/transparent/black/diagonal, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/structure/table, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/spacemall/dorms) @@ -13759,7 +13759,7 @@ /obj/effect/turf_decal/siding/wideplating/dark{ dir = 1 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_x = 10 }, /obj/structure/disposalpipe/segment{ diff --git a/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm b/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm index f422e4ef1eb8..934b648c0bd6 100644 --- a/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm +++ b/_maps/RandomRuins/WasteRuins/wasteplanet_pandora.dmm @@ -70,7 +70,7 @@ /area/ruin/wasteplanet) "df" = ( /obj/structure/table/wood, -/obj/item/kitchen/knife/combat/bone, +/obj/item/melee/knife/bone, /obj/item/flashlight/flare/torch, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) @@ -107,7 +107,7 @@ /area/ruin/wasteplanet) "ge" = ( /obj/structure/table/wood, -/obj/item/kitchen/knife/combat/bone{ +/obj/item/melee/knife/bone{ pixel_x = -20 }, /obj/item/reagent_containers/food/snacks/salad/edensalad, @@ -120,7 +120,7 @@ "gm" = ( /obj/structure/closet/cabinet, /obj/item/clothing/suit/hooded/cloak/bone, -/obj/item/claymore/bone, +/obj/item/melee/sword/bone, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) "gr" = ( @@ -423,7 +423,7 @@ /area/ruin/wasteplanet) "qo" = ( /obj/structure/closet/cabinet, -/obj/item/spear/bonespear, +/obj/item/melee/spear/bone, /obj/item/clothing/suit/armor/witchhunter, /obj/item/reagent_containers/food/snacks/grown/berries/death, /turf/open/floor/wood/waste, @@ -491,7 +491,7 @@ /area/ruin/wasteplanet) "sV" = ( /obj/structure/closet/cabinet, -/obj/item/claymore/bone, +/obj/item/melee/sword/bone, /obj/item/clothing/suit/armor/witchhunter, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) @@ -578,7 +578,7 @@ /area/ruin/wasteplanet) "xk" = ( /obj/structure/table/wood, -/obj/item/spear/bonespear, +/obj/item/melee/spear/bone, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) "xu" = ( @@ -813,7 +813,7 @@ /turf/open/indestructible/hierophant/two/waste, /area/ruin/wasteplanet) "FP" = ( -/obj/item/kitchen/knife/combat/bone{ +/obj/item/melee/knife/bone{ pixel_x = 15 }, /turf/open/floor/wood/waste, @@ -960,7 +960,7 @@ "Li" = ( /obj/structure/closet/cabinet, /obj/item/clothing/suit/armor/bone, -/obj/item/fireaxe/boneaxe, +/obj/item/melee/axe/bone, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) "Lj" = ( @@ -1233,7 +1233,7 @@ /area/ruin/wasteplanet) "RT" = ( /obj/structure/table/wood, -/obj/item/spear/bonespear, +/obj/item/melee/spear/bone, /obj/item/stack/sheet/sinew, /turf/open/floor/wood/waste, /area/ruin/wasteplanet) diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index fdfae529865d..e25bceb1dd44 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -1686,7 +1686,7 @@ /area/centcom/evac) "atW" = ( /obj/structure/rack, -/obj/item/nullrod/claymore{ +/obj/item/melee/sword/claymore{ damtype = "stamina"; force = 30 }, @@ -1908,7 +1908,7 @@ /area/wizard_station) "avt" = ( /obj/structure/rack, -/obj/item/nullrod/claymore/katana{ +/obj/item/melee/sword/katana{ damtype = "stamina"; force = 30 }, @@ -2467,7 +2467,7 @@ /turf/open/floor/plasteel, /area/wizard_station) "azO" = ( -/obj/item/kitchen/knife/ritual, +/obj/item/melee/knife/kitchen, /turf/open/floor/plasteel, /area/wizard_station) "azP" = ( @@ -3309,7 +3309,6 @@ /area/tdome/tdomeobserve) "aHq" = ( /obj/structure/closet/cardboard, -/obj/item/banhammer, /obj/effect/turf_decal/industrial/warning, /turf/open/floor/plasteel, /area/wizard_station) @@ -4051,7 +4050,7 @@ "aMx" = ( /obj/machinery/light/directional/east, /obj/structure/rack, -/obj/item/nullrod/claymore/saber/red{ +/obj/item/melee/sword/claymore{ damtype = "stamina"; force = 30 }, @@ -4979,7 +4978,7 @@ "aRS" = ( /obj/machinery/light/directional/west, /obj/structure/rack, -/obj/item/nullrod/claymore/glowing{ +/obj/item/melee/sword/claymore{ damtype = "stamina"; force = 30 }, @@ -5284,15 +5283,6 @@ /obj/item/reagent_containers/glass/beaker, /turf/open/floor/plasteel, /area/centcom/holding) -"aUh" = ( -/obj/machinery/light/directional/east, -/obj/structure/rack, -/obj/item/nullrod/claymore/darkblade{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) "aUj" = ( /obj/item/coin/antagtoken, /obj/effect/turf_decal/industrial/outline/yellow, @@ -5493,7 +5483,7 @@ /area/wizard_station) "aVF" = ( /obj/structure/rack, -/obj/item/nullrod/scythe/vibro{ +/obj/item/scythe{ damtype = "stamina"; force = 30 }, @@ -5963,15 +5953,6 @@ /obj/effect/turf_decal/industrial/outline/yellow, /turf/open/floor/plasteel, /area/centcom/control) -"aYV" = ( -/obj/machinery/light/directional/west, -/obj/structure/rack, -/obj/item/nullrod/claymore/saber{ - damtype = "stamina"; - force = 30 - }, -/turf/open/floor/wood, -/area/centcom/holding) "aYW" = ( /obj/effect/landmark/thunderdome/one, /obj/effect/turf_decal/industrial/warning{ @@ -10982,7 +10963,7 @@ /obj/item/reagent_containers/food/condiment/peppermill{ pixel_x = -8 }, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/corner/transparent/neutral{ dir = 1 }, @@ -15510,7 +15491,7 @@ pixel_x = 7; pixel_y = -2 }, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = -5; pixel_x = -5 }, @@ -43310,7 +43291,7 @@ aCT aCT aNT avt -aYV +aRS aOU aOU aRS @@ -45883,7 +45864,7 @@ avt aMx aQg aTb -aUh +aMx atW aWO aaa diff --git a/_maps/outpost/nanotrasen_asteroid.dmm b/_maps/outpost/nanotrasen_asteroid.dmm index 08f1322e7c60..cc6986e98b8d 100644 --- a/_maps/outpost/nanotrasen_asteroid.dmm +++ b/_maps/outpost/nanotrasen_asteroid.dmm @@ -1774,7 +1774,7 @@ /area/outpost/crew/cryo) "gF" = ( /obj/structure/table/reinforced, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = 6; pixel_x = 9 }, @@ -11369,7 +11369,7 @@ "NP" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/table/reinforced, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_x = -6; pixel_y = 2 }, @@ -13063,7 +13063,7 @@ pixel_x = -4; pixel_y = 6 }, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = 6; pixel_x = 9 }, diff --git a/_maps/shuttles/independent/independent_beluga.dmm b/_maps/shuttles/independent/independent_beluga.dmm index c8ef49a3b35e..6158b206d67c 100644 --- a/_maps/shuttles/independent/independent_beluga.dmm +++ b/_maps/shuttles/independent/independent_beluga.dmm @@ -2742,7 +2742,7 @@ pixel_y = 1 }, /obj/structure/table, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_x = 11; pixel_y = 7 }, diff --git a/_maps/shuttles/independent/independent_dwayne.dmm b/_maps/shuttles/independent/independent_dwayne.dmm index 533709f94692..a0383e507ec1 100644 --- a/_maps/shuttles/independent/independent_dwayne.dmm +++ b/_maps/shuttles/independent/independent_dwayne.dmm @@ -1477,7 +1477,7 @@ /obj/item/cutting_board{ anchored = 1 }, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable/cyan{ icon_state = "0-5" diff --git a/_maps/shuttles/independent/independent_junker.dmm b/_maps/shuttles/independent/independent_junker.dmm index 136e6e6e17fb..7819d04ec1c2 100644 --- a/_maps/shuttles/independent/independent_junker.dmm +++ b/_maps/shuttles/independent/independent_junker.dmm @@ -91,7 +91,7 @@ pixel_x = 4; pixel_y = 9 }, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = -3; pixel_x = 10 }, @@ -1790,7 +1790,7 @@ /obj/structure/cable{ icon_state = "5-10" }, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_y = 1; pixel_x = 8 }, diff --git a/_maps/shuttles/independent/independent_kilo.dmm b/_maps/shuttles/independent/independent_kilo.dmm index 4577678b7f21..0dad29cb9f9b 100644 --- a/_maps/shuttles/independent/independent_kilo.dmm +++ b/_maps/shuttles/independent/independent_kilo.dmm @@ -1765,7 +1765,7 @@ /obj/item/cutting_board{ anchored = 1 }, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/corner/transparent/beige/full, /obj/effect/turf_decal/corner/transparent/brown/diagonal, /turf/open/floor/plasteel, diff --git a/_maps/shuttles/independent/independent_lagoon.dmm b/_maps/shuttles/independent/independent_lagoon.dmm index 248ee9240efd..16f3ad2cbfa1 100644 --- a/_maps/shuttles/independent/independent_lagoon.dmm +++ b/_maps/shuttles/independent/independent_lagoon.dmm @@ -1361,7 +1361,7 @@ "iR" = ( /obj/structure/table/reinforced, /obj/item/storage/bag/tray, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/structure/cable{ icon_state = "2-4" }, @@ -4751,7 +4751,7 @@ /obj/structure/table/wood, /obj/item/paper_bin, /obj/item/pen/fountain, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /obj/item/pen, /turf/open/floor/carpet/black, /area/ship/crew/library) @@ -5617,7 +5617,6 @@ /area/ship/hallway/starboard) "Mz" = ( /obj/structure/table/wood, -/obj/item/nullrod, /turf/open/floor/wood, /area/ship/crew/chapel) "MD" = ( @@ -6724,7 +6723,7 @@ pixel_x = 4; pixel_y = 9 }, -/obj/item/melee/skateboard/hoverboard{ +/obj/item/skateboard/hoverboard{ pixel_x = -4 }, /turf/open/floor/eighties, diff --git a/_maps/shuttles/independent/independent_mudskipper.dmm b/_maps/shuttles/independent/independent_mudskipper.dmm index 64275521c4e0..ac2be582662a 100644 --- a/_maps/shuttles/independent/independent_mudskipper.dmm +++ b/_maps/shuttles/independent/independent_mudskipper.dmm @@ -2261,8 +2261,8 @@ /obj/item/gps/mining{ gpstag = "SCAV1" }, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /obj/item/flashlight/seclite, /obj/item/flashlight/seclite, /turf/open/floor/plasteel/patterned/grid, diff --git a/_maps/shuttles/independent/independent_rigger.dmm b/_maps/shuttles/independent/independent_rigger.dmm index 15265d30016b..da493fcdf548 100644 --- a/_maps/shuttles/independent/independent_rigger.dmm +++ b/_maps/shuttles/independent/independent_rigger.dmm @@ -1179,7 +1179,7 @@ "pv" = ( /obj/effect/turf_decal/corner/opaque/yellow/diagonal, /obj/structure/table, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /turf/open/floor/plasteel/white, /area/ship/crew/canteen) "pD" = ( diff --git a/_maps/shuttles/independent/independent_schmiedeberg.dmm b/_maps/shuttles/independent/independent_schmiedeberg.dmm index ce7b407a4731..891e3bd2ce9a 100644 --- a/_maps/shuttles/independent/independent_schmiedeberg.dmm +++ b/_maps/shuttles/independent/independent_schmiedeberg.dmm @@ -69,7 +69,7 @@ /obj/structure/table, /obj/item/storage/bag/tray, /obj/item/reagent_containers/food/condiment/enzyme, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/reagent_containers/food/condiment/saltshaker{ pixel_x = -5; pixel_y = 10 @@ -2063,8 +2063,8 @@ /obj/item/flashlight/seclite, /obj/item/flashlight/seclite, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /obj/structure/sign/poster/retro/lasergun_new{ pixel_x = -32 }, diff --git a/_maps/shuttles/independent/independent_shetland.dmm b/_maps/shuttles/independent/independent_shetland.dmm index 4fb22e45c7c2..256e9bc75c88 100644 --- a/_maps/shuttles/independent/independent_shetland.dmm +++ b/_maps/shuttles/independent/independent_shetland.dmm @@ -84,7 +84,7 @@ "aR" = ( /obj/effect/turf_decal/corner/opaque/neutral/half, /obj/item/cutting_board, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/structure/table/reinforced, /turf/open/floor/plasteel/dark, /area/ship/crew/canteen) @@ -1010,7 +1010,7 @@ /obj/effect/turf_decal/corner/transparent/beige/full, /obj/effect/turf_decal/corner/transparent/brown/diagonal, /obj/item/toy/redbutton, -/obj/item/kitchen/knife/plastic, +/obj/item/melee/knife/plastic, /obj/item/kitchen/fork/plastic{ pixel_x = 5 }, @@ -1550,7 +1550,7 @@ /obj/item/kitchen/fork/plastic{ pixel_x = 5 }, -/obj/item/kitchen/knife/plastic, +/obj/item/melee/knife/plastic, /turf/open/floor/plasteel, /area/ship/crew/canteen) "nt" = ( @@ -5973,7 +5973,7 @@ /obj/item/kitchen/fork/plastic{ pixel_x = 5 }, -/obj/item/kitchen/knife/plastic, +/obj/item/melee/knife/plastic, /turf/open/floor/plasteel, /area/ship/crew/canteen) "Yp" = ( diff --git a/_maps/shuttles/independent/independent_sunskipper.dmm b/_maps/shuttles/independent/independent_sunskipper.dmm index de92179a11f7..a5fcf740be59 100644 --- a/_maps/shuttles/independent/independent_sunskipper.dmm +++ b/_maps/shuttles/independent/independent_sunskipper.dmm @@ -441,7 +441,7 @@ pixel_y = 5; anchored = 1 }, -/obj/item/kitchen/knife{ +/obj/item/melee/knife/kitchen{ pixel_x = -11; pixel_y = 9 }, @@ -873,8 +873,8 @@ }, /obj/item/pickaxe, /obj/item/pickaxe, -/obj/item/kitchen/knife/hunting, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, +/obj/item/melee/knife/hunting, /obj/item/clothing/suit/hazardvest, /obj/item/clothing/suit/hazardvest, /obj/item/clothing/head/hardhat/mining, diff --git a/_maps/shuttles/independent/independent_tranquility.dmm b/_maps/shuttles/independent/independent_tranquility.dmm index d526a2a79b85..6a26f5e7b264 100644 --- a/_maps/shuttles/independent/independent_tranquility.dmm +++ b/_maps/shuttles/independent/independent_tranquility.dmm @@ -1687,7 +1687,7 @@ /obj/effect/turf_decal/corner/transparent/bar, /obj/structure/table/reinforced, /obj/machinery/light/directional/south, -/obj/item/kitchen/knife/butcher{ +/obj/item/melee/knife/butcher{ pixel_x = -6; pixel_y = 7 }, diff --git a/_maps/shuttles/inteq/inteq_colossus.dmm b/_maps/shuttles/inteq/inteq_colossus.dmm index e1cad73bdb2e..f19c734f9d83 100644 --- a/_maps/shuttles/inteq/inteq_colossus.dmm +++ b/_maps/shuttles/inteq/inteq_colossus.dmm @@ -4338,10 +4338,10 @@ /obj/item/reagent_containers/spray/pepper, /obj/item/reagent_containers/spray/pepper, /obj/item/reagent_containers/spray/pepper, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /turf/open/floor/plasteel/tech/grid, /area/ship/security/armory) "WG" = ( diff --git a/_maps/shuttles/inteq/inteq_talos.dmm b/_maps/shuttles/inteq/inteq_talos.dmm index 906f803d7c9a..195852c9fd5c 100644 --- a/_maps/shuttles/inteq/inteq_talos.dmm +++ b/_maps/shuttles/inteq/inteq_talos.dmm @@ -5610,9 +5610,9 @@ pixel_x = -1; pixel_y = 3 }, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /turf/open/floor/plasteel/tech/grid, /area/ship/security/armory) "JT" = ( diff --git a/_maps/shuttles/inteq/inteq_valor.dmm b/_maps/shuttles/inteq/inteq_valor.dmm index 7cb5896b71ad..737e424096fd 100644 --- a/_maps/shuttles/inteq/inteq_valor.dmm +++ b/_maps/shuttles/inteq/inteq_valor.dmm @@ -500,8 +500,8 @@ /obj/item/megaphone/sec, /obj/item/clothing/suit/armor/vest, /obj/item/clothing/suit/armor/vest, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /obj/machinery/recharger{ pixel_x = -16; pixel_y = 5 diff --git a/_maps/shuttles/inteq/inteq_vaquero.dmm b/_maps/shuttles/inteq/inteq_vaquero.dmm index 04e3e5684ba7..336bf5792208 100644 --- a/_maps/shuttles/inteq/inteq_vaquero.dmm +++ b/_maps/shuttles/inteq/inteq_vaquero.dmm @@ -2175,9 +2175,9 @@ pixel_y = 23 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /turf/open/floor/plasteel/tech/grid, /area/ship/security) "HN" = ( diff --git a/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm b/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm index 96bd414525c0..b469bbaa0984 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_heron.dmm @@ -4853,11 +4853,11 @@ pixel_x = 2; pixel_y = 3 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_x = 2 }, -/obj/item/kitchen/knife/plastic, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic, +/obj/item/melee/knife/plastic{ pixel_x = 5; pixel_y = 2 }, @@ -6113,7 +6113,7 @@ /obj/item/storage/pill_bottle/aranesp, /obj/item/taperecorder, /obj/item/t_scanner, -/obj/item/kitchen/knife/switchblade, +/obj/item/melee/knife/switchblade, /obj/item/trash/candy, /obj/structure/filingcabinet/double, /obj/item/radio/intercom/directional/south, @@ -13018,10 +13018,10 @@ /obj/item/reagent_containers/food/snacks/dough, /obj/item/reagent_containers/food/snacks/dough, /obj/item/kitchen/rollingpin, -/obj/item/kitchen/knife/butcher{ +/obj/item/melee/knife/butcher{ pixel_x = 13 }, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/industrial/warning{ dir = 1 }, diff --git a/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm index 1bcf7707a157..1f645758f3cb 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_meta.dmm @@ -2393,7 +2393,7 @@ /obj/structure/table, /obj/item/cutting_board, /obj/item/kitchen/rollingpin, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/effect/turf_decal/corner/opaque/white/diagonal, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel, diff --git a/_maps/shuttles/nanotrasen/nanotrasen_mimir.dmm b/_maps/shuttles/nanotrasen/nanotrasen_mimir.dmm index 928fc6bd90ee..708933a2287a 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_mimir.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_mimir.dmm @@ -2005,7 +2005,7 @@ /obj/machinery/door/window{ dir = 4 }, -/obj/item/kitchen/knife/shiv, +/obj/item/melee/knife/shiv, /turf/open/floor/plating, /area/ship/crew/canteen) "lc" = ( @@ -4049,11 +4049,11 @@ /area/ship/crew/dorm) "ye" = ( /obj/structure/closet/crate, -/obj/item/kitchen/knife/plastic, -/obj/item/kitchen/knife/plastic, -/obj/item/kitchen/knife/plastic, -/obj/item/kitchen/knife/plastic, -/obj/item/kitchen/knife/plastic, +/obj/item/melee/knife/plastic, +/obj/item/melee/knife/plastic, +/obj/item/melee/knife/plastic, +/obj/item/melee/knife/plastic, +/obj/item/melee/knife/plastic, /obj/item/kitchen/spoon/plastic, /obj/item/kitchen/spoon/plastic, /obj/item/kitchen/spoon/plastic, diff --git a/_maps/shuttles/nanotrasen/nanotrasen_osprey.dmm b/_maps/shuttles/nanotrasen/nanotrasen_osprey.dmm index 564cf0733f9f..a44e00c41303 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_osprey.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_osprey.dmm @@ -7644,7 +7644,7 @@ /area/ship/engineering) "XE" = ( /obj/structure/table/reinforced, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/kitchen/rollingpin, /obj/item/reagent_containers/food/condiment/sugar, /obj/item/reagent_containers/food/condiment/rice, diff --git a/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm b/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm index d2ccfdcfe910..fcd049fb153f 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_ranger.dmm @@ -176,7 +176,7 @@ /obj/item/clothing/glasses/sunglasses/gar, /obj/item/melee/classic_baton/telescopic, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/holosign_creator/security, /obj/item/storage/box/handcuffs, /obj/item/restraints/legcuffs/bola/energy, @@ -1544,7 +1544,7 @@ pixel_y = 9; pixel_x = -12 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 6; pixel_x = 5 }, @@ -3117,7 +3117,7 @@ /obj/structure/closet/secure_closet/lp/lieutenant, /obj/item/stock_parts/cell/gun, /obj/item/melee/classic_baton/telescopic, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/gps, /obj/item/screwdriver, /obj/effect/turf_decal/siding/wood{ diff --git a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm index 802756c19d04..e69aa1de47ca 100644 --- a/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm +++ b/_maps/shuttles/nanotrasen/nanotrasen_skipper.dmm @@ -1734,7 +1734,7 @@ pixel_x = 1; pixel_y = 5 }, -/obj/item/kitchen/knife/letter_opener{ +/obj/item/melee/knife/letter_opener{ desc = "A military combat utility survival knife, imported from Earth. An expensive paperweight indeed."; pixel_x = 4; pixel_y = 5 @@ -2607,7 +2607,7 @@ dir = 10 }, /obj/structure/table/reinforced, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/cutting_board, /obj/effect/turf_decal/corner/opaque/green/mono, /turf/open/floor/plasteel, diff --git a/_maps/shuttles/pgf/pgf_crying_sun.dmm b/_maps/shuttles/pgf/pgf_crying_sun.dmm index bbfb109c6c36..eb5211a95ac9 100644 --- a/_maps/shuttles/pgf/pgf_crying_sun.dmm +++ b/_maps/shuttles/pgf/pgf_crying_sun.dmm @@ -3358,19 +3358,19 @@ pixel_x = 3; pixel_y = 5 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_y = 5; pixel_x = -1 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_y = 5; pixel_x = -3 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_y = 5; pixel_x = -5 }, -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_y = 5; pixel_x = -7 }, @@ -5479,19 +5479,19 @@ /area/ship/bridge) "Qq" = ( /obj/structure/rack, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_x = -7; pixel_y = 4 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_x = -2; pixel_y = 4 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 4; pixel_x = 3 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 4; pixel_x = 8 }, diff --git a/_maps/shuttles/pirate/pirate_libertatia.dmm b/_maps/shuttles/pirate/pirate_libertatia.dmm index 2fe2cd9ddb20..b1bf098571c0 100644 --- a/_maps/shuttles/pirate/pirate_libertatia.dmm +++ b/_maps/shuttles/pirate/pirate_libertatia.dmm @@ -566,11 +566,11 @@ /area/ship/security) "sI" = ( /obj/machinery/firealarm/directional/south, -/obj/item/kitchen/knife/hunting{ +/obj/item/melee/knife/hunting{ pixel_y = 5 }, -/obj/item/kitchen/knife/hunting, -/obj/item/kitchen/knife/hunting{ +/obj/item/melee/knife/hunting, +/obj/item/melee/knife/hunting{ pixel_y = -5 }, /obj/item/storage/belt/security/webbing, diff --git a/_maps/shuttles/pirate/pirate_tortuga.dmm b/_maps/shuttles/pirate/pirate_tortuga.dmm index 4bc354b31b5c..fc08d44db510 100644 --- a/_maps/shuttles/pirate/pirate_tortuga.dmm +++ b/_maps/shuttles/pirate/pirate_tortuga.dmm @@ -753,7 +753,7 @@ /obj/structure/closet/crate{ icon_state = "o2crate" }, -/obj/item/spear/explosive, +/obj/item/melee/spear/explosive, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/airless, /area/ship/maintenance) @@ -2375,19 +2375,19 @@ /area/ship/cargo) "FB" = ( /obj/structure/rack, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 8; pixel_x = -9 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 7; pixel_x = 5 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 7; pixel_x = -4 }, -/obj/item/kitchen/knife/combat/survival{ +/obj/item/melee/knife/survival{ pixel_y = 7; pixel_x = 1 }, @@ -3403,7 +3403,7 @@ /turf/open/floor/plating, /area/ship/cargo) "RV" = ( -/obj/item/kitchen/knife/plastic{ +/obj/item/melee/knife/plastic{ pixel_x = 8 }, /obj/item/reagent_containers/food/snacks/grown/potato{ diff --git a/_maps/shuttles/roumain/srm_elder.dmm b/_maps/shuttles/roumain/srm_elder.dmm index 5ef138ad19db..0e501c62ed57 100644 --- a/_maps/shuttles/roumain/srm_elder.dmm +++ b/_maps/shuttles/roumain/srm_elder.dmm @@ -1533,7 +1533,7 @@ /obj/item/clothing/shoes/cowboy, /obj/item/clothing/shoes/cowboy/black, /obj/item/clothing/shoes/combat, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, /obj/item/gps{ pixel_x = -7 }, @@ -2017,7 +2017,7 @@ pixel_x = -2; pixel_y = 2 }, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /obj/effect/turf_decal/spline/fancy/wood{ dir = 5 }, @@ -2462,15 +2462,15 @@ /area/ship/roumain) "Eh" = ( /obj/structure/table/wood, -/obj/item/spear/bonespear{ +/obj/item/melee/spear/bone{ pixel_y = -3; pixel_x = 2 }, -/obj/item/spear/bonespear{ +/obj/item/melee/spear/bone{ pixel_y = 1; pixel_x = 2 }, -/obj/item/spear/bonespear{ +/obj/item/melee/spear/bone{ pixel_y = 5; pixel_x = 2 }, @@ -2643,7 +2643,7 @@ /obj/item/clothing/shoes/cowboy/black, /obj/item/clothing/shoes/cowboy, /obj/item/clothing/shoes/combat, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/gps{ pixel_x = -7 }, @@ -2687,7 +2687,7 @@ pixel_x = -2; pixel_y = 2 }, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /obj/effect/turf_decal/spline/fancy/wood{ dir = 5 }, @@ -3656,7 +3656,7 @@ /obj/item/clothing/shoes/cowboy, /obj/item/clothing/shoes/cowboy/black, /obj/item/clothing/shoes/combat, -/obj/item/kitchen/knife/hunting, +/obj/item/melee/knife/hunting, /obj/item/gps{ pixel_x = -7 }, diff --git a/_maps/shuttles/solgov/solgov_chronicle.dmm b/_maps/shuttles/solgov/solgov_chronicle.dmm index 56cbecce667b..e8af1166a200 100644 --- a/_maps/shuttles/solgov/solgov_chronicle.dmm +++ b/_maps/shuttles/solgov/solgov_chronicle.dmm @@ -569,7 +569,7 @@ /obj/item/clothing/suit/hazardvest/solgov, /obj/item/clothing/accessory/armband/cargo, /obj/item/clothing/shoes/workboots, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/clothing/gloves/combat, /obj/item/storage/backpack, /obj/machinery/light/small/directional/north, @@ -4427,7 +4427,7 @@ "RX" = ( /obj/structure/table/wood, /obj/item/cutting_board, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/machinery/newscaster/directional/north, /obj/structure/sink{ layer = 2.79; diff --git a/_maps/shuttles/solgov/solgov_inkwell.dmm b/_maps/shuttles/solgov/solgov_inkwell.dmm index cb52200b4aa9..5d2c0fbe0ccc 100644 --- a/_maps/shuttles/solgov/solgov_inkwell.dmm +++ b/_maps/shuttles/solgov/solgov_inkwell.dmm @@ -2571,7 +2571,7 @@ /area/ship/crew/canteen) "qE" = ( /obj/structure/table/wood, -/obj/item/kitchen/knife/letter_opener{ +/obj/item/melee/knife/letter_opener{ icon_state = "letter_opener_b"; name = "boxcutter"; pixel_x = -13; @@ -2711,7 +2711,7 @@ dir = 4 }, /obj/item/clothing/glasses/meson/prescription, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /obj/item/clothing/glasses/meson, /obj/machinery/light/directional/north, /obj/item/storage/bag/ore, @@ -3057,7 +3057,7 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /obj/item/clothing/glasses/meson, /obj/structure/sign/poster/solgov/random{ pixel_y = 32 @@ -3342,7 +3342,7 @@ "uS" = ( /obj/structure/table/wood, /obj/item/cutting_board, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/reagent_containers/food/condiment/saltshaker{ pixel_x = -17 }, @@ -3634,7 +3634,7 @@ /obj/item/stamp/solgov, /obj/item/clothing/suit/armor/solgov_trenchcoat, /obj/item/storage/backpack/satchel, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /obj/structure/closet/secure_closet/quartermaster{ anchored = 1; name = "\proper logistics deck officer's locker"; @@ -5461,13 +5461,13 @@ }, /obj/structure/rack, /obj/structure/window/reinforced, -/obj/item/kitchen/knife/letter_opener{ +/obj/item/melee/knife/letter_opener{ pixel_x = -2 }, -/obj/item/kitchen/knife/letter_opener{ +/obj/item/melee/knife/letter_opener{ pixel_x = 1 }, -/obj/item/kitchen/knife/letter_opener{ +/obj/item/melee/knife/letter_opener{ pixel_x = 4 }, /obj/effect/turf_decal/corner/opaque/solgovblue{ @@ -6959,7 +6959,7 @@ }, /obj/effect/turf_decal/industrial/outline/red, /obj/item/clothing/glasses/meson/prescription, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /obj/item/clothing/glasses/meson, /obj/item/storage/bag/ore, /turf/open/floor/plasteel/white, diff --git a/_maps/shuttles/solgov/solgov_paracelsus.dmm b/_maps/shuttles/solgov/solgov_paracelsus.dmm index b235794d6cd4..ef642488ef50 100644 --- a/_maps/shuttles/solgov/solgov_paracelsus.dmm +++ b/_maps/shuttles/solgov/solgov_paracelsus.dmm @@ -803,7 +803,7 @@ /obj/effect/turf_decal/siding/yellow{ dir = 4 }, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/clothing/gloves/combat, /obj/item/clothing/suit/hazardvest/solgov, /obj/item/clothing/head/hardhat/solgov, @@ -1652,7 +1652,7 @@ /obj/effect/turf_decal/siding/yellow{ dir = 4 }, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, /obj/item/clothing/gloves/combat, /obj/item/clothing/suit/hazardvest/solgov, /obj/item/clothing/head/hardhat/solgov, @@ -4715,7 +4715,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table/wood, /obj/item/cutting_board, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/kitchen/rollingpin, /turf/open/floor/wood/ebony, /area/ship/crew/canteen) diff --git a/_maps/shuttles/subshuttles/independent_sugarcube.dmm b/_maps/shuttles/subshuttles/independent_sugarcube.dmm index 11a8de916cd6..0504142f55b3 100644 --- a/_maps/shuttles/subshuttles/independent_sugarcube.dmm +++ b/_maps/shuttles/subshuttles/independent_sugarcube.dmm @@ -235,7 +235,7 @@ /obj/effect/decal/cleanable/glass, /obj/item/shard, /obj/item/shard, -/obj/item/kitchen/knife/shiv, +/obj/item/melee/knife/shiv, /turf/open/floor/plating, /area/ship/storage) "B" = ( diff --git a/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm b/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm index 67eaf609e080..253a82277fdf 100644 --- a/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm +++ b/_maps/shuttles/syndicate/syndicate_cybersun_kansatsu.dmm @@ -549,7 +549,7 @@ dir = 4 }, /obj/item/storage/box/rxglasses/spyglasskit, -/obj/item/kitchen/knife/letter_opener, +/obj/item/melee/knife/letter_opener, /turf/open/floor/plasteel/dark, /area/ship/crew/office) "nF" = ( @@ -1844,7 +1844,7 @@ /obj/item/implanter/stealth, /obj/item/modular_computer/laptop/preset/civilian, /obj/item/clothing/mask/chameleon, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /obj/item/reagent_containers/pill/cyanide, /obj/item/reagent_containers/pill/cyanide, /obj/item/reagent_containers/pill/cyanide, @@ -1948,10 +1948,10 @@ layer = 2.91 }, /obj/effect/turf_decal/box, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, -/obj/item/kitchen/knife/combat/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, +/obj/item/melee/knife/survival, /obj/item/pickaxe, /obj/item/pickaxe, /obj/item/pickaxe, diff --git a/_maps/shuttles/syndicate/syndicate_panacea.dmm b/_maps/shuttles/syndicate/syndicate_panacea.dmm index 24334160f64b..71526c69198f 100644 --- a/_maps/shuttles/syndicate/syndicate_panacea.dmm +++ b/_maps/shuttles/syndicate/syndicate_panacea.dmm @@ -7344,7 +7344,7 @@ /obj/item/cutting_board{ pixel_y = 3 }, -/obj/item/kitchen/knife/butcher{ +/obj/item/melee/knife/butcher{ pixel_y = 4; pixel_x = 4 }, diff --git a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm index 30ce8ed19013..ca7bd7705efd 100644 --- a/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm +++ b/_maps/shuttles/syndicate/syndicate_twinkleshine.dmm @@ -120,7 +120,7 @@ /area/ship/security/armory) "aG" = ( /obj/structure/closet/secure_closet/wall/directional/east, -/obj/item/kitchen/knife, +/obj/item/melee/knife/kitchen, /obj/item/cutting_board, /obj/item/clothing/under/suit/waiter/syndicate, /obj/item/clothing/suit/hazardvest/donk, @@ -1845,7 +1845,7 @@ /obj/item/clothing/gloves/color/black, /obj/machinery/light/directional/west, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /turf/open/floor/mineral/plastitanium, /area/ship/security) "ky" = ( @@ -2117,7 +2117,7 @@ /obj/item/clothing/head/soft/black, /obj/item/clothing/glasses/sunglasses, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /turf/open/floor/mineral/plastitanium, /area/ship/security) "ma" = ( @@ -3326,7 +3326,7 @@ /obj/machinery/light/directional/east, /obj/item/clothing/head/beret/black, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /turf/open/floor/mineral/plastitanium, /area/ship/security) "sW" = ( @@ -7138,7 +7138,7 @@ /obj/item/clothing/gloves/color/black, /obj/machinery/light/directional/east, /obj/item/flashlight/seclite, -/obj/item/kitchen/knife/combat, +/obj/item/melee/knife/combat, /turf/open/floor/mineral/plastitanium, /area/ship/security) "Pn" = ( diff --git a/_maps/templates/shelter_2.dmm b/_maps/templates/shelter_2.dmm index 9c2571e6f5a5..c12d8dd837da 100644 --- a/_maps/templates/shelter_2.dmm +++ b/_maps/templates/shelter_2.dmm @@ -39,7 +39,7 @@ /area/survivalpod) "i" = ( /obj/structure/toilet/secret{ - secret_type = /obj/item/kitchen/knife/combat/survival + secret_type = /obj/item/melee/knife/survival }, /turf/open/floor/pod, /area/survivalpod) diff --git a/check_regex.yaml b/check_regex.yaml index 3b5e13a650e5..eadd642f0676 100644 --- a/check_regex.yaml +++ b/check_regex.yaml @@ -29,7 +29,7 @@ standards: - exactly: [1, "/area text paths", '"/area'] - exactly: [17, "/datum text paths", '"/datum'] - exactly: [4, "/mob text paths", '"/mob'] - - exactly: [43, "/obj text paths", '"/obj'] + - exactly: [42, "/obj text paths", '"/obj'] - exactly: [0, "/turf text paths", '"/turf'] - exactly: [117, "text2path uses", "text2path"] diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index 6cad7078b6ec..5b99546fed97 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -150,7 +150,7 @@ GLOBAL_LIST_INIT(security_vest_allowed, typecacheof(list( /obj/item/gun/energy, /obj/item/gun/grenadelauncher, /obj/item/flamethrower, - /obj/item/kitchen/knife/combat, + /obj/item/melee/knife/combat, /obj/item/melee/baton, /obj/item/melee/classic_baton/telescopic, /obj/item/reagent_containers/spray/pepper, diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index 532ed3f888d7..9c9f0b85e48d 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -164,7 +164,7 @@ GLOBAL_LIST_INIT(uncommon_loot, list(//uncommon: useful items /obj/item/roller = 1, /obj/item/restraints/legcuffs/bola = 1, /obj/item/restraints/handcuffs/cable = 1, - /obj/item/spear = 1, + /obj/item/melee/spear = 1, /obj/item/shield/riot/buckler = 1, /obj/item/grenade/iedcasing/spawned = 1, /obj/item/melee/baton/cattleprod = 1, @@ -253,7 +253,7 @@ GLOBAL_LIST_INIT(oddity_loot, list(//oddity: strange or crazy items /obj/item/clothing/shoes/jackboots/fast = 1, /obj/item/clothing/suit/armor/reactive/table = 1, /obj/item/storage/box/donkpockets/donkpocketgondola = 1, - /obj/item/melee/greykingsword = 1 //WS - Meth Sword + /obj/item/melee/sword/greyking = 1 //WS - Meth Sword )) //Maintenance loot spawner pools diff --git a/code/controllers/subsystem/traumas.dm b/code/controllers/subsystem/traumas.dm index 25ae750eb0d3..333dee323e87 100644 --- a/code/controllers/subsystem/traumas.dm +++ b/code/controllers/subsystem/traumas.dm @@ -75,7 +75,7 @@ SUBSYSTEM_DEF(traumas) "greytide" = typecacheof(list( /obj/item/clothing/under/color/grey, /obj/item/melee/baton/cattleprod, - /obj/item/spear, /obj/item/clothing/mask/gas)), + /obj/item/melee/spear, /obj/item/clothing/mask/gas)), "lizards" = typecacheof(list( /obj/item/toy/plush/lizardplushie, /obj/item/organ/tail/lizard, @@ -125,14 +125,13 @@ SUBSYSTEM_DEF(traumas) "the supernatural" = typecacheof(list( /obj/structure/destructible/cult, /obj/item/tome, - /obj/item/melee/cultblade, /obj/item/cult_bastard, /obj/item/restraints/legcuffs/bola/cult, /obj/item/clothing/suit/space/hardsuit/cult, /obj/item/clothing/suit/hooded/cultrobes, /obj/item/clothing/head/hooded/cult_hoodie, /obj/effect/rune, /obj/machinery/door/airlock/cult, /obj/singularity/narsie, /obj/item/soulstone, /obj/item/clothing/suit/wizrobe, /obj/item/clothing/head/wizard, /obj/item/spellbook, /obj/item/staff, /obj/item/clothing/suit/space/hardsuit/shielded/wizard, /obj/item/clothing/suit/space/hardsuit/wizard, - /obj/item/nullrod, /obj/item/clothing/under/rank/civilian/chaplain)), + /obj/item/clothing/under/rank/civilian/chaplain)), "aliens" = typecacheof(list( /obj/item/clothing/mask/facehugger_item, /obj/item/organ/body_egg/alien_embryo, @@ -151,13 +150,13 @@ SUBSYSTEM_DEF(traumas) /obj/item/clothing/suit/toggle/owlwings, /obj/item/clothing/under/costume/owl, /obj/item/clothing/mask/gas/owl_mask)), "anime" = typecacheof(list( - /obj/item/clothing/under/costume/schoolgirl, /obj/item/katana, /obj/item/reagent_containers/food/snacks/sashimi, + /obj/item/clothing/under/costume/schoolgirl, /obj/item/reagent_containers/food/snacks/sashimi, /obj/item/reagent_containers/food/snacks/chawanmushi, /obj/item/reagent_containers/food/drinks/bottle/sake, /obj/item/throwing_star, /obj/item/clothing/suit/space/space_ninja, /obj/item/clothing/mask/gas/space_ninja, /obj/item/clothing/shoes/space_ninja, /obj/item/clothing/gloves/space_ninja, - /obj/item/vibro_weapon, /obj/item/nullrod/scythe/vibro, /obj/item/energy_katana, /obj/item/toy/katana, - /obj/item/nullrod/claymore/katana, /obj/structure/window/paperframe, /obj/structure/mineral_door/paperframe)) + /obj/item/melee/sword/vibro, /obj/item/melee/sword/energy_katana, /obj/item/toy/katana, + /obj/item/melee/sword/katana, /obj/structure/window/paperframe, /obj/structure/mineral_door/paperframe)) ) phobia_turfs = list( diff --git a/code/datums/action.dm b/code/datums/action.dm index e8d0ea303888..fb2d8b5e967f 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -470,44 +470,6 @@ name = "Use [target.name]" button.name = name -/datum/action/item_action/cult_dagger - name = "Draw Blood Rune" - desc = "Use the ritual dagger to create a powerful blood rune" - icon_icon = 'icons/mob/actions/actions_cult.dmi' - button_icon_state = "draw" - buttontooltipstyle = "cult" - background_icon_state = "bg_demon" - -/datum/action/item_action/cult_dagger/Grant(mob/M) - if(iscultist(M)) - ..() - button.screen_loc = "6:157,4:-2" - button.moved = "6:157,4:-2" - else - Remove(owner) - - -/datum/action/item_action/cult_dagger/Trigger() - for(var/obj/item/H in owner.held_items) //In case we were already holding another dagger - if(istype(H, /obj/item/melee/cultblade/dagger)) - H.attack_self(owner) - return - var/obj/item/I = target - if(owner.can_equip(I, ITEM_SLOT_HANDS)) - owner.temporarilyRemoveItemFromInventory(I) - owner.put_in_hands(I) - I.attack_self(owner) - return - if(!isliving(owner)) - to_chat(owner, "You lack the necessary living force for this action.") - return - var/mob/living/living_owner = owner - if (living_owner.usable_hands <= 0) - to_chat(living_owner, "You dont have any usable hands!") - else - to_chat(living_owner, "Your hands are full!") - - ///MGS BOX! /datum/action/item_action/agent_box name = "Deploy Box" diff --git a/code/datums/actions/ninja.dm b/code/datums/actions/ninja.dm index b655078349dc..974e4cfa74bc 100644 --- a/code/datums/actions/ninja.dm +++ b/code/datums/actions/ninja.dm @@ -24,7 +24,7 @@ name = "Create Throwing Stars (1E)" desc = "Creates some throwing stars" button_icon_state = "throwingstar" - icon_icon = 'icons/obj/items_and_weapons.dmi' + icon_icon = 'icons/obj/items.dmi' /datum/action/item_action/ninjanet name = "Energy Net (20E)" @@ -36,7 +36,7 @@ name = "Recall Energy Katana (Variable Cost)" desc = "Teleports the Energy Katana linked to this suit to its wearer, cost based on distance." button_icon_state = "energy_katana" - icon_icon = 'icons/obj/items_and_weapons.dmi' + icon_icon = 'icons/obj/items.dmi' /datum/action/item_action/ninja_stealth name = "Toggle Stealth" diff --git a/code/datums/components/crafting/recipes/misc.dm b/code/datums/components/crafting/recipes/misc.dm index e76641789157..fd89bd141ea8 100644 --- a/code/datums/components/crafting/recipes/misc.dm +++ b/code/datums/components/crafting/recipes/misc.dm @@ -115,7 +115,7 @@ name = "Improvised Pickaxe" reqs = list( /obj/item/crowbar = 1, - /obj/item/kitchen/knife = 1, + /obj/item/melee/knife/kitchen = 1, /obj/item/stack/tape = 1) result = /obj/item/pickaxe/improvised category = CAT_MISC diff --git a/code/datums/components/crafting/recipes/weapon.dm b/code/datums/components/crafting/recipes/weapon.dm index 65983b06df23..6783c60c6c6b 100644 --- a/code/datums/components/crafting/recipes/weapon.dm +++ b/code/datums/components/crafting/recipes/weapon.dm @@ -161,7 +161,7 @@ /datum/crafting_recipe/spear name = "Spear" - result = /obj/item/spear + result = /obj/item/melee/spear reqs = list(/obj/item/restraints/handcuffs/cable = 1, /obj/item/shard = 1, /obj/item/stack/rods = 1) @@ -261,7 +261,7 @@ /datum/crafting_recipe/bonespear name = "Bone Spear" - result = /obj/item/spear/bonespear + result = /obj/item/melee/spear/bone time = 30 reqs = list(/obj/item/stack/sheet/bone = 4, /obj/item/stack/sheet/sinew = 1) @@ -270,7 +270,7 @@ /datum/crafting_recipe/boneaxe name = "Bone Axe" - result = /obj/item/fireaxe/boneaxe + result = /obj/item/melee/axe/bone time = 50 reqs = list(/obj/item/stack/sheet/bone = 6, /obj/item/stack/sheet/sinew = 3) @@ -279,7 +279,7 @@ /datum/crafting_recipe/bonesword name = "Bone Sword" - result = /obj/item/claymore/bone + result = /obj/item/melee/sword/bone time = 40 reqs = list(/obj/item/stack/sheet/bone = 3, /obj/item/stack/sheet/sinew = 2) diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 7d3bf028d796..f4ff07423c52 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -369,7 +369,7 @@ /obj/item/riding_offhand name = "offhand" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "offhand" w_class = WEIGHT_CLASS_HUGE item_flags = ABSTRACT | DROPDEL | NOBLUDGEON diff --git a/code/datums/components/storage/concrete/pockets.dm b/code/datums/components/storage/concrete/pockets.dm index 44470e5ca989..e00c40e116f8 100644 --- a/code/datums/components/storage/concrete/pockets.dm +++ b/code/datums/components/storage/concrete/pockets.dm @@ -35,8 +35,8 @@ /datum/component/storage/concrete/pockets/small/fedora/Initialize() . = ..() var/static/list/exception_cache = typecacheof(list( - /obj/item/katana, /obj/item/toy/katana, /obj/item/nullrod/claymore/katana, - /obj/item/energy_katana, /obj/item/gun/ballistic/automatic/smg/firestorm/pan + /obj/item/toy/katana, /obj/item/melee/sword/katana, + /obj/item/melee/sword/energy_katana, /obj/item/gun/ballistic/automatic/smg/firestorm/pan )) exception_hold = exception_cache diff --git a/code/datums/martial/sleeping_carp.dm b/code/datums/martial/sleeping_carp.dm index 72d26cf74367..e4e3ef90ebc7 100644 --- a/code/datums/martial/sleeping_carp.dm +++ b/code/datums/martial/sleeping_carp.dm @@ -169,96 +169,3 @@ to_chat(usr, "Crashing Wave Kick: Harm Disarm. Launch people brutally across rooms, and away from you.") to_chat(usr, "Keelhaul: Harm Grab. Kick opponents to the floor. Against prone targets, deal additional stamina damage and disarm them.") to_chat(usr, "In addition, your body has become incredibly resilient to most forms of attack. Weapons cannot readily pierce your hardened skin, and you are highly resistant to stuns and knockdowns, and can block all projectiles in Throw Mode. However, you are not invincible, and sustained damage will take it's toll. Avoid heat at all costs!") - -/obj/item/staff/bostaff - name = "bo staff" - desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts. Can be wielded to both kill and incapacitate." - force = 10 - w_class = WEIGHT_CLASS_BULKY - slot_flags = ITEM_SLOT_BACK - throwforce = 20 - throw_speed = 2 - attack_verb = list("smashed", "slammed", "whacked", "thwacked") - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "bostaff0" - base_icon_state = "bostaff" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - block_chance = 50 - var/wielded = FALSE // track wielded status on item - -/obj/item/staff/bostaff/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - -/obj/item/staff/bostaff/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=24, icon_wielded="[base_icon_state]1") - -/// triggered on wield of two handed item -/obj/item/staff/bostaff/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/staff/bostaff/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/staff/bostaff/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/staff/bostaff/attack(mob/target, mob/living/user) - add_fingerprint(user) - if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) - to_chat(user, "You club yourself over the head with [src].") - user.Paralyze(60) - if(ishuman(user)) - var/mob/living/carbon/human/H = user - H.apply_damage(2*force, BRUTE, BODY_ZONE_HEAD) - else - user.take_bodypart_damage(2*force) - return - if(iscyborg(target)) - return ..() - if(!isliving(target)) - return ..() - var/mob/living/carbon/C = target - if(C.stat) - to_chat(user, "It would be dishonorable to attack a foe while they cannot retaliate.") - return - if(user.a_intent == INTENT_DISARM) - if(!wielded) - return ..() - if(!ishuman(target)) - return ..() - var/mob/living/carbon/human/H = target - var/list/fluffmessages = list("club", "smack", "broadside", "beat", "slam") - H.visible_message("[user] [pick(fluffmessages)]s [H] with [src]!", \ - "[user] [pick(fluffmessages)]s you with [src]!", "You hear a sickening sound of flesh hitting flesh!", null, user) - to_chat(user, "You [pick(fluffmessages)] [H] with [src]!") - playsound(get_turf(user), 'sound/effects/woodhit.ogg', 75, TRUE, -1) - H.adjustStaminaLoss(rand(13,20)) - if(prob(10)) - H.visible_message("[H] collapses!", \ - "Your legs give out!") - H.Paralyze(80) - if(H.staminaloss && !H.IsSleeping()) - var/total_health = (H.health - H.staminaloss) - if(total_health <= HEALTH_THRESHOLD_CRIT && !H.stat) - H.visible_message("[user] delivers a heavy hit to [H]'s head, knocking [H.p_them()] out cold!", \ - "You're knocked unconscious by [user]!", "You hear a sickening sound of flesh hitting flesh!", null, user) - to_chat(user, "You deliver a heavy hit to [H]'s head, knocking [H.p_them()] out cold!") - H.SetSleeping(600) - H.adjustOrganLoss(ORGAN_SLOT_BRAIN, 15, 150) - else - return ..() - -/obj/item/staff/bostaff/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(!wielded) - return ..() - return FALSE diff --git a/code/game/gamemodes/clown_ops/clown_ops.dm b/code/game/gamemodes/clown_ops/clown_ops.dm index 74e391ef5510..1db631f18aa7 100644 --- a/code/game/gamemodes/clown_ops/clown_ops.dm +++ b/code/game/gamemodes/clown_ops/clown_ops.dm @@ -38,7 +38,7 @@ r_pocket = /obj/item/bikehorn id = /obj/item/card/id/syndicate backpack_contents = list(/obj/item/storage/box/survival/syndie=1,\ - /obj/item/kitchen/knife/combat/survival, + /obj/item/melee/knife/survival, /obj/item/dnainjector/clumsymut, //in case you want to be clumsy for the memes /obj/item/reagent_containers/spray/waterflower/lube) implants = list(/obj/item/implant/sad_trombone) diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 675d5e7e5407..db73b7b797b9 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -120,7 +120,7 @@ id = /obj/item/card/id/syndicate belt = /obj/item/gun/ballistic/automatic/pistol/ringneck backpack_contents = list(/obj/item/storage/box/survival/syndie=1,\ - /obj/item/kitchen/knife/combat/survival) + /obj/item/melee/knife/survival) var/tc = 25 var/command_radio = FALSE @@ -169,7 +169,7 @@ backpack_contents = list(/obj/item/storage/box/survival/syndie=1,\ /obj/item/tank/jetpack/oxygen/harness=1,\ /obj/item/gun/ballistic/automatic/pistol/ringneck=1,\ - /obj/item/kitchen/knife/combat/survival) + /obj/item/melee/knife/survival) /datum/game_mode/nuclear/generate_credit_text() diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 6b63a3ae83b8..9bad37507a35 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -151,7 +151,6 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/cryopod/retro, 17) /obj/item/reagent_containers/hypospray/CMO, /obj/item/clothing/accessory/medal/gold/captain, /obj/item/clothing/gloves/krav_maga, - /obj/item/nullrod, /obj/item/tank/jetpack, /obj/item/documents, /obj/item/nuke_core_container diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 121c93a07353..e70edb721788 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -1236,8 +1236,8 @@ return if(!operating) - if(istype(I, /obj/item/fireaxe)) //being fireaxe'd - var/obj/item/fireaxe/axe = I + if(istype(I, /obj/item/melee/axe/fire)) //being fireaxe'd + var/obj/item/melee/axe/fire/axe = I if(axe && !axe.wielded) to_chat(user, "You need to be wielding \the [axe] to do that!") return diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index eb23f1060be3..737bacbb650f 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -253,7 +253,7 @@ return max_moles - min_moles > 20 /obj/machinery/door/attackby(obj/item/I, mob/user, params) - if(user.a_intent != INTENT_HARM && (I.tool_behaviour == TOOL_CROWBAR || istype(I, /obj/item/fireaxe))) + if(user.a_intent != INTENT_HARM && (I.tool_behaviour == TOOL_CROWBAR || istype(I, /obj/item/melee/axe/fire))) var/forced_open = FALSE if(istype(I, /obj/item/crowbar)) var/obj/item/crowbar/C = I diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index 325712274633..2caecd950a9f 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -105,9 +105,9 @@ /obj/item/paper/fluff/jobs/prisoner/letter = 1, /obj/item/grenade/smokebomb = 1, /obj/item/flashlight/seclite = 1, - /obj/item/kitchen/knife/shiv = 4, - /obj/item/kitchen/knife/shiv/carrot = 1, - /obj/item/kitchen/knife = 1, + /obj/item/melee/knife/shiv = 4, + /obj/item/melee/knife/shiv/carrot = 1, + /obj/item/melee/knife/kitchen = 1, /obj/item/storage/wallet/random = 1, /obj/item/pda = 1 ) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 376d1ba16d11..17d6cf96b21a 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -13,7 +13,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb /obj/item name = "item" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' blocks_emissive = EMISSIVE_BLOCK_GENERIC ///icon state name for inhand overlays var/item_state = null @@ -1183,6 +1183,11 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb /obj/item/proc/get_writing_implement_details() return null +/obj/item/proc/can_trigger_gun(mob/living/user) + if(!user.can_use_guns(src)) + return FALSE + return TRUE + /// Whether or not this item can be put into a storage item through attackby /obj/item/proc/attackby_storage_insert(datum/storage, atom/storage_holder, mob/user) return TRUE diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index d410dfef0d7d..d2ce379274dc 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -5,7 +5,7 @@ /obj/item/areaeditor name = "area modification item" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "blueprints" attack_verb = list("attacked", "bapped", "hit") var/fluffnotice = "Nobody's gonna read this stuff!" @@ -46,7 +46,7 @@ /obj/item/areaeditor/blueprints name = "station blueprints" desc = "Blueprints of what appear to be an experimental station design, with a large spinal weapon mounted to the front. There is a \"Classified\" stamp and several coffee stains on it." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "blueprints" fluffnotice = "Property of Nanotrasen. For heads of staff only. Store in high-secure storage." resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF @@ -204,7 +204,7 @@ /obj/item/areaeditor/blueprints/cyborg name = "construction schematics" desc = "A digital copy of the local blueprints and zoning permits stored in your memory." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "blueprints" fluffnotice = "Intellectual Property of Nanotrasen. For use in engineering cyborgs only. Wipe from memory upon departure from company ownership." @@ -235,7 +235,7 @@ /obj/item/areaeditor/shuttle name = "shuttle expansion permit" desc = "A set of paperwork which is used to expand flyable shuttles." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "blueprints" color = COLOR_ASSEMBLY_WHITE fluffnotice = "Not to be used for non-sanctioned shuttle construction and maintenance." diff --git a/code/game/objects/items/clown_items.dm b/code/game/objects/items/clown_items.dm index 9c6809cf3dbc..631eb7d2fc8f 100644 --- a/code/game/objects/items/clown_items.dm +++ b/code/game/objects/items/clown_items.dm @@ -14,7 +14,7 @@ name = "soap" desc = "A cheap bar of soap. Doesn't smell." gender = PLURAL - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "soap" lefthand_file = 'icons/mob/inhands/equipment/custodial_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/custodial_righthand.dmi' @@ -150,7 +150,7 @@ /obj/item/bikehorn name = "bike horn" desc = "A horn off of a bicycle." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "bike_horn" item_state = "bike_horn" lefthand_file = 'icons/mob/inhands/equipment/horns_lefthand.dmi' diff --git a/code/game/objects/items/cosmetics.dm b/code/game/objects/items/cosmetics.dm index d451f258bd78..b08adc216135 100644 --- a/code/game/objects/items/cosmetics.dm +++ b/code/game/objects/items/cosmetics.dm @@ -2,7 +2,7 @@ gender = PLURAL name = "red lipstick" desc = "A generic brand of lipstick." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "lipstick" w_class = WEIGHT_CLASS_TINY var/colour = "red" @@ -101,7 +101,7 @@ /obj/item/razor name = "electric razor" desc = "The latest and greatest power razor born from the science of shaving." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "razor" flags_1 = CONDUCT_1 w_class = WEIGHT_CLASS_TINY diff --git a/code/game/objects/items/courtroom.dm b/code/game/objects/items/courtroom.dm index 78d599ee4d9c..a1750a26493e 100644 --- a/code/game/objects/items/courtroom.dm +++ b/code/game/objects/items/courtroom.dm @@ -5,7 +5,7 @@ /obj/item/gavelhammer name = "gavel hammer" desc = "Order, order! No bombs in my courthouse." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "gavelhammer" force = 5 throwforce = 6 @@ -16,7 +16,7 @@ /obj/item/gavelblock name = "gavel block" desc = "Smack it with a gavel hammer when the assistants get rowdy." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "gavelblock" force = 2 throwforce = 2 diff --git a/code/game/objects/items/dna_injector.dm b/code/game/objects/items/dna_injector.dm index 113a72fb8d8d..3e0823761520 100644 --- a/code/game/objects/items/dna_injector.dm +++ b/code/game/objects/items/dna_injector.dm @@ -1,7 +1,7 @@ /obj/item/dnainjector name = "\improper DNA injector" desc = "This injects the person with DNA." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "dnainjector" lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' diff --git a/code/game/objects/items/door_seal.dm b/code/game/objects/items/door_seal.dm index 64f7ca4fd92c..76b406f3c9ab 100644 --- a/code/game/objects/items/door_seal.dm +++ b/code/game/objects/items/door_seal.dm @@ -1,7 +1,7 @@ /obj/item/door_seal name = "pneumatic seal" desc = "A brace used to seal and reinforce an airlock. Useful for making areas inaccessible to those without opposable thumbs." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "pneumatic_seal" lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' righthand_file = 'icons/mob/inhands/items_righthand.dmi' diff --git a/code/game/objects/items/gift.dm b/code/game/objects/items/gift.dm index 8ec4353d1ca2..31ac7d44ecff 100644 --- a/code/game/objects/items/gift.dm +++ b/code/game/objects/items/gift.dm @@ -47,8 +47,7 @@ GLOBAL_LIST_EMPTY(possible_gifts) I.add_fingerprint(M) /obj/item/a_gift/proc/get_gift_type() - var/gift_type_list = list(/obj/item/sord, - /obj/item/storage/wallet, + var/gift_type_list = list(/obj/item/storage/wallet, /obj/item/storage/photo_album, /obj/item/storage/box/snappops, /obj/item/storage/crayons, @@ -67,7 +66,6 @@ GLOBAL_LIST_EMPTY(possible_gifts) /obj/item/bikehorn, /obj/item/toy/beach_ball, /obj/item/toy/beach_ball/holoball, - /obj/item/banhammer, /obj/item/reagent_containers/food/snacks/grown/ambrosia/deus, /obj/item/reagent_containers/food/snacks/grown/ambrosia/vulgaris, /obj/item/paicard, diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 9fece4feedd4..f36c27bb244d 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -20,7 +20,7 @@ name = "handcuffs" desc = "Use this to keep prisoners in line." gender = PLURAL - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "handcuff" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/security_righthand.dmi' @@ -217,7 +217,7 @@ name = "leg cuffs" desc = "Use this to keep prisoners in line." gender = PLURAL - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "handcuff" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/security_righthand.dmi' @@ -426,6 +426,6 @@ /obj/item/restraints/legcuffs/bola/watcher //tribal bola for tribal lizards name = "watcher Bola" desc = "A Bola made from the stretchy sinew of fallen watchers." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "bola_watcher" breakouttime = 45 diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm deleted file mode 100644 index 5b91f6b7bd87..000000000000 --- a/code/game/objects/items/holy_weapons.dm +++ /dev/null @@ -1,522 +0,0 @@ -// CHAPLAIN CUSTOM ARMORS // - -/obj/item/storage/box/holy - name = "Witchhunter Kit" - -/obj/item/storage/box/holy/PopulateContents() - new /obj/item/clothing/head/witchunter(src) - new /obj/item/clothing/suit/armor/witchhunter(src) - - -/obj/item/storage/box/holy/follower - name = "Followers of the Chaplain Kit" - -/obj/item/storage/box/holy/follower/PopulateContents() - new /obj/item/clothing/suit/hooded/chaplain_hoodie/leader(src) - new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) - new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) - new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) - new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) - -/obj/item/clothing/suit/hooded/chaplain_hoodie - name = "follower hoodie" - desc = "Hoodie made for acolytes of the chaplain." - icon_state = "chaplain_hoodie" - item_state = "chaplain_hoodie" - body_parts_covered = CHEST|GROIN|LEGS|ARMS - allowed = list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) - hoodtype = /obj/item/clothing/head/hooded/chaplain_hood - -/obj/item/clothing/head/hooded/chaplain_hood - name = "follower hood" - desc = "Hood made for acolytes of the chaplain." - icon_state = "chaplain_hood" - body_parts_covered = HEAD - flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS - -/obj/item/clothing/suit/hooded/chaplain_hoodie/leader - name = "leader hoodie" - desc = "Now you're ready for some 50 dollar bling water." - icon_state = "chaplain_hoodie_leader" - item_state = "chaplain_hoodie_leader" - hoodtype = /obj/item/clothing/head/hooded/chaplain_hood/leader - -/obj/item/clothing/head/hooded/chaplain_hood/leader - name = "leader hood" - desc = "I mean, you don't /have/ to seek bling water. I just think you should." - icon_state = "chaplain_hood_leader" - - -// CHAPLAIN NULLROD AND CUSTOM WEAPONS // - -/obj/item/nullrod - name = "null rod" - desc = "A rod of pure obsidian; its very presence disrupts and dampens the powers of Nar'Sie's followers." - icon_state = "nullrod" - item_state = "nullrod" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 18 - throw_speed = 3 - throw_range = 4 - throwforce = 10 - w_class = WEIGHT_CLASS_TINY - obj_flags = UNIQUE_RENAME - var/reskinned = FALSE - var/chaplain_spawnable = TRUE - -/obj/item/nullrod/godhand - icon_state = "disintegrate" - item_state = "disintegrate" - lefthand_file = 'icons/mob/inhands/misc/touchspell_lefthand.dmi' - righthand_file = 'icons/mob/inhands/misc/touchspell_righthand.dmi' - name = "god hand" - desc = "This hand of yours glows with an awesome power!" - item_flags = ABSTRACT | DROPDEL - w_class = WEIGHT_CLASS_HUGE - hitsound = 'sound/weapons/sear.ogg' - damtype = BURN - attack_verb = list("punched", "cross countered", "pummeled") - -/obj/item/nullrod/godhand/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) - -/obj/item/nullrod/staff - icon_state = "godstaff-red" - item_state = "godstaff-red" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - name = "red holy staff" - desc = "It has a mysterious, protective aura." - w_class = WEIGHT_CLASS_HUGE - force = 5 - slot_flags = ITEM_SLOT_BACK - block_chance = 40 - var/shield_icon = "shield-red" - -/obj/item/nullrod/staff/worn_overlays(isinhands) - . = ..() - if(isinhands) - . += mutable_appearance('icons/effects/effects.dmi', shield_icon, MOB_LAYER + 0.01) - -/obj/item/nullrod/staff/blue - name = "blue holy staff" - icon_state = "godstaff-blue" - item_state = "godstaff-blue" - shield_icon = "shield-old" - -/obj/item/nullrod/claymore - icon_state = "claymore_gold" - item_state = "claymore_gold" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - pickup_sound = 'sound/items/handling/knife2_pickup.ogg' - drop_sound = 'sound/items/handling/metal_drop.ogg' - name = "holy claymore" - desc = "A weapon fit for a crusade!" - w_class = WEIGHT_CLASS_HUGE - slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT - block_chance = 30 - sharpness = IS_SHARP - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - -/obj/item/nullrod/claymore/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = 0 //Don't bring a sword to a gunfight - return ..() - -/obj/item/nullrod/claymore/darkblade - icon_state = "cultblade" - item_state = "cultblade" - lefthand_file = 'icons/mob/inhands/64x64_lefthand.dmi' - righthand_file = 'icons/mob/inhands/64x64_righthand.dmi' - inhand_x_dimension = 64 - inhand_y_dimension = 64 - name = "dark blade" - desc = "Spread the glory of the dark gods!" - slot_flags = ITEM_SLOT_BELT - hitsound = 'sound/hallucinations/growl1.ogg' - -/obj/item/nullrod/claymore/chainsaw_sword - icon_state = "chainswordon" - item_state = "chainswordon" - name = "sacred chainsaw sword" - desc = "Suffer not a heretic to live." - slot_flags = ITEM_SLOT_BELT - attack_verb = list("sawed", "torn", "cut", "chopped", "diced") - hitsound = 'sound/weapons/chainsawhit.ogg' - tool_behaviour = TOOL_SAW - toolspeed = 1.5 //slower than a real saw - -/obj/item/nullrod/claymore/glowing - icon_state = "swordon" - item_state = "swordon" - name = "force weapon" - desc = "The blade glows with the power of faith. Or possibly a battery." - slot_flags = ITEM_SLOT_BELT - -/obj/item/nullrod/claymore/katana - name = "\improper Hanzo steel" - desc = "Capable of cutting clean through a holy claymore." - icon_state = "katana" - item_state = "katana" - slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK - supports_variations = VOX_VARIATION - -/obj/item/nullrod/claymore/multiverse - name = "extradimensional blade" - desc = "Once the harbinger of an interdimensional war, its sharpness fluctuates wildly." - icon_state = "multiverse" - item_state = "multiverse" - slot_flags = ITEM_SLOT_BELT - -/obj/item/nullrod/claymore/multiverse/attack(mob/living/carbon/M, mob/living/carbon/user) - force = rand(1, 30) - ..() - -/obj/item/nullrod/claymore/saber - name = "light energy sword" - hitsound = 'sound/weapons/blade1.ogg' - icon = 'icons/obj/transforming_energy.dmi' - icon_state = "swordblue" - item_state = "swordblue" - desc = "If you strike me down, I shall become more robust than you can possibly imagine." - slot_flags = ITEM_SLOT_BELT - -/obj/item/nullrod/claymore/saber/red - name = "dark energy sword" - icon_state = "swordred" - item_state = "swordred" - desc = "Woefully ineffective when used on steep terrain." - -/obj/item/nullrod/claymore/saber/pirate - name = "nautical energy sword" - icon_state = "cutlassred" - item_state = "cutlassred" - desc = "Convincing HR that your religion involved piracy was no mean feat." - -/obj/item/nullrod/sord - name = "\improper UNREAL SORD" - desc = "This thing is so unspeakably HOLY you are having a hard time even holding it." - icon_state = "sord" - item_state = "sord" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - force = 4.13 - throwforce = 1 - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - -/obj/item/nullrod/scythe - icon_state = "scythe1" - item_state = "scythe1" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - name = "reaper scythe" - desc = "Ask not for whom the bell tolls..." - w_class = WEIGHT_CLASS_BULKY - armour_penetration = 35 - slot_flags = ITEM_SLOT_BACK - sharpness = IS_SHARP - attack_verb = list("chopped", "sliced", "cut", "reaped") - -/obj/item/nullrod/scythe/Initialize() - . = ..() - AddComponent(/datum/component/butchering, 70, 110) //the harvest gives a high bonus chance - -/obj/item/nullrod/scythe/vibro - icon_state = "hfrequency0" - item_state = "hfrequency1" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - name = "high frequency blade" - desc = "Bad references are the DNA of the soul." - attack_verb = list("chopped", "sliced", "cut", "zandatsu'd") - hitsound = 'sound/weapons/rapierhit.ogg' - -/obj/item/nullrod/scythe/spellblade - icon_state = "spellblade" - item_state = "spellblade" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - icon = 'icons/obj/guns/magic.dmi' - name = "dormant spellblade" - desc = "The blade grants the wielder nearly limitless power...if they can figure out how to turn it on, that is." - hitsound = 'sound/weapons/rapierhit.ogg' - -/obj/item/nullrod/scythe/talking - icon_state = "talking_sword" - item_state = "talking_sword" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - name = "possessed blade" - desc = "When the world falls into chaos, it's nice to have a friend by your side." - attack_verb = list("chopped", "sliced", "cut") - hitsound = 'sound/weapons/rapierhit.ogg' - var/possessed = FALSE - -/obj/item/nullrod/scythe/talking/relaymove(mob/living/user, direction) - return //stops buckled message spam for the ghost. - -/obj/item/nullrod/scythe/talking/attack_self(mob/living/user) - if(possessed) - return - - to_chat(user, "You attempt to wake the spirit of the blade...") - - possessed = TRUE - - var/list/mob/dead/observer/candidates = pollGhostCandidates("Do you want to play as the spirit of [user.real_name]'s blade?", ROLE_PAI, null, FALSE, 100, POLL_IGNORE_POSSESSED_BLADE) - - if(LAZYLEN(candidates)) - var/mob/dead/observer/C = pick(candidates) - var/mob/living/simple_animal/shade/S = new(src) - S.ckey = C.ckey - S.fully_replace_character_name(null, "The spirit of [name]") - S.status_flags |= GODMODE - S.copy_languages(user, LANGUAGE_MASTER) //Make sure the sword can understand and communicate with the user. - S.update_atom_languages() - grant_all_languages(FALSE, FALSE, TRUE) //Grants omnitongue - var/input = sanitize_name(stripped_input(S,"What are you named?", ,"", MAX_NAME_LEN)) - - if(src && input) - name = input - S.fully_replace_character_name(null, "The spirit of [input]") - else - to_chat(user, "The blade is dormant. Maybe you can try again later.") - possessed = FALSE - -/obj/item/nullrod/scythe/talking/Destroy() - for(var/mob/living/simple_animal/shade/S in contents) - to_chat(S, "You were destroyed!") - qdel(S) - return ..() - -/obj/item/nullrod/scythe/talking/chainsword - icon_state = "chainswordon" - item_state = "chainswordon" - name = "possessed chainsaw sword" - desc = "Suffer not a heretic to live." - chaplain_spawnable = FALSE - force = 30 - slot_flags = ITEM_SLOT_BELT - attack_verb = list("sawed", "torn", "cut", "chopped", "diced") - hitsound = 'sound/weapons/chainsawhit.ogg' - tool_behaviour = TOOL_SAW - toolspeed = 0.5 //faster than normal saw - -/obj/item/nullrod/scythe/talking/necro - desc = "An ancient weapon flush with the souls of the fallen. The blood of the necropolis has suffused it over time immemorial, granting a toothy bite." - force = 35 - block_chance = 35 - hitsound = 'sound/weapons/pierce_slow.ogg' - armour_penetration = 20// lower ap than the original possessed sword, go figure. The justification is that this has a serrated blade - chaplain_spawnable = FALSE - attack_verb = list("gnawed", "munched on", "chewed", "rended", "chomped") - name = "possessed greatsword" - var/bleed_stacks_per_hit = 2 //this effect has rapid scaling and is an instant down pretty much, I'll crib it since it can trigger on non-fauna - resistance_flags = FIRE_PROOF | ACID_PROOF - -/obj/item/nullrod/scythe/talking/necro/examine(mob/user) - . = ..() - . += "This weapon applies a growing blood curse on attack. Though it slowly fades, fully manifesting it causes your target's blood to violently explode, creating a lethal burst of damage." - -/obj/item/nullrod/scythe/talking/necro/attack(mob/living/target) - ..() - var/datum/status_effect/stacking/saw_bleed/B = target.has_status_effect(STATUS_EFFECT_SAWBLEED) - if(!B) - target.apply_status_effect(STATUS_EFFECT_SAWBLEED,bleed_stacks_per_hit) - else - B.add_stacks(bleed_stacks_per_hit) - -/obj/item/nullrod/hammmer - icon_state = "hammeron" - item_state = "hammeron" - lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi' - name = "relic war hammer" - desc = "This war hammer cost the chaplain forty thousand space dollars." - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_HUGE - attack_verb = list("smashed", "bashed", "hammered", "crunched") - -/obj/item/nullrod/chainsaw - name = "chainsaw hand" - desc = "Good? Bad? You're the guy with the chainsaw hand." - icon_state = "chainsaw_on" - item_state = "mounted_chainsaw" - lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi' - w_class = WEIGHT_CLASS_HUGE - item_flags = ABSTRACT - sharpness = IS_SHARP - attack_verb = list("sawed", "torn", "cut", "chopped", "diced") - hitsound = 'sound/weapons/chainsawhit.ogg' - tool_behaviour = TOOL_SAW - toolspeed = 2 //slower than a real saw - -/obj/item/nullrod/chainsaw/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) - AddComponent(/datum/component/butchering, 30, 100, 0, hitsound) - -/obj/item/nullrod/clown - icon = 'icons/obj/wizard.dmi' - icon_state = "clownrender" - item_state = "render" - name = "clown dagger" - desc = "Used for absolutely hilarious sacrifices." - hitsound = 'sound/items/bikehorn.ogg' - sharpness = IS_SHARP - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - -/obj/item/nullrod/pride_hammer - icon_state = "pride" - name = "Pride-struck Hammer" - desc = "It resonates an aura of Pride." - force = 16 - throwforce = 15 - w_class = 4 - slot_flags = ITEM_SLOT_BACK - attack_verb = list("attacked", "smashed", "crushed", "splattered", "cracked") - hitsound = 'sound/weapons/blade1.ogg' - -/obj/item/nullrod/pride_hammer/afterattack(atom/A as mob|obj|turf|area, mob/user, proximity) - . = ..() - if(!proximity) - return - if(prob(30) && ishuman(A)) - var/mob/living/carbon/human/H = A - user.reagents.trans_to(H, user.reagents.total_volume, 1, 1, 0, transfered_by = user) - to_chat(user, "Your pride reflects on [H].") - to_chat(H, "You feel insecure, taking on [user]'s burden.") - -/obj/item/nullrod/whip - name = "holy whip" - desc = "What a terrible night to be on Space Station 13."//very classic, it stays - icon_state = "chain" - item_state = "chain" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - attack_verb = list("whipped", "lashed") - hitsound = 'sound/weapons/chainhit.ogg' - -/obj/item/nullrod/fedora - name = "atheist's fedora" - desc = "The brim of the hat is as sharp as your wit. The edge would hurt almost as much as disproving the existence of God." - icon_state = "fedora" - item_state = "fedora" - slot_flags = ITEM_SLOT_HEAD - icon = 'icons/obj/clothing/hats.dmi' - force = 0 - throw_speed = 4 - throw_range = 7 - throwforce = 30 - sharpness = IS_SHARP - attack_verb = list("enlightened", "redpilled") - -/obj/item/nullrod/armblade - name = "dark blessing" - desc = "Particularly twisted deities grant gifts of dubious value." - icon = 'icons/obj/changeling_items.dmi' - icon_state = "arm_blade" - item_state = "arm_blade" - lefthand_file = 'icons/mob/inhands/antag/changeling_lefthand.dmi' - righthand_file = 'icons/mob/inhands/antag/changeling_righthand.dmi' - item_flags = ABSTRACT - w_class = WEIGHT_CLASS_HUGE - sharpness = IS_SHARP - -/obj/item/nullrod/armblade/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) - AddComponent(/datum/component/butchering, 80, 70) - -/obj/item/nullrod/armblade/tentacle - name = "unholy blessing" - icon_state = "tentacle" - item_state = "tentacle" - -/obj/item/nullrod/carp - name = "carp-sie plushie" - desc = "An adorable stuffed toy that resembles the god of all carp. The teeth look pretty sharp. Activate it to receive the blessing of Carp-Sie." - icon = 'icons/obj/plushes.dmi' - icon_state = "carpplush" - item_state = "carp_plushie" - lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' - righthand_file = 'icons/mob/inhands/items_righthand.dmi' - force = 15 - attack_verb = list("bitten", "eaten", "fin slapped") - hitsound = 'sound/weapons/bite.ogg' - var/used_blessing = FALSE - -/obj/item/nullrod/claymore/bostaff //May as well make it a "claymore" and inherit the blocking - name = "monk's staff" - desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts, it is now used to harass the clown." - w_class = WEIGHT_CLASS_BULKY - force = 15 - block_chance = 40 - slot_flags = ITEM_SLOT_BACK - sharpness = IS_BLUNT - hitsound = "swing_hit" - attack_verb = list("smashed", "slammed", "whacked", "thwacked") - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "bostaff0" - item_state = "bostaff0" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - -/obj/item/nullrod/pitchfork - icon_state = "pitchfork0" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - name = "unholy pitchfork" - w_class = WEIGHT_CLASS_NORMAL - desc = "Holding this makes you look absolutely devilish." - attack_verb = list("poked", "impaled", "pierced", "jabbed") - hitsound = 'sound/weapons/bladeslice.ogg' - sharpness = IS_SHARP - -/obj/item/nullrod/egyptian - name = "egyptian staff" - desc = "A tutorial in mummification is carved into the staff. You could probably craft the wraps if you had some cloth." - icon = 'icons/obj/guns/magic.dmi' - icon_state = "pharoah_sceptre" - item_state = "pharoah_sceptre" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - w_class = WEIGHT_CLASS_NORMAL - attack_verb = list("bashes", "smacks", "whacks") - -/obj/item/nullrod/hypertool - icon = 'icons/obj/device.dmi' - icon_state = "hypertool" - item_state = "hypertool" - lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - name = "hypertool" - desc = "A tool so powerful even you cannot perfectly use it." - armour_penetration = 35 - damtype = BRAIN - attack_verb = list("pulsed", "mended", "cut") - hitsound = 'sound/effects/sparks4.ogg' - -/obj/item/nullrod/spear - name = "ancient spear" - desc = "An ancient spear made of brass, I mean gold, I mean bronze." - icon_state = "ratvarian_spear" - item_state = "ratvarian_spear" - lefthand_file = 'icons/mob/inhands/antag/clockwork_lefthand.dmi' - righthand_file = 'icons/mob/inhands/antag/clockwork_righthand.dmi' - icon = 'icons/obj/clockwork_objects.dmi' - slot_flags = ITEM_SLOT_BELT - armour_penetration = 10 - sharpness = IS_SHARP_ACCURATE - w_class = WEIGHT_CLASS_BULKY - attack_verb = list("stabbed", "poked", "slashed", "clocked") - hitsound = 'sound/weapons/bladeslice.ogg' diff --git a/code/game/objects/items/implants/implantcase.dm b/code/game/objects/items/implants/implantcase.dm index 23f7aec9b199..ef8aeefd0517 100644 --- a/code/game/objects/items/implants/implantcase.dm +++ b/code/game/objects/items/implants/implantcase.dm @@ -1,7 +1,6 @@ /obj/item/implantcase name = "implant case" desc = "A glass case containing an implant." - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "implantcase-0" item_state = "implantcase" lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' diff --git a/code/game/objects/items/implants/implanter.dm b/code/game/objects/items/implants/implanter.dm index 6de461954cb2..8f95ef9942d7 100644 --- a/code/game/objects/items/implants/implanter.dm +++ b/code/game/objects/items/implants/implanter.dm @@ -1,7 +1,7 @@ /obj/item/implanter name = "implanter" desc = "A sterile automatic implant injector." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "implanter0" item_state = "syringe_0" lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' diff --git a/code/game/objects/items/implants/implantpad.dm b/code/game/objects/items/implants/implantpad.dm index 37667786262f..ccbda83067a2 100644 --- a/code/game/objects/items/implants/implantpad.dm +++ b/code/game/objects/items/implants/implantpad.dm @@ -1,7 +1,7 @@ /obj/item/implantpad name = "implant pad" desc = "Used to modify implants." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "implantpad-0" item_state = "electronic" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' diff --git a/code/game/objects/items/kitchen.dm b/code/game/objects/items/kitchen.dm index 4186e500ab98..f7ff9c187a9c 100644 --- a/code/game/objects/items/kitchen.dm +++ b/code/game/objects/items/kitchen.dm @@ -1,10 +1,7 @@ /* Kitchen tools * Contains: * Fork - * Kitchen knives - * Ritual Knife * Butcher's cleaver - * Combat Knife * Rolling Pins * Plastic Utensils */ @@ -64,222 +61,6 @@ user.visible_message("[user]'s fork snaps into tiny pieces in their hand.") qdel(src) -/obj/item/kitchen/knife - name = "kitchen knife" - icon = 'icons/obj/item/knife.dmi' - lefthand_file = 'icons/mob/inhands/weapons/knifes_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/knifes_righthand.dmi' - icon_state = "kitchenknife" - item_state = "kitchenknife" - desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." - pickup_sound = 'sound/items/handling/knife1_pickup.ogg' - drop_sound = 'sound/items/handling/knife3_drop.ogg' - flags_1 = CONDUCT_1 - force = 10 - w_class = WEIGHT_CLASS_SMALL - throwforce = 10 - hitsound = 'sound/weapons/bladeslice.ogg' - throw_speed = 3 - throw_range = 6 - custom_materials = list(/datum/material/iron=12000) - attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - sharpness = IS_SHARP_ACCURATE - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) - item_flags = EYE_STAB - var/bayonet = FALSE //Can this be attached to a gun? - custom_price = 250 - tool_behaviour = TOOL_KNIFE - -/obj/item/kitchen/knife/ComponentInitialize() - . = ..() - set_butchering() - -///Adds the butchering component, used to override stats for special cases -/obj/item/kitchen/knife/proc/set_butchering() - AddComponent(/datum/component/butchering, 80 - force, 100, force - 10) //bonus chance increases depending on force - -/obj/item/kitchen/knife/plastic - name = "plastic knife" - icon_state = "plastic_knife" - desc = "A very safe, barely sharp knife made of plastic. Good for cutting food and not much else." - force = 0 - w_class = WEIGHT_CLASS_TINY - throwforce = 0 - throw_range = 5 - custom_materials = list(/datum/material/plastic = 100) - attack_verb = list("prodded", "whiffed","scratched", "poked") - sharpness = IS_SHARP - custom_price = 50 - var/break_chance = 25 - -/obj/item/kitchen/knife/plastic/afterattack(mob/living/carbon/user) - .=..() - if(prob(break_chance)) - user.visible_message("[user]'s knife snaps into tiny pieces in their hand.") - qdel(src) - -/obj/item/kitchen/knife/pizza_cutter - name = "pizza cutter" - icon_state = "pizza_cutter" - desc = "A knife edge bent around a circle using the power of science. Perfect for safely cutting pizza." - force = 1 - w_class = WEIGHT_CLASS_SMALL - throwforce = 1 - throw_range = 6 - custom_materials = list(/datum/material/iron=4000) - attack_verb = list("prodded", "whiffed","rolled", "poked") - sharpness = IS_SHARP - -/obj/item/kitchen/knife/ritual - name = "ritual knife" - desc = "The unearthly energies that once powered this blade are now dormant." - icon = 'icons/obj/wizard.dmi' - icon_state = "render" - lefthand_file = 'icons/mob/inhands/equipment/kitchen_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/kitchen_righthand.dmi' - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/kitchen/knife/bloodletter - name = "bloodletter" - desc = "An occult looking dagger that is cold to the touch. Somehow, the flawless orb on the pommel is made entirely of liquid blood." - icon = 'icons/obj/ice_moon/artifacts.dmi' - icon_state = "bloodletter" - w_class = WEIGHT_CLASS_NORMAL - var/bleed_stacks_per_hit = 3 - -/obj/item/kitchen/knife/bloodletter/attack(mob/living/M, mob/living/carbon/user) - . =..() - if(istype(M) && (M.mob_biotypes & MOB_ORGANIC)) - var/datum/status_effect/stacking/saw_bleed/bloodletting/B = M.has_status_effect(/datum/status_effect/stacking/saw_bleed/bloodletting) - if(!B) - M.apply_status_effect(/datum/status_effect/stacking/saw_bleed/bloodletting, bleed_stacks_per_hit) - else - B.add_stacks(bleed_stacks_per_hit) - -/obj/item/kitchen/knife/butcher - name = "butcher's cleaver" - icon_state = "cleaver" - item_state = "cleaver" - desc = "A huge thing used for chopping and chopping up meat." - flags_1 = CONDUCT_1 - force = 15 - throwforce = 10 - custom_materials = list(/datum/material/iron=18000) - attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - w_class = WEIGHT_CLASS_NORMAL - custom_price = 600 - -/obj/item/kitchen/knife/hunting - name = "hunting knife" - desc = "Despite its name, it's mainly used for cutting meat from dead prey rather than actual hunting." - item_state = "huntingknife" - icon_state = "huntingknife" - -/obj/item/kitchen/knife/hunting/set_butchering() - AddComponent(/datum/component/butchering, 80 - force, 100, force + 10) - -/obj/item/kitchen/knife/switchblade - name = "switchblade" - icon_state = "switchblade" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - desc = "A sharp, concealable, spring-loaded knife." - flags_1 = CONDUCT_1 - force = 3 - w_class = WEIGHT_CLASS_SMALL - throwforce = 5 - custom_materials = list(/datum/material/iron=12000) - hitsound = 'sound/weapons/genhit.ogg' - attack_verb = list("stubbed", "poked") - resistance_flags = FIRE_PROOF - var/extended = 0 - -/obj/item/kitchen/knife/switchblade/attack_self(mob/user) - extended = !extended - playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) - if(extended) - force = 20 - w_class = WEIGHT_CLASS_NORMAL - throwforce = 23 - icon_state = "switchblade_ext" - attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - hitsound = 'sound/weapons/bladeslice.ogg' - sharpness = IS_SHARP - else - force = 3 - w_class = WEIGHT_CLASS_SMALL - throwforce = 5 - icon_state = "switchblade" - attack_verb = list("stubbed", "poked") - hitsound = 'sound/weapons/genhit.ogg' - sharpness = IS_BLUNT - -/obj/item/kitchen/knife/combat - name = "combat knife" - icon = 'icons/obj/world/melee.dmi' - icon_state = "combatknife" - item_state = "combatknife" - desc = "A military combat utility survival knife." - embedding = list("pain_mult" = 4, "embed_chance" = 65, "fall_chance" = 10, "ignore_throwspeed_threshold" = TRUE) - force = 20 - throwforce = 20 - attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "cut") - bayonet = TRUE - -/obj/item/kitchen/knife/combat/Initialize() - . = ..() - AddElement(/datum/element/world_icon, null, icon, 'icons/obj/item/knife.dmi') - -/obj/item/kitchen/knife/combat/survival - name = "survival knife" - icon_state = "survivalknife" - item_state = "survivalknife" - embedding = list("pain_mult" = 4, "embed_chance" = 35, "fall_chance" = 10) - desc = "A hunting grade survival knife." - force = 15 - throwforce = 15 - bayonet = TRUE - -/obj/item/kitchen/knife/combat/bone - name = "bone dagger" - item_state = "bone_dagger" - icon_state = "bone_dagger" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - desc = "A sharpened bone. The bare minimum in survival." - embedding = list("pain_mult" = 4, "embed_chance" = 35, "fall_chance" = 10) - force = 15 - throwforce = 15 - custom_materials = null - -/obj/item/kitchen/knife/combat/cyborg - name = "cyborg knife" - icon = 'icons/obj/items_cyborg.dmi' - icon_state = "knife_cyborg" - desc = "A cyborg-mounted plasteel knife. Extremely sharp and durable." - -/obj/item/kitchen/knife/shiv - name = "glass shiv" - icon = 'icons/obj/shards.dmi' - icon_state = "shiv" - item_state = "shiv" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - desc = "A makeshift glass shiv." - force = 8 - throwforce = 12 - attack_verb = list("shanked", "shivved") - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) - custom_materials = list(/datum/material/glass=400) - -/obj/item/kitchen/knife/shiv/carrot - name = "carrot shiv" - icon_state = "carrotshiv" - item_state = "carrotshiv" - icon = 'icons/obj/kitchen.dmi' - desc = "Unlike other carrots, you should probably keep this far away from your eyes." - custom_materials = null - /obj/item/kitchen/rollingpin name = "rolling pin" desc = "Used to knock out the Bartender." @@ -293,8 +74,6 @@ attack_verb = list("bashed", "battered", "bludgeoned", "thrashed", "whacked") custom_price = 200 -/* Trays moved to /obj/item/storage/bag */ - /obj/item/kitchen/spoon/plastic name = "plastic spoon" desc = "Just be careful your food doesn't melt the spoon first." @@ -305,9 +84,3 @@ custom_materials = list(/datum/material/plastic=120) custom_price = 50 var/break_chance = 25 - -/obj/item/kitchen/knife/plastic/afterattack(mob/living/carbon/user) - .=..() - if(prob(break_chance)) - user.visible_message("[user]'s spoon snaps into tiny pieces in their hand.") - qdel(src) diff --git a/code/game/objects/items/chainsaw.dm b/code/game/objects/items/melee/chainsaw.dm similarity index 98% rename from code/game/objects/items/chainsaw.dm rename to code/game/objects/items/melee/chainsaw.dm index f9181ef3ac6a..494ec65cdb5a 100644 --- a/code/game/objects/items/chainsaw.dm +++ b/code/game/objects/items/melee/chainsaw.dm @@ -4,6 +4,7 @@ name = "chainsaw" desc = "A versatile power tool. Useful for limbing trees and delimbing humans." icon_state = "chainsaw_off" + icon = 'icons/obj/weapon/axe.dmi' lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi' flags_1 = CONDUCT_1 diff --git a/code/game/objects/items/dualsaber.dm b/code/game/objects/items/melee/dualsaber.dm similarity index 99% rename from code/game/objects/items/dualsaber.dm rename to code/game/objects/items/melee/dualsaber.dm index 7ddb02035927..965979db215a 100644 --- a/code/game/objects/items/dualsaber.dm +++ b/code/game/objects/items/melee/dualsaber.dm @@ -2,7 +2,7 @@ * Double-Bladed Energy Swords - Cheridan */ /obj/item/dualsaber - icon = 'icons/obj/transforming_energy.dmi' + icon = 'icons/obj/weapon/energy.dmi' icon_state = "dualsaber" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm index b500eadca2f2..34219662e53d 100644 --- a/code/game/objects/items/melee/energy.dm +++ b/code/game/objects/items/melee/energy.dm @@ -1,5 +1,5 @@ /obj/item/melee/transforming/energy - icon = 'icons/obj/transforming_energy.dmi' + icon = 'icons/obj/weapon/energy.dmi' hitsound_on = 'sound/weapons/blade1.ogg' heat = 3500 max_integrity = 200 @@ -255,7 +255,6 @@ /obj/item/melee/transforming/energy/ctf name = "energy sword" desc = "That cable over there, I'm going to cut it." - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "plasmasword0" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' diff --git a/code/game/objects/items/energyhalberd.dm b/code/game/objects/items/melee/energyhalberd.dm similarity index 98% rename from code/game/objects/items/energyhalberd.dm rename to code/game/objects/items/melee/energyhalberd.dm index 416964bbfded..62c6f5de6020 100644 --- a/code/game/objects/items/energyhalberd.dm +++ b/code/game/objects/items/melee/energyhalberd.dm @@ -3,8 +3,9 @@ * Copied mostly from dualsaber.dm to avoid inhertance issues */ /obj/item/energyhalberd - icon = 'icons/obj/transforming_energy.dmi' + icon = 'icons/obj/weapon/energy.dmi' icon_state = "halberd" + icon = 'icons/obj/weapon/energy.dmi' lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' name = "energy halberd" diff --git a/code/game/objects/items/fireaxe.dm b/code/game/objects/items/melee/fireaxe.dm similarity index 72% rename from code/game/objects/items/fireaxe.dm rename to code/game/objects/items/melee/fireaxe.dm index b2e5534a92b0..bfbed0fe361b 100644 --- a/code/game/objects/items/fireaxe.dm +++ b/code/game/objects/items/melee/fireaxe.dm @@ -1,13 +1,7 @@ -/* - * Fireaxe - */ -/obj/item/fireaxe // DEM AXES MAN, marker -Agouri - icon_state = "fireaxe0" - base_icon_state = "fireaxe" +/obj/item/melee/axe + icon = 'icons/obj/weapon/axe.dmi' lefthand_file = 'icons/mob/inhands/weapons/axes_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/axes_righthand.dmi' - name = "fire axe" - desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?" force = 5 throwforce = 15 w_class = WEIGHT_CLASS_BULKY @@ -21,52 +15,58 @@ species_exception = list(/datum/species/kepori) var/wielded = FALSE // track wielded status on item -/obj/item/fireaxe/Initialize() +/obj/item/melee/axe/Initialize() . = ..() RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) -/obj/item/fireaxe/ComponentInitialize() +/obj/item/melee/axe/ComponentInitialize() . = ..() AddComponent(/datum/component/butchering, 100, 80, 0 , hitsound) //axes are not known for being precision butchering tools AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=24, icon_wielded="[base_icon_state]1") /// triggered on wield of two handed item -/obj/item/fireaxe/proc/on_wield(obj/item/source, mob/user) +/obj/item/melee/axe/proc/on_wield(obj/item/source, mob/user) SIGNAL_HANDLER wielded = TRUE /// triggered on unwield of two handed item -/obj/item/fireaxe/proc/on_unwield(obj/item/source, mob/user) +/obj/item/melee/axe/proc/on_unwield(obj/item/source, mob/user) SIGNAL_HANDLER wielded = FALSE -/obj/item/fireaxe/update_icon_state() +/obj/item/melee/axe/update_icon_state() icon_state = "[base_icon_state]0" return ..() -/obj/item/fireaxe/afterattack(atom/A, mob/user, proximity) +/obj/item/melee/axe/afterattack(atom/A, mob/user, proximity) . = ..() if(!proximity) return if(wielded) //destroys windows and grilles in one hit if(istype(A, /obj/structure/window) || istype(A, /obj/structure/grille)) var/obj/structure/W = A - W.obj_destruction("fireaxe") + W.obj_destruction("axe") -/* - * Bone Axe - */ -/obj/item/fireaxe/boneaxe // Blatant imitation of the fireaxe, but made out of bone. - icon_state = "bone_axe0" - base_icon_state = "bone_axe" +/obj/item/melee/axe/fire // DEM AXES MAN, marker -Agouri + name = "fire axe" + desc = "Truly, the weapon of a madman. Who would think to fight fire with an axe?" + icon_state = "fireaxe0" + base_icon_state = "fireaxe" + +/obj/item/melee/axe/bone // Blatant imitation of the fireaxe, but made out of bone. name = "bone axe" desc = "A large, vicious axe crafted out of several sharpened bone plates and crudely tied together. Made of monsters, by killing monsters, for killing monsters." - icon = 'icons/obj/items_and_weapons.dmi' + icon_state = "bone_axe0" + base_icon_state = "bone_axe" -/obj/item/fireaxe/boneaxe/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=23, icon_wielded="[base_icon_state]1") +/obj/item/melee/axe/scrap + name = "scrap axe" + desc = "Oversided and with a pretty dull blade, its decent against armour" + armour_penetration = 10 +/obj/item/melee/axe/scrap/ComponentInitialize() + . = ..() + AddComponent(/datum/component/two_handed, force_unwielded=5, force_wielded=22, icon_wielded="[base_icon_state]1") diff --git a/code/game/objects/items/melee/knife.dm b/code/game/objects/items/melee/knife.dm new file mode 100644 index 000000000000..83022e7125ff --- /dev/null +++ b/code/game/objects/items/melee/knife.dm @@ -0,0 +1,208 @@ +/obj/item/melee/knife + icon_state = "kitchenknife" + item_state = "kitchenknife" + icon = 'icons/obj/weapon/knife.dmi' + lefthand_file = 'icons/mob/inhands/weapons/knifes_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/knifes_righthand.dmi' + pickup_sound = 'sound/items/handling/knife1_pickup.ogg' + drop_sound = 'sound/items/handling/knife3_drop.ogg' + flags_1 = CONDUCT_1 + force = 10 + w_class = WEIGHT_CLASS_SMALL + throwforce = 10 + hitsound = 'sound/weapons/bladeslice.ogg' + throw_speed = 3 + throw_range = 6 + custom_materials = list(/datum/material/iron=12000) + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + sharpness = IS_SHARP_ACCURATE + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) + item_flags = EYE_STAB + tool_behaviour = TOOL_KNIFE + + +/obj/item/melee/knife/ComponentInitialize() + . = ..() + set_butchering() + +///Adds the butchering component, used to override stats for special cases +/obj/item/melee/knife/proc/set_butchering() + AddComponent(/datum/component/butchering, 80 - force, 100, force - 10) //bonus chance increases depending on force + +/obj/item/melee/knife/kitchen + name = "kitchen knife" + icon_state = "kitchenknife" + item_state = "kitchenknife" + desc = "A general purpose Chef's Knife made by SpaceCook Incorporated. Guaranteed to stay sharp for years to come." + +/obj/item/melee/knife/plastic + name = "plastic knife" + icon_state = "plastic_knife" + desc = "A very safe, barely sharp knife made of plastic. Good for cutting food and not much else." + force = 0 + w_class = WEIGHT_CLASS_TINY + throwforce = 0 + throw_range = 5 + custom_materials = list(/datum/material/plastic = 100) + attack_verb = list("prodded", "whiffed","scratched", "poked") + sharpness = IS_SHARP + custom_price = 50 + var/break_chance = 25 + +/obj/item/melee/knife/plastic/afterattack(mob/living/carbon/user) + .=..() + if(prob(break_chance)) + user.visible_message("[user]'s spoon snaps into tiny pieces in their hand.") + qdel(src) + + +/obj/item/melee/knife/plastic/afterattack(mob/living/carbon/user) + .=..() + if(prob(break_chance)) + user.visible_message("[user]'s knife snaps into tiny pieces in their hand.") + qdel(src) + +/obj/item/melee/knife/pizza_cutter + name = "pizza cutter" + icon_state = "pizza_cutter" + desc = "A knife edge bent around a circle using the power of science. Perfect for safely cutting pizza." + force = 1 + w_class = WEIGHT_CLASS_SMALL + throwforce = 1 + throw_range = 6 + custom_materials = list(/datum/material/iron=4000) + attack_verb = list("prodded", "whiffed","rolled", "poked") + sharpness = IS_SHARP + +/obj/item/melee/knife/butcher + name = "butcher's cleaver" + icon_state = "cleaver" + item_state = "cleaver" + desc = "A huge thing used for chopping and chopping up meat." + flags_1 = CONDUCT_1 + force = 15 + throwforce = 10 + custom_materials = list(/datum/material/iron=18000) + attack_verb = list("cleaved", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + w_class = WEIGHT_CLASS_NORMAL + custom_price = 600 + +/obj/item/melee/knife/hunting + name = "hunting knife" + desc = "Despite its name, it's mainly used for cutting meat from dead prey rather than actual hunting." + item_state = "huntingknife" + icon_state = "huntingknife" + +/obj/item/melee/knife/hunting/set_butchering() + AddComponent(/datum/component/butchering, 80 - force, 100, force + 10) + +/obj/item/melee/knife/combat + name = "combat knife" + icon_state = "combatknife" + item_state = "combatknife" + desc = "A military combat utility survival knife." + embedding = list("pain_mult" = 4, "embed_chance" = 65, "fall_chance" = 10, "ignore_throwspeed_threshold" = TRUE) + force = 20 + throwforce = 20 + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "cut") + +/obj/item/melee/knife/survival + name = "survival knife" + icon_state = "survivalknife" + item_state = "survivalknife" + embedding = list("pain_mult" = 4, "embed_chance" = 35, "fall_chance" = 10) + desc = "A hunting grade survival knife." + force = 15 + throwforce = 15 + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "cut") + +/obj/item/melee/knife/bone + name = "bone dagger" + item_state = "bone_dagger" + icon_state = "bone_dagger" + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + desc = "A sharpened bone. The bare minimum in survival." + embedding = list("pain_mult" = 4, "embed_chance" = 35, "fall_chance" = 10) + force = 15 + throwforce = 15 + custom_materials = null + +/obj/item/melee/knife/combat/cyborg + name = "cyborg knife" + icon = 'icons/obj/items_cyborg.dmi' + icon_state = "knife_cyborg" + desc = "A cyborg-mounted plasteel knife. Extremely sharp and durable." + +/obj/item/melee/knife/shiv + name = "glass shiv" + icon = 'icons/obj/shards.dmi' + icon_state = "shiv" + item_state = "shiv" + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + desc = "A makeshift glass shiv." + force = 8 + throwforce = 12 + attack_verb = list("shanked", "shivved") + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) + custom_materials = list(/datum/material/glass=400) + +/obj/item/melee/knife/shiv/carrot + name = "carrot shiv" + icon_state = "carrotshiv" + item_state = "carrotshiv" + icon = 'icons/obj/kitchen.dmi' + desc = "Unlike other carrots, you should probably keep this far away from your eyes." + custom_materials = null + +/obj/item/melee/knife/switchblade + name = "switchblade" + icon_state = "switchblade" + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + desc = "A sharp, concealable, spring-loaded knife." + flags_1 = CONDUCT_1 + force = 3 + w_class = WEIGHT_CLASS_SMALL + throwforce = 5 + throw_speed = 3 + throw_range = 6 + custom_materials = list(/datum/material/iron=12000) + hitsound = 'sound/weapons/genhit.ogg' + attack_verb = list("stubbed", "poked") + resistance_flags = FIRE_PROOF + var/extended = 0 + +/obj/item/melee/knife/switchblade/attack_self(mob/user) + extended = !extended + playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) + if(extended) + force = 20 + w_class = WEIGHT_CLASS_NORMAL + throwforce = 23 + icon_state = "switchblade_ext" + attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + hitsound = 'sound/weapons/bladeslice.ogg' + sharpness = IS_SHARP + else + force = 3 + w_class = WEIGHT_CLASS_SMALL + throwforce = 5 + icon_state = "switchblade" + attack_verb = list("stubbed", "poked") + hitsound = 'sound/weapons/genhit.ogg' + sharpness = IS_BLUNT + +/obj/item/melee/knife/letter_opener + name = "letter opener" + icon = 'icons/obj/items.dmi' + icon_state = "letter_opener" + desc = "A military combat utility survival knife." + embedding = list("pain_mult" = 4, "embed_chance" = 65, "fall_chance" = 10, "ignore_throwspeed_threshold" = TRUE) + force = 15 + throwforce = 15 + unique_reskin = list("Traditional" = "letter_opener", + "Boxcutter" = "letter_opener_b", + "Corporate" = "letter_opener_a" + ) diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index 9d90a1a43373..afb4bfe2ec33 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -1,5 +1,14 @@ /obj/item/melee item_flags = NEEDS_PERMIT + icon = 'icons/obj/weapon/misc.dmi' + lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' + var/projectile_block_chance = 0 + +/obj/item/melee/sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(attack_type == PROJECTILE_ATTACK) + final_block_chance = projectile_block_chance //Don't bring a sword to a gunfight + return ..() /obj/item/melee/proc/check_martial_counter(mob/living/carbon/human/target, mob/living/carbon/human/user) if(target.check_block()) @@ -8,14 +17,11 @@ user.Stun(40) return TRUE - /obj/item/melee/chainofcommand name = "chain of command" desc = "A tool used by great men to placate the frothing masses." icon_state = "chain" item_state = "chain" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' flags_1 = CONDUCT_1 slot_flags = ITEM_SLOT_BELT force = 10 @@ -44,487 +50,11 @@ . = ..() AddComponent(/datum/component/butchering, 60, 80) //very imprecise -/obj/item/melee/sabre - name = "officer's sabre" - desc = "An elegant weapon, its monomolecular edge is capable of cutting through flesh and bone with ease." - icon_state = "sabre" - item_state = "sabre" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - pickup_sound = 'sound/items/unsheath.ogg' - drop_sound = 'sound/items/handling/metal_drop.ogg' - flags_1 = CONDUCT_1 - obj_flags = UNIQUE_RENAME - force = 15 - throwforce = 10 - w_class = WEIGHT_CLASS_BULKY - block_chance = 60 - armour_penetration = 75 - sharpness = IS_SHARP - attack_verb = list("slashed", "cut") - hitsound = 'sound/weapons/rapierhit.ogg' - custom_materials = list(/datum/material/iron = 1000) - -/obj/item/melee/sabre/Initialize() - . = ..() - AddComponent(/datum/component/butchering, 30, 95, 5) //fast and effective, but as a sword, it might damage the results. - -/obj/item/melee/sabre/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = 0 //Don't bring a sword to a gunfight - return ..() - -/obj/item/melee/sabre/on_enter_storage(datum/component/storage/concrete/S) - var/obj/item/storage/belt/sabre/B = S.real_location() - if(istype(B)) - playsound(B, 'sound/items/sheath.ogg', 25, TRUE) - -/obj/item/melee/sabre/solgov - name = "solarian sabre" - desc = "A refined ceremonial blade often given to soldiers and high ranking officials of SolGov." - icon_state = "sabresolgov" - item_state = "sabresolgov" - -/obj/item/melee/sabre/suns - name = "SUNS sabre" - desc = "A blade of Solarian origin given to SUNS followers." - icon_state = "suns-sabre" - item_state = "suns-sabre" - -/obj/item/melee/sabre/suns/captain - name = "SUNS captain sabre" - desc = "An elegant blade awarded to SUNS captains. Despite its higher craftmanship, it appears to be just as effective as a normal sabre." - icon_state = "suns-capsabre" - item_state = "suns-capsabre" - -/obj/item/melee/sabre/suns/cmo - name = "SUNS stick sabre" - desc = "A thin blade used by SUNS medical instructors." - icon_state = "suns-swordstick" - item_state = "suns-swordstick" - -/obj/item/melee/sabre/suns/telescopic - name = "telescopic sabre" - desc = "A telescopic and retractable blade given to SUNS peacekeepers for easy concealment and carry. It's design makes it slightly less effective than normal sabres sadly, however it is still excelent at piercing armor." - icon_state = "suns-tsword" - item_state = "suns-tsword" - force = 0 - throwforce = 0 - block_chance = 0 - - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - attack_verb = list("smacked", "prodded") - - - var/extended = FALSE - var/extend_sound = 'sound/weapons/batonextend.ogg' - - - - var/on_icon_state = "suns-tsword_ext" - var/on_item_state = "suns-tsword_ext" - var/off_icon_state = "suns-tsword" - var/off_item_state = "suns-tsword" - - var/force_on = 10 - var/on_throwforce = 10 - var/on_blockchance = 40 - - var/force_off = 0 - var/off_throwforce = 0 - var/off_blockchance = 0 - - var/weight_class_on = WEIGHT_CLASS_BULKY - -/obj/item/melee/sabre/suns/telescopic/attack_self(mob/user) - extended = !extended - - if(extended) - to_chat(user, "You extend the [src].") - icon_state = on_icon_state - item_state = on_item_state - slot_flags = 0 - w_class = weight_class_on - force = force_on - throwforce = on_throwforce - block_chance = on_blockchance - attack_verb = list("slashed", "cut") - else - to_chat(user, "You collapse the [src].") - icon_state = off_icon_state - item_state = off_item_state - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - force = force_off - throwforce = off_throwforce - block_chance = off_blockchance - attack_verb = list("smacked", "prodded") - - playsound(get_turf(src), extend_sound, 50, TRUE) - add_fingerprint(user) - -/obj/item/melee/beesword - name = "The Stinger" - desc = "Taken from a giant bee and folded over one thousand times in pure honey. Can sting through anything." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "beesword" - item_state = "stinger" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - force = 5 - w_class = WEIGHT_CLASS_BULKY - sharpness = IS_SHARP - throwforce = 10 - block_chance = 20 - armour_penetration = 65 - attack_verb = list("slashed", "stung", "prickled", "poked") - hitsound = 'sound/weapons/rapierhit.ogg' - -/obj/item/melee/beesword/afterattack(atom/target, mob/user, proximity) - . = ..() - if(!proximity) - return - user.changeNext_move(CLICK_CD_RAPID) - if(iscarbon(target)) - var/mob/living/carbon/H = target - H.reagents.add_reagent(/datum/reagent/toxin, 4) - -/obj/item/melee/classic_baton - name = "police baton" - desc = "A wooden truncheon for beating criminal scum." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "classic_baton" - item_state = "classic_baton" - lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/security_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - force = 12 //9 hit crit - w_class = WEIGHT_CLASS_NORMAL - - var/cooldown_check = 0 // Used interally, you don't want to modify - - var/cooldown = 40 // Default wait time until can stun again. - var/knockdown_time_carbon = (1.5 SECONDS) // Knockdown length for carbons. - var/stun_time_silicon = (5 SECONDS) // If enabled, how long do we stun silicons. - var/stamina_damage = 55 // Do we deal stamina damage. - var/affect_silicon = FALSE // Does it stun silicons. - var/on_sound // "On" sound, played when switching between able to stun or not. - var/on_stun_sound = 'sound/effects/woodhit.ogg' // Default path to sound for when we stun. - var/stun_animation = TRUE // Do we animate the "hit" when stunning. - var/on = TRUE // Are we on or off. - - var/on_icon_state // What is our sprite when turned on - var/off_icon_state // What is our sprite when turned off - var/on_item_state // What is our in-hand sprite when turned on - var/force_on // Damage when on - not stunning - var/force_off // Damage when off - not stunning - var/weight_class_on // What is the new size class when turned on - -// Description for trying to stun when still on cooldown. -/obj/item/melee/classic_baton/proc/get_wait_description() - return - -// Description for when turning their baton "on" -/obj/item/melee/classic_baton/proc/get_on_description() - . = list() - - .["local_on"] = "You extend the baton." - .["local_off"] = "You collapse the baton." - - return . - -// Default message for stunning mob. -/obj/item/melee/classic_baton/proc/get_stun_description(mob/living/target, mob/living/user) - . = list() - - .["visible"] = "[user] knocks [target] down with [src]!" - .["local"] = "[user] knocks you down with [src]!" - - return . - -// Default message for stunning a silicon. -/obj/item/melee/classic_baton/proc/get_silicon_stun_description(mob/living/target, mob/living/user) - . = list() - - .["visible"] = "[user] pulses [target]'s sensors with the baton!" - .["local"] = "You pulse [target]'s sensors with the baton!" - - return . - -// Are we applying any special effects when we stun to carbon -/obj/item/melee/classic_baton/proc/additional_effects_carbon(mob/living/target, mob/living/user) - return - -// Are we applying any special effects when we stun to silicon -/obj/item/melee/classic_baton/proc/additional_effects_silicon(mob/living/target, mob/living/user) - return - -/obj/item/melee/classic_baton/attack(mob/living/target, mob/living/user) - if(!on) - return ..() - - add_fingerprint(user) - if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) - to_chat(user, "You hit yourself over the head!") - - user.Paralyze(knockdown_time_carbon * force) - user.apply_damage(stamina_damage, STAMINA, BODY_ZONE_HEAD) - - additional_effects_carbon(user) // user is the target here - if(ishuman(user)) - var/mob/living/carbon/human/H = user - H.apply_damage(2*force, BRUTE, BODY_ZONE_HEAD) - else - user.take_bodypart_damage(2*force) - return - if(iscyborg(target)) - // We don't stun if we're on harm. - if (user.a_intent != INTENT_HARM) - if (affect_silicon) - var/list/desc = get_silicon_stun_description(target, user) - - target.flash_act(affect_silicon = TRUE) - target.Paralyze(stun_time_silicon) - additional_effects_silicon(target, user) - - user.visible_message(desc["visible"], desc["local"]) - playsound(get_turf(src), on_stun_sound, 100, TRUE, -1) - - if (stun_animation) - user.do_attack_animation(target) - else - ..() - else - ..() - return - if(!isliving(target)) - return - if (user.a_intent == INTENT_HARM) - if(!..()) - return - if(!iscyborg(target)) - return - else - if(cooldown_check <= world.time) - if(ishuman(target)) - var/mob/living/carbon/human/H = target - if (H.check_shields(src, 0, "[user]'s [name]", MELEE_ATTACK)) - return - if(check_martial_counter(H, user)) - return - - var/list/desc = get_stun_description(target, user) - - if (stun_animation) - user.do_attack_animation(target) - - playsound(get_turf(src), on_stun_sound, 75, TRUE, -1) - target.Knockdown(knockdown_time_carbon) - target.apply_damage(stamina_damage, STAMINA, BODY_ZONE_CHEST) - additional_effects_carbon(target, user) - - log_combat(user, target, "stunned", src) - add_fingerprint(user) - - target.visible_message(desc["visible"], desc["local"]) - - if(!iscarbon(user)) - target.LAssailant = null - else - target.LAssailant = WEAKREF(user) - cooldown_check = world.time + cooldown - else - var/wait_desc = get_wait_description() - if (wait_desc) - to_chat(user, wait_desc) - -/obj/item/conversion_kit - name = "conversion kit" - desc = "A strange box containing wood working tools and an instruction paper to turn stun batons into something else." - icon = 'icons/obj/storage.dmi' - icon_state = "uk" - custom_price = 450 - -/obj/item/melee/classic_baton/telescopic - name = "telescopic baton" - desc = "A compact yet robust personal defense weapon. Can be concealed when folded." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "telebaton_0" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - item_state = null - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - item_flags = NONE - force = 0 - on = FALSE - on_sound = 'sound/weapons/batonextend.ogg' - - on_icon_state = "telebaton_1" - off_icon_state = "telebaton_0" - on_item_state = "nullrod" - force_on = 10 - force_off = 0 - weight_class_on = WEIGHT_CLASS_BULKY - -/obj/item/melee/classic_baton/telescopic/attack_self(mob/user) - on = !on - var/list/desc = get_on_description() - - if(on) - to_chat(user, desc["local_on"]) - icon_state = on_icon_state - item_state = on_item_state - w_class = weight_class_on - force = force_on - attack_verb = list("smacked", "struck", "cracked", "beaten") - else - to_chat(user, desc["local_off"]) - icon_state = off_icon_state - item_state = null //no sprite for concealment even when in hand - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - force = force_off - attack_verb = list("hit", "poked") - - playsound(src.loc, on_sound, 50, TRUE) - add_fingerprint(user) - -/obj/item/melee/classic_baton/telescopic/contractor_baton - name = "contractor baton" - desc = "A compact, specialised baton assigned to Syndicate contractors. Applies light electrical shocks to targets." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "contractor_baton_0" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - item_state = null - slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - item_flags = NONE - force = 5 - - cooldown = 25 - stamina_damage = 85 - affect_silicon = TRUE - on_sound = 'sound/weapons/contractorbatonextend.ogg' - on_stun_sound = 'sound/effects/contractorbatonhit.ogg' - - on_icon_state = "contractor_baton_1" - off_icon_state = "contractor_baton_0" - on_item_state = "contractor_baton" - force_on = 16 - force_off = 5 - weight_class_on = WEIGHT_CLASS_NORMAL - -/obj/item/melee/classic_baton/telescopic/contractor_baton/get_wait_description() - return "The baton is still charging!" - -/obj/item/melee/classic_baton/telescopic/contractor_baton/additional_effects_carbon(mob/living/target, mob/living/user) - target.Jitter(20) - target.stuttering += 20 - -/obj/item/melee/supermatter_sword - name = "supermatter sword" - desc = "In a universe full of bad ideas, this might just be the worst." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "supermatter_sword" - item_state = "supermatter_sword" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - slot_flags = null - w_class = WEIGHT_CLASS_BULKY - force = 0.001 - armour_penetration = 1000 - var/obj/machinery/power/supermatter_crystal/shard - var/balanced = 1 - force_string = "INFINITE" - -/obj/item/melee/supermatter_sword/Initialize() - . = ..() - shard = new /obj/machinery/power/supermatter_crystal(src) - qdel(shard.countdown) - shard.countdown = null - START_PROCESSING(SSobj, src) - visible_message("[src] appears, balanced ever so perfectly on its hilt. This isn't ominous at all.") - -/obj/item/melee/supermatter_sword/process() - if(balanced || throwing || ismob(src.loc) || isnull(src.loc)) - return - if(!isturf(src.loc)) - var/atom/target = src.loc - forceMove(target.loc) - consume_everything(target) - else - var/turf/T = get_turf(src) - if(!isspaceturf(T)) - consume_turf(T) - -/obj/item/melee/supermatter_sword/afterattack(target, mob/user, proximity_flag) - . = ..() - if(user && target == user) - user.dropItemToGround(src) - if(proximity_flag) - consume_everything(target) - -/obj/item/melee/supermatter_sword/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) - ..() - if(ismob(hit_atom)) - var/mob/M = hit_atom - if(src.loc == M) - M.dropItemToGround(src) - consume_everything(hit_atom) - -/obj/item/melee/supermatter_sword/pickup(user) - ..() - balanced = 0 - -/obj/item/melee/supermatter_sword/ex_act(severity, target) - visible_message("The blast wave smacks into [src] and rapidly flashes to ash.",\ - "You hear a loud crack as you are washed with a wave of heat.") - consume_everything() - -/obj/item/melee/supermatter_sword/acid_act() - visible_message("The acid smacks into [src] and rapidly flashes to ash.",\ - "You hear a loud crack as you are washed with a wave of heat.") - consume_everything() - -/obj/item/melee/supermatter_sword/bullet_act(obj/projectile/P) - visible_message("[P] smacks into [src] and rapidly flashes to ash.",\ - "You hear a loud crack as you are washed with a wave of heat.") - consume_everything(P) - return BULLET_ACT_HIT - - -/obj/item/melee/supermatter_sword/proc/consume_everything(target) - if(isnull(target)) - shard.Consume() - else if(!isturf(target)) - shard.Bumped(target) - else - consume_turf(target) - -/obj/item/melee/supermatter_sword/proc/consume_turf(turf/T) - var/oldtype = T.type - var/turf/newT = T.ScrapeAway(flags = CHANGETURF_INHERIT_AIR) - if(newT.type == oldtype) - return - playsound(T, 'sound/effects/supermatter.ogg', 50, TRUE) - T.visible_message("[T] smacks into [src] and rapidly flashes to ash.",\ - "You hear a loud crack as you are washed with a wave of heat.") - shard.Consume() - -/obj/item/melee/supermatter_sword/add_blood_DNA(list/blood_dna) - return FALSE - /obj/item/melee/curator_whip name = "curator's whip" desc = "Somewhat eccentric and outdated, it still stings like hell to be hit by." icon_state = "whip" item_state = "chain" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' slot_flags = ITEM_SLOT_BELT force = 15 w_class = WEIGHT_CLASS_NORMAL @@ -538,345 +68,128 @@ H.drop_all_held_items() H.visible_message("[user] disarms [H]!", "[user] disarmed you!") -/obj/item/melee/roastingstick - name = "advanced roasting stick" - desc = "A telescopic roasting stick with a miniature shield generator designed to ensure entry into various high-tech shielded cooking ovens and firepits." - icon_state = "roastingstick_0" - item_state = "null" +/obj/item/melee/cleric_mace + name = "cleric mace" + desc = "The grandson of the club, yet the grandfather of the baseball bat. Most notably used by holy orders in days past." + icon_state = "mace_greyscale" + item_state = "mace_greyscale" + material_flags = MATERIAL_ADD_PREFIX | MATERIAL_COLOR | MATERIAL_AFFECT_STATISTICS //Material type changes the prefix as well as the color. + custom_materials = list(/datum/material/iron = 12000) //Defaults to an Iron Mace. slot_flags = ITEM_SLOT_BELT - w_class = WEIGHT_CLASS_SMALL - item_flags = NONE - force = 0 - attack_verb = list("hit", "poked") - var/obj/item/reagent_containers/food/snacks/sausage/held_sausage - var/static/list/ovens - var/on = FALSE - var/datum/beam/beam - -/obj/item/melee/roastingstick/Initialize() - . = ..() - if (!ovens) - ovens = typecacheof(list(/obj/singularity, /obj/machinery/power/supermatter_crystal, /obj/structure/bonfire)) - -/obj/item/melee/roastingstick/attack_self(mob/user) - on = !on - if(on) - extend(user) - else - if (held_sausage) - to_chat(user, "You can't retract [src] while [held_sausage] is attached!") - return - retract(user) - - playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) - add_fingerprint(user) - -/obj/item/melee/roastingstick/attackby(atom/target, mob/user) - ..() - if (istype(target, /obj/item/reagent_containers/food/snacks/sausage)) - if (!on) - to_chat(user, "You must extend [src] to attach anything to it!") - return - if (held_sausage) - to_chat(user, "[held_sausage] is already attached to [src]!") - return - if (user.transferItemToLoc(target, src)) - held_sausage = target - else - to_chat(user, "[target] doesn't seem to want to get on [src]!") - update_appearance() - -/obj/item/melee/roastingstick/attack_hand(mob/user) - ..() - if (held_sausage) - user.put_in_hands(held_sausage) - held_sausage = null - update_appearance() - -/obj/item/melee/roastingstick/update_overlays() - . = ..() - if (held_sausage) - . += mutable_appearance(icon, "roastingstick_sausage") - -/obj/item/melee/roastingstick/proc/extend(user) - to_chat(user, "You extend [src].") - icon_state = "roastingstick_1" - item_state = "nullrod" + force = 14 w_class = WEIGHT_CLASS_BULKY - -/obj/item/melee/roastingstick/proc/retract(user) - to_chat(user, "You collapse [src].") - icon_state = "roastingstick_0" - item_state = null - w_class = WEIGHT_CLASS_SMALL - -/obj/item/melee/roastingstick/handle_atom_del(atom/target) - if (target == held_sausage) - held_sausage = null - update_appearance() - -/obj/item/melee/roastingstick/afterattack(atom/target, mob/user, proximity) - . = ..() - if (!on) - return - if (is_type_in_typecache(target, ovens)) - if (held_sausage && held_sausage.roasted) - to_chat(src, "Your [held_sausage] has already been cooked!") - return - if (istype(target, /obj/singularity) && get_dist(user, target) < 10) - to_chat(user, "You send [held_sausage] towards [target].") - playsound(src, 'sound/items/rped.ogg', 50, TRUE) - beam = user.Beam(target,icon_state="rped_upgrade",time=100) - else if (user.Adjacent(target)) - to_chat(user, "You extend [src] towards [target].") - playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) - else - return - if(do_after(user, 100, target = user)) - finish_roasting(user, target) - else - QDEL_NULL(beam) - playsound(src, 'sound/weapons/batonextend.ogg', 50, TRUE) - -/obj/item/melee/roastingstick/proc/finish_roasting(user, atom/target) - to_chat(user, "You finish roasting [held_sausage].") - playsound(src,'sound/items/welder2.ogg',50,TRUE) - held_sausage.add_atom_colour(rgb(103,63,24), FIXED_COLOUR_PRIORITY) - held_sausage.name = "[target.name]-roasted [held_sausage.name]" - held_sausage.desc = "[held_sausage.desc] It has been cooked to perfection on \a [target]." - update_appearance() - -/obj/item/melee/greykingsword - name = "blade of the grey-king" - desc = "A legendary sword made with 3 replica katanas nailed together and dipped in heavy narcotics." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "grey_sword" - item_state = "swordoff" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - flags_1 = CONDUCT_1 - slot_flags = ITEM_SLOT_BACK - force = 15 throwforce = 8 - w_class = WEIGHT_CLASS_NORMAL - block_chance = 30 - attack_verb = list("struck", "slashed", "mall-ninjad", "tided", "multi-shanked", "shredded") - custom_materials = list(/datum/material/iron = 1420) - sharpness = IS_SHARP - - var/prick_chance = 50 - var/prick_chems = list( - /datum/reagent/toxin = 10, - /datum/reagent/toxin/mindbreaker = 10, - /datum/reagent/drug/space_drugs = 10, - /datum/reagent/drug/crank = 5, - /datum/reagent/drug/methamphetamine = 5, - /datum/reagent/drug/bath_salts = 5, - /datum/reagent/drug/aranesp = 5, - /datum/reagent/drug/pumpup = 10, - /datum/reagent/medicine/omnizine = 10, - /datum/reagent/medicine/earthsblood = 15, - /datum/reagent/medicine/omnizine/protozine = 15 - ) - -/obj/item/melee/greykingsword/afterattack(atom/target, mob/user, proximity_flag, click_parameters) - if (iscarbon(target) && prob(prick_chance)) - var/mob/living/carbon/C = target - var/datum/reagent/R = pick(prick_chems) - C.reagents.add_reagent(R, prick_chems[R]) - C.visible_message("[user] is pricked!", \ - "You've been pricked by the [src]!") - log_combat(user, C, "pricked", src.name, "with [prick_chems[R]]u of [R]") - return ..() - - -/obj/item/melee/greykingsword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text, final_block_chance, damage, attack_type) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = 1 //Still not like your Japaniese animes though. - return ..() - -/obj/item/kitchen/knife/letter_opener - name = "letter opener" - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "letter_opener" - desc = "A military combat utility survival knife." - embedding = list("pain_mult" = 4, "embed_chance" = 65, "fall_chance" = 10, "ignore_throwspeed_threshold" = TRUE) - force = 15 - throwforce = 15 - unique_reskin = list("Traditional" = "letter_opener", - "Boxcutter" = "letter_opener_b", - "Corporate" = "letter_opener_a" - ) -/obj/item/melee/weebstick - name = "Weeb Stick" - desc = "Glorious nippon steel, folded 1000 times." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "weeb_blade" - item_state = "weeb_blade" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - pickup_sound = 'sound/items/handling/knife2_pickup.ogg' - drop_sound = 'sound/items/handling/metal_drop.ogg' - flags_1 = CONDUCT_1 - obj_flags = UNIQUE_RENAME - w_class = WEIGHT_CLASS_BULKY - slot_flags = ITEM_SLOT_BACK - sharpness = IS_SHARP_ACCURATE - force = 25 - throw_speed = 4 - throw_range = 5 - throwforce = 12 - block_chance = 20 armour_penetration = 50 - hitsound = 'sound/weapons/anime_slash.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "diced", "cut") + attack_verb = list("smacked", "struck", "cracked", "beaten") + var/overlay_state = "mace_handle" + var/mutable_appearance/overlay -/obj/item/melee/weebstick/Initialize() +/obj/item/melee/cleric_mace/Initialize() . = ..() - AddComponent(/datum/component/butchering, 25, 90, 5) //Not made for scalping victims, but will work nonetheless - -/obj/item/melee/weebstick/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(attack_type == PROJECTILE_ATTACK) - final_block_chance = block_chance / 2 //Pretty good... - return ..() - -/obj/item/melee/weebstick/on_exit_storage(datum/component/storage/concrete/S) - var/obj/item/storage/belt/weebstick/B = S.real_location() - if(istype(B)) - playsound(B, 'sound/items/unsheath.ogg', 25, TRUE) - -/obj/item/melee/weebstick/on_enter_storage(datum/component/storage/concrete/S) - var/obj/item/storage/belt/weebstick/B = S.real_location() - if(istype(B)) - playsound(B, 'sound/items/sheath.ogg', 25, TRUE) - -/obj/item/storage/belt/weebstick - name = "nanoforged blade sheath" - desc = "It yearns to bath in the blood of your enemies... but you hold it back!" - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "weeb_sheath" - item_state = "sheath" - w_class = WEIGHT_CLASS_BULKY - force = 3 - var/primed = FALSE //Prerequisite to anime bullshit - // ##The anime bullshit## - Mostly stolen from action/innate/dash - var/dash_sound = 'sound/weapons/unsheathed_blade.ogg' - var/beam_effect = "blood_beam" - var/phasein = /obj/effect/temp_visual/dir_setting/cult/phase - var/phaseout = /obj/effect/temp_visual/dir_setting/cult/phase - -/obj/item/storage/belt/weebstick/ComponentInitialize() - . = ..() - AddElement(/datum/element/update_icon_updates_onmob) - var/datum/component/storage/STR = GetComponent(/datum/component/storage) - STR.max_items = 1 - STR.use_sound = null - STR.max_w_class = WEIGHT_CLASS_BULKY - STR.set_holdable(list( - /obj/item/melee/weebstick - )) + overlay = mutable_appearance(icon, overlay_state) + overlay.appearance_flags = RESET_COLOR + add_overlay(overlay) + +/obj/item/melee/baseball_bat + name = "baseball bat" + desc = "There ain't a skull in the league that can withstand a swatter." + icon = 'icons/obj/weapon/blunt.dmi' + icon_state = "baseball_bat" + item_state = "baseball_bat" + force = 12 + throwforce = 12 + attack_verb = list("beat", "smacked") + custom_materials = list(/datum/material/wood = MINERAL_MATERIAL_AMOUNT * 3.5) + w_class = WEIGHT_CLASS_HUGE + var/homerun_ready = 0 + var/homerun_able = 0 -/obj/item/storage/belt/weebstick/examine(mob/user) - . = ..() - if(length(contents)) - . += "Use [src] in-hand to prime for an opening strike." - . += "Alt-click it to quickly draw the blade." +/obj/item/melee/baseball_bat/homerun + name = "home run bat" + desc = "This thing looks dangerous... Dangerously good at baseball, that is." + homerun_able = 1 -/obj/item/storage/belt/weebstick/AltClick(mob/user) - if(!iscarbon(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user)) || primed) +/obj/item/melee/baseball_bat/attack_self(mob/user) + if(!homerun_able) + ..() return - if(length(contents)) - var/obj/item/I = contents[1] - playsound(user, dash_sound, 25, TRUE) - user.visible_message("[user] swiftly draws \the [I].", "You draw \the [I].") - user.put_in_hands(I) - update_appearance() - else - to_chat(user, "[src] is empty!") - -/obj/item/storage/belt/weebstick/attack_self(mob/user) - if(!iscarbon(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user))) + if(homerun_ready) + to_chat(user, "You're already ready to do a home run!") + ..() return - if(length(contents)) - var/datum/component/storage/CP = GetComponent(/datum/component/storage) - if(primed) - CP.locked = FALSE - playsound(user, 'sound/items/sheath.ogg', 25, TRUE) - to_chat(user, "You return your stance.") - primed = FALSE - update_appearance() - else - CP.locked = TRUE //Prevents normal removal of the blade while primed - playsound(user, 'sound/items/unsheath.ogg', 25, TRUE) - user.visible_message("[user] grips the blade within [src] and primes to attack.", "You take an opening stance...", "You hear a weapon being drawn...") - primed = TRUE - update_appearance() - else - to_chat(user, "[src] is empty!") + to_chat(user, "You begin gathering strength...") + playsound(get_turf(src), 'sound/magic/lightning_chargeup.ogg', 65, TRUE) + if(do_after(user, 90, target = src)) + to_chat(user, "You gather power! Time for a home run!") + homerun_ready = 1 + ..() -/obj/item/storage/belt/weebstick/afterattack(atom/A, mob/living/user, proximity_flag, params) +/obj/item/melee/baseball_bat/attack(mob/living/target, mob/living/user) . = ..() - if(primed && length(contents)) - if(!(A in view(user.client.view, user))) - return - var/obj/item/I = contents[1] - if(!user.put_in_inactive_hand(I)) - to_chat(user, "You need a free hand!") - return - var/datum/component/storage/CP = GetComponent(/datum/component/storage) - CP.locked = FALSE - primed = FALSE - update_appearance() - primed_attack(A, user) - if(CanReach(A, I)) - I.melee_attack_chain(user, A, params) - user.swap_hand() - -/obj/item/storage/belt/weebstick/proc/primed_attack(atom/target, mob/living/user) - var/turf/end = get_turf(user) - var/turf/start = get_turf(user) - var/obj/spot1 = new phaseout(start, user.dir) - var/halt = FALSE - // Stolen dash code - for(var/T in getline(start, get_turf(target))) - var/turf/tile = T - for(var/mob/living/victim in tile) - if(victim != user) - playsound(victim, 'sound/weapons/anime_slash.ogg', 10, TRUE) - victim.take_bodypart_damage(15) - // Unlike actual ninjas, we stop noclip-dashing here. - if(isclosedturf(T)) - halt = TRUE - for(var/obj/O in tile) - // We ignore mobs as we are cutting through them - if(!O.CanPass(user, tile)) - halt = TRUE - if(halt) - break - else - end = T - user.forceMove(end) // YEET - playsound(start, dash_sound, 35, TRUE) - var/obj/spot2 = new phasein(end, user.dir) - spot1.Beam(spot2, beam_effect, time=20) - user.visible_message("In a flash of red, [user] draws [user.p_their()] blade!", "You dash forward while drawing your weapon!", "You hear a blade slice through the air at impossible speeds!") + var/atom/throw_target = get_edge_target_turf(target, user.dir) + if(homerun_ready) + user.visible_message("It's a home run!") + target.throw_at(throw_target, rand(8,10), 14, user) + SSexplosions.medturf += throw_target + playsound(get_turf(src), 'sound/weapons/homerun.ogg', 100, TRUE) + homerun_ready = 0 + return + else if(!target.anchored) + target.throw_at(throw_target, rand(1,2), 2, user, gentle = TRUE) + +/obj/item/melee/baseball_bat/ablative + name = "metal baseball bat" + desc = "This bat is made of highly reflective, highly armored material." + icon_state = "baseball_bat_metal" + item_state = "baseball_bat_metal" + force = 12 + throwforce = 15 -/obj/item/storage/belt/weebstick/update_icon_state() - icon_state = "weeb_sheath" - item_state = "sheath" - if(contents.len) - if(primed) - icon_state += "-primed" - else - icon_state += "-blade" - item_state += "-sabre" - return ..() +/obj/item/melee/baseball_bat/bone + name = "bone club" + desc = "A long and hard shaft of rock solid bone." // I am the master of comedy + icon_state = "baseball_bat_bone" + item_state = "baseball_bat_bone" + +/obj/item/melee/baseball_bat/ablative/IsReflect()//some day this will reflect thrown items instead of lasers + var/picksound = rand(1,2) + var/turf = get_turf(src) + if(picksound == 1) + playsound(turf, 'sound/weapons/effects/batreflect1.ogg', 50, TRUE) + if(picksound == 2) + playsound(turf, 'sound/weapons/effects/batreflect2.ogg', 50, TRUE) + return 1 + +/obj/item/melee/flyswatter + name = "flyswatter" + desc = "Useful for killing insects of all sizes." + icon_state = "flyswatter" + item_state = "flyswatter" + force = 1 + throwforce = 1 + attack_verb = list("swatted", "smacked") + hitsound = 'sound/effects/snap.ogg' + w_class = WEIGHT_CLASS_SMALL + //Things in this list will be instantly splatted. Flyman weakness is handled in the flyman species weakness proc. + var/list/strong_against -/obj/item/storage/belt/weebstick/PopulateContents() - //Time to generate names now that we have the sword - var/n_title = pick(GLOB.ninja_titles) - var/n_name = pick(GLOB.ninja_names) - var/obj/item/melee/weebstick/sword = new /obj/item/melee/weebstick(src) - sword.name = "[n_title] blade of clan [n_name]" - name = "[n_title] scabbard of clan [n_name]" - update_appearance() +/obj/item/melee/flyswatter/Initialize() + . = ..() + strong_against = typecacheof(list( + /mob/living/simple_animal/hostile/poison/bees/, + /mob/living/simple_animal/butterfly, + /mob/living/simple_animal/hostile/cockroach, + /obj/item/queen_bee + )) + +/obj/item/melee/flyswatter/afterattack(atom/target, mob/user, proximity_flag) + . = ..() + if(proximity_flag) + if(is_type_in_typecache(target, strong_against)) + new /obj/effect/decal/cleanable/insectguts(target.drop_location()) + to_chat(user, "You easily splat the [target].") + if(istype(target, /mob/living/)) + var/mob/living/bug = target + bug.death(1) + else + qdel(target) diff --git a/code/game/objects/items/powerfist.dm b/code/game/objects/items/melee/powerfist.dm similarity index 100% rename from code/game/objects/items/powerfist.dm rename to code/game/objects/items/melee/powerfist.dm diff --git a/code/game/objects/items/melee/spear.dm b/code/game/objects/items/melee/spear.dm new file mode 100644 index 000000000000..42717117fd8e --- /dev/null +++ b/code/game/objects/items/melee/spear.dm @@ -0,0 +1,137 @@ +//spears +/obj/item/melee/spear + icon_state = "spearglass0" + icon = 'icons/obj/weapon/spear.dmi' + lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' + name = "spear" + desc = "A haphazardly-constructed yet still deadly weapon of ancient design." + force = 10 + w_class = WEIGHT_CLASS_BULKY + slot_flags = ITEM_SLOT_BACK + throwforce = 20 + throw_speed = 4 + embedding = list("impact_pain_mult" = 3) + armour_penetration = 10 + custom_materials = list(/datum/material/iron=1150, /datum/material/glass=2075) + hitsound = 'sound/weapons/bladeslice.ogg' + attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") + sharpness = IS_SHARP + max_integrity = 200 + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30) + species_exception = list(/datum/species/kepori) + var/icon_prefix = "spearglass" + +/obj/item/melee/spear/ComponentInitialize() + . = ..() + AddComponent(/datum/component/butchering, 100, 70) //decent in a pinch, but pretty bad. + AddComponent(/datum/component/jousting) + AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") + +/obj/item/melee/spear/update_icon_state() + icon_state = "[icon_prefix]0" + return ..() + +/obj/item/melee/spear/CheckParts(list/parts_list) + var/obj/item/shard/tip = locate() in parts_list + if (istype(tip, /obj/item/shard/plasma)) + throwforce = 21 + icon_prefix = "spearplasma" + AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]1") + update_appearance() + qdel(tip) + ..() + +/* + * Bone Spear + */ +/obj/item/melee/spear/bone //Blatant imitation of spear, but made out of bone. Not valid for explosive modification. + icon_state = "bone_spear0" + name = "bone spear" + base_icon_state = "bone_spear0" + icon_prefix = "bone_spear" + desc = "A haphazardly-constructed yet still deadly weapon. The pinnacle of modern technology." + //this should be a plasma spear or worse. + force = 11 + throwforce = 21 + +/obj/item/melee/spear/bone/ComponentInitialize() + . = ..() + AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]1") + +/obj/item/melee/spear/explosive + name = "explosive lance" + icon_state = "spearbomb0" + base_icon_state = "spearbomb" + icon_prefix = "spearbomb" + var/obj/item/grenade/explosive = null + var/war_cry = "AAAAARGH!!!" + var/wielded = FALSE // track wielded status on item + +/obj/item/melee/spear/explosive/Initialize(mapload) + . = ..() + RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) + set_explosive(new /obj/item/grenade/iedcasing/spawned()) //For admin-spawned explosive lances + +/obj/item/melee/spear/explosive/ComponentInitialize() + . = ..() + AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") + +/// triggered on wield of two handed item +/obj/item/melee/spear/explosive/proc/on_wield(obj/item/source, mob/user) + SIGNAL_HANDLER + + wielded = TRUE + +/// triggered on unwield of two handed item +/obj/item/melee/spear/explosive/proc/on_unwield(obj/item/source, mob/user) + SIGNAL_HANDLER + + wielded = FALSE + +/obj/item/melee/spear/explosive/proc/set_explosive(obj/item/grenade/G) + if(explosive) + QDEL_NULL(explosive) + G.forceMove(src) + explosive = G + desc = "A makeshift spear with [G] attached to it" + +/obj/item/melee/spear/explosive/CheckParts(list/parts_list) + var/obj/item/grenade/G = locate() in parts_list + if(G) + var/obj/item/melee/spear/lancePart = locate() in parts_list + var/datum/component/two_handed/comp_twohand = lancePart.GetComponent(/datum/component/two_handed) + if(comp_twohand) + var/lance_wielded = comp_twohand.force_wielded + var/lance_unwielded = comp_twohand.force_unwielded + AddComponent(/datum/component/two_handed, force_unwielded=lance_unwielded, force_wielded=lance_wielded) + throwforce = lancePart.throwforce + icon_prefix = lancePart.icon_prefix + parts_list -= G + parts_list -= lancePart + set_explosive(G) + qdel(lancePart) + ..() + +/obj/item/melee/spear/explosive/examine(mob/user) + . = ..() + . += "Alt-click to set your war cry." + +/obj/item/melee/spear/explosive/AltClick(mob/user) + if(user.canUseTopic(src, BE_CLOSE)) + ..() + if(istype(user) && loc == user) + var/input = stripped_input(user,"What do you want your war cry to be? You will shout it when you hit someone in melee.", ,"", 50) + if(input) + src.war_cry = input + +/obj/item/melee/spear/explosive/afterattack(atom/movable/AM, mob/user, proximity) + . = ..() + if(!proximity) + return + if(wielded) + user.say("[war_cry]", forced="spear warcry") + explosive.forceMove(AM) + explosive.prime() + qdel(src) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/melee/stunbaton.dm similarity index 59% rename from code/game/objects/items/stunbaton.dm rename to code/game/objects/items/melee/stunbaton.dm index 3265b36a3b41..05225d80cff8 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/melee/stunbaton.dm @@ -1,7 +1,7 @@ /obj/item/melee/baton name = "stun baton" desc = "A stun baton for incapacitating people with." - + icon = 'icons/obj/weapon/baton.dmi' icon_state = "stunbaton" item_state = "baton" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' @@ -333,3 +333,233 @@ /obj/item/melee/baton/boomerang/loaded //Same as above, comes with a cell. preload_cell_type = /obj/item/stock_parts/cell/high + +/obj/item/melee/classic_baton + name = "police baton" + desc = "A wooden truncheon for beating criminal scum." + icon = 'icons/obj/weapon/baton.dmi' + icon_state = "classic_baton" + item_state = "classic_baton" + lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' + righthand_file = 'icons/mob/inhands/equipment/security_righthand.dmi' + slot_flags = ITEM_SLOT_BELT + force = 12 //9 hit crit + w_class = WEIGHT_CLASS_NORMAL + + var/cooldown_check = 0 // Used interally, you don't want to modify + + var/cooldown = 40 // Default wait time until can stun again. + var/knockdown_time_carbon = (1.5 SECONDS) // Knockdown length for carbons. + var/stun_time_silicon = (5 SECONDS) // If enabled, how long do we stun silicons. + var/stamina_damage = 55 // Do we deal stamina damage. + var/affect_silicon = FALSE // Does it stun silicons. + var/on_sound // "On" sound, played when switching between able to stun or not. + var/on_stun_sound = 'sound/effects/woodhit.ogg' // Default path to sound for when we stun. + var/stun_animation = TRUE // Do we animate the "hit" when stunning. + var/on = TRUE // Are we on or off. + + var/on_icon_state // What is our sprite when turned on + var/off_icon_state // What is our sprite when turned off + var/on_item_state // What is our in-hand sprite when turned on + var/force_on // Damage when on - not stunning + var/force_off // Damage when off - not stunning + var/weight_class_on // What is the new size class when turned on + +// Description for trying to stun when still on cooldown. +/obj/item/melee/classic_baton/proc/get_wait_description() + return + +// Description for when turning their baton "on" +/obj/item/melee/classic_baton/proc/get_on_description() + . = list() + + .["local_on"] = "You extend the baton." + .["local_off"] = "You collapse the baton." + + return . + +// Default message for stunning mob. +/obj/item/melee/classic_baton/proc/get_stun_description(mob/living/target, mob/living/user) + . = list() + + .["visible"] = "[user] knocks [target] down with [src]!" + .["local"] = "[user] knocks you down with [src]!" + + return . + +// Default message for stunning a silicon. +/obj/item/melee/classic_baton/proc/get_silicon_stun_description(mob/living/target, mob/living/user) + . = list() + + .["visible"] = "[user] pulses [target]'s sensors with the baton!" + .["local"] = "You pulse [target]'s sensors with the baton!" + + return . + +// Are we applying any special effects when we stun to carbon +/obj/item/melee/classic_baton/proc/additional_effects_carbon(mob/living/target, mob/living/user) + return + +// Are we applying any special effects when we stun to silicon +/obj/item/melee/classic_baton/proc/additional_effects_silicon(mob/living/target, mob/living/user) + return + +/obj/item/melee/classic_baton/attack(mob/living/target, mob/living/user) + if(!on) + return ..() + + add_fingerprint(user) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) + to_chat(user, "You hit yourself over the head!") + + user.Paralyze(knockdown_time_carbon * force) + user.apply_damage(stamina_damage, STAMINA, BODY_ZONE_HEAD) + + additional_effects_carbon(user) // user is the target here + if(ishuman(user)) + var/mob/living/carbon/human/H = user + H.apply_damage(2*force, BRUTE, BODY_ZONE_HEAD) + else + user.take_bodypart_damage(2*force) + return + if(iscyborg(target)) + // We don't stun if we're on harm. + if (user.a_intent != INTENT_HARM) + if (affect_silicon) + var/list/desc = get_silicon_stun_description(target, user) + + target.flash_act(affect_silicon = TRUE) + target.Paralyze(stun_time_silicon) + additional_effects_silicon(target, user) + + user.visible_message(desc["visible"], desc["local"]) + playsound(get_turf(src), on_stun_sound, 100, TRUE, -1) + + if (stun_animation) + user.do_attack_animation(target) + else + ..() + else + ..() + return + if(!isliving(target)) + return + if (user.a_intent == INTENT_HARM) + if(!..()) + return + if(!iscyborg(target)) + return + else + if(cooldown_check <= world.time) + if(ishuman(target)) + var/mob/living/carbon/human/H = target + if (H.check_shields(src, 0, "[user]'s [name]", MELEE_ATTACK)) + return + if(check_martial_counter(H, user)) + return + + var/list/desc = get_stun_description(target, user) + + if (stun_animation) + user.do_attack_animation(target) + + playsound(get_turf(src), on_stun_sound, 75, TRUE, -1) + target.Knockdown(knockdown_time_carbon) + target.apply_damage(stamina_damage, STAMINA, BODY_ZONE_CHEST) + additional_effects_carbon(target, user) + + log_combat(user, target, "stunned", src) + add_fingerprint(user) + + target.visible_message(desc["visible"], desc["local"]) + + if(!iscarbon(user)) + target.LAssailant = null + else + target.LAssailant = WEAKREF(user) + cooldown_check = world.time + cooldown + else + var/wait_desc = get_wait_description() + if (wait_desc) + to_chat(user, wait_desc) + +/obj/item/conversion_kit + name = "conversion kit" + desc = "A strange box containing wood working tools and an instruction paper to turn stun batons into something else." + icon = 'icons/obj/storage.dmi' + icon_state = "uk" + custom_price = 450 + +/obj/item/melee/classic_baton/telescopic + name = "telescopic baton" + desc = "A compact yet robust personal defense weapon. Can be concealed when folded." + icon_state = "telebaton_0" + lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' + item_state = null + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + item_flags = NONE + force = 0 + on = FALSE + on_sound = 'sound/weapons/batonextend.ogg' + + on_icon_state = "telebaton_1" + off_icon_state = "telebaton_0" + on_item_state = "nullrod" + force_on = 10 + force_off = 0 + weight_class_on = WEIGHT_CLASS_BULKY + +/obj/item/melee/classic_baton/telescopic/attack_self(mob/user) + on = !on + var/list/desc = get_on_description() + + if(on) + to_chat(user, desc["local_on"]) + icon_state = on_icon_state + item_state = on_item_state + w_class = weight_class_on + force = force_on + attack_verb = list("smacked", "struck", "cracked", "beaten") + else + to_chat(user, desc["local_off"]) + icon_state = off_icon_state + item_state = null //no sprite for concealment even when in hand + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + force = force_off + attack_verb = list("hit", "poked") + + playsound(src.loc, on_sound, 50, TRUE) + add_fingerprint(user) + +/obj/item/melee/classic_baton/telescopic/contractor_baton + name = "contractor baton" + desc = "A compact, specialised baton assigned to Syndicate contractors. Applies light electrical shocks to targets." + icon_state = "contractor_baton_0" + item_state = null + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + item_flags = NONE + force = 5 + + cooldown = 25 + stamina_damage = 85 + affect_silicon = TRUE + on_sound = 'sound/weapons/contractorbatonextend.ogg' + on_stun_sound = 'sound/effects/contractorbatonhit.ogg' + + on_icon_state = "contractor_baton_1" + off_icon_state = "contractor_baton_0" + on_item_state = "contractor_baton" + force_on = 16 + force_off = 5 + weight_class_on = WEIGHT_CLASS_NORMAL + +/obj/item/melee/classic_baton/telescopic/contractor_baton/get_wait_description() + return "The baton is still charging!" + +/obj/item/melee/classic_baton/telescopic/contractor_baton/additional_effects_carbon(mob/living/target, mob/living/user) + target.Jitter(20) + target.stuttering += 20 diff --git a/code/game/objects/items/melee/sword.dm b/code/game/objects/items/melee/sword.dm new file mode 100644 index 000000000000..21bde05c0dd3 --- /dev/null +++ b/code/game/objects/items/melee/sword.dm @@ -0,0 +1,539 @@ +/obj/item/melee/sword + icon = 'icons/obj/weapon/sword.dmi' + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + pickup_sound = 'sound/items/unsheath.ogg' + drop_sound = 'sound/items/handling/metal_drop.ogg' + hitsound = 'sound/weapons/bladeslice.ogg' + flags_1 = CONDUCT_1 + slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK + w_class = WEIGHT_CLASS_BULKY + obj_flags = UNIQUE_RENAME + block_chance = 25 + attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + sharpness = IS_SHARP + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) + resistance_flags = FIRE_PROOF + +/obj/item/melee/sword/claymore + name = "claymore" + desc = "What are you standing around staring at this for? Get to killing!" + icon_state = "claymore" + item_state = "claymore" + force = 30 + throwforce = 10 + block_chance = 40 + max_integrity = 200 + +/obj/item/melee/sword/claymore/Initialize() + . = ..() + AddComponent(/datum/component/butchering, 40, 105) + +/obj/item/melee/sword/bone + name = "bone sword" + desc = "Jagged pieces of bone are tied to what looks like a goliaths femur." + icon_state = "bone_sword" + item_state = "bone_sword" + force = 15 + throwforce = 10 + armour_penetration = 15 + +/obj/item/melee/sword/scrap + name = "scrap sword" + desc = "A jagged and painful weapon only effective on targets without an armour" + icon_state = "machete0" + force = 24 + throwforce = 10 + armour_penetration = -35 + max_integrity = 100 + +/obj/item/melee/sword/mass + name = "mass produced machete" + desc = "A middle ground between a machete and a short sword. A simple construction of stamped steel but its so cheap its hard to complain. Its right between being a one hand and two handed weapon" + icon_state = "machete0" + base_icon_state = "machete" + force = 20 + throwforce = 15 + max_integrity = 50 + +/obj/item/melee/sword/mass/ComponentInitialize() + . = ..() + AddComponent(/datum/component/two_handed, force_unwielded=20, force_wielded=22, icon_wielded="[base_icon_state]1") + +/obj/item/melee/sword/katana + name = "katana" + desc = "Woefully underpowered in D20." + icon_state = "katana" + item_state = "katana" + slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK + force = 30 + throwforce = 10 + w_class = WEIGHT_CLASS_HUGE + block_chance = 10 + max_integrity = 200 + +/obj/item/melee/sword/chainsaw + name = "sacred chainsaw sword" + desc = "Suffer not a heretic to live." + icon_state = "chainswordon" + item_state = "chainswordon" + force = 15 + throwforce = 10 + armour_penetration = 25 + slot_flags = ITEM_SLOT_BELT + attack_verb = list("sawed", "torn", "cut", "chopped", "diced") + hitsound = 'sound/weapons/chainsawhit.ogg' + tool_behaviour = TOOL_SAW + toolspeed = 1.5 //slower than a real saw + +/obj/item/melee/sword/sabre + name = "officer's sabre" + desc = "An elegant weapon, its monomolecular edge is capable of cutting through flesh and bone with ease." + icon_state = "sabre" + item_state = "sabre" + force = 15 + throwforce = 10 + block_chance = 60 + armour_penetration = 75 + attack_verb = list("slashed", "cut") + hitsound = 'sound/weapons/rapierhit.ogg' + custom_materials = list(/datum/material/iron = 1000) + +/obj/item/melee/sword/sabre/Initialize() + . = ..() + AddComponent(/datum/component/butchering, 30, 95, 5) //fast and effective, but as a sword, it might damage the results. + +/obj/item/melee/sword/sabre/on_enter_storage(datum/component/storage/concrete/S) + var/obj/item/storage/belt/sabre/B = S.real_location() + if(istype(B)) + playsound(B, 'sound/items/sheath.ogg', 25, TRUE) + +/obj/item/melee/sword/sabre/solgov + name = "solarian sabre" + desc = "A refined ceremonial blade often given to soldiers and high ranking officials of SolGov." + icon_state = "sabresolgov" + item_state = "sabresolgov" + +/obj/item/melee/sword/sabre/suns + name = "SUNS sabre" + desc = "A blade of Solarian origin given to SUNS followers." + icon_state = "suns-sabre" + item_state = "suns-sabre" + +/obj/item/melee/sword/sabre/suns/captain + name = "SUNS captain sabre" + desc = "An elegant blade awarded to SUNS captains. Despite its higher craftmanship, it appears to be just as effective as a normal sabre." + icon_state = "suns-capsabre" + item_state = "suns-capsabre" + +/obj/item/melee/sword/sabre/suns/cmo + name = "SUNS stick sabre" + desc = "A thin blade used by SUNS medical instructors." + icon_state = "suns-swordstick" + item_state = "suns-swordstick" + +/obj/item/melee/sword/sabre/suns/telescopic + name = "telescopic sabre" + desc = "A telescopic and retractable blade given to SUNS peacekeepers for easy concealment and carry. It's design makes it slightly less effective than normal sabres sadly, however it is still excelent at piercing armor." + icon_state = "suns-tsword" + item_state = "suns-tsword" + force = 0 + throwforce = 0 + block_chance = 0 + + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + attack_verb = list("smacked", "prodded") + + var/extended = FALSE + var/extend_sound = 'sound/weapons/batonextend.ogg' + + var/on_icon_state = "suns-tsword_ext" + var/on_item_state = "suns-tsword_ext" + var/off_icon_state = "suns-tsword" + var/off_item_state = "suns-tsword" + + var/force_on = 10 + var/on_throwforce = 10 + var/on_blockchance = 40 + + var/force_off = 0 + var/off_throwforce = 0 + var/off_blockchance = 0 + + var/weight_class_on = WEIGHT_CLASS_BULKY + +/obj/item/melee/sword/sabre/suns/telescopic/attack_self(mob/user) + extended = !extended + + if(extended) + to_chat(user, "You extend the [src].") + icon_state = on_icon_state + item_state = on_item_state + slot_flags = 0 + w_class = weight_class_on + force = force_on + throwforce = on_throwforce + block_chance = on_blockchance + attack_verb = list("slashed", "cut") + else + to_chat(user, "You collapse the [src].") + icon_state = off_icon_state + item_state = off_item_state + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + force = force_off + throwforce = off_throwforce + block_chance = off_blockchance + attack_verb = list("smacked", "prodded") + + playsound(get_turf(src), extend_sound, 50, TRUE) + add_fingerprint(user) + +/obj/item/melee/sword/supermatter + name = "supermatter sword" + desc = "In a universe full of bad ideas, this might just be the worst." + icon_state = "supermatter_sword" + item_state = "supermatter_sword" + slot_flags = null + force = 0.001 + armour_penetration = 1000 + var/obj/machinery/power/supermatter_crystal/shard + var/balanced = 1 + force_string = "INFINITE" + +/obj/item/melee/sword/supermatter/Initialize() + . = ..() + shard = new /obj/machinery/power/supermatter_crystal(src) + qdel(shard.countdown) + shard.countdown = null + START_PROCESSING(SSobj, src) + visible_message("[src] appears, balanced ever so perfectly on its hilt. This isn't ominous at all.") + +/obj/item/melee/sword/supermatter/process() + if(balanced || throwing || ismob(src.loc) || isnull(src.loc)) + return + if(!isturf(src.loc)) + var/atom/target = src.loc + forceMove(target.loc) + consume_everything(target) + else + var/turf/T = get_turf(src) + if(!isspaceturf(T)) + consume_turf(T) + +/obj/item/melee/sword/supermatter/afterattack(target, mob/user, proximity_flag) + . = ..() + if(user && target == user) + user.dropItemToGround(src) + if(proximity_flag) + consume_everything(target) + +/obj/item/melee/sword/supermatter/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) + ..() + if(ismob(hit_atom)) + var/mob/M = hit_atom + if(src.loc == M) + M.dropItemToGround(src) + consume_everything(hit_atom) + +/obj/item/melee/sword/supermatter/pickup(user) + ..() + balanced = 0 + +/obj/item/melee/sword/supermatter/ex_act(severity, target) + visible_message("The blast wave smacks into [src] and rapidly flashes to ash.",\ + "You hear a loud crack as you are washed with a wave of heat.") + consume_everything() + +/obj/item/melee/sword/supermatter/acid_act() + visible_message("The acid smacks into [src] and rapidly flashes to ash.",\ + "You hear a loud crack as you are washed with a wave of heat.") + consume_everything() + +/obj/item/melee/sword/supermatter/bullet_act(obj/projectile/P) + visible_message("[P] smacks into [src] and rapidly flashes to ash.",\ + "You hear a loud crack as you are washed with a wave of heat.") + consume_everything(P) + return BULLET_ACT_HIT + + +/obj/item/melee/sword/supermatter/proc/consume_everything(target) + if(isnull(target)) + shard.Consume() + else if(!isturf(target)) + shard.Bumped(target) + else + consume_turf(target) + +/obj/item/melee/sword/supermatter/proc/consume_turf(turf/T) + var/oldtype = T.type + var/turf/newT = T.ScrapeAway(flags = CHANGETURF_INHERIT_AIR) + if(newT.type == oldtype) + return + playsound(T, 'sound/effects/supermatter.ogg', 50, TRUE) + T.visible_message("[T] smacks into [src] and rapidly flashes to ash.",\ + "You hear a loud crack as you are washed with a wave of heat.") + shard.Consume() + +/obj/item/melee/sword/supermatter/add_blood_DNA(list/blood_dna) + return FALSE + +/obj/item/melee/sword/greyking + name = "blade of the grey-king" + desc = "A legendary sword made with 3 replica katanas nailed together and dipped in heavy narcotics." + icon_state = "grey_sword" + item_state = "swordoff" + slot_flags = ITEM_SLOT_BACK + force = 15 + throwforce = 8 + block_chance = 30 + attack_verb = list("struck", "slashed", "mall-ninjad", "tided", "multi-shanked", "shredded") + + var/prick_chance = 50 + var/prick_chems = list( + /datum/reagent/toxin = 10, + /datum/reagent/toxin/mindbreaker = 10, + /datum/reagent/drug/space_drugs = 10, + /datum/reagent/drug/crank = 5, + /datum/reagent/drug/methamphetamine = 5, + /datum/reagent/drug/bath_salts = 5, + /datum/reagent/drug/aranesp = 5, + /datum/reagent/drug/pumpup = 10, + /datum/reagent/medicine/omnizine = 10, + /datum/reagent/medicine/earthsblood = 15, + /datum/reagent/medicine/omnizine/protozine = 15 + ) + +/obj/item/melee/sword/greyking/afterattack(atom/target, mob/user, proximity_flag, click_parameters) + if (iscarbon(target) && prob(prick_chance)) + var/mob/living/carbon/C = target + var/datum/reagent/R = pick(prick_chems) + C.reagents.add_reagent(R, prick_chems[R]) + C.visible_message("[user] is pricked!", \ + "You've been pricked by the [src]!") + log_combat(user, C, "pricked", src.name, "with [prick_chems[R]]u of [R]") + return ..() + +//HF blade +/obj/item/melee/sword/vibro + icon_state = "hfrequency0" + base_icon_state = "hfrequency" + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + name = "vibro sword" + desc = "A potent weapon capable of cutting through nearly anything. Wielding it in two hands will allow you to deflect gunfire." + armour_penetration = 100 + block_chance = 30 + force = 20 + throwforce = 20 + throw_speed = 4 + sharpness = IS_SHARP + attack_verb = list("cut", "sliced", "diced") + slot_flags = ITEM_SLOT_BACK + hitsound = 'sound/weapons/bladeslice.ogg' + var/wielded = FALSE // track wielded status on item + +/obj/item/melee/sword/vibro/Initialize() + . = ..() + RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) + +/obj/item/melee/sword/vibro/ComponentInitialize() + . = ..() + AddComponent(/datum/component/butchering, 20, 105) + AddComponent(/datum/component/two_handed, force_multiplier=2, icon_wielded="[base_icon_state]1") + +/// triggered on wield of two handed item +/obj/item/melee/sword/vibro/proc/on_wield(obj/item/source, mob/user) + SIGNAL_HANDLER + + wielded = TRUE + +/// triggered on unwield of two handed item +/obj/item/melee/sword/vibro/proc/on_unwield(obj/item/source, mob/user) + SIGNAL_HANDLER + + wielded = FALSE + +/obj/item/melee/sword/vibro/update_icon_state() + icon_state = "[base_icon_state]0" + return ..() + +/obj/item/melee/sword/vibro/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(wielded) + final_block_chance *= 2 + if(wielded || attack_type != PROJECTILE_ATTACK) + if(prob(final_block_chance)) + if(attack_type == PROJECTILE_ATTACK) + owner.visible_message("[owner] deflects [attack_text] with [src]!") + playsound(src, pick('sound/weapons/bulletflyby.ogg', 'sound/weapons/bulletflyby2.ogg', 'sound/weapons/bulletflyby3.ogg'), 75, TRUE) + return 1 + else + owner.visible_message("[owner] parries [attack_text] with [src]!") + return 1 + return 0 + +/obj/item/melee/sword/weebstick + name = "Weeb Stick" + desc = "Glorious nippon steel, folded 1000 times." + icon_state = "weeb_blade" + item_state = "weeb_blade" + slot_flags = ITEM_SLOT_BACK + sharpness = IS_SHARP_ACCURATE + force = 25 + throw_speed = 4 + throw_range = 5 + throwforce = 12 + block_chance = 20 + armour_penetration = 50 + hitsound = 'sound/weapons/anime_slash.ogg' + +/obj/item/melee/sword/weebstick/Initialize() + . = ..() + AddComponent(/datum/component/butchering, 25, 90, 5) //Not made for scalping victims, but will work nonetheless + +/obj/item/melee/sword/weebstick/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(attack_type == PROJECTILE_ATTACK) + final_block_chance = block_chance / 2 //Pretty good... + return ..() + +/obj/item/melee/sword/weebstick/on_exit_storage(datum/component/storage/concrete/S) + var/obj/item/storage/belt/weebstick/B = S.real_location() + if(istype(B)) + playsound(B, 'sound/items/unsheath.ogg', 25, TRUE) + +/obj/item/melee/sword/weebstick/on_enter_storage(datum/component/storage/concrete/S) + var/obj/item/storage/belt/weebstick/B = S.real_location() + if(istype(B)) + playsound(B, 'sound/items/sheath.ogg', 25, TRUE) + +/obj/item/storage/belt/weebstick + name = "nanoforged blade sheath" + desc = "It yearns to bath in the blood of your enemies... but you hold it back!" + icon = 'icons/obj/weapon/sword.dmi' + icon_state = "weeb_sheath" + item_state = "sheath" + force = 3 + var/primed = FALSE //Prerequisite to anime bullshit + // ##The anime bullshit## - Mostly stolen from action/innate/dash + var/dash_sound = 'sound/weapons/unsheathed_blade.ogg' + var/beam_effect = "blood_beam" + var/phasein = /obj/effect/temp_visual/dir_setting/cult/phase + var/phaseout = /obj/effect/temp_visual/dir_setting/cult/phase + +/obj/item/storage/belt/weebstick/ComponentInitialize() + . = ..() + AddElement(/datum/element/update_icon_updates_onmob) + var/datum/component/storage/STR = GetComponent(/datum/component/storage) + STR.max_items = 1 + STR.use_sound = null + STR.max_w_class = WEIGHT_CLASS_BULKY + STR.set_holdable(list( + /obj/item/melee/sword/weebstick + )) + +/obj/item/storage/belt/weebstick/examine(mob/user) + . = ..() + if(length(contents)) + . += "Use [src] in-hand to prime for an opening strike." + . += "Alt-click it to quickly draw the blade." + +/obj/item/storage/belt/weebstick/AltClick(mob/user) + if(!iscarbon(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user)) || primed) + return + if(length(contents)) + var/obj/item/I = contents[1] + playsound(user, dash_sound, 25, TRUE) + user.visible_message("[user] swiftly draws \the [I].", "You draw \the [I].") + user.put_in_hands(I) + update_appearance() + else + to_chat(user, "[src] is empty!") + +/obj/item/storage/belt/weebstick/attack_self(mob/user) + if(!iscarbon(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user))) + return + if(length(contents)) + var/datum/component/storage/CP = GetComponent(/datum/component/storage) + if(primed) + CP.locked = FALSE + playsound(user, 'sound/items/sheath.ogg', 25, TRUE) + to_chat(user, "You return your stance.") + primed = FALSE + update_appearance() + else + CP.locked = TRUE //Prevents normal removal of the blade while primed + playsound(user, 'sound/items/unsheath.ogg', 25, TRUE) + user.visible_message("[user] grips the blade within [src] and primes to attack.", "You take an opening stance...", "You hear a weapon being drawn...") + primed = TRUE + update_appearance() + else + to_chat(user, "[src] is empty!") + +/obj/item/storage/belt/weebstick/afterattack(atom/A, mob/living/user, proximity_flag, params) + . = ..() + if(primed && length(contents)) + if(!(A in view(user.client.view, user))) + return + var/obj/item/I = contents[1] + if(!user.put_in_inactive_hand(I)) + to_chat(user, "You need a free hand!") + return + var/datum/component/storage/CP = GetComponent(/datum/component/storage) + CP.locked = FALSE + primed = FALSE + update_appearance() + primed_attack(A, user) + if(CanReach(A, I)) + I.melee_attack_chain(user, A, params) + user.swap_hand() + +/obj/item/storage/belt/weebstick/proc/primed_attack(atom/target, mob/living/user) + var/turf/end = get_turf(user) + var/turf/start = get_turf(user) + var/obj/spot1 = new phaseout(start, user.dir) + var/halt = FALSE + // Stolen dash code + for(var/T in getline(start, get_turf(target))) + var/turf/tile = T + for(var/mob/living/victim in tile) + if(victim != user) + playsound(victim, 'sound/weapons/anime_slash.ogg', 10, TRUE) + victim.take_bodypart_damage(15) + // Unlike actual ninjas, we stop noclip-dashing here. + if(isclosedturf(T)) + halt = TRUE + for(var/obj/O in tile) + // We ignore mobs as we are cutting through them + if(!O.CanPass(user, tile)) + halt = TRUE + if(halt) + break + else + end = T + user.forceMove(end) // YEET + playsound(start, dash_sound, 35, TRUE) + var/obj/spot2 = new phasein(end, user.dir) + spot1.Beam(spot2, beam_effect, time=20) + user.visible_message("In a flash of red, [user] draws [user.p_their()] blade!", "You dash forward while drawing your weapon!", "You hear a blade slice through the air at impossible speeds!") + +/obj/item/storage/belt/weebstick/update_icon_state() + icon_state = "weeb_sheath" + item_state = "sheath" + if(contents.len) + if(primed) + icon_state += "-primed" + else + icon_state += "-blade" + item_state += "-sabre" + return ..() + +/obj/item/storage/belt/weebstick/PopulateContents() + //Time to generate names now that we have the sword + var/n_title = pick(GLOB.ninja_titles) + var/n_name = pick(GLOB.ninja_names) + var/obj/item/melee/sword/weebstick/sword = new /obj/item/melee/sword/weebstick(src) + sword.name = "[n_title] blade of clan [n_name]" + name = "[n_title] scabbard of clan [n_name]" + update_appearance() diff --git a/code/game/objects/items/teleprod.dm b/code/game/objects/items/melee/teleprod.dm similarity index 100% rename from code/game/objects/items/teleprod.dm rename to code/game/objects/items/melee/teleprod.dm diff --git a/code/game/objects/items/melee/weaponry.dm b/code/game/objects/items/melee/weaponry.dm new file mode 100644 index 000000000000..11c1b118570b --- /dev/null +++ b/code/game/objects/items/melee/weaponry.dm @@ -0,0 +1,119 @@ + + +/obj/item/wirerod + name = "wired rod" + desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." + icon = 'icons/obj/weapon/spear.dmi' + icon_state = "wiredrod" + item_state = "rods" + flags_1 = CONDUCT_1 + force = 9 + throwforce = 10 + w_class = WEIGHT_CLASS_NORMAL + custom_materials = list(/datum/material/iron=1150, /datum/material/glass=75) + attack_verb = list("hit", "bludgeoned", "whacked", "bonked") + +/obj/item/wirerod/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/shard)) + var/obj/item/melee/spear/S = new /obj/item/melee/spear + + remove_item_from_storage(user) + if (!user.transferItemToLoc(I, S)) + return + S.CheckParts(list(I)) + qdel(src) + + user.put_in_hands(S) + to_chat(user, "You fasten the glass shard to the top of the rod with the cable.") + + else if(istype(I, /obj/item/assembly/igniter) && !(HAS_TRAIT(I, TRAIT_NODROP))) + var/obj/item/melee/baton/cattleprod/P = new /obj/item/melee/baton/cattleprod + + remove_item_from_storage(user) + + to_chat(user, "You fasten [I] to the top of the rod with the cable.") + + qdel(I) + qdel(src) + + user.put_in_hands(P) + else + return ..() + +/obj/item/throwing_star + name = "throwing star" + desc = "An ancient weapon still used to this day, due to its ease of lodging itself into its victim's body parts." + icon_state = "throwingstar" + item_state = "eshield0" + lefthand_file = 'icons/mob/inhands/equipment/shields_lefthand.dmi' + righthand_file = 'icons/mob/inhands/equipment/shields_righthand.dmi' + force = 2 + throwforce = 20 //20 + 2 (WEIGHT_CLASS_SMALL) * 4 (EMBEDDED_IMPACT_PAIN_MULTIPLIER) = 28 damage on hit due to guaranteed embedding + throw_speed = 4 + embedding = list("pain_mult" = 4, "embed_chance" = 100, "fall_chance" = 0, "embed_chance_turf_mod" = 15) + armour_penetration = 40 + + w_class = WEIGHT_CLASS_SMALL + sharpness = IS_SHARP + custom_materials = list(/datum/material/iron=500, /datum/material/glass=500) + resistance_flags = FIRE_PROOF + +/obj/item/throwing_star/stamina + name = "shock throwing star" + desc = "An aerodynamic disc designed to cause excruciating pain when stuck inside fleeing targets, hopefully without causing fatal harm." + throwforce = 5 + embedding = list("pain_chance" = 5, "embed_chance" = 100, "fall_chance" = 0, "jostle_chance" = 10, "pain_stam_pct" = 0.8, "jostle_pain_mult" = 3) + +/obj/item/throwing_star/toy + name = "toy throwing star" + desc = "An aerodynamic disc strapped with adhesive for sticking to people, good for playing pranks and getting yourself killed by security." + sharpness = IS_BLUNT + force = 0 + throwforce = 0 + embedding = list("pain_mult" = 0, "jostle_pain_mult" = 0, "embed_chance" = 100, "fall_chance" = 0) + +/obj/item/throwing_star/magspear + name = "magnetic spear" + desc = "A reusable spear that is typically loaded into kinetic spearguns." + icon = 'icons/obj/ammo_bullets.dmi' + icon_state = "magspear" + throwforce = 25 //kills regular carps in one hit + force = 10 + throw_range = 0 //throwing these invalidates the speargun + attack_verb = list("stabbed", "ripped", "gored", "impaled") + embedding = list("pain_mult" = 8, "embed_chance" = 100, "fall_chance" = 0, "impact_pain_mult" = 15) //55 damage+embed on hit + +/obj/item/mounted_chainsaw + name = "mounted chainsaw" + desc = "A chainsaw that has replaced your arm." + icon_state = "chainsaw_on" + item_state = "mounted_chainsaw" + lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi' + item_flags = ABSTRACT | DROPDEL + w_class = WEIGHT_CLASS_HUGE + force = 24 + throwforce = 0 + throw_range = 0 + throw_speed = 0 + sharpness = IS_SHARP + attack_verb = list("sawed", "torn", "cut", "chopped", "diced") + hitsound = 'sound/weapons/chainsawhit.ogg' + tool_behaviour = TOOL_SAW + toolspeed = 1 + +/obj/item/mounted_chainsaw/Initialize() + . = ..() + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + +/obj/item/mounted_chainsaw/Destroy() + var/obj/item/bodypart/part + new /obj/item/chainsaw(get_turf(src)) + if(iscarbon(loc)) + var/mob/living/carbon/holder = loc + var/index = holder.get_held_index_of_item(src) + if(index) + part = holder.hand_bodyparts[index] + . = ..() + if(part) + part.drop_limb() diff --git a/code/game/objects/items/miscellaneous.dm b/code/game/objects/items/miscellaneous.dm index 619ebf3eb0e9..f32230a732ba 100644 --- a/code/game/objects/items/miscellaneous.dm +++ b/code/game/objects/items/miscellaneous.dm @@ -94,7 +94,7 @@ /obj/item/storage/box/hero/scottish/PopulateContents() new /obj/item/clothing/under/costume/kilt(src) - new /obj/item/claymore/weak/ceremonial(src) + new /obj/item/melee/sword/claymore(src) new /obj/item/toy/crayon/spraycan(src) new /obj/item/clothing/shoes/sandal(src) @@ -105,7 +105,7 @@ /obj/item/storage/box/hero/carphunter/PopulateContents() new /obj/item/clothing/suit/space/hardsuit/carp/old(src) new /obj/item/clothing/mask/gas/carp(src) - new /obj/item/kitchen/knife/hunting(src) + new /obj/item/melee/knife/hunting(src) new /obj/item/storage/box/papersack/meat(src) new /obj/item/fishing_rod(src) new /obj/item/fishing_line(src) @@ -149,7 +149,6 @@ /obj/item/skub desc = "It's skub." name = "skub" - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "skub" w_class = WEIGHT_CLASS_BULKY attack_verb = list("skubbed") @@ -217,17 +216,6 @@ ouija_spaghetti_list[initial(A.name)] = A return ouija_spaghetti_list -/obj/structure/legionpike - name = "legion on a spear" - desc = "EXTREME interior decorating. You can feel it watching you." - icon = 'icons/obj/structures.dmi' - icon_state = "headpike-legion" - density = FALSE - anchored = TRUE - light_color = "#8B0000" - light_power = 2 - light_range = 2 - //rare and valulable gems- designed to eventually be used for archeology, or to be given as opposed to money as loot. Auctioned off at export, or kept as a trophy. /obj/item/gem/rupee name = "\improper Ruperium Crystal" @@ -282,3 +270,283 @@ light_power = 1 light_color = "#4785a4" w_class = WEIGHT_CLASS_SMALL + +/obj/item/phone + name = "red phone" + desc = "Should anything ever go wrong..." + icon_state = "red_phone" + force = 3 + throwforce = 2 + throw_speed = 3 + throw_range = 4 + w_class = WEIGHT_CLASS_SMALL + attack_verb = list("called", "rang") + hitsound = 'sound/weapons/ring.ogg' + +/obj/item/roastingstick + name = "advanced roasting stick" + desc = "A telescopic roasting stick with a miniature shield generator designed to ensure entry into various high-tech shielded cooking ovens and firepits." + icon_state = "roastingstick_0" + item_state = "null" + slot_flags = ITEM_SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + item_flags = NONE + force = 0 + attack_verb = list("hit", "poked") + var/obj/item/reagent_containers/food/snacks/sausage/held_sausage + var/static/list/ovens + var/on = FALSE + var/datum/beam/beam + +/obj/item/roastingstick/Initialize() + . = ..() + if (!ovens) + ovens = typecacheof(list(/obj/singularity, /obj/machinery/power/supermatter_crystal, /obj/structure/bonfire)) + +/obj/item/roastingstick/attack_self(mob/user) + on = !on + if(on) + extend(user) + else + if (held_sausage) + to_chat(user, "You can't retract [src] while [held_sausage] is attached!") + return + retract(user) + + playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) + add_fingerprint(user) + +/obj/item/roastingstick/attackby(atom/target, mob/user) + ..() + if (istype(target, /obj/item/reagent_containers/food/snacks/sausage)) + if (!on) + to_chat(user, "You must extend [src] to attach anything to it!") + return + if (held_sausage) + to_chat(user, "[held_sausage] is already attached to [src]!") + return + if (user.transferItemToLoc(target, src)) + held_sausage = target + else + to_chat(user, "[target] doesn't seem to want to get on [src]!") + update_appearance() + +/obj/item/roastingstick/attack_hand(mob/user) + ..() + if (held_sausage) + user.put_in_hands(held_sausage) + held_sausage = null + update_appearance() + +/obj/item/roastingstick/update_overlays() + . = ..() + if (held_sausage) + . += mutable_appearance(icon, "roastingstick_sausage") + +/obj/item/roastingstick/proc/extend(user) + to_chat(user, "You extend [src].") + icon_state = "roastingstick_1" + item_state = "nullrod" + w_class = WEIGHT_CLASS_BULKY + +/obj/item/roastingstick/proc/retract(user) + to_chat(user, "You collapse [src].") + icon_state = "roastingstick_0" + item_state = null + w_class = WEIGHT_CLASS_SMALL + +/obj/item/roastingstick/handle_atom_del(atom/target) + if (target == held_sausage) + held_sausage = null + update_appearance() + +/obj/item/roastingstick/afterattack(atom/target, mob/user, proximity) + . = ..() + if (!on) + return + if (is_type_in_typecache(target, ovens)) + if (held_sausage && held_sausage.roasted) + to_chat(src, "Your [held_sausage] has already been cooked!") + return + if (istype(target, /obj/singularity) && get_dist(user, target) < 10) + to_chat(user, "You send [held_sausage] towards [target].") + playsound(src, 'sound/items/rped.ogg', 50, TRUE) + beam = user.Beam(target,icon_state="rped_upgrade",time=100) + else if (user.Adjacent(target)) + to_chat(user, "You extend [src] towards [target].") + playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, TRUE) + else + return + if(do_after(user, 100, target = user)) + finish_roasting(user, target) + else + QDEL_NULL(beam) + playsound(src, 'sound/weapons/batonextend.ogg', 50, TRUE) + +/obj/item/roastingstick/proc/finish_roasting(user, atom/target) + to_chat(user, "You finish roasting [held_sausage].") + playsound(src,'sound/items/welder2.ogg',50,TRUE) + held_sausage.add_atom_colour(rgb(103,63,24), FIXED_COLOUR_PRIORITY) + held_sausage.name = "[target.name]-roasted [held_sausage.name]" + held_sausage.desc = "[held_sausage.desc] It has been cooked to perfection on \a [target]." + update_appearance() + +/obj/item/skateboard + name = "improvised skateboard" + desc = "A skateboard. It can be placed on its wheels and ridden, or used as a strong weapon." + icon_state = "skateboard" + item_state = "skateboard" + force = 12 + throwforce = 4 + w_class = WEIGHT_CLASS_NORMAL + attack_verb = list("smacked", "whacked", "slammed", "smashed") + ///The vehicle counterpart for the board + var/board_item_type = /obj/vehicle/ridden/scooter/skateboard + +/obj/item/skateboard/attack_self(mob/user) + var/obj/vehicle/ridden/scooter/skateboard/S = new board_item_type(get_turf(user))//this probably has fucky interactions with telekinesis but for the record it wasnt my fault + S.buckle_mob(user) + qdel(src) + +/obj/item/skateboard/pro + name = "skateboard" + desc = "A RaDSTORMz brand professional skateboard. It looks sturdy and well made." + icon_state = "skateboard2" + item_state = "skateboard2" + board_item_type = /obj/vehicle/ridden/scooter/skateboard/pro + custom_premium_price = 500 + +/obj/item/skateboard/hoverboard + name = "hoverboard" + desc = "A blast from the past, so retro!" + icon_state = "hoverboard_red" + item_state = "hoverboard_red" + board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard + custom_premium_price = 2015 + +/obj/item/skateboard/hoverboard/admin + name = "\improper Board Of Directors" + desc = "The engineering complexity of a spaceship concentrated inside of a board. Just as expensive, too." + icon_state = "hoverboard_nt" + item_state = "hoverboard_nt" + board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard/admin + +/obj/item/statuebust + name = "bust" + desc = "A priceless ancient marble bust, the kind that belongs in a museum." //or you can hit people with it + icon = 'icons/obj/statue.dmi' + icon_state = "bust" + force = 15 + throwforce = 10 + throw_speed = 5 + throw_range = 2 + attack_verb = list("busted") + var/impressiveness = 45 + +/obj/item/statuebust/Initialize() + . = ..() + AddComponent(/datum/component/art, impressiveness) + AddElement(/datum/element/beauty, 1000) + +/obj/item/statuebust/hippocratic + name = "hippocrates bust" + desc = "A bust of the famous Greek physician Hippocrates of Kos, often referred to as the father of western medicine." + icon_state = "hippocratic" + impressiveness = 50 + +/obj/item/extendohand + name = "extendo-hand" + desc = "Futuristic tech has allowed these classic spring-boxing toys to essentially act as a fully functional hand-operated hand prosthetic." + icon_state = "extendohand" + item_state = "extendohand" + lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' + force = 0 + throwforce = 5 + reach = 2 + var/min_reach = 2 + +/obj/item/extendohand/acme + name = "\improper ACME Extendo-Hand" + desc = "A novelty extendo-hand produced by the ACME corporation. Originally designed to knock out roadrunners." + +/obj/item/extendohand/attack(atom/M, mob/living/carbon/human/user) + var/dist = get_dist(M, user) + if(dist < min_reach) + to_chat(user, "[M] is too close to use [src] on.") + return + M.attack_hand(user) + +/obj/item/gohei + name = "gohei" + desc = "A wooden stick with white streamers at the end. Originally used by shrine maidens to purify things." + force = 5 + throwforce = 5 + hitsound = "swing_hit" + attack_verb = list("whacked", "thwacked", "walloped", "socked") + icon_state = "gohei" + item_state = "gohei" + lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' + +/obj/item/ectoplasm + name = "ectoplasm" + desc = "Spooky." + gender = PLURAL + icon = 'icons/obj/wizard.dmi' + icon_state = "ectoplasm" + +/obj/item/ectoplasm/angelic + icon = 'icons/obj/wizard.dmi' + icon_state = "angelplasm" + +/obj/item/cane + name = "cane" + desc = "A cane used by a true gentleman." + icon = 'icons/obj/items.dmi' + icon_state = "cane" + item_state = "stick" + lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' + force = 5 + throwforce = 5 + w_class = WEIGHT_CLASS_SMALL + custom_materials = list(/datum/material/iron=50) + attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed") + +/obj/item/staff + name = "wizard staff" + desc = "Apparently a staff used by the wizard." + icon = 'icons/obj/wizard.dmi' + icon_state = "staff" + lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' + force = 3 + throwforce = 5 + throw_speed = 2 + throw_range = 5 + w_class = WEIGHT_CLASS_SMALL + armour_penetration = 100 + attack_verb = list("bludgeoned", "whacked", "disciplined") + resistance_flags = FLAMMABLE + +/obj/item/staff/broom + name = "broom" + desc = "Used for sweeping, and flying into the night while cackling. Black cat not included." + icon = 'icons/obj/wizard.dmi' + icon_state = "broom" + resistance_flags = FLAMMABLE + +/obj/item/staff/stick + name = "stick" + desc = "A great tool to drag someone else's drinks across the bar." + icon = 'icons/obj/items.dmi' + icon_state = "cane" + item_state = "stick" + lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' + force = 3 + throwforce = 5 + throw_speed = 2 + throw_range = 5 + w_class = WEIGHT_CLASS_SMALL diff --git a/code/game/objects/items/paint.dm b/code/game/objects/items/paint.dm index 5aff78b5561d..9e314d848e3e 100644 --- a/code/game/objects/items/paint.dm +++ b/code/game/objects/items/paint.dm @@ -5,7 +5,6 @@ gender= PLURAL name = "paint" desc = "Used to recolor floors and walls. Can be removed by the janitor." - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "paint_neutral" var/paint_color = "FFFFFF" item_state = "paintcan" diff --git a/code/game/objects/items/pitchfork.dm b/code/game/objects/items/pitchfork.dm deleted file mode 100644 index 05183ed479db..000000000000 --- a/code/game/objects/items/pitchfork.dm +++ /dev/null @@ -1,102 +0,0 @@ -/obj/item/pitchfork - icon_state = "pitchfork0" - base_icon_state = "pitchfork" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - name = "pitchfork" - desc = "A simple tool used for moving hay." - force = 7 - throwforce = 15 - w_class = WEIGHT_CLASS_BULKY - attack_verb = list("attacked", "impaled", "pierced") - hitsound = 'sound/weapons/bladeslice.ogg' - sharpness = IS_SHARP - max_integrity = 200 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 30) - resistance_flags = FIRE_PROOF - var/wielded = FALSE // track wielded status on item - -/obj/item/pitchfork/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - -/obj/item/pitchfork/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=7, force_wielded=15, icon_wielded="[base_icon_state]1") - -/// triggered on wield of two handed item -/obj/item/pitchfork/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/pitchfork/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/pitchfork/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/pitchfork/demonic - name = "demonic pitchfork" - desc = "A red pitchfork, it looks like the work of the devil." - force = 19 - throwforce = 24 - light_system = MOVABLE_LIGHT - light_range = 3 - light_power = 6 - light_color = COLOR_SOFT_RED - - -/obj/item/pitchfork/demonic/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=19, force_wielded=25) - -/obj/item/pitchfork/demonic/greater - force = 24 - throwforce = 50 - -/obj/item/pitchfork/demonic/greater/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=24, force_wielded=34) - -/obj/item/pitchfork/demonic/ascended - force = 100 - throwforce = 100 - -/obj/item/pitchfork/demonic/ascended/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=100, force_wielded=500000) // Kills you DEAD - -/obj/item/pitchfork/demonic/pickup(mob/living/user) - . = ..() - if(isliving(user) && user.mind && user.owns_soul() && !is_devil(user)) - var/mob/living/U = user - U.visible_message("As [U] picks [src] up, [U]'s arms briefly catch fire.", \ - "\"As you pick up [src] your arms ignite, reminding you of all your past sins.\"") - if(ishuman(U)) - var/mob/living/carbon/human/H = U - H.apply_damage(rand(force/2, force), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) - else - U.adjustFireLoss(rand(force/2,force)) - -/obj/item/pitchfork/demonic/attack(mob/target, mob/living/carbon/human/user) - if(user.mind && user.owns_soul() && !is_devil(user)) - to_chat(user, "[src] burns in your hands.") - user.apply_damage(rand(force/2, force), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) - ..() - -/obj/item/pitchfork/demonic/ascended/afterattack(atom/target, mob/user, proximity) - . = ..() - if(!proximity || !wielded) - return - if(iswallturf(target)) - var/turf/closed/wall/W = target - user.visible_message("[user] blasts \the [target] with \the [src]!") - playsound(target, 'sound/magic/disintegrate.ogg', 100, TRUE) - W.dismantle_wall(devastated = FALSE) - return diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index 704a388d97f1..f54aa4f6447b 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -281,15 +281,3 @@ new /obj/item/clothing/head/helmet/plate/crusader/red(src) new /obj/item/clothing/gloves/plate/red(src) new /obj/item/clothing/shoes/plate/red(src) - - -/obj/item/claymore/weak - desc = "This one is rusted." - force = 30 - armour_penetration = 15 - -/obj/item/claymore/weak/ceremonial - desc = "A rusted claymore, once at the heart of a powerful scottish clan struck down and oppressed by tyrants, it has been passed down the ages as a symbol of defiance." - force = 15 - block_chance = 30 - armour_penetration = 5 diff --git a/code/game/objects/items/singularityhammer.dm b/code/game/objects/items/singularityhammer.dm deleted file mode 100644 index 04d7629623b5..000000000000 --- a/code/game/objects/items/singularityhammer.dm +++ /dev/null @@ -1,145 +0,0 @@ -/obj/item/singularityhammer - name = "singularity hammer" - desc = "The pinnacle of close combat technology, the hammer harnesses the power of a miniaturized singularity to deal crushing blows." - icon_state = "singularity0" - base_icon_state = "singularity_hammer" - lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi' - flags_1 = CONDUCT_1 - slot_flags = ITEM_SLOT_BACK - force = 5 - throwforce = 15 - throw_range = 1 - w_class = WEIGHT_CLASS_HUGE - armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 0, "bomb" = 50, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) - resistance_flags = FIRE_PROOF | ACID_PROOF - force_string = "LORD SINGULOTH HIMSELF" - var/charged = 5 - var/wielded = FALSE // track wielded status on item - -/obj/item/singularityhammer/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - START_PROCESSING(SSobj, src) - -/obj/item/singularityhammer/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_multiplier=4, icon_wielded="[base_icon_state]1") - -/// triggered on wield of two handed item -/obj/item/singularityhammer/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/singularityhammer/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/singularityhammer/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/singularityhammer/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - -/obj/item/singularityhammer/process() - if(charged < 5) - charged++ - -/obj/item/singularityhammer/proc/vortex(turf/pull, mob/wielder) - for(var/atom/X in orange(5,pull)) - if(ismovable(X)) - var/atom/movable/A = X - if(A == wielder) - continue - if(A && !A.anchored && !ishuman(X) && !isobserver(X)) - step_towards(A,pull) - step_towards(A,pull) - step_towards(A,pull) - else if(ishuman(X)) - var/mob/living/carbon/human/H = X - if(istype(H.shoes, /obj/item/clothing/shoes/magboots)) - var/obj/item/clothing/shoes/magboots/M = H.shoes - if(M.magpulse) - continue - H.apply_effect(20, EFFECT_PARALYZE, 0) - step_towards(H,pull) - step_towards(H,pull) - step_towards(H,pull) - -/obj/item/singularityhammer/afterattack(atom/A as mob|obj|turf|area, mob/user, proximity) - . = ..() - if(!proximity) - return - if(wielded) - if(charged == 5) - charged = 0 - if(istype(A, /mob/living/)) - var/mob/living/Z = A - Z.take_bodypart_damage(20,0) - playsound(user, 'sound/weapons/marauder.ogg', 50, TRUE) - var/turf/target = get_turf(A) - vortex(target,user) - -/obj/item/mjollnir - name = "Mjolnir" - desc = "A weapon worthy of a god, able to strike with the force of a lightning bolt. It crackles with barely contained energy." - icon_state = "mjollnir0" - base_icon_state = "mjollnir" - lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi' - flags_1 = CONDUCT_1 - slot_flags = ITEM_SLOT_BACK - force = 5 - throwforce = 30 - throw_range = 7 - w_class = WEIGHT_CLASS_HUGE - var/wielded = FALSE // track wielded status on item - -/obj/item/mjollnir/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - -/obj/item/mjollnir/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_multiplier=5, icon_wielded="[base_icon_state]1", attacksound="sparks") - -/// triggered on wield of two handed item -/obj/item/mjollnir/proc/on_wield(obj/item/source, mob/user) - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/mjollnir/proc/on_unwield(obj/item/source, mob/user) - wielded = FALSE - -/obj/item/mjollnir/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/mjollnir/proc/shock(mob/living/target) - target.Stun(60) - var/datum/effect_system/lightning_spread/s = new /datum/effect_system/lightning_spread - s.set_up(5, 1, target.loc) - s.start() - target.visible_message("[target.name] is shocked by [src]!", \ - "You feel a powerful shock course through your body sending you flying!", \ - "You hear a heavy electrical crack!") - var/atom/throw_target = get_edge_target_turf(target, get_dir(src, get_step_away(target, src))) - target.throw_at(throw_target, 200, 4) - return - -/obj/item/mjollnir/attack(mob/living/M, mob/user) - ..() - if(wielded) - shock(M) - -/obj/item/mjollnir/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) - . = ..() - if(isliving(hit_atom)) - shock(hit_atom) diff --git a/code/game/objects/items/spear.dm b/code/game/objects/items/spear.dm deleted file mode 100644 index be6b9d3a5a14..000000000000 --- a/code/game/objects/items/spear.dm +++ /dev/null @@ -1,283 +0,0 @@ -//spears -/obj/item/spear - icon_state = "spearglass0" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - name = "spear" - desc = "A haphazardly-constructed yet still deadly weapon of ancient design." - force = 10 - w_class = WEIGHT_CLASS_BULKY - slot_flags = ITEM_SLOT_BACK - throwforce = 20 - throw_speed = 4 - embedding = list("impact_pain_mult" = 3) - armour_penetration = 10 - custom_materials = list(/datum/material/iron=1150, /datum/material/glass=2075) - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") - sharpness = IS_SHARP - max_integrity = 200 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30) - species_exception = list(/datum/species/kepori) - var/war_cry = "AAAAARGH!!!" - var/icon_prefix = "spearglass" - -/obj/item/spear/ComponentInitialize() - . = ..() - AddComponent(/datum/component/butchering, 100, 70) //decent in a pinch, but pretty bad. - AddComponent(/datum/component/jousting) - AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") - -/obj/item/spear/update_icon_state() - icon_state = "[icon_prefix]0" - return ..() - -/obj/item/spear/CheckParts(list/parts_list) - var/obj/item/shard/tip = locate() in parts_list - if (istype(tip, /obj/item/shard/plasma)) - throwforce = 21 - icon_prefix = "spearplasma" - AddComponent(/datum/component/two_handed, force_unwielded=11, force_wielded=19, icon_wielded="[icon_prefix]1") - update_appearance() - qdel(tip) - ..() - -/obj/item/spear/explosive - name = "explosive lance" - icon_state = "spearbomb0" - base_icon_state = "spearbomb" - icon_prefix = "spearbomb" - var/obj/item/grenade/explosive = null - var/wielded = FALSE // track wielded status on item - -/obj/item/spear/explosive/Initialize(mapload) - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - set_explosive(new /obj/item/grenade/iedcasing/spawned()) //For admin-spawned explosive lances - -/obj/item/spear/explosive/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=10, force_wielded=18, icon_wielded="[icon_prefix]1") - -/// triggered on wield of two handed item -/obj/item/spear/explosive/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/spear/explosive/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/spear/explosive/proc/set_explosive(obj/item/grenade/G) - if(explosive) - QDEL_NULL(explosive) - G.forceMove(src) - explosive = G - desc = "A makeshift spear with [G] attached to it" - -/obj/item/spear/explosive/CheckParts(list/parts_list) - var/obj/item/grenade/G = locate() in parts_list - if(G) - var/obj/item/spear/lancePart = locate() in parts_list - var/datum/component/two_handed/comp_twohand = lancePart.GetComponent(/datum/component/two_handed) - if(comp_twohand) - var/lance_wielded = comp_twohand.force_wielded - var/lance_unwielded = comp_twohand.force_unwielded - AddComponent(/datum/component/two_handed, force_unwielded=lance_unwielded, force_wielded=lance_wielded) - throwforce = lancePart.throwforce - icon_prefix = lancePart.icon_prefix - parts_list -= G - parts_list -= lancePart - set_explosive(G) - qdel(lancePart) - ..() - -/obj/item/spear/explosive/examine(mob/user) - . = ..() - . += "Alt-click to set your war cry." - -/obj/item/spear/explosive/AltClick(mob/user) - if(user.canUseTopic(src, BE_CLOSE)) - ..() - if(istype(user) && loc == user) - var/input = stripped_input(user,"What do you want your war cry to be? You will shout it when you hit someone in melee.", ,"", 50) - if(input) - src.war_cry = input - -/obj/item/spear/explosive/afterattack(atom/movable/AM, mob/user, proximity) - . = ..() - if(!proximity) - return - if(wielded) - user.say("[war_cry]", forced="spear warcry") - explosive.forceMove(AM) - explosive.prime() - qdel(src) - -//GREY TIDE -/obj/item/spear/grey_tide - name = "\improper Grey Tide" - desc = "Recovered from the aftermath of a revolt aboard Defense Outpost Theta Aegis, in which a seemingly endless tide of Assistants caused heavy casualities among Nanotrasen military forces." - attack_verb = list("gored") - force=15 - -/obj/item/spear/grey_tide/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=15, force_wielded=25, icon_wielded="[icon_prefix]1") - -/obj/item/spear/grey_tide/afterattack(atom/movable/AM, mob/living/user, proximity) - . = ..() - if(!proximity) - return - user.faction |= "greytide([REF(user)])" - if(isliving(AM)) - var/mob/living/L = AM - if(istype (L, /mob/living/simple_animal/hostile/illusion)) - return - if(!L.stat && prob(50)) - var/mob/living/simple_animal/hostile/illusion/M = new(user.loc) - M.faction = user.faction.Copy() - M.Copy_Parent(user, 100, user.health/2.5, 12, 30) - M.GiveTarget(L) - -/* - * Bone Spear - */ -/obj/item/spear/bonespear //Blatant imitation of spear, but made out of bone. Not valid for explosive modification. - icon_state = "bone_spear0" - name = "bone spear" - base_icon_state = "bone_spear0" - icon_prefix = "bone_spear" - desc = "A haphazardly-constructed yet still deadly weapon. The pinnacle of modern technology." - icon = 'icons/obj/items_and_weapons.dmi' - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - mob_overlay_icon = 'icons/mob/clothing/back.dmi' - force = 12 - throwforce = 22 - armour_penetration = 15 //Enhanced armor piercing - -/obj/item/spear/bonespear/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=12, force_wielded=20, icon_wielded="[icon_prefix]1") -/obj/item/spear/dragonspear//version of the bone spear crafted from the trophy dropped by the Ash Drake. High damage, high ap, burns. - name = "dragonslayer's spear" - desc = "A bone spear crafted from the leading spine of a fully-grown drake, razor-sharp and hotter then magma. Wielded by the deranged, pyromaniacs, and champions of lavaland." - icon = 'icons/obj/items_and_weapons.dmi' - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - mob_overlay_icon = 'icons/mob/clothing/back.dmi' - force = 20 - throwforce = 25 - block_chance = 15//lol,lmao - armour_penetration = 30 - embedding = list("impact_pain_mult" = 5) - icon_prefix = "dragonspear" - base_icon_state = "dragonspear0" - icon_state = "dragonspear0" - var/list/nemesis_factions = list("mining", "boss") - var/faction_bonus_force = 25 - attack_verb = list("seared", "braided", "impaled", "smote", "gored") - hitsound = 'sound/weapons/sear.ogg' - var/cooldown_time = 0 SECONDS - COOLDOWN_DECLARE(freeze_cooldown) - -/obj/item/spear/dragonspear/attack(mob/living/target, mob/living/carbon/human/user) - var/nemesis_faction = FALSE - if(LAZYLEN(nemesis_factions)) - for(var/F in target.faction) - if(F in nemesis_factions) - nemesis_faction = TRUE - force += faction_bonus_force - throwforce += faction_bonus_force - nemesis_effects(user, target) - break - . = ..() - if(nemesis_faction) - force -= faction_bonus_force - throwforce -= faction_bonus_force - -/obj/item/spear/dragonspear/proc/nemesis_effects(mob/living/user, mob/living/target) - return - -/obj/item/spear/dragonspear/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=20, force_wielded=25, icon_wielded="[icon_prefix]1") - AddComponent(/datum/component/butchering, 60, 150) - -/obj/item/spear/dragonspear/attack(atom/target, blocked = FALSE) - if(iscarbon(target)) - var/mob/living/carbon/M = target - M.adjust_fire_stacks(3) - M.IgniteMob() - M.apply_damage(5, BURN) - M.adjust_bodytemperature(150) - if(isanimal(target)) - var/mob/living/simple_animal/M = target - M.apply_damage(15, BURN) - ..() - -//crystal spear -/obj/item/spear/crystal - icon_state = "crystal_spear0" - name = "crystal spear" - desc = "While more 'sharp stick' than spear, this thing is extremely dangerous neverless. Crafted out of the mysterous crystals, it can hit for very high damage, although it will break with repeated use." - icon = 'icons/obj/items_and_weapons.dmi' - base_icon_state = "crystal_spear" - icon_prefix = "crystal_spear" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - mob_overlay_icon = 'icons/mob/clothing/back.dmi' - force = 12 - throwforce = 40 - armour_penetration = 20 - max_integrity = 300 //you can repair this with duct tape - var/damage_to_take_on_hit = 25 //every time we hit something, deal how much damage? - -/obj/item/spear/crystal/ComponentInitialize() - . = ..() - AddComponent(/datum/component/two_handed, force_unwielded=12, force_wielded=30, icon_wielded="[icon_prefix]1") //4 hit crit - -/obj/item/spear/crystal/examine(mob/user) - . = ..() - . += "You can throw it for very high damage and stuns fauna, though this will shatter it instantly." - var/healthpercent = (obj_integrity/max_integrity) * 100 - switch(healthpercent) - if(50 to 99) - . += "It looks slightly damaged." - if(25 to 50) - . += "It appears heavily damaged." - if(0 to 25) - . += "It's falling apart!" - -/obj/item/spear/crystal/attack(mob/living/M, mob/living/user) - . = ..() - take_damage(damage_to_take_on_hit) - -/obj/item/spear/crystal/attack_obj(obj/O, mob/living/user) - . = ..() - take_damage(damage_to_take_on_hit) - -/obj/item/spear/crystal/obj_destruction(damage_flag) - visible_message("[src] shatters into a million pieces!") - playsound(src,"shatter", 70) - new /obj/effect/decal/cleanable/glass/strange(get_turf(src)) - return ..() - -/obj/item/spear/crystal/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) //destroyes when thrown - . = ..() - if(ishostile(hit_atom)) - var/mob/living/simple_animal/hostile/hostile_target = hit_atom - var/hostile_ai_status = hostile_target.AIStatus - hostile_target.AIStatus = AI_OFF - addtimer(VARSET_CALLBACK(hostile_target, AIStatus, hostile_ai_status), 5 SECONDS) - - new /obj/effect/temp_visual/goliath_tentacle/crystal/visual_only(get_turf(src)) - visible_message("[src] shatters into a million pieces!") - playsound(src,"shatter", 70) - new /obj/effect/decal/cleanable/glass/strange(get_turf(src)) - qdel(src) diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index 264ab12646ea..10eb8c1e2cf8 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -382,7 +382,7 @@ desc = "Used to secure limbs following a fracture." gender = PLURAL singular_name = "splint" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "splint" apply_sounds = list('sound/effects/rip1.ogg', 'sound/effects/rip2.ogg') self_delay = 40 diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index da08c87a5a35..23a8c8d5e5f0 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -339,7 +339,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( var/obj/item/stack/sheet/cotton/cloth/C = I to_chat(user, "You begin to wrap the [C] around the [src]...") if(do_after(user, 35, target = src)) - var/obj/item/kitchen/knife/shiv/S = new /obj/item/kitchen/knife/shiv + var/obj/item/melee/knife/shiv/S = new /obj/item/melee/knife/shiv C.use(1) to_chat(user, "You wrap the [C] around the [src] forming a makeshift weapon.") remove_item_from_storage(src) diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 9fc6fa808a46..560031fa03da 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -74,7 +74,6 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( \ /obj/item/emptysandbag name = "empty sandbag" desc = "A bag to be filled with sand." - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "sandbag" w_class = WEIGHT_CLASS_TINY diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 4443218e4385..5dde37c0b90d 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -519,7 +519,8 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \ GLOBAL_LIST_INIT(bone_recipes, list( \ new /datum/stack_recipe("mortar", /obj/item/reagent_containers/glass/mortar/bone, 3), \ - new /datum/stack_recipe("bone dagger", /obj/item/kitchen/knife/combat/bone, 2))) + new /datum/stack_recipe("bone dagger", /obj/item/melee/knife/bone, 2))) + /obj/item/stack/sheet/bone name = "bones" icon = 'icons/obj/mining.dmi' diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index fb56a7a15886..c2679adf8ae9 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -291,7 +291,7 @@ /obj/item/ammo_box/a762_stripper, /obj/item/ammo_box/amagpellet_claris, //that's the last of the clips /obj/item/reagent_containers/food/snacks/donut, - /obj/item/kitchen/knife/combat, + /obj/item/melee/knife/combat, /obj/item/flashlight/seclite, /obj/item/melee/classic_baton/telescopic, /obj/item/radio, @@ -367,7 +367,7 @@ /obj/item/storage/fancy/cigarettes, /obj/item/reagent_containers/food/drinks/bottle, /obj/item/stack/medical, - /obj/item/kitchen/knife, + /obj/item/melee/knife/kitchen, /obj/item/reagent_containers/hypospray, /obj/item/gps, /obj/item/storage/bag/ore, @@ -382,7 +382,7 @@ /obj/item/storage/bag/plants, /obj/item/stack/marker_beacon, /obj/item/restraints/legcuffs/bola/watcher, - /obj/item/claymore/bone, + /obj/item/melee/sword/bone, /obj/item/key/lasso )) @@ -786,7 +786,7 @@ STR.use_sound = null //if youre wondering why this is null, its so you can look in your sheath to prepare to draw, without letting anyone know youre preparing to draw it STR.max_w_class = WEIGHT_CLASS_BULKY STR.set_holdable(list( - /obj/item/melee/sabre + /obj/item/melee/sword/sabre )) /obj/item/storage/belt/sabre/examine(mob/user) @@ -814,7 +814,7 @@ return ..() /obj/item/storage/belt/sabre/PopulateContents() - new /obj/item/melee/sabre(src) + new /obj/item/melee/sword/sabre(src) update_appearance() /obj/item/storage/belt/sabre/solgov @@ -833,11 +833,11 @@ STR.use_sound = null STR.max_w_class = WEIGHT_CLASS_BULKY STR.set_holdable(list( - /obj/item/melee/sabre/solgov + /obj/item/melee/sword/sabre/solgov )) /obj/item/storage/belt/sabre/solgov/PopulateContents() - new /obj/item/melee/sabre/solgov(src) + new /obj/item/melee/sword/sabre/solgov(src) update_appearance() /obj/item/storage/belt/sabre/suns @@ -862,11 +862,11 @@ STR.use_sound = null STR.max_w_class = WEIGHT_CLASS_BULKY STR.set_holdable(list( - /obj/item/melee/sabre/suns + /obj/item/melee/sword/sabre/suns )) /obj/item/storage/belt/sabre/suns/PopulateContents() - new /obj/item/melee/sabre/suns(src) + new /obj/item/melee/sword/sabre/suns(src) update_appearance() @@ -887,11 +887,11 @@ STR.use_sound = null STR.max_w_class = WEIGHT_CLASS_BULKY STR.set_holdable(list( - /obj/item/melee/sabre/suns/captain + /obj/item/melee/sword/sabre/suns/captain )) /obj/item/storage/belt/sabre/suns/captain/PopulateContents() - new /obj/item/melee/sabre/suns/captain(src) + new /obj/item/melee/sword/sabre/suns/captain(src) update_appearance() /obj/item/storage/belt/sabre/suns/cmo @@ -917,11 +917,11 @@ STR.use_sound = null STR.max_w_class = WEIGHT_CLASS_BULKY STR.set_holdable(list( - /obj/item/melee/sabre/suns/cmo + /obj/item/melee/sword/sabre/suns/cmo )) /obj/item/storage/belt/sabre/suns/cmo/PopulateContents() - new /obj/item/melee/sabre/suns/cmo(src) + new /obj/item/melee/sword/sabre/suns/cmo(src) update_appearance() /obj/item/storage/belt/security/webbing/inteq diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm index 4bb91fe95726..39e533f2a4a3 100644 --- a/code/game/objects/items/storage/uplink_kits.dm +++ b/code/game/objects/items/storage/uplink_kits.dm @@ -22,7 +22,7 @@ new /obj/item/multitool/ai_detect(src) // 1 tc new /obj/item/encryptionkey/syndicate(src) // 2 tc new /obj/item/reagent_containers/syringe/mulligan(src) // 4 tc - new /obj/item/kitchen/knife/switchblade(src) //I'll count this as 2 tc + new /obj/item/melee/knife/switchblade(src) //I'll count this as 2 tc new /obj/item/storage/fancy/cigarettes/cigpack_syndicate (src) // 2 tc this shit heals new /obj/item/flashlight/emp(src) // 2 tc new /obj/item/chameleon(src) // 7 tc @@ -117,7 +117,7 @@ new /obj/item/card/emag(src) // 6 tc /obj/item/storage/box/syndicate/bundle_B/PopulateContents() - switch (pickweight(list( "bond" = 2, "ninja" = 1, "darklord" = 1, "white_whale_holy_grail" = 2, "mad_scientist" = 2, "bee" = 1, "mr_freeze" = 2, "made_man"= 1))) + switch (pickweight(list( "bond" = 2, "ninja" = 1, "darklord" = 1, "white_whale_holy_grail" = 2, "mad_scientist" = 2, "mr_freeze" = 2, "made_man"= 1))) if("bond") new /obj/item/gun/ballistic/automatic/pistol/ringneck(src) new /obj/item/attachment/silencer(src) @@ -129,7 +129,7 @@ new /obj/item/reagent_containers/glass/rag(src) if("ninja") - new /obj/item/katana(src) // Unique , hard to tell how much tc this is worth. 8 tc? + new /obj/item/melee/sword/katana(src) new /obj/item/implanter/adrenalin(src) // 8 tc for(var/i in 1 to 6) new /obj/item/throwing_star(src) // ~5 tc for all 6 @@ -140,7 +140,6 @@ if("darklord") new /obj/item/dualsaber(src) new /obj/item/dnainjector/telemut/darkbundle(src) - new /obj/item/clothing/suit/hooded/chaplain_hoodie(src) new /obj/item/card/id/syndicate(src) new /obj/item/clothing/shoes/chameleon/noslip(src) //because slipping while being a dark lord sucks new /obj/item/book/granter/spell/summonitem(src) @@ -167,16 +166,6 @@ new /obj/item/pen/edagger(src) new /obj/item/gun/energy/decloner(src) - if("bee") - new /obj/item/paper/fluff/bee_objectives(src) // 0 tc (motivation) - new /obj/item/clothing/suit/hooded/bee_costume(src) // 0 tc - new /obj/item/clothing/mask/rat/bee(src) // 0 tc - new /obj/item/storage/belt/fannypack/yellow(src) // 0 tc - new /obj/item/grenade/spawnergrenade/buzzkill(src) - new /obj/item/grenade/spawnergrenade/buzzkill(src) - new /obj/item/reagent_containers/glass/bottle/beesease(src) // 10 tc? - new /obj/item/melee/beesword(src) //priceless - if("mr_freeze") new /obj/item/clothing/glasses/cold(src) new /obj/item/clothing/gloves/color/black(src) @@ -195,7 +184,7 @@ if("made_man") new /obj/effect/spawner/lootdrop/mafia_outfit(src) // 0 TC, just an outfit for the new 'don of this family new /obj/item/gun/ballistic/automatic/smg/firestorm/pan(src) // 20 TC, a gun with 50 .45 bullets on a three round burst is kinda outstanding - new /obj/item/kitchen/knife/switchblade(src) // 3 TC? It's nice, but it's really a stealth/oh fuck I'm out of ammo weapon + new /obj/item/melee/knife/switchblade(src) // 3 TC? It's nice, but it's really a stealth/oh fuck I'm out of ammo weapon new /obj/item/reagent_containers/food/drinks/bottle/vodka (src) // 5 TC, free molotov assemblies new /obj/item/reagent_containers/food/drinks/bottle/vodka (src) new /obj/item/reagent_containers/food/drinks/bottle/vodka (src) @@ -209,14 +198,6 @@ new /obj/item/reagent_containers/food/drinks/flask (src) // 1 TC, I can't believe I forgot about the booze flask AAAAAAA new /obj/item/storage/secure/briefcase/syndie (src) // 1TC, for bribing the bartender to let you set up shop... amongst other actions. - -/obj/item/paper/fluff/bee_objectives - name = "Objectives of a Bee Liberation Front Operative" - default_raw_text = "Objective #1. Liberate all bees on the NT transport vessel 2416/B. Success!
Objective #2. Escape alive. Failed." - - - - /obj/item/storage/box/syndicate/contract_kit name = "Contract Kit" desc = "Supplied to Syndicate contractors." diff --git a/code/game/objects/items/tanks/jetpack.dm b/code/game/objects/items/tanks/jetpack.dm index b8f4451a9660..deca5b57397e 100644 --- a/code/game/objects/items/tanks/jetpack.dm +++ b/code/game/objects/items/tanks/jetpack.dm @@ -173,7 +173,7 @@ /obj/item/tank/jetpack/suit name = "hardsuit jetpack upgrade" desc = "A modular, compact set of thrusters designed to integrate with a hardsuit. It is fueled by a tank inserted into the suit's storage compartment." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "jetpack_upgrade" item_state = "jetpack-black" w_class = WEIGHT_CLASS_NORMAL diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 5ce082d79dc9..f1ce47a8f8fd 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -265,7 +265,7 @@ /obj/item/toy/sword name = "toy sword" desc = "A cheap, plastic replica of an energy sword. Realistic sounds! Ages 8 and up." - icon = 'icons/obj/transforming_energy.dmi' + icon = 'icons/obj/weapon/energy.dmi' icon_state = "sword" item_state = "sword" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' @@ -348,7 +348,7 @@ lefthand_file = 'icons/mob/inhands/equipment/toolbox_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/toolbox_righthand.dmi' var/active = FALSE - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' hitsound = 'sound/weapons/smash.ogg' attack_verb = list("robusted") @@ -407,7 +407,7 @@ /obj/item/toy/katana name = "replica katana" desc = "Woefully underpowered in D20." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/weapon/sword.dmi' icon_state = "katana" item_state = "katana" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm deleted file mode 100644 index 89eb9b0019e4..000000000000 --- a/code/game/objects/items/weaponry.dm +++ /dev/null @@ -1,759 +0,0 @@ -/obj/item/banhammer - desc = "A banhammer." - name = "banhammer" - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "toyhammer" - slot_flags = ITEM_SLOT_BELT - throwforce = 0 - force = 1 - w_class = WEIGHT_CLASS_TINY - throw_speed = 3 - throw_range = 7 - attack_verb = list("banned") - max_integrity = 200 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70) - resistance_flags = FIRE_PROOF - -/* -oranges says: This is a meme relating to the english translation of the ss13 russian wiki page on lurkmore. -mrdoombringer sez: and remember kids, if you try and PR a fix for this item's grammar, you are admitting that you are, indeed, a newfriend. -for further reading, please see: https://github.com/tgstation/tgstation/pull/30173 and https://translate.google.com/translate?sl=auto&tl=en&js=y&prev=_t&hl=en&ie=UTF-8&u=%2F%2Flurkmore.to%2FSS13&edit-text=&act=url -*/ -/obj/item/banhammer/attack(mob/M, mob/user) - if(user.zone_selected == BODY_ZONE_HEAD) - M.visible_message("[user] is stroking the head of [M] with a banhammer.", "[user] is stroking your head with a banhammer.", "You hear a banhammer stroking a head.") - else - M.visible_message("[M] has been banned FOR NO REISIN by [user]!", "You have been banned FOR NO REISIN by [user]!", "You hear a banhammer banning someone.") - playsound(loc, 'sound/effects/adminhelp.ogg', 15) //keep it at 15% volume so people don't jump out of their skin too much - if(user.a_intent != INTENT_HELP) - return ..(M, user) - -/obj/item/sord - name = "\improper SORD" - desc = "This thing is so unspeakably shitty you are having a hard time even holding it." - icon_state = "sord" - item_state = "sord" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - slot_flags = ITEM_SLOT_BELT - force = 2 - throwforce = 1 - w_class = WEIGHT_CLASS_NORMAL - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - -/obj/item/claymore - name = "claymore" - desc = "What are you standing around staring at this for? Get to killing!" - icon_state = "claymore" - item_state = "claymore" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - pickup_sound = 'sound/items/handling/knife2_pickup.ogg' - drop_sound = 'sound/items/handling/metal_drop.ogg' - hitsound = 'sound/weapons/bladeslice.ogg' - flags_1 = CONDUCT_1 - slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK - force = 40 - throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - block_chance = 40 - sharpness = IS_SHARP - max_integrity = 200 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF - -/obj/item/claymore/Initialize() - . = ..() - AddComponent(/datum/component/butchering, 40, 105) - -/obj/item/claymore/highlander //ALL COMMENTS MADE REGARDING THIS SWORD MUST BE MADE IN ALL CAPS - desc = "THERE CAN BE ONLY ONE, AND IT WILL BE YOU!!!\nActivate it in your hand to point to the nearest victim." - flags_1 = CONDUCT_1 - item_flags = DROPDEL //WOW BRO YOU LOST AN ARM, GUESS WHAT YOU DONT GET YOUR SWORD ANYMORE //I CANT BELIEVE SPOOKYDONUT WOULD BREAK THE REQUIREMENTS - slot_flags = null - block_chance = 0 //RNG WON'T HELP YOU NOW, PANSY - light_range = 3 - attack_verb = list("brutalized", "eviscerated", "disemboweled", "hacked", "carved", "cleaved") //ONLY THE MOST VISCERAL ATTACK VERBS - var/notches = 0 //HOW MANY PEOPLE HAVE BEEN SLAIN WITH THIS BLADE - var/obj/item/disk/nuclear/nuke_disk //OUR STORED NUKE DISK - -/obj/item/claymore/highlander/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, HIGHLANDER) - START_PROCESSING(SSobj, src) - -/obj/item/claymore/highlander/Destroy() - if(nuke_disk) - nuke_disk.forceMove(get_turf(src)) - nuke_disk.visible_message("The nuke disk is vulnerable!") - nuke_disk = null - STOP_PROCESSING(SSobj, src) - return ..() - -/obj/item/claymore/highlander/process() - if(ishuman(loc)) - var/mob/living/carbon/human/H = loc - loc.layer = LARGE_MOB_LAYER //NO HIDING BEHIND PLANTS FOR YOU, DICKWEED (HA GET IT, BECAUSE WEEDS ARE PLANTS) - H.bleedsuppress = TRUE //AND WE WON'T BLEED OUT LIKE COWARDS - else - if(!(flags_1 & ADMIN_SPAWNED_1)) - qdel(src) - - -/obj/item/claymore/highlander/pickup(mob/living/user) - . = ..() - to_chat(user, "The power of Scotland protects you! You are shielded from all stuns and knockdowns.") - user.add_stun_absorption("highlander", INFINITY, 1, " is protected by the power of Scotland!", "The power of Scotland absorbs the stun!", " is protected by the power of Scotland!") - user.ignore_slowdown(HIGHLANDER) - -/obj/item/claymore/highlander/dropped(mob/living/user) - . = ..() - user.unignore_slowdown(HIGHLANDER) - -/obj/item/claymore/highlander/examine(mob/user) - . = ..() - . += "It has [!notches ? "nothing" : "[notches] notches"] scratched into the blade." - if(nuke_disk) - . += "It's holding the nuke disk!" - -/obj/item/claymore/highlander/attack(mob/living/target, mob/living/user) - . = ..() - if(!QDELETED(target) && iscarbon(target) && target.stat == DEAD && target.mind && target.mind.special_role == "highlander") - user.fully_heal(admin_revive = FALSE) //STEAL THE LIFE OF OUR FALLEN FOES - add_notch(user) - target.visible_message("[target] crumbles to dust beneath [user]'s blows!", "As you fall, your body crumbles to dust!") - target.dust() - -/obj/item/claymore/highlander/attack_self(mob/living/user) - var/closest_victim - var/closest_distance = 255 - for(var/mob/living/carbon/human/H in GLOB.player_list - user) - if(H.mind.special_role == "highlander" && (!closest_victim || get_dist(user, closest_victim) < closest_distance)) - closest_victim = H - if(!closest_victim) - to_chat(user, "[src] thrums for a moment and falls dark. Perhaps there's nobody nearby.") - return - to_chat(user, "[src] thrums and points to the [dir2text(get_dir(user, closest_victim))].") - -/obj/item/claymore/highlander/IsReflect() - return 1 //YOU THINK YOUR PUNY LASERS CAN STOP ME? - -/obj/item/claymore/highlander/proc/add_notch(mob/living/user) //DYNAMIC CLAYMORE PROGRESSION SYSTEM - THIS IS THE FUTURE - notches++ - force++ - var/new_name = name - switch(notches) - if(1) - to_chat(user, "Your first kill - hopefully one of many. You scratch a notch into [src]'s blade.") - to_chat(user, "You feel your fallen foe's soul entering your blade, restoring your wounds!") - new_name = "notched claymore" - if(2) - to_chat(user, "Another falls before you. Another soul fuses with your own. Another notch in the blade.") - new_name = "double-notched claymore" - add_atom_colour(rgb(255, 235, 235), ADMIN_COLOUR_PRIORITY) - if(3) - to_chat(user, "You're beginning to relish the thrill of battle.") - new_name = "triple-notched claymore" - add_atom_colour(rgb(255, 215, 215), ADMIN_COLOUR_PRIORITY) - if(4) - to_chat(user, "You've lost count of how many you've killed.") - new_name = "many-notched claymore" - add_atom_colour(rgb(255, 195, 195), ADMIN_COLOUR_PRIORITY) - if(5) - to_chat(user, "Five voices now echo in your mind, cheering the slaughter.") - new_name = "battle-tested claymore" - add_atom_colour(rgb(255, 175, 175), ADMIN_COLOUR_PRIORITY) - if(6) - to_chat(user, "Is this what the vikings felt like? Visions of glory fill your head as you slay your sixth foe.") - new_name = "battle-scarred claymore" - add_atom_colour(rgb(255, 155, 155), ADMIN_COLOUR_PRIORITY) - if(7) - to_chat(user, "Kill. Butcher. Conquer.") - new_name = "vicious claymore" - add_atom_colour(rgb(255, 135, 135), ADMIN_COLOUR_PRIORITY) - if(8) - to_chat(user, "IT NEVER GETS OLD. THE SCREAMING. THE BLOOD AS IT SPRAYS ACROSS YOUR FACE.") - new_name = "bloodthirsty claymore" - add_atom_colour(rgb(255, 115, 115), ADMIN_COLOUR_PRIORITY) - if(9) - to_chat(user, "ANOTHER ONE FALLS TO YOUR BLOWS. ANOTHER WEAKLING UNFIT TO LIVE.") - new_name = "gore-stained claymore" - add_atom_colour(rgb(255, 95, 95), ADMIN_COLOUR_PRIORITY) - if(10) - user.visible_message("[user]'s eyes light up with a vengeful fire!", \ - "YOU FEEL THE POWER OF VALHALLA FLOWING THROUGH YOU! THERE CAN BE ONLY ONE!!!") - user.update_icons() - new_name = "GORE-DRENCHED CLAYMORE OF [pick("THE WHIMSICAL SLAUGHTER", "A THOUSAND SLAUGHTERED CATTLE", "GLORY AND VALHALLA", "ANNIHILATION", "OBLITERATION")]" - icon_state = "claymore_gold" - item_state = "cultblade" - remove_atom_colour(ADMIN_COLOUR_PRIORITY) - - name = new_name - playsound(user, 'sound/items/screwdriver2.ogg', 50, TRUE) - -/obj/item/katana - name = "katana" - desc = "Woefully underpowered in D20." - icon_state = "katana" - item_state = "katana" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - pickup_sound = 'sound/items/handling/knife2_pickup.ogg' - drop_sound = 'sound/items/handling/metal_drop.ogg' - flags_1 = CONDUCT_1 - slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_BACK - force = 40 - throwforce = 10 - w_class = WEIGHT_CLASS_HUGE - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - block_chance = 10 - sharpness = IS_SHARP - max_integrity = 200 - armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF - supports_variations = VOX_VARIATION - -/obj/item/katana/cursed - name = "ominous katana" - desc = "A japanese single-edged blade, once used to contain an ancient evil. The being within is grateful for being released, but beware: generosity has a price.
" - icon_state = "ominous_katana" - item_state = "ominous_katana" - icon = 'icons/obj/lavaland/artefacts.dmi' - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - force = 35 - armour_penetration = 30 - max_integrity = 500 - resistance_flags = FIRE_PROOF | ACID_PROOF - var/essence = 0//Used for blade abilities, mainly heals(If I can safely implement this I will nerf the damage slightly, and boost the selfdam) - var/list/nemesis_factions = list("mining", "boss") - var/faction_bonus_force = 25 - - -/obj/item/katana/cursed/examine(mob/user) - . = ..() - . += "To cut into the flesh of your target with this weapon is to feed the gluttonous emptiness within. Burn the blood of your enemies to replenish your own spent essence." - -/obj/item/katana/cursed/attack(mob/living/target, mob/living/user) - . = ..() - if(isliving(target) && target.stat != DEAD) - essence += rand(15, 20) - -/obj/item/katana/cursed/attack(mob/living/target, mob/living/carbon/human/user) - var/nemesis_faction = FALSE - if(LAZYLEN(nemesis_factions)) - for(var/F in target.faction) - if(F in nemesis_factions) - nemesis_faction = TRUE - force += faction_bonus_force - nemesis_effects(user, target) - break - . = ..() - if(nemesis_faction) - force -= faction_bonus_force - -/obj/item/katana/cursed/proc/nemesis_effects(mob/living/user, mob/living/target) - return - -/obj/item/katana/cursed/attack(mob/target, mob/living/carbon/human/user) - if(user.mind && user.owns_soul()) - to_chat(user, "You feel a terrible chill as the emptiness within [src] devours on your life force!") - user.apply_damage(rand(2,3), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_CHEST, BODY_ZONE_HEAD, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_PRECISE_GROIN)) - user.apply_damage(rand(2,3), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_CHEST, BODY_ZONE_HEAD, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_PRECISE_GROIN)) - user.apply_damage(rand(2,3), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_CHEST, BODY_ZONE_HEAD, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_PRECISE_GROIN)) - user.apply_damage(rand(2,3), BURN, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_CHEST, BODY_ZONE_HEAD, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_PRECISE_GROIN)) - ..() - -/obj/item/wirerod - name = "wired rod" - desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." - icon_state = "wiredrod" - item_state = "rods" - flags_1 = CONDUCT_1 - force = 9 - throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL - custom_materials = list(/datum/material/iron=1150, /datum/material/glass=75) - attack_verb = list("hit", "bludgeoned", "whacked", "bonked") - -/obj/item/wirerod/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/shard)) - var/obj/item/spear/S = new /obj/item/spear - - remove_item_from_storage(user) - if (!user.transferItemToLoc(I, S)) - return - S.CheckParts(list(I)) - qdel(src) - - user.put_in_hands(S) - to_chat(user, "You fasten the glass shard to the top of the rod with the cable.") - - else if(istype(I, /obj/item/assembly/igniter) && !(HAS_TRAIT(I, TRAIT_NODROP))) - var/obj/item/melee/baton/cattleprod/P = new /obj/item/melee/baton/cattleprod - - remove_item_from_storage(user) - - to_chat(user, "You fasten [I] to the top of the rod with the cable.") - - qdel(I) - qdel(src) - - user.put_in_hands(P) - else - return ..() - - -/obj/item/throwing_star - name = "throwing star" - desc = "An ancient weapon still used to this day, due to its ease of lodging itself into its victim's body parts." - icon_state = "throwingstar" - item_state = "eshield0" - lefthand_file = 'icons/mob/inhands/equipment/shields_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/shields_righthand.dmi' - force = 2 - throwforce = 20 //20 + 2 (WEIGHT_CLASS_SMALL) * 4 (EMBEDDED_IMPACT_PAIN_MULTIPLIER) = 28 damage on hit due to guaranteed embedding - throw_speed = 4 - embedding = list("pain_mult" = 4, "embed_chance" = 100, "fall_chance" = 0, "embed_chance_turf_mod" = 15) - armour_penetration = 40 - - w_class = WEIGHT_CLASS_SMALL - sharpness = IS_SHARP - custom_materials = list(/datum/material/iron=500, /datum/material/glass=500) - resistance_flags = FIRE_PROOF - -/obj/item/throwing_star/stamina - name = "shock throwing star" - desc = "An aerodynamic disc designed to cause excruciating pain when stuck inside fleeing targets, hopefully without causing fatal harm." - throwforce = 5 - embedding = list("pain_chance" = 5, "embed_chance" = 100, "fall_chance" = 0, "jostle_chance" = 10, "pain_stam_pct" = 0.8, "jostle_pain_mult" = 3) - -/obj/item/throwing_star/toy - name = "toy throwing star" - desc = "An aerodynamic disc strapped with adhesive for sticking to people, good for playing pranks and getting yourself killed by security." - sharpness = IS_BLUNT - force = 0 - throwforce = 0 - embedding = list("pain_mult" = 0, "jostle_pain_mult" = 0, "embed_chance" = 100, "fall_chance" = 0) - -/obj/item/throwing_star/magspear - name = "magnetic spear" - desc = "A reusable spear that is typically loaded into kinetic spearguns." - icon = 'icons/obj/ammo_bullets.dmi' - icon_state = "magspear" - throwforce = 25 //kills regular carps in one hit - force = 10 - throw_range = 0 //throwing these invalidates the speargun - attack_verb = list("stabbed", "ripped", "gored", "impaled") - embedding = list("pain_mult" = 8, "embed_chance" = 100, "fall_chance" = 0, "impact_pain_mult" = 15) //55 damage+embed on hit - -/obj/item/phone - name = "red phone" - desc = "Should anything ever go wrong..." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "red_phone" - force = 3 - throwforce = 2 - throw_speed = 3 - throw_range = 4 - w_class = WEIGHT_CLASS_SMALL - attack_verb = list("called", "rang") - hitsound = 'sound/weapons/ring.ogg' - - -/obj/item/cane - name = "cane" - desc = "A cane used by a true gentleman." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "cane" - item_state = "stick" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 5 - throwforce = 5 - w_class = WEIGHT_CLASS_SMALL - custom_materials = list(/datum/material/iron=50) - attack_verb = list("bludgeoned", "whacked", "disciplined", "thrashed") - -/obj/item/staff - name = "wizard staff" - desc = "Apparently a staff used by the wizard." - icon = 'icons/obj/wizard.dmi' - icon_state = "staff" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - force = 3 - throwforce = 5 - throw_speed = 2 - throw_range = 5 - w_class = WEIGHT_CLASS_SMALL - armour_penetration = 100 - attack_verb = list("bludgeoned", "whacked", "disciplined") - resistance_flags = FLAMMABLE - -/obj/item/staff/broom - name = "broom" - desc = "Used for sweeping, and flying into the night while cackling. Black cat not included." - icon = 'icons/obj/wizard.dmi' - icon_state = "broom" - resistance_flags = FLAMMABLE - -/obj/item/staff/stick - name = "stick" - desc = "A great tool to drag someone else's drinks across the bar." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "cane" - item_state = "stick" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 3 - throwforce = 5 - throw_speed = 2 - throw_range = 5 - w_class = WEIGHT_CLASS_SMALL - -/obj/item/ectoplasm - name = "ectoplasm" - desc = "Spooky." - gender = PLURAL - icon = 'icons/obj/wizard.dmi' - icon_state = "ectoplasm" - - -/obj/item/ectoplasm/angelic - icon = 'icons/obj/wizard.dmi' - icon_state = "angelplasm" - -/obj/item/mounted_chainsaw - name = "mounted chainsaw" - desc = "A chainsaw that has replaced your arm." - icon_state = "chainsaw_on" - item_state = "mounted_chainsaw" - lefthand_file = 'icons/mob/inhands/weapons/chainsaw_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/chainsaw_righthand.dmi' - item_flags = ABSTRACT | DROPDEL - w_class = WEIGHT_CLASS_HUGE - force = 24 - throwforce = 0 - throw_range = 0 - throw_speed = 0 - sharpness = IS_SHARP - attack_verb = list("sawed", "torn", "cut", "chopped", "diced") - hitsound = 'sound/weapons/chainsawhit.ogg' - tool_behaviour = TOOL_SAW - toolspeed = 1 - -/obj/item/mounted_chainsaw/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) - -/obj/item/mounted_chainsaw/Destroy() - var/obj/item/bodypart/part - new /obj/item/chainsaw(get_turf(src)) - if(iscarbon(loc)) - var/mob/living/carbon/holder = loc - var/index = holder.get_held_index_of_item(src) - if(index) - part = holder.hand_bodyparts[index] - . = ..() - if(part) - part.drop_limb() - -/obj/item/statuebust - name = "bust" - desc = "A priceless ancient marble bust, the kind that belongs in a museum." //or you can hit people with it - icon = 'icons/obj/statue.dmi' - icon_state = "bust" - force = 15 - throwforce = 10 - throw_speed = 5 - throw_range = 2 - attack_verb = list("busted") - var/impressiveness = 45 - -/obj/item/statuebust/Initialize() - . = ..() - AddComponent(/datum/component/art, impressiveness) - AddElement(/datum/element/beauty, 1000) - -/obj/item/statuebust/hippocratic - name = "hippocrates bust" - desc = "A bust of the famous Greek physician Hippocrates of Kos, often referred to as the father of western medicine." - icon_state = "hippocratic" - impressiveness = 50 - -/obj/item/melee/skateboard - name = "improvised skateboard" - desc = "A skateboard. It can be placed on its wheels and ridden, or used as a strong weapon." - icon_state = "skateboard" - item_state = "skateboard" - force = 12 - throwforce = 4 - w_class = WEIGHT_CLASS_NORMAL - attack_verb = list("smacked", "whacked", "slammed", "smashed") - ///The vehicle counterpart for the board - var/board_item_type = /obj/vehicle/ridden/scooter/skateboard - -/obj/item/melee/skateboard/attack_self(mob/user) - var/obj/vehicle/ridden/scooter/skateboard/S = new board_item_type(get_turf(user))//this probably has fucky interactions with telekinesis but for the record it wasnt my fault - S.buckle_mob(user) - qdel(src) - -/obj/item/melee/skateboard/pro - name = "skateboard" - desc = "A RaDSTORMz brand professional skateboard. It looks sturdy and well made." - icon_state = "skateboard2" - item_state = "skateboard2" - board_item_type = /obj/vehicle/ridden/scooter/skateboard/pro - custom_premium_price = 500 - -/obj/item/melee/skateboard/hoverboard - name = "hoverboard" - desc = "A blast from the past, so retro!" - icon_state = "hoverboard_red" - item_state = "hoverboard_red" - board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard - custom_premium_price = 2015 - -/obj/item/melee/skateboard/hoverboard/admin - name = "\improper Board Of Directors" - desc = "The engineering complexity of a spaceship concentrated inside of a board. Just as expensive, too." - icon_state = "hoverboard_nt" - item_state = "hoverboard_nt" - board_item_type = /obj/vehicle/ridden/scooter/skateboard/hoverboard/admin - -/obj/item/melee/baseball_bat - name = "baseball bat" - desc = "There ain't a skull in the league that can withstand a swatter." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "baseball_bat" - item_state = "baseball_bat" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 12 - throwforce = 12 - attack_verb = list("beat", "smacked") - custom_materials = list(/datum/material/wood = MINERAL_MATERIAL_AMOUNT * 3.5) - w_class = WEIGHT_CLASS_HUGE - var/homerun_ready = 0 - var/homerun_able = 0 - -/obj/item/melee/baseball_bat/homerun - name = "home run bat" - desc = "This thing looks dangerous... Dangerously good at baseball, that is." - homerun_able = 1 - -/obj/item/melee/baseball_bat/attack_self(mob/user) - if(!homerun_able) - ..() - return - if(homerun_ready) - to_chat(user, "You're already ready to do a home run!") - ..() - return - to_chat(user, "You begin gathering strength...") - playsound(get_turf(src), 'sound/magic/lightning_chargeup.ogg', 65, TRUE) - if(do_after(user, 90, target = src)) - to_chat(user, "You gather power! Time for a home run!") - homerun_ready = 1 - ..() - -/obj/item/melee/baseball_bat/attack(mob/living/target, mob/living/user) - . = ..() - var/atom/throw_target = get_edge_target_turf(target, user.dir) - if(homerun_ready) - user.visible_message("It's a home run!") - target.throw_at(throw_target, rand(8,10), 14, user) - SSexplosions.medturf += throw_target - playsound(get_turf(src), 'sound/weapons/homerun.ogg', 100, TRUE) - homerun_ready = 0 - return - else if(!target.anchored) - target.throw_at(throw_target, rand(1,2), 2, user, gentle = TRUE) - -/obj/item/melee/baseball_bat/ablative - name = "metal baseball bat" - desc = "This bat is made of highly reflective, highly armored material." - icon_state = "baseball_bat_metal" - item_state = "baseball_bat_metal" - force = 12 - throwforce = 15 - -/obj/item/melee/baseball_bat/bone - name = "bone club" - desc = "A long and hard shaft of rock solid bone." // I am the master of comedy - icon_state = "baseball_bat_bone" - item_state = "baseball_bat_bone" - -/obj/item/melee/baseball_bat/ablative/IsReflect()//some day this will reflect thrown items instead of lasers - var/picksound = rand(1,2) - var/turf = get_turf(src) - if(picksound == 1) - playsound(turf, 'sound/weapons/effects/batreflect1.ogg', 50, TRUE) - if(picksound == 2) - playsound(turf, 'sound/weapons/effects/batreflect2.ogg', 50, TRUE) - return 1 - -/obj/item/melee/flyswatter - name = "flyswatter" - desc = "Useful for killing insects of all sizes." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "flyswatter" - item_state = "flyswatter" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 1 - throwforce = 1 - attack_verb = list("swatted", "smacked") - hitsound = 'sound/effects/snap.ogg' - w_class = WEIGHT_CLASS_SMALL - //Things in this list will be instantly splatted. Flyman weakness is handled in the flyman species weakness proc. - var/list/strong_against - -/obj/item/melee/flyswatter/Initialize() - . = ..() - strong_against = typecacheof(list( - /mob/living/simple_animal/hostile/poison/bees/, - /mob/living/simple_animal/butterfly, - /mob/living/simple_animal/hostile/cockroach, - /obj/item/queen_bee - )) - - -/obj/item/melee/flyswatter/afterattack(atom/target, mob/user, proximity_flag) - . = ..() - if(proximity_flag) - if(is_type_in_typecache(target, strong_against)) - new /obj/effect/decal/cleanable/insectguts(target.drop_location()) - to_chat(user, "You easily splat the [target].") - if(istype(target, /mob/living/)) - var/mob/living/bug = target - bug.death(1) - else - qdel(target) - -/obj/item/proc/can_trigger_gun(mob/living/user) - if(!user.can_use_guns(src)) - return FALSE - return TRUE - -/obj/item/extendohand - name = "extendo-hand" - desc = "Futuristic tech has allowed these classic spring-boxing toys to essentially act as a fully functional hand-operated hand prosthetic." - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "extendohand" - item_state = "extendohand" - lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' - force = 0 - throwforce = 5 - reach = 2 - var/min_reach = 2 - -/obj/item/extendohand/acme - name = "\improper ACME Extendo-Hand" - desc = "A novelty extendo-hand produced by the ACME corporation. Originally designed to knock out roadrunners." - -/obj/item/extendohand/attack(atom/M, mob/living/carbon/human/user) - var/dist = get_dist(M, user) - if(dist < min_reach) - to_chat(user, "[M] is too close to use [src] on.") - return - M.attack_hand(user) - -/obj/item/gohei - name = "gohei" - desc = "A wooden stick with white streamers at the end. Originally used by shrine maidens to purify things. Now used by the station's valued weeaboos." - force = 5 - throwforce = 5 - hitsound = "swing_hit" - attack_verb = list("whacked", "thwacked", "walloped", "socked") - icon = 'icons/obj/items_and_weapons.dmi' - icon_state = "gohei" - item_state = "gohei" - lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' - -//HF blade -/obj/item/vibro_weapon - icon_state = "hfrequency0" - base_icon_state = "hfrequency" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - name = "vibro sword" - desc = "A potent weapon capable of cutting through nearly anything. Wielding it in two hands will allow you to deflect gunfire." - armour_penetration = 100 - block_chance = 30 - force = 20 - throwforce = 20 - throw_speed = 4 - sharpness = IS_SHARP - attack_verb = list("cut", "sliced", "diced") - w_class = WEIGHT_CLASS_BULKY - slot_flags = ITEM_SLOT_BACK - hitsound = 'sound/weapons/bladeslice.ogg' - var/wielded = FALSE // track wielded status on item - -/obj/item/vibro_weapon/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - -/obj/item/vibro_weapon/ComponentInitialize() - . = ..() - AddComponent(/datum/component/butchering, 20, 105) - AddComponent(/datum/component/two_handed, force_multiplier=2, icon_wielded="[base_icon_state]1") - -/// triggered on wield of two handed item -/obj/item/vibro_weapon/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/vibro_weapon/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/vibro_weapon/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/vibro_weapon/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(wielded) - final_block_chance *= 2 - if(wielded || attack_type != PROJECTILE_ATTACK) - if(prob(final_block_chance)) - if(attack_type == PROJECTILE_ATTACK) - owner.visible_message("[owner] deflects [attack_text] with [src]!") - playsound(src, pick('sound/weapons/bulletflyby.ogg', 'sound/weapons/bulletflyby2.ogg', 'sound/weapons/bulletflyby3.ogg'), 75, TRUE) - return 1 - else - owner.visible_message("[owner] parries [attack_text] with [src]!") - return 1 - return 0 - -/obj/item/claymore/bone - name = "Bone Sword" - desc = "Jagged pieces of bone are tied to what looks like a goliaths femur." - icon_state = "bone_sword" - item_state = "bone_sword" - icon = 'icons/obj/items_and_weapons.dmi' - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - mob_overlay_icon = 'icons/mob/clothing/back.dmi' - force = 15 - throwforce = 10 - armour_penetration = 15 - - -/obj/item/vibro_weapon/weak - armour_penetration = 10 - block_chance = 10 - force = 15 - throwforce = 20 - diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index dac919bb428c..39f65ca53a5b 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -98,7 +98,6 @@ icon_door = "black" /obj/structure/closet/wardrobe/chaplain_black/PopulateContents() - new /obj/item/storage/box/holy(src) new /obj/item/clothing/accessory/pocketprotector/cosmetology(src) new /obj/item/clothing/under/rank/civilian/chaplain(src) new /obj/item/clothing/shoes/sneakers/black(src) diff --git a/code/game/objects/structures/fireaxe.dm b/code/game/objects/structures/fireaxe.dm index 24c0f71d322c..a164248a2bdd 100644 --- a/code/game/objects/structures/fireaxe.dm +++ b/code/game/objects/structures/fireaxe.dm @@ -10,7 +10,7 @@ integrity_failure = 0.33 var/locked = TRUE var/open = FALSE - var/obj/item/fireaxe/fireaxe + var/obj/item/melee/axe/fire/fireaxe /obj/structure/fireaxecabinet/Initialize() . = ..() @@ -49,8 +49,8 @@ obj_integrity = max_integrity update_appearance() else if(open || broken) - if(istype(I, /obj/item/fireaxe) && !fireaxe) - var/obj/item/fireaxe/F = I + if(istype(I, /obj/item/melee/axe/fire) && !fireaxe) + var/obj/item/melee/axe/fire/F = I if(F && F.wielded) to_chat(user, "Unwield the [F.name] first.") return diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 6a3cae5bbd72..362de185e9ba 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -362,12 +362,7 @@ /obj/structure/girder/cult/attackby(obj/item/W, mob/user, params) add_fingerprint(user) - if(istype(W, /obj/item/melee/cultblade/dagger) && iscultist(user)) //Cultists can demolish cult girders instantly with their tomes - user.visible_message("[user] strikes [src] with [W]!", "You demolish [src].") - new /obj/item/stack/sheet/mineral/hidden/hellstone(drop_location(), 1) - qdel(src) - - else if(W.tool_behaviour == TOOL_WELDER) + if(W.tool_behaviour == TOOL_WELDER) if(!W.tool_start_check(user, amount=0)) return diff --git a/code/game/objects/structures/headpike.dm b/code/game/objects/structures/headpike.dm index c42983a5e0e5..5dbaa4a1e7c3 100644 --- a/code/game/objects/structures/headpike.dm +++ b/code/game/objects/structures/headpike.dm @@ -6,7 +6,7 @@ density = FALSE anchored = TRUE var/bonespear = FALSE - var/obj/item/spear/spear + var/obj/item/melee/spear/spear var/obj/item/bodypart/head/victim /obj/structure/headpike/bone //for bone spears @@ -24,9 +24,9 @@ victim = new(src) victim.real_name = random_unique_name(prob(50)) - spear = locate(bonespear ? /obj/item/spear/bonespear : /obj/item/spear) in parts_list + spear = locate(bonespear ? /obj/item/melee/spear/bone : /obj/item/melee/spear) in parts_list if(!spear) - spear = bonespear ? new/obj/item/spear/bonespear(src) : new/obj/item/spear(src) + spear = bonespear ? new/obj/item/melee/spear/bone(src) : new/obj/item/melee/spear(src) update_appearance() return ..() diff --git a/code/game/objects/structures/manned_turret.dm b/code/game/objects/structures/manned_turret.dm index e0f6e22f3e7e..637f2deeb515 100644 --- a/code/game/objects/structures/manned_turret.dm +++ b/code/game/objects/structures/manned_turret.dm @@ -214,7 +214,7 @@ /obj/item/gun_control name = "turret controls" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "offhand" w_class = WEIGHT_CLASS_HUGE item_flags = ABSTRACT | NOBLUDGEON | DROPDEL diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 4ebd416675b8..a7404ef68a6c 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -726,7 +726,6 @@ /obj/item/rack_parts name = "rack parts" desc = "Parts of a rack." - icon = 'icons/obj/items_and_weapons.dmi' icon_state = "rack_parts" flags_1 = CONDUCT_1 custom_materials = list(/datum/material/iron=2000) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index c22858ea591d..0d97598a0504 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -218,7 +218,7 @@ /obj/item/reagent_containers/food/snacks/urinalcake name = "urinal cake" desc = "The noble urinal cake, protecting the people's pipes from the people's pee. Edibility is suggested to be low." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "urinalcake" w_class = WEIGHT_CLASS_TINY list_reagents = list(/datum/reagent/chlorine = 3, /datum/reagent/ammonia = 1) diff --git a/code/game/turfs/closed/wall/mineral_walls.dm b/code/game/turfs/closed/wall/mineral_walls.dm index 04d4bc7895d6..1ca5a1cc527c 100644 --- a/code/game/turfs/closed/wall/mineral_walls.dm +++ b/code/game/turfs/closed/wall/mineral_walls.dm @@ -243,7 +243,7 @@ /turf/closed/wall/mineral/wood/attackby(obj/item/W, mob/user) if(W.get_sharpness() && W.force) var/duration = (48/W.force) * 2 //In seconds, for now. - if(istype(W, /obj/item/hatchet) || istype(W, /obj/item/fireaxe)) + if(istype(W, /obj/item/hatchet) || istype(W, /obj/item/melee/axe/fire)) duration /= 4 //Much better with hatchets and axes. if(do_after(user, duration*10, target=src)) //Into deciseconds. dismantle_wall(devastated = FALSE) diff --git a/code/modules/antagonists/blood_contract/blood_contract.dm b/code/modules/antagonists/blood_contract/blood_contract.dm index edd8aba60422..c56ef47db93a 100644 --- a/code/modules/antagonists/blood_contract/blood_contract.dm +++ b/code/modules/antagonists/blood_contract/blood_contract.dm @@ -36,6 +36,6 @@ continue to_chat(P, "You have an overwhelming desire to kill [H]. [H.p_theyve(TRUE)] been marked red! Whoever [H.p_they()] [H.p_were()], friend or foe, go kill [H.p_them()]!") - var/obj/item/I = new /obj/item/kitchen/knife/butcher(get_turf(P)) + var/obj/item/I = new /obj/item/melee/knife/butcher(get_turf(P)) P.put_in_hands(I, del_on_fail=TRUE) QDEL_IN(I, duration) diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm index c9232857a547..b4bfb265386d 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -182,34 +182,6 @@ magic_path = "/obj/item/melee/blood_magic/construction" health_cost = 12 -/datum/action/innate/cult/blood_spell/equipment - name = "Summon Equipment" - desc = "Allows you to summon a ritual dagger, or empowers your hand to summon combat gear onto a cultist you touch, including cult armor, a cult bola, and a cult sword." - button_icon_state = "equip" - magic_path = "/obj/item/melee/blood_magic/armor" - -/datum/action/innate/cult/blood_spell/equipment/Activate() - var/choice = alert(owner,"Choose your equipment type",,"Combat Equipment","Ritual Dagger","Cancel") - if(choice == "Ritual Dagger") - var/turf/T = get_turf(owner) - owner.visible_message("[owner]'s hand glows red for a moment.", \ - "Red light begins to shimmer and take form within your hand!") - var/obj/O = new /obj/item/melee/cultblade/dagger(T) - if(owner.put_in_hands(O)) - to_chat(owner, "A ritual dagger appears in your hand!") - else - owner.visible_message( - "A ritual dagger appears at [owner]'s feet!", \ - "A ritual dagger materializes at your feet.") - SEND_SOUND(owner, sound('sound/effects/magic.ogg',0,1,25)) - charges-- - desc = base_desc - desc += "
Has [charges] use\s remaining." - if(charges<=0) - qdel(src) - else if(choice == "Combat Equipment") - ..() - /datum/action/innate/cult/blood_spell/horror name = "Hallucinations" desc = "Gives hallucinations to a target at range. A silent and invisible spell." @@ -339,7 +311,7 @@ /obj/item/melee/blood_magic name = "\improper magical aura" desc = "A sinister looking aura that distorts the flow of reality around it." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' lefthand_file = 'icons/mob/inhands/misc/touchspell_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/touchspell_righthand.dmi' icon_state = "disintegrate" @@ -695,7 +667,6 @@ C.equip_to_slot_or_del(new /obj/item/storage/backpack/cultpack(user), ITEM_SLOT_BACK) if(C == user) qdel(src) //Clears the hands - C.put_in_hands(new /obj/item/melee/cultblade(user)) C.put_in_hands(new /obj/item/restraints/legcuffs/bola/cult(user)) ..() @@ -812,29 +783,12 @@ /obj/item/melee/blood_magic/manipulator/attack_self(mob/living/user) if(iscultist(user)) - var/list/options = list("Blood Spear (150)", "Blood Beam (500)") + var/list/options = list("Blood Beam (500)") var/choice = input(user, "Choose a greater blood rite...", "Greater Blood Rites") as null|anything in options if(!choice) to_chat(user, "You decide against conducting a greater blood rite.") return switch(choice) - if("Blood Spear (150)") - if(uses < BLOOD_SPEAR_COST) - to_chat(user, "You need [BLOOD_SPEAR_COST] charges to perform this rite.") - else - uses -= BLOOD_SPEAR_COST - var/turf/T = get_turf(user) - qdel(src) - var/datum/action/innate/cult/spear/S = new(user) - var/obj/item/cult_spear/rite = new(T) - S.Grant(user, rite) - rite.spear_act = S - if(user.put_in_hands(rite)) - to_chat(user, "A [rite.name] appears in your hand!") - else - user.visible_message( - "A [rite.name] appears at [user]'s feet!", \ - "A [rite.name] materializes at your feet.") if("Blood Beam (500)") if(uses < BLOOD_BEAM_COST) to_chat(user, "You need [BLOOD_BEAM_COST] charges to perform this rite.") diff --git a/code/modules/antagonists/cult/cult.dm b/code/modules/antagonists/cult/cult.dm index 406c51956035..d6330b386f29 100644 --- a/code/modules/antagonists/cult/cult.dm +++ b/code/modules/antagonists/cult/cult.dm @@ -73,7 +73,6 @@ var/mob/living/carbon/H = owner.current if(!istype(H)) return - . += cult_give_item(/obj/item/melee/cultblade/dagger, H) to_chat(owner, "These will help you jumpstart a cult of your own in this sector. Use them well, and remember - you are not the only one.
") @@ -168,10 +167,7 @@ to_chat(admin, "Spawning dagger failed!") /datum/antagonist/cult/proc/admin_take_all(mob/admin) - var/mob/living/current = owner.current - for(var/o in current.GetAllContents()) - if(istype(o, /obj/item/melee/cultblade/dagger)) - qdel(o) + return /datum/antagonist/cult/master ignore_implant = TRUE diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 69c9248d6fb9..d13e3885a0df 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -6,209 +6,6 @@ throw_range = 5 w_class = WEIGHT_CLASS_SMALL -/obj/item/melee/cultblade/dagger - name = "ritual dagger" - desc = "A strange dagger said to be used by sinister groups for \"preparing\" a corpse before sacrificing it to their dark gods." - icon = 'icons/obj/wizard.dmi' - icon_state = "render" - item_state = "cultdagger" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - inhand_x_dimension = 32 - inhand_y_dimension = 32 - w_class = WEIGHT_CLASS_SMALL - force = 15 - throwforce = 25 - armour_penetration = 35 - actions_types = list(/datum/action/item_action/cult_dagger) - var/drawing_rune = FALSE - -/obj/item/melee/cultblade/dagger/Initialize() - . = ..() - var/image/I = image(icon = 'icons/effects/blood.dmi' , icon_state = null, loc = src) - I.override = TRUE - add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_dagger", I) - -/obj/item/melee/cultblade - name = "eldritch longsword" - desc = "A sword humming with unholy energy. It glows with a dim red light." - icon_state = "cultblade" - item_state = "cultblade" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - flags_1 = CONDUCT_1 - sharpness = IS_SHARP - w_class = WEIGHT_CLASS_BULKY - force = 30 - throwforce = 10 - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "rended") - -/obj/item/melee/cultblade/Initialize() - . = ..() - AddComponent(/datum/component/butchering, 40, 100) - -/obj/item/melee/cultblade/attack(mob/living/target, mob/living/carbon/human/user) - if(!iscultist(user)) - user.Paralyze(100) - user.dropItemToGround(src, TRUE) - user.visible_message( - "A powerful force shoves [user] away from [target]!", \ - "\"You shouldn't play with sharp things. You'll poke someone's eye out.\"") - if(ishuman(user)) - var/mob/living/carbon/human/H = user - H.apply_damage(rand(force/2, force), BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) - else - user.adjustBruteLoss(rand(force/2,force)) - return - ..() - -/obj/item/melee/cultblade/ghost - name = "eldritch sword" - force = 19 //can't break normal airlocks - item_flags = NEEDS_PERMIT | DROPDEL - flags_1 = NONE - -/obj/item/melee/cultblade/ghost/Initialize() - . = ..() - ADD_TRAIT(src, TRAIT_NODROP, CULT_TRAIT) - -/obj/item/melee/cultblade/pickup(mob/living/user) - ..() - if(!iscultist(user)) - to_chat(user, "\"I wouldn't advise that.\"") - -/obj/item/cult_bastard - name = "geometric bastard sword" - desc = "An enormous sword, once used by Nar'Sien cultists to rapidly harvest the souls of non-believers. It still yet hungers to taste inpure blood." - w_class = WEIGHT_CLASS_HUGE - block_chance = 50 - throwforce = 20 - force = 30 - armour_penetration = 45 - throw_speed = 1 - throw_range = 3 - sharpness = IS_SHARP - light_system = MOVABLE_LIGHT - light_range = 4 - light_color = COLOR_RED - attack_verb = list("cleaved", "bisected", "tore", "brutalized", "smashed", "ripped", "diced", "carved") - icon_state = "cultbastard" - item_state = "cultbastard" - hitsound = 'sound/weapons/bladeslice.ogg' - lefthand_file = 'icons/mob/inhands/64x64_lefthand.dmi' - righthand_file = 'icons/mob/inhands/64x64_righthand.dmi' - inhand_x_dimension = 64 - inhand_y_dimension = 64 - actions_types = list() - item_flags = SLOWS_WHILE_IN_HAND - var/datum/action/innate/dash/cult/jaunt - var/datum/action/innate/cult/spin2win/linked_action - var/spinning = FALSE - var/spin_cooldown = 250 - var/dash_toggled = TRUE - var/list/nemesis_factions = list("mining", "boss") - var/faction_bonus_force = 25 - -/obj/item/cult_bastard/Initialize() - . = ..() - jaunt = new(src) - linked_action = new(src) - AddComponent(/datum/component/butchering, 50, 120) - AddComponent(/datum/component/two_handed, require_twohands=TRUE) - -/obj/item/cult_bastard/attack(mob/living/target, mob/living/carbon/human/user) - var/nemesis_faction = FALSE - if(LAZYLEN(nemesis_factions)) - for(var/F in target.faction) - if(F in nemesis_factions) - nemesis_faction = TRUE - force += faction_bonus_force - throwforce += faction_bonus_force - nemesis_effects(user, target) - break - . = ..() - if(nemesis_faction) - force -= faction_bonus_force - throwforce -= faction_bonus_force - -/obj/item/cult_bastard/proc/nemesis_effects(mob/living/user, mob/living/target) - return - -/obj/item/cult_bastard/Destroy() - QDEL_NULL(jaunt) - QDEL_NULL(linked_action) - return ..() - -/obj/item/cult_bastard/examine(mob/user) - . = ..() - . += "This weapon will absorb the souls of unconscious human foes." - if(contents.len) - . += "There are [contents.len] souls trapped within the sword's core." - else - . += "The sword appears to be quite lifeless." - -/obj/item/cult_bastard/can_be_pulled(user) - return FALSE - -/obj/item/cult_bastard/attack_self(mob/user) - dash_toggled = !dash_toggled - if(dash_toggled) - to_chat(loc, "You raise [src] and prepare to jaunt with it.") - else - to_chat(loc, "You lower [src] and prepare to swing it normally.") - -/obj/item/cult_bastard/pickup(mob/living/user) - . = ..() - force = initial(force) - jaunt.Grant(user, src) - linked_action.Grant(user, src) - user.update_icons() - -/obj/item/cult_bastard/dropped(mob/user) - . = ..() - linked_action.Remove(user) - jaunt.Remove(user) - user.update_icons() - -/obj/item/cult_bastard/IsReflect() - if(spinning) - playsound(src, 'sound/weapons/effects/deflect.ogg', 100, TRUE) - return TRUE - else - ..() - -/obj/item/cult_bastard/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(prob(final_block_chance)) - if(attack_type == PROJECTILE_ATTACK) - owner.visible_message("[owner] deflects [attack_text] with [src]!") - playsound(src, 'sound/weapons/effects/deflect.ogg', 100, TRUE) - return TRUE - else - playsound(src, 'sound/weapons/parry.ogg', 75, TRUE) - owner.visible_message("[owner] parries [attack_text] with [src]!") - return TRUE - return FALSE - -/obj/item/cult_bastard/afterattack(atom/target, mob/user, proximity, click_parameters) - . = ..() - if(dash_toggled && !proximity) - jaunt.Teleport(user, target) - return - if(proximity) - if(ishuman(target)) - var/mob/living/carbon/human/H = target - if(H.stat != CONSCIOUS) - var/obj/item/soulstone/anybody/SS = new /obj/item/soulstone/anybody(src) - SS.attack(H, user) - if(!LAZYLEN(SS.contents)) - qdel(SS) - if(istype(target, /obj/structure/constructshell) && contents.len) - var/obj/item/soulstone/anybody/SS = contents[1] - if(istype(SS)) - SS.transfer_soul("CONSTRUCT",target,user) - qdel(SS) - /datum/action/innate/dash/cult name = "Rend the Veil" desc = "Use the sword to shear open the flimsy fabric of this reality and teleport to your target." @@ -226,45 +23,6 @@ else return FALSE - - -/datum/action/innate/cult/spin2win - name = "Geometer's Fury" - desc = "You draw on the power of the sword's ancient runes, spinning it wildly around you as you become immune to most attacks." - background_icon_state = "bg_demon" - button_icon_state = "sintouch" - var/cooldown = 0 - var/mob/living/carbon/human/holder - var/obj/item/cult_bastard/sword - -/datum/action/innate/cult/spin2win/Grant(mob/user, obj/bastard) - . = ..() - sword = bastard - holder = user - -/datum/action/innate/cult/spin2win/IsAvailable() - if(cooldown <= world.time) - return TRUE - else - return FALSE - -/datum/action/innate/cult/spin2win/Activate() - cooldown = world.time + sword.spin_cooldown - holder.changeNext_move(50) - holder.apply_status_effect(/datum/status_effect/sword_spin) - sword.spinning = TRUE - sword.block_chance = 100 - sword.slowdown += 1.5 - addtimer(CALLBACK(src, PROC_REF(stop_spinning)), 50) - holder.update_action_buttons_icon() - -/datum/action/innate/cult/spin2win/proc/stop_spinning() - sword.spinning = FALSE - sword.block_chance = 50 - sword.slowdown -= 1.5 - sleep(sword.spin_cooldown) - holder.update_action_buttons_icon() - /obj/item/restraints/legcuffs/bola/cult name = "\improper Nar'Sien bola" desc = "A strong bola, bound with dark magic that allows it to pass harmlessly through Nar'Sien cultists. Throw it to trip and slow your victim." @@ -303,7 +61,7 @@ icon_state = "cultrobes" item_state = "cultrobes" body_parts_covered = CHEST|GROIN|LEGS|ARMS - allowed = list(/obj/item/tome, /obj/item/melee/cultblade, /obj/item/tank) + allowed = list(/obj/item/tome, /obj/item/tank) armor = list("melee" = 40, "bullet" = 30, "laser" = 40,"energy" = 40, "bomb" = 25, "bio" = 10, "rad" = 0, "fire" = 10, "acid" = 10) flags_inv = HIDEJUMPSUIT cold_protection = CHEST|GROIN|LEGS|ARMS @@ -349,7 +107,7 @@ icon_state = "magusred" item_state = "magusred" body_parts_covered = CHEST|GROIN|LEGS|ARMS - allowed = list(/obj/item/tome, /obj/item/melee/cultblade) + allowed = list(/obj/item/tome) armor = list("melee" = 50, "bullet" = 30, "laser" = 50,"energy" = 50, "bomb" = 25, "bio" = 10, "rad" = 0, "fire" = 10, "acid" = 10) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT @@ -369,7 +127,7 @@ item_state = "cult_armor" desc = "A heavily-armored exosuit worn by warriors of the Nar'Sien cult. It can withstand hard vacuum." w_class = WEIGHT_CLASS_BULKY - allowed = list(/obj/item/tome, /obj/item/melee/cultblade, /obj/item/tank/internals/) + allowed = list(/obj/item/tome, /obj/item/tank/internals/) armor = list("melee" = 70, "bullet" = 50, "laser" = 30,"energy" = 40, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 40, "acid" = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/cult @@ -430,7 +188,7 @@ /obj/item/clothing/suit/hooded/cultrobes/berserker name = "flagellant's robes" desc = "Blood-soaked robes infused with dark magic; allows the user to move at inhuman speeds, but at the cost of increased damage." - allowed = list(/obj/item/tome, /obj/item/melee/cultblade) + allowed = list(/obj/item/tome) armor = list("melee" = -45, "bullet" = -45, "laser" = -45,"energy" = -55, "bomb" = -45, "bio" = -45, "rad" = -45, "fire" = 0, "acid" = 0) slowdown = -0.6 hoodtype = /obj/item/clothing/head/hooded/cult_hoodie/berserkerhood @@ -581,132 +339,9 @@ ..() to_chat(user, "\The [src] can only transport items!") - -/obj/item/cult_spear - name = "blood halberd" - desc = "A sickening spear composed entirely of crystallized blood." - icon_state = "bloodspear0" - base_icon_state = "occultpoleaxe" - lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' - slot_flags = 0 - force = 17 - throwforce = 40 - throw_speed = 2 - armour_penetration = 30 - block_chance = 30 - attack_verb = list("attacked", "impaled", "stabbed", "torn", "gored") - sharpness = IS_SHARP - hitsound = 'sound/weapons/bladeslice.ogg' - var/datum/action/innate/cult/spear/spear_act - var/wielded = FALSE // track wielded status on item - -/obj/item/cult_spear/Initialize() - . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield)) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield)) - -/obj/item/cult_spear/ComponentInitialize() - . = ..() - AddComponent(/datum/component/butchering, 100, 90) - AddComponent(/datum/component/two_handed, force_unwielded=17, force_wielded=24, icon_wielded="[base_icon_state]1") - -/// triggered on wield of two handed item -/obj/item/cult_spear/proc/on_wield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = TRUE - -/// triggered on unwield of two handed item -/obj/item/cult_spear/proc/on_unwield(obj/item/source, mob/user) - SIGNAL_HANDLER - - wielded = FALSE - -/obj/item/cult_spear/update_icon_state() - icon_state = "[base_icon_state]0" - return ..() - -/obj/item/cult_spear/Destroy() - if(spear_act) - qdel(spear_act) - return ..() - -/obj/item/cult_spear/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) - var/turf/T = get_turf(hit_atom) - if(isliving(hit_atom)) - var/mob/living/L = hit_atom - if(iscultist(L)) - playsound(src, 'sound/weapons/throwtap.ogg', 50) - if(L.put_in_active_hand(src)) - L.visible_message("[L] catches [src] out of the air!") - else - L.visible_message("[src] bounces off of [L], as if repelled by an unseen force!") - else if(!..()) - if(!L.anti_magic_check()) - L.Paralyze(50) - break_spear(T) - else - ..() - -/obj/item/cult_spear/proc/break_spear(turf/T) - if(src) - if(!T) - T = get_turf(src) - if(T) - T.visible_message("[src] shatters and melts back into blood!") - new /obj/effect/temp_visual/cult/sparks(T) - new /obj/effect/decal/cleanable/blood/splatter(T) - playsound(T, 'sound/effects/glassbr3.ogg', 100) - qdel(src) - -/obj/item/cult_spear/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(wielded) - final_block_chance *= 2 - if(prob(final_block_chance)) - if(attack_type == PROJECTILE_ATTACK) - owner.visible_message("[owner] deflects [attack_text] with [src]!") - playsound(src, 'sound/weapons/effects/deflect.ogg', 100, TRUE) - return TRUE - else - playsound(src, 'sound/weapons/parry.ogg', 100, TRUE) - owner.visible_message("[owner] parries [attack_text] with [src]!") - return TRUE - return FALSE - -/datum/action/innate/cult/spear - name = "Bloody Bond" - desc = "Call the blood spear back to your hand!" - background_icon_state = "bg_demon" - button_icon_state = "bloodspear" - var/obj/item/cult_spear/spear - var/cooldown = 0 - -/datum/action/innate/cult/spear/Grant(mob/user, obj/blood_spear) - . = ..() - spear = blood_spear - button.screen_loc = "6:157,4:-2" - button.moved = "6:157,4:-2" - -/datum/action/innate/cult/spear/Activate() - if(owner == spear.loc || cooldown > world.time) - return - var/ST = get_turf(spear) - var/OT = get_turf(owner) - if(get_dist(OT, ST) > 10) - to_chat(owner,"The spear is too far away!") - else - cooldown = world.time + 20 - if(isliving(spear.loc)) - var/mob/living/L = spear.loc - L.dropItemToGround(spear) - L.visible_message("An unseen force pulls the blood spear from [L]'s hands!") - spear.throw_at(owner, 10, 2, owner) - /obj/item/blood_beam name = "\improper magical aura" desc = "Sinister looking aura that distorts the flow of reality around it." - icon = 'icons/obj/items_and_weapons.dmi' lefthand_file = 'icons/mob/inhands/misc/touchspell_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/touchspell_righthand.dmi' icon_state = "disintegrate" diff --git a/code/modules/antagonists/cult/cult_structures.dm b/code/modules/antagonists/cult/cult_structures.dm index 60816a90d45d..27ba86d24bfa 100644 --- a/code/modules/antagonists/cult/cult_structures.dm +++ b/code/modules/antagonists/cult/cult_structures.dm @@ -64,13 +64,6 @@ icon_state = "[initial(icon_state)][anchored ? null : "_off"]" return ..() -/obj/structure/destructible/cult/attackby(obj/I, mob/user, params) - if(istype(I, /obj/item/melee/cultblade/dagger) && iscultist(user)) - set_anchored(!anchored) - to_chat(user, "You [anchored ? "":"un"]secure \the [src] [anchored ? "to":"from"] the floor.") - else - return ..() - /obj/structure/destructible/cult/proc/check_menu(mob/user) if(!istype(user)) return FALSE diff --git a/code/modules/antagonists/cult/ritual.dm b/code/modules/antagonists/cult/ritual.dm deleted file mode 100644 index 1ea84bd83a1f..000000000000 --- a/code/modules/antagonists/cult/ritual.dm +++ /dev/null @@ -1,155 +0,0 @@ -/* - -This file contains the cult dagger and rune list code - -*/ - - -/obj/item/melee/cultblade/dagger/Initialize() - . = ..() - if(!LAZYLEN(GLOB.rune_types)) - GLOB.rune_types = list() - var/static/list/non_revealed_runes = (subtypesof(/obj/effect/rune) - /obj/effect/rune/malformed) - for(var/i_can_do_loops_now_thanks_remie in non_revealed_runes) - var/obj/effect/rune/R = i_can_do_loops_now_thanks_remie - GLOB.rune_types[initial(R.cultist_name)] = R //Uses the cultist name for displaying purposes - -/obj/item/melee/cultblade/dagger/examine(mob/user) - . = ..() - if(iscultist(user) || isobserver(user)) - . += {"The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar'Sie.\n - Striking a cult structure will unanchor or reanchor it.\n - Striking another cultist with it will purge holy water from them.\n - Striking a noncultist, however, will tear their flesh."} - -/obj/item/melee/cultblade/dagger/attack(mob/living/M, mob/living/user) - if(iscultist(M)) - if(M.reagents && M.reagents.has_reagent(/datum/reagent/water/holywater)) //allows cultists to be rescued from the clutches of ordained religion - to_chat(user, "You remove the taint from [M]." ) - var/holy2unholy = M.reagents.get_reagent_amount(/datum/reagent/water/holywater) - M.reagents.del_reagent(/datum/reagent/water/holywater) - M.reagents.add_reagent(/datum/reagent/fuel/unholywater,holy2unholy) - log_combat(user, M, "smacked", src, " removing the holy water from them") - return FALSE - . = ..() - -/obj/item/melee/cultblade/dagger/attack_self(mob/user) - if(!iscultist(user)) - to_chat(user, "[src] is covered in unintelligible shapes and markings.") - return - scribe_rune(user) - -/obj/item/melee/cultblade/dagger/proc/scribe_rune(mob/living/user) - if(drawing_rune) - return - drawing_rune = TRUE - scribe_rune_attempt(user) - drawing_rune = FALSE - -/obj/item/melee/cultblade/dagger/proc/scribe_rune_attempt(mob/living/user) - var/turf/Turf = get_turf(user) - var/chosen_keyword - var/obj/effect/rune/rune_to_scribe - var/entered_rune_name - var/list/shields = list() - var/area/A = get_area(src) - var/datum/antagonist/cult/user_antag = user.mind.has_antag_datum(/datum/antagonist/cult,TRUE) - if(!user_antag) - return - if(!check_rune_turf(Turf, user)) - return - entered_rune_name = input(user, "Choose a rite to scribe.", "Sigils of Power") as null|anything in GLOB.rune_types - if(!src || QDELETED(src) || !Adjacent(user) || user.incapacitated() || !check_rune_turf(Turf, user)) - return - rune_to_scribe = GLOB.rune_types[entered_rune_name] - if(!rune_to_scribe) - return - if(initial(rune_to_scribe.req_keyword)) - chosen_keyword = stripped_input(user, "Enter a keyword for the new rune.", "Words of Power") - if(!chosen_keyword) - drawing_rune = FALSE - scribe_rune(user) //Go back a menu! - return - Turf = get_turf(user) //we may have moved. adjust as needed... - A = get_area(src) - if(!src || QDELETED(src) || !Adjacent(user) || user.incapacitated() || !check_rune_turf(Turf, user)) - return - if(ispath(rune_to_scribe, /obj/effect/rune/summon) && initial(A.name) == "Space") - to_chat(user, "The veil is not weak enough here to summon a cultist!") - return - if(ispath(rune_to_scribe, /obj/effect/rune/apocalypse)) - if((world.time - SSticker.round_start_time) <= 6000) - var/wait = 6000 - (world.time - SSticker.round_start_time) - to_chat(user, "The veil is not yet weak enough for this rune - it will be available in [DisplayTimeText(wait)].") - return - var/datum/objective/eldergod/summon_objective = locate() in user_antag.cult_team.objectives - if(!(A in summon_objective.summon_spots)) - to_chat(user, "The Apocalypse rune will remove a ritual site (where Nar'Sie can be summoned), it can only be scribed in [english_list(summon_objective.summon_spots)]!") - return - if(summon_objective.summon_spots.len < 2) - to_chat(user, "Only one ritual site remains - it must be reserved for the final summoning!") - return - if(ispath(rune_to_scribe, /obj/effect/rune/narsie)) - var/datum/objective/eldergod/summon_objective = locate() in user_antag.cult_team.objectives - var/datum/objective/sacrifice/sac_objective = locate() in user_antag.cult_team.objectives - if(!summon_objective) - to_chat(user, "Nar'Sie does not wish to be summoned!") - return - if(sac_objective && !sac_objective.check_completion()) - to_chat(user, "The sacrifice is not complete. The portal would lack the power to open if you tried!") - return - if(summon_objective.check_completion()) - to_chat(user, "\"I am already here. There is no need to try to summon me now.\"") - return - if(!(A in summon_objective.summon_spots)) - to_chat(user, "The Geometer can only be summoned where the veil is weak - in [english_list(summon_objective.summon_spots)]!") - return - var/confirm_final = alert(user, "This is the FINAL step to summon Nar'Sie; it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar'Sie!", "No") - if(confirm_final == "No") - to_chat(user, "You decide to prepare further before scribing the rune.") - return - Turf = get_turf(user) - A = get_area(src) - if(!(A in summon_objective.summon_spots)) // Check again to make sure they didn't move - to_chat(user, "The Geometer can only be summoned where the veil is weak - in [english_list(summon_objective.summon_spots)]!") - return - priority_announce("Figments from an eldritch god are being summoned by [user] into [initial(A.name)] from an unknown dimension. Disrupt the ritual at all costs!","Central Command Higher Dimensional Affairs", 'sound/ai/spanomalies.ogg') - for(var/B in spiral_range_turfs(1, user, 1)) - var/obj/structure/emergency_shield/sanguine/N = new(B) - shields += N - user.visible_message( - "[user] [user.blood_volume ? "cuts open [user.p_their()] arm and begins writing in [user.p_their()] own blood":"begins sketching out a strange design"]!", \ - "You [user.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.") - if(user.blood_volume) - user.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) - var/scribe_mod = initial(rune_to_scribe.scribe_delay) - if(istype(get_turf(user), /turf/open/floor/engine/cult) && !(ispath(rune_to_scribe, /obj/effect/rune/narsie))) - scribe_mod *= 0.5 - if(!do_after(user, scribe_mod, target = get_turf(user))) - for(var/V in shields) - var/obj/structure/emergency_shield/sanguine/S = V - if(S && !QDELETED(S)) - qdel(S) - return - if(!check_rune_turf(Turf, user)) - return - user.visible_message( - "[user] creates a strange circle[user.blood_volume ? " in [user.p_their()] own blood":""].", \ - "You finish drawing the arcane markings of the Geometer.") - for(var/V in shields) - var/obj/structure/emergency_shield/S = V - if(S && !QDELETED(S)) - qdel(S) - var/obj/effect/rune/R = new rune_to_scribe(Turf, chosen_keyword) - R.add_mob_blood(user) - to_chat(user, "The [lowertext(R.cultist_name)] rune [R.cultist_desc]") - SSblackbox.record_feedback("tally", "cult_runes_scribed", 1, R.cultist_name) - -/obj/item/melee/cultblade/dagger/proc/check_rune_turf(turf/T, mob/user) - if(isspaceturf(T)) - to_chat(user, "You cannot scribe runes in space!") - return FALSE - if(locate(/obj/effect/rune) in T) - to_chat(user, "There is already a rune here.") - return FALSE - return TRUE diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 5058dc73f081..b0fb446405c2 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -55,13 +55,6 @@ Runes can either be invoked by one's self or with many different cultists. Each if(req_keyword && keyword) . += "Keyword: [keyword]" -/obj/effect/rune/attackby(obj/I, mob/user, params) - if(istype(I, /obj/item/melee/cultblade/dagger) && iscultist(user)) - SEND_SOUND(user,'sound/items/sheath.ogg') - if(do_after(user, 15, target = src)) - to_chat(user, "You carefully erase the [lowertext(cultist_name)] rune.") - qdel(src) - /obj/effect/rune/attack_hand(mob/living/user) . = ..() if(.) @@ -241,7 +234,6 @@ structure_check() searches for nearby cultist structures required for the invoca "[convertee] writhes in pain [brutedamage || burndamage ? "even as [convertee.p_their()] wounds heal and close" : "as the markings below [convertee.p_them()] glow a bloody red"]!", // Hello there buddy! Come here often? I hope you were wondering wtf this string was "AAAAAAAAAAAAAA-") SSticker.mode.add_cultist(convertee.mind, 1) - new /obj/item/melee/cultblade/dagger(get_turf(src)) convertee.mind.special_role = ROLE_CULTIST to_chat(convertee, "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \ and something evil takes root.") @@ -492,15 +484,6 @@ structure_check() searches for nearby cultist structures required for the invoca color = RUNE_COLOR_RED new /obj/singularity/narsie/large/cult(T) //Causes Nar'Sie to spawn even if the rune has been removed -/obj/effect/rune/narsie/attackby(obj/I, mob/user, params) //Since the narsie rune takes a long time to make, add logging to removal. - if((istype(I, /obj/item/melee/cultblade/dagger) && iscultist(user))) - user.visible_message("[user.name] begins erasing [src]...", "You begin erasing [src]...") - if(do_after(user, 50, target = src)) //Prevents accidental erasures. - log_game("Summon Narsie rune erased by [key_name(user)] with [I.name]") - message_admins("[ADMIN_LOOKUPFLW(user)] erased a Narsie rune with [I.name]") - else - ..() - //Rite of Resurrection: Requires a dead or inactive cultist. When reviving the dead, you can only perform one revival for every three sacrifices your cult has carried out. /obj/effect/rune/raise_dead cultist_name = "Revive" diff --git a/code/modules/antagonists/devil/devil.dm b/code/modules/antagonists/devil/devil.dm index ff744ef05840..db087e100e2f 100644 --- a/code/modules/antagonists/devil/devil.dm +++ b/code/modules/antagonists/devil/devil.dm @@ -87,9 +87,6 @@ GLOBAL_LIST_INIT(devil_suffix, list(" the Red", " the Soulless", " the Master", var/form = BASIC_DEVIL var/static/list/devil_spells = typecacheof(list( /obj/effect/proc_holder/spell/aimed/fireball/hellish, - /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork, - /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater, - /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended, /obj/effect/proc_holder/spell/targeted/infernal_jaunt, /obj/effect/proc_holder/spell/targeted/sintouch, /obj/effect/proc_holder/spell/targeted/sintouch/ascended, @@ -322,21 +319,17 @@ GLOBAL_LIST_INIT(devil_suffix, list(" the Red", " the Soulless", " the Master", /datum/antagonist/devil/proc/give_base_spells() owner.AddSpell(new /obj/effect/proc_holder/spell/aimed/fireball/hellish(null)) - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork(null)) /datum/antagonist/devil/proc/give_blood_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/aimed/fireball/hellish(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/infernal_jaunt(null)) /datum/antagonist/devil/proc/give_true_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/aimed/fireball/hellish(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/infernal_jaunt(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/sintouch(null)) /datum/antagonist/devil/proc/give_arch_spells() - owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended(null)) owner.AddSpell(new /obj/effect/proc_holder/spell/targeted/sintouch/ascended(null)) /datum/antagonist/devil/proc/beginResurrectionCheck(mob/living/body) diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index 920fbbdd557b..26d7321eb813 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -658,20 +658,6 @@ This is here to make the tiles around the station mininuke change when it's arme if(isobserver(user) || HAS_TRAIT(user.mind, TRAIT_DISK_VERIFIER)) . += "The serial numbers on [src] are incorrect." -/obj/item/disk/nuclear/attackby(obj/item/I, mob/living/user, params) - if(istype(I, /obj/item/claymore/highlander) && !fake) - var/obj/item/claymore/highlander/H = I - if(H.nuke_disk) - to_chat(user, "Wait... what?") - qdel(H.nuke_disk) - H.nuke_disk = null - return - user.visible_message("[user] captures [src]!", "You've got the disk! Defend it with your life!") - forceMove(H) - H.nuke_disk = src - return TRUE - return ..() - /obj/item/disk/nuclear/Destroy(force=FALSE) // respawning is handled in /obj/Destroy() if(force) diff --git a/code/modules/antagonists/wizard/equipment/artefact.dm b/code/modules/antagonists/wizard/equipment/artefact.dm index a20b905b590d..ae651cf055e6 100644 --- a/code/modules/antagonists/wizard/equipment/artefact.dm +++ b/code/modules/antagonists/wizard/equipment/artefact.dm @@ -259,8 +259,8 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/roman(H), ITEM_SLOT_ICLOTHING) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), ITEM_SLOT_FEET) H.put_in_hands(new /obj/item/shield/riot/roman(H), TRUE) - H.put_in_hands(new /obj/item/claymore(H), TRUE) - H.equip_to_slot_or_del(new /obj/item/spear(H), ITEM_SLOT_BACK) + H.put_in_hands(new /obj/item/melee/sword/claymore(H), TRUE) + H.equip_to_slot_or_del(new /obj/item/melee/spear(H), ITEM_SLOT_BACK) /obj/item/voodoo diff --git a/code/modules/antagonists/wizard/equipment/spellbook.dm b/code/modules/antagonists/wizard/equipment/spellbook.dm index 69ff4bcfc2f5..9f4349a2bbc8 100644 --- a/code/modules/antagonists/wizard/equipment/spellbook.dm +++ b/code/modules/antagonists/wizard/equipment/spellbook.dm @@ -351,16 +351,6 @@ limit = 3 category = "Assistance" -/datum/spellbook_entry/item/mjolnir - name = "Mjolnir" - desc = "A mighty hammer on loan from Thor, God of Thunder. It crackles with barely contained power." - item_path = /obj/item/mjollnir - -/datum/spellbook_entry/item/singularity_hammer - name = "Singularity Hammer" - desc = "A hammer that creates an intensely powerful field of gravity where it strikes, pulling everything nearby to the point of impact." - item_path = /obj/item/singularityhammer - /datum/spellbook_entry/item/battlemage name = "Battlemage Armour" desc = "An ensorceled suit of armour, protected by a powerful shield. The shield can completely negate sixteen attacks before being permanently depleted." diff --git a/code/modules/awaymissions/mission_code/snowdin.dm b/code/modules/awaymissions/mission_code/snowdin.dm index 3c4537caabab..0f76623f617c 100644 --- a/code/modules/awaymissions/mission_code/snowdin.dm +++ b/code/modules/awaymissions/mission_code/snowdin.dm @@ -507,9 +507,7 @@ /obj/effect/spawner/lootdrop/snowdin/dungeonheavy name = "dungeon heavy" - loot = list(/obj/item/singularityhammer = 25, - /obj/item/mjollnir = 10, - /obj/item/fireaxe = 25, + loot = list(/obj/item/melee/axe/fire = 25, /obj/item/organ/brain/alien = 17, /obj/item/dualsaber = 15, /obj/item/organ/heart/demon = 7, @@ -530,7 +528,7 @@ loot = list(/obj/item/stack/sheet/mineral/snow{amount = 25} = 10, /obj/item/toy/snowball = 15, /obj/item/shovel = 10, - /obj/item/spear = 8, + /obj/item/melee/spear = 8, ) //special items//-- diff --git a/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm b/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm index eb16758b103b..cd0fcf9fd7a9 100644 --- a/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm +++ b/code/modules/cargo/blackmarket/blackmarket_items/weapons.dm @@ -15,7 +15,7 @@ /datum/blackmarket_item/weapon/bone_spear name = "Bone Spear" desc = "Authentic tribal spear, made from real bones! A steal at any price, especially if you're a caveman." - item = /obj/item/spear/bonespear + item = /obj/item/melee/spear/bone price_min = 200 price_max = 300 @@ -25,7 +25,7 @@ /datum/blackmarket_item/weapon/switchblade name = "Switchblade" desc = "Extra shrap switchblades for intimidation AND style. Bandages not included if you cut yourself." - item = /obj/item/kitchen/knife/switchblade + item = /obj/item/melee/knife/switchblade price_min = 500 price_max = 700 diff --git a/code/modules/cargo/bounties/assistant.dm b/code/modules/cargo/bounties/assistant.dm index 3ddc15dfa33b..37507132a865 100644 --- a/code/modules/cargo/bounties/assistant.dm +++ b/code/modules/cargo/bounties/assistant.dm @@ -15,7 +15,7 @@ name = "Skateboard" description = "Nanotrasen has determined walking to be wasteful. Ship a skateboard to CentCom to speed operations up." reward = 900 // the tony hawk - wanted_types = list(/obj/vehicle/ridden/scooter/skateboard, /obj/item/melee/skateboard) + wanted_types = list(/obj/vehicle/ridden/scooter/skateboard, /obj/item/skateboard) /datum/bounty/item/assistant/stunprod name = "Stunprod" @@ -35,7 +35,7 @@ description = "CentCom's security forces are going through budget cuts. You will be paid if you ship a set of spears." reward = 2000 required_count = 5 - wanted_types = list(/obj/item/spear) + wanted_types = list(/obj/item/melee/spear) /datum/bounty/item/assistant/toolbox name = "Toolboxes" diff --git a/code/modules/cargo/bounties/mining.dm b/code/modules/cargo/bounties/mining.dm index 4eb48b09c7cb..6527228f31ec 100644 --- a/code/modules/cargo/bounties/mining.dm +++ b/code/modules/cargo/bounties/mining.dm @@ -22,7 +22,7 @@ name = "Bone Axe" description = "Station 12 has had their fire axes stolen by marauding clowns. Ship them a bone axe as a replacement." reward = 7500 - wanted_types = list(/obj/item/fireaxe/boneaxe) + wanted_types = list(/obj/item/melee/axe/bone) /datum/bounty/item/mining/bone_armor name = "Bone Armor" @@ -48,7 +48,7 @@ description = "Central Command's canteen is undergoing budget cuts. Ship over some bone daggers so our Chef can keep working." reward = 5000 required_count = 3 - wanted_types = list(/obj/item/kitchen/knife/combat/bone) + wanted_types = list(/obj/item/melee/knife/bone) /datum/bounty/item/mining/polypore_mushroom name = "Mushroom Bowl" diff --git a/code/modules/cargo/exports/lavaland.dm b/code/modules/cargo/exports/lavaland.dm index 4779886622a4..3ca8ec9ece05 100644 --- a/code/modules/cargo/exports/lavaland.dm +++ b/code/modules/cargo/exports/lavaland.dm @@ -9,9 +9,7 @@ /obj/item/book_of_babel, /obj/item/wisp_lantern, /obj/item/reagent_containers/glass/bottle/potion/flight, - /obj/item/katana/cursed, /obj/item/clothing/glasses/godeye, - /obj/item/melee/ghost_sword, /obj/item/clothing/suit/space/hardsuit/cult, /obj/item/voodoo, /obj/item/grenade/clusterbuster/inferno, @@ -22,9 +20,7 @@ /obj/item/lava_staff, /obj/item/ship_in_a_bottle, /obj/item/clothing/shoes/clown_shoes/banana_shoes, - /obj/item/kitchen/knife/envy, /obj/item/veilrender/vealrender, - /obj/item/nullrod/scythe/talking/necro, /obj/item/clothing/suit/armor/ascetic) /datum/export/lavaland/major //valuable chest/ruin loot and staff of storms diff --git a/code/modules/cargo/exports/weapons.dm b/code/modules/cargo/exports/weapons.dm index bbe73991f7ef..c6ee67ed091e 100644 --- a/code/modules/cargo/exports/weapons.dm +++ b/code/modules/cargo/exports/weapons.dm @@ -13,7 +13,7 @@ /datum/export/weapon/knife cost = 100 unit_name = "combat knife" - export_types = list(/obj/item/kitchen/knife/combat) + export_types = list(/obj/item/melee/knife/combat) /datum/export/weapon/taser diff --git a/code/modules/cargo/packs/costumes_toys.dm b/code/modules/cargo/packs/costumes_toys.dm index 01bfcc1dc756..fd3ba6c74863 100644 --- a/code/modules/cargo/packs/costumes_toys.dm +++ b/code/modules/cargo/packs/costumes_toys.dm @@ -115,7 +115,7 @@ if(prob(30)) //Not all mafioso have mustaches, some people also find this item annoying. new /obj/item/clothing/mask/fakemoustache/italian(C) if(prob(10)) //A little extra sugar every now and then to shake things up. - new /obj/item/kitchen/knife/switchblade(C) + new /obj/item/melee/knife/switchblade(C) /datum/supply_pack/costumes_toys/mech_suits name = "Exosuit Pilot's Suit Crate" diff --git a/code/modules/cargo/packs/sec_supply.dm b/code/modules/cargo/packs/sec_supply.dm index 28f15b583206..f0f062160c79 100644 --- a/code/modules/cargo/packs/sec_supply.dm +++ b/code/modules/cargo/packs/sec_supply.dm @@ -72,11 +72,24 @@ name = "Survival Knives Crate" desc = "Contains three sharpened survival knives. Each knife guaranteed to fit snugly inside any galactic-standard boot." cost = 500 - contains = list(/obj/item/kitchen/knife/combat/survival, - /obj/item/kitchen/knife/combat/survival, - /obj/item/kitchen/knife/combat/survival) + contains = list(/obj/item/melee/knife/survival, + /obj/item/melee/knife/survival, + /obj/item/melee/knife/survival) crate_name = "combat knife crate" +/* +/datum/supply_pack/sec_supply/machete + name = "Stampted Steel Machete Crate" + desc = "Contains five mass produced machetes. A perfect choice for crews on a budget." + cost = 500 + contains = list(/obj/item/melee/sword/mass, + /obj/item/melee/sword/mass, + /obj/item/melee/sword/mass, + /obj/item/melee/sword/mass, + /obj/item/melee/sword/mass) + crate_name = "combat knife crate" +*/ + /datum/supply_pack/sec_supply/fire name = "Incendiary Weapons Crate" desc = "Burn, baby burn. Contains three incendiary grenades and three prebuilt flamethrowers." diff --git a/code/modules/clothing/outfits/ert/frontiersmen_ert.dm b/code/modules/clothing/outfits/ert/frontiersmen_ert.dm index d68c49e61778..8401455bf7d8 100644 --- a/code/modules/clothing/outfits/ert/frontiersmen_ert.dm +++ b/code/modules/clothing/outfits/ert/frontiersmen_ert.dm @@ -44,7 +44,7 @@ suit = pickweight(list( /obj/item/clothing/suit/armor/vest = 5, /obj/item/clothing/suit/armor/vest/bulletproof/frontier = 5, - /obj/item/clothing/suit/armor/vest/scrap_armor = 1)) + /obj/item/clothing/suit/armor/vest/scrap = 1)) if(prob(30)) mask = pickweight(list( @@ -123,9 +123,9 @@ /obj/item/gun/energy/e_gun/mini)) if("Melee") r_hand = pickweight(list( - /obj/item/kitchen/knife/combat/survival = 15, + /obj/item/melee/knife/survival = 15, /obj/item/melee/baseball_bat = 10, - /obj/item/melee/roastingstick = 2, + /obj/item/roastingstick = 2, /obj/item/kitchen/fork = 1, /obj/item/melee/flyswatter = 1, )) @@ -173,14 +173,14 @@ suit = /obj/item/clothing/suit/armor/frontier suit_store = /obj/item/gun/ballistic/automatic/pistol/deagle - backpack_contents = list(/obj/item/clothing/mask/gas/frontiersmen, /obj/item/ammo_box/magazine/m50=2, /obj/item/binoculars=1, /obj/item/kitchen/knife/combat/survival) + backpack_contents = list(/obj/item/clothing/mask/gas/frontiersmen, /obj/item/ammo_box/magazine/m50=2, /obj/item/binoculars=1, /obj/item/melee/knife/survival) /datum/outfit/job/frontiersmen/ert/leader/unnarmed name = "ERT - Frontiersman Officer (Unnarmed)" suit_store = null - backpack_contents = list(/obj/item/clothing/mask/gas/frontiersmen, /obj/item/binoculars=1, /obj/item/kitchen/knife/combat/survival) + backpack_contents = list(/obj/item/clothing/mask/gas/frontiersmen, /obj/item/binoculars=1, /obj/item/melee/knife/survival) /datum/outfit/job/frontiersmen/ert/medic name = "ERT - Frontiersman Medic" diff --git a/code/modules/clothing/outfits/ert/indie_ert.dm b/code/modules/clothing/outfits/ert/indie_ert.dm index e45f0895d0f4..236f9ee75c57 100644 --- a/code/modules/clothing/outfits/ert/indie_ert.dm +++ b/code/modules/clothing/outfits/ert/indie_ert.dm @@ -75,7 +75,7 @@ jobtype = /datum/job/chief_engineer job_icon = "chiefengineer" - back = /obj/item/fireaxe + back = /obj/item/melee/axe/fire suit = /obj/item/clothing/suit/space/hardsuit/engine suit_store = /obj/item/tank/internals/oxygen/red head = null diff --git a/code/modules/clothing/outfits/ert/inteq_ert.dm b/code/modules/clothing/outfits/ert/inteq_ert.dm index b3fc0c61970c..9fd796d04516 100644 --- a/code/modules/clothing/outfits/ert/inteq_ert.dm +++ b/code/modules/clothing/outfits/ert/inteq_ert.dm @@ -15,7 +15,7 @@ belt = /obj/item/storage/belt/security/webbing/inteq/skm back = /obj/item/storage/backpack/fireproof - l_pocket = /obj/item/kitchen/knife/combat + l_pocket = /obj/item/melee/knife/combat r_pocket = /obj/item/flashlight/seclite backpack_contents = list(/obj/item/radio=1) diff --git a/code/modules/clothing/outfits/ert/minutemen_ert.dm b/code/modules/clothing/outfits/ert/minutemen_ert.dm index 482777814c64..d5a3ec72e94c 100644 --- a/code/modules/clothing/outfits/ert/minutemen_ert.dm +++ b/code/modules/clothing/outfits/ert/minutemen_ert.dm @@ -9,7 +9,7 @@ head = /obj/item/clothing/head/helmet/riot/clip belt = /obj/item/storage/belt/military/clip/cm15 glasses = /obj/item/clothing/glasses/hud/health/night - r_pocket = /obj/item/kitchen/knife/combat + r_pocket = /obj/item/melee/knife/combat l_pocket = /obj/item/extinguisher/mini backpack_contents = list( diff --git a/code/modules/clothing/outfits/ert/nanotrasen_ert.dm b/code/modules/clothing/outfits/ert/nanotrasen_ert.dm index a66ee78c7239..1ca40cd640e3 100644 --- a/code/modules/clothing/outfits/ert/nanotrasen_ert.dm +++ b/code/modules/clothing/outfits/ert/nanotrasen_ert.dm @@ -29,7 +29,7 @@ belt = /obj/item/storage/belt/security/full backpack_contents = list(/obj/item/storage/box/survival/engineer=1,\ /obj/item/melee/baton/loaded=1) - l_pocket = /obj/item/kitchen/knife/switchblade + l_pocket = /obj/item/melee/knife/switchblade /datum/outfit/centcom/ert/commander/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) ..() @@ -287,7 +287,7 @@ ) belt = /obj/item/storage/belt/military/assault glasses = /obj/item/clothing/glasses/hud/security/sunglasses/eyepatch - l_pocket = /obj/item/kitchen/knife/combat + l_pocket = /obj/item/melee/knife/combat r_pocket = /obj/item/tank/internals/emergency_oxygen/double uniform = /obj/item/clothing/under/rank/security/officer/military accessory = /obj/item/clothing/accessory/holster/marine @@ -399,7 +399,7 @@ box = /obj/item/storage/box/survival/security l_pocket = /obj/item/restraints/handcuffs - r_pocket = /obj/item/kitchen/knife/combat + r_pocket = /obj/item/melee/knife/combat backpack_contents = list(/obj/item/radio=1, /obj/item/stock_parts/cell/gun/upgraded=2, /obj/item/screwdriver=1) diff --git a/code/modules/clothing/outfits/ert/syndicate_ert.dm b/code/modules/clothing/outfits/ert/syndicate_ert.dm index f2dadc4e0d95..c37dab500091 100644 --- a/code/modules/clothing/outfits/ert/syndicate_ert.dm +++ b/code/modules/clothing/outfits/ert/syndicate_ert.dm @@ -14,7 +14,7 @@ back = /obj/item/storage/backpack/security belt = /obj/item/storage/belt/military/c20r - r_pocket = /obj/item/kitchen/knife/combat + r_pocket = /obj/item/melee/knife/combat l_pocket = /obj/item/grenade/frag implants = list(/obj/item/implant/weapons_auth) @@ -75,7 +75,7 @@ belt = /obj/item/storage/belt/security suit_store = /obj/item/gun/ballistic/automatic/marksman/taipan - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival l_pocket = /obj/item/binoculars backpack_contents = list(/obj/item/ammo_box/magazine/sniper_rounds=2, /obj/item/radio=1) @@ -133,7 +133,7 @@ head = /obj/item/clothing/head/soft/cybersun/medical belt = /obj/item/storage/belt/medical/webbing/paramedic back = /obj/item/storage/backpack/ert/medical - l_pocket = /obj/item/kitchen/knife/combat/survival + l_pocket = /obj/item/melee/knife/survival r_pocket = /obj/item/pinpointer/crew accessory = /obj/item/clothing/accessory/holster/marine diff --git a/code/modules/clothing/outfits/factions/frontiersmen.dm b/code/modules/clothing/outfits/factions/frontiersmen.dm index 44d0c4920784..997eec2209d4 100644 --- a/code/modules/clothing/outfits/factions/frontiersmen.dm +++ b/code/modules/clothing/outfits/factions/frontiersmen.dm @@ -133,7 +133,7 @@ shoes = /obj/item/clothing/shoes/jackboots head = /obj/item/clothing/head/beret/sec/frontier/officer gloves = /obj/item/clothing/gloves/combat - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival // Head of Security /datum/outfit/job/frontiersmen/hos @@ -184,7 +184,7 @@ accessory = /obj/item/clothing/accessory/armband/med uniform = /obj/item/clothing/under/frontiersmen glasses = /obj/item/clothing/glasses/hud/health - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival suit = /obj/item/clothing/suit/frontiersmen head = /obj/item/clothing/head/frontier belt = /obj/item/storage/belt/medical/webbing/frontiersmen diff --git a/code/modules/clothing/outfits/factions/independent.dm b/code/modules/clothing/outfits/factions/independent.dm index e9b783de9780..2b93739fb0f9 100644 --- a/code/modules/clothing/outfits/factions/independent.dm +++ b/code/modules/clothing/outfits/factions/independent.dm @@ -53,7 +53,7 @@ uniform = /obj/item/clothing/under/utility head = /obj/item/clothing/head/soft/black shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat/survival + l_pocket = /obj/item/melee/knife/survival gloves = /obj/item/clothing/gloves/combat implants = list(/obj/item/implant/radio) @@ -145,7 +145,7 @@ suit = /obj/item/clothing/suit/armor/vest/marine/medium head = /obj/item/clothing/head/soft/black shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat + l_pocket = /obj/item/melee/knife/combat implants = list(/obj/item/implant/radio) accessory = null @@ -298,7 +298,7 @@ uniform = /obj/item/clothing/under/utility head = /obj/item/clothing/head/soft/black shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat + l_pocket = /obj/item/melee/knife/combat backpack_contents = list(/obj/item/melee/baton/loaded=1) @@ -349,7 +349,7 @@ uniform = /obj/item/clothing/under/utility head = /obj/item/clothing/head/soft/black shoes = /obj/item/clothing/shoes/combat - l_pocket = /obj/item/kitchen/knife/combat/survival + l_pocket = /obj/item/melee/knife/survival gloves = /obj/item/clothing/gloves/color/red/insulated implants = list(/obj/item/implant/radio) @@ -572,7 +572,7 @@ l_pocket = /obj/item/storage/bag/ore backpack_contents = list( /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/melee/knife/survival=1,\ /obj/item/stack/marker_beacon/ten=1,\ /obj/item/radio/weather_monitor=1) diff --git a/code/modules/clothing/outfits/factions/nanotrasen.dm b/code/modules/clothing/outfits/factions/nanotrasen.dm index b22c69b38f6b..e292a6e61d03 100644 --- a/code/modules/clothing/outfits/factions/nanotrasen.dm +++ b/code/modules/clothing/outfits/factions/nanotrasen.dm @@ -316,7 +316,7 @@ backpack_contents = list( /obj/item/flashlight/seclite=1, - /obj/item/kitchen/knife/combat/survival=1, + /obj/item/melee/knife/survival=1, /obj/item/stack/marker_beacon/ten=1, /obj/item/radio/weather_monitor=1, ) @@ -569,7 +569,7 @@ backpack = /obj/item/storage/backpack/ert/security belt = /obj/item/storage/belt/military id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) /datum/outfit/job/nanotrasen/security/ert/engi @@ -580,7 +580,7 @@ backpack = /obj/item/storage/backpack/ert/engineer belt = /obj/item/storage/belt/utility/full/ert id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) accessory = /obj/item/clothing/accessory/armband/engine glasses = /obj/item/clothing/glasses/hud/diagnostic/sunglasses @@ -593,7 +593,7 @@ backpack = /obj/item/storage/backpack/ert/medical belt = /obj/item/storage/belt/medical/webbing/paramedic id = /obj/item/card/id/ert/security - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival backpack_contents = list(/obj/item/radio, /obj/item/flashlight/seclite) accessory = /obj/item/clothing/accessory/armband/med glasses = /obj/item/clothing/glasses/hud/health/night diff --git a/code/modules/clothing/outfits/factions/solgov.dm b/code/modules/clothing/outfits/factions/solgov.dm index 3b14fc89dafa..c4aed59c7e21 100644 --- a/code/modules/clothing/outfits/factions/solgov.dm +++ b/code/modules/clothing/outfits/factions/solgov.dm @@ -101,7 +101,7 @@ implants = list(/obj/item/implant/mindshield) backpack_contents = list( - /obj/item/kitchen/knife/letter_opener = 1 + /obj/item/melee/knife/letter_opener = 1 ) /datum/outfit/job/solgov/overseer @@ -159,7 +159,7 @@ r_pocket = /obj/item/storage/bag/ore //causes issues if spawned in backpack backpack_contents = list( /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/melee/knife/survival=1,\ /obj/item/stack/marker_beacon/ten=1) backpack = /obj/item/storage/backpack/explorer diff --git a/code/modules/clothing/outfits/factions/syndicate.dm b/code/modules/clothing/outfits/factions/syndicate.dm index 269b476ccd91..1d91a94b766d 100644 --- a/code/modules/clothing/outfits/factions/syndicate.dm +++ b/code/modules/clothing/outfits/factions/syndicate.dm @@ -516,7 +516,7 @@ head = /obj/item/clothing/head/HoS/beret/syndicate gloves = /obj/item/clothing/gloves/color/white id = /obj/item/card/id/syndicate_command/crew_id - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival glasses = /obj/item/clothing/glasses/hud/health backpack_contents = list(/obj/item/storage/box/ids=1,\ /obj/item/melee/classic_baton/telescopic=1, /obj/item/modular_computer/tablet/preset/advanced = 1) @@ -532,7 +532,7 @@ head = /obj/item/clothing/head/HoS/cybersun gloves = /obj/item/clothing/gloves/combat id = /obj/item/card/id/syndicate_command/crew_id - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival glasses = /obj/item/clothing/glasses/sunglasses /datum/outfit/job/syndicate/head_of_personnel/suns @@ -634,7 +634,7 @@ uniform = /obj/item/clothing/under/syndicate/suns/pkuniform suit = /obj/item/clothing/suit/armor/vest/suns/hos - belt = /obj/item/melee/sabre/suns/telescopic + belt = /obj/item/melee/sword/sabre/suns/telescopic gloves = /obj/item/clothing/gloves/tackler/dolphin/suns shoes = /obj/item/clothing/shoes/combat/suns head = /obj/item/clothing/head/welding/suns/hos @@ -711,7 +711,7 @@ head = /obj/item/clothing/head/hardliners suit = /obj/item/clothing/suit/hardliners glasses = /obj/item/clothing/glasses/hud/health - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival back = /obj/item/storage/backpack/duffelbag/syndie/med id = /obj/item/card/id/syndicate_command/crew_id backpack_contents = list(/obj/item/storage/box/survival/syndie=1, /obj/item/storage/firstaid/medical,) @@ -723,7 +723,7 @@ head = /obj/item/clothing/head/ngr/surgical suit = /obj/item/clothing/suit/ngr/smock glasses = /obj/item/clothing/glasses/hud/health - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival back = /obj/item/storage/backpack/duffelbag/syndie/med id = /obj/item/card/id/syndicate_command/crew_id backpack_contents = list(/obj/item/storage/box/survival/syndie=1, /obj/item/storage/firstaid/medical,) @@ -897,7 +897,7 @@ job_icon = "securityofficer" uniform = /obj/item/clothing/under/syndicate - r_pocket = /obj/item/kitchen/knife/combat/survival + r_pocket = /obj/item/melee/knife/survival belt = /obj/item/storage/belt/military back = /obj/item/storage/backpack suit = /obj/item/clothing/suit/armor/vest @@ -994,7 +994,7 @@ uniform = /obj/item/clothing/under/syndicate/suns/pkuniform suit = /obj/item/clothing/suit/armor/vest/suns alt_suit = /obj/item/clothing/suit/toggle/suns/pkcoat - belt = /obj/item/melee/sabre/suns/telescopic + belt = /obj/item/melee/sword/sabre/suns/telescopic gloves = /obj/item/clothing/gloves/tackler/dolphin/suns shoes = /obj/item/clothing/shoes/jackboots/suns/long head = /obj/item/clothing/head/welding/suns @@ -1020,7 +1020,7 @@ r_pocket = /obj/item/storage/bag/ore backpack_contents = list( /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/melee/knife/survival=1,\ /obj/item/mining_voucher=1,\ /obj/item/stack/marker_beacon/ten=1) diff --git a/code/modules/clothing/outfits/standard.dm b/code/modules/clothing/outfits/standard.dm index 100cc7ff0f52..1754e84c7e8e 100644 --- a/code/modules/clothing/outfits/standard.dm +++ b/code/modules/clothing/outfits/standard.dm @@ -102,7 +102,6 @@ uniform = /obj/item/clothing/under/color/black/ghost suit = /obj/item/clothing/suit/hooded/cultrobes/alt/ghost shoes = /obj/item/clothing/shoes/cult/alt/ghost - r_hand = /obj/item/melee/cultblade/ghost /datum/outfit/wizard name = "Blue Wizard" diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 67dc7ce529b3..6e825e48ea4b 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -36,7 +36,7 @@ Contains: desc = "A prototype designed to replace the ageing MK.II SWAT suit. Based on the streamlined MK.II model, the traditional ceramic and graphene plate construction was replaced with plasteel, allowing superior armor against most threats. There's room for some kind of energy projection device on the back." icon_state = "deathsquad" item_state = "swat_suit" - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/knife/combat) armor = list("melee" = 80, "bullet" = 80, "laser" = 50, "energy" = 60, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100) strip_delay = 130 max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT @@ -50,7 +50,7 @@ Contains: desc = "A tactical space suit first developed in a joint effort by the defunct IS-ERI and Nanotrasen in 20XX for military space operations. A tried and true workhorse, it is very difficult to move in but offers robust protection against all threats!" icon_state = "heavy" item_state = "swat_suit" - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/knife/combat) armor = list("melee" = 40, "bullet" = 30, "laser" = 30,"energy" = 40, "bomb" = 50, "bio" = 90, "rad" = 20, "fire" = 100, "acid" = 100) strip_delay = 120 resistance_flags = FIRE_PROOF | ACID_PROOF @@ -363,7 +363,7 @@ Contains: armor = list("melee" = 30, "bullet" = 10, "laser" = 10, "energy" = 20, "bomb" = 10, "bio" = 100, "rad" = 10, "fire" = 100, "acid" = 100) max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF - allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/spear, /obj/item/organ/regenerative_core/legion, /obj/item/kitchen/knife, /obj/item/kinetic_crusher, /obj/item/resonator, /obj/item/melee/transforming/cleaving_saw) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/melee/spear, /obj/item/organ/regenerative_core/legion, /obj/item/kinetic_crusher, /obj/item/resonator, /obj/item/melee/transforming/cleaving_saw) /obj/item/clothing/suit/space/hardsuit/berserker/RemoveHelmet() var/obj/item/clothing/head/helmet/space/hardsuit/berserker/helm = helmet @@ -489,7 +489,7 @@ Contains: desc = "A custom version of the MK.II SWAT suit, modified to look rugged and tough. Works as a space suit, if you can find a helmet." icon_state = "hunter" item_state = "swat_suit" - allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/kitchen/knife/combat) + allowed = list(/obj/item/gun, /obj/item/ammo_box, /obj/item/ammo_casing, /obj/item/melee/baton, /obj/item/restraints/handcuffs, /obj/item/tank/internals, /obj/item/melee/knife/combat) armor = list("melee" = 60, "bullet" = 40, "laser" = 40, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 100, "fire" = 100, "acid" = 100) strip_delay = 130 resistance_flags = FIRE_PROOF | ACID_PROOF diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index a16680353b6f..b9eb2b6d7c53 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -277,7 +277,7 @@ desc = "A classic suit of plate armour, highly effective at stopping melee attacks." icon_state = "riot_knight_green" item_state = "riot_knight_green" - allowed = list(/obj/item/nullrod, /obj/item/claymore, /obj/item/banner, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/oxygen, /obj/item/tank/internals/plasmaman) + allowed = list(/obj/item/melee/sword/claymore, /obj/item/banner, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/oxygen, /obj/item/tank/internals/plasmaman) /obj/item/clothing/suit/armor/riot/knight/yellow icon_state = "riot_knight_yellow" @@ -400,13 +400,6 @@ icon_state = "armor_syndie" item_state = "syndiearmor" -/obj/item/clothing/suit/armor/vest/scrap_armor - name = "scrap armor" - desc = "An 'armor' vest consisting of sheet metal held together with cable. Who thought this was a good idea?" - icon_state = "scraparmor" - item_state = "scraparmor" - armor = list("melee" = 5) - /obj/item/clothing/suit/armor/curator name = "treasure hunter's coat" desc = "Both fashionable and lightly armoured, this jacket is favoured by treasure hunters the galaxy over." diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm index 3ef1628c19b4..c62d0e92b8c0 100644 --- a/code/modules/clothing/suits/bio.dm +++ b/code/modules/clothing/suits/bio.dm @@ -98,4 +98,4 @@ /obj/item/clothing/suit/bio_suit/plaguedoctorsuit/Initialize() . = ..() - allowed += list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/cane) + allowed += list(/obj/item/storage/book/bible, /obj/item/cane) diff --git a/code/modules/clothing/suits/chaplainsuits.dm b/code/modules/clothing/suits/chaplainsuits.dm index 58802e01b8a1..073966a5fc15 100644 --- a/code/modules/clothing/suits/chaplainsuits.dm +++ b/code/modules/clothing/suits/chaplainsuits.dm @@ -1,10 +1,10 @@ //Chaplain Suit Subtypes //If any new staple chaplain items get added, put them in these lists /obj/item/clothing/suit/chaplainsuit - allowed = list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) + allowed = list(/obj/item/storage/book/bible, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) /obj/item/clothing/suit/hooded/chaplainsuit - allowed = list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) + allowed = list(/obj/item/storage/book/bible, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) //Suits /obj/item/clothing/suit/chaplainsuit/holidaypriest diff --git a/code/modules/clothing/suits/cloaks.dm b/code/modules/clothing/suits/cloaks.dm index 4e3f6d5e3a9c..763be0e2f468 100644 --- a/code/modules/clothing/suits/cloaks.dm +++ b/code/modules/clothing/suits/cloaks.dm @@ -76,7 +76,7 @@ name = "goliath cloak" icon_state = "goliath_cloak" desc = "A staunch, practical cape made out of numerous monster materials, it is coveted amongst exiles & hermits." - allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/spear, /obj/item/organ/regenerative_core/legion, /obj/item/kitchen/knife/combat/bone, /obj/item/kitchen/knife/combat/survival) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/pickaxe, /obj/item/melee/spear, /obj/item/organ/regenerative_core/legion, /obj/item/melee/knife/bone, /obj/item/melee/knife/survival) armor = list("melee" = 35, "bullet" = 10, "laser" = 25, "energy" = 35, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 60) //a fair alternative to bone armor, requiring alternative materials and gaining a suit slot hoodtype = /obj/item/clothing/head/hooded/cloakhood/goliath body_parts_covered = CHEST|GROIN|ARMS @@ -94,7 +94,7 @@ name = "drake armour" icon_state = "dragon" desc = "A suit of armour fashioned from the remains of an ash drake." - allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe, /obj/item/spear) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/kinetic_accelerator, /obj/item/pickaxe, /obj/item/melee/spear) armor = list("melee" = 50, "bullet" = 10, "laser" = 40, "energy" = 50, "bomb" = 50, "bio" = 60, "rad" = 50, "fire" = 100, "acid" = 100) hoodtype = /obj/item/clothing/head/hooded/cloakhood/drake heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 312f14dec507..3b1735208dda 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -278,7 +278,7 @@ hoodtype = /obj/item/clothing/head/hooded/enginseer body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDEGLOVES - allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/gun, /obj/item/melee, /obj/item/nullrod, /obj/item/radio, /obj/item/storage/book) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/gun, /obj/item/melee, /obj/item/radio, /obj/item/storage/book) /obj/item/clothing/head/hooded/enginseer name = "enginseer's hood" diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index f8e8c3f69909..6e8b87b06285 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -132,7 +132,7 @@ item_state = "imperium_monk" body_parts_covered = CHEST|GROIN|LEGS|ARMS flags_inv = HIDESHOES|HIDEJUMPSUIT - allowed = list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen) + allowed = list(/obj/item/storage/book/bible, /obj/item/melee/sword, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen) /obj/item/clothing/suit/chickensuit diff --git a/code/modules/clothing/under/accessories.dm b/code/modules/clothing/under/accessories.dm index f7710d52a12d..d1ee50d1a629 100644 --- a/code/modules/clothing/under/accessories.dm +++ b/code/modules/clothing/under/accessories.dm @@ -393,7 +393,6 @@ desc = "A legion skull fitted to a codpiece, intended to protect the important things in life." icon_state = "skull" above_suit = TRUE - armor = list("melee" = 10, "bullet" = 10, "laser" = 5, "energy" = 5, "bomb" = 20, "bio" = 20, "rad" = 5, "fire" = 40, "acid" = 40) attachment_slot = GROIN /obj/item/clothing/accessory/skilt @@ -402,7 +401,6 @@ icon_state = "skilt" above_suit = TRUE minimize_when_attached = FALSE - armor = list("melee" = 5, "bullet" = 5, "laser" = 5, "energy" = 5, "bomb" = 20, "bio" = 20, "rad" = 5, "fire" = 0, "acid" = 25) attachment_slot = GROIN /obj/item/clothing/accessory/holster diff --git a/code/modules/events/wizard/curseditems.dm b/code/modules/events/wizard/curseditems.dm deleted file mode 100644 index e99b0d754910..000000000000 --- a/code/modules/events/wizard/curseditems.dm +++ /dev/null @@ -1,60 +0,0 @@ -/datum/round_event_control/wizard/cursed_items //fashion disasters - name = "Cursed Items" - weight = 3 - typepath = /datum/round_event/wizard/cursed_items - max_occurrences = 3 - earliest_start = 0 MINUTES - -//Note about adding items to this: Because of how NODROP_1 works if an item spawned to the hands can also be equiped to a slot -//it will be able to be put into that slot from the hand, but then get stuck there. To avoid this make a new subtype of any -//item you want to equip to the hand, and set its slots_flags = null. Only items equiped to hands need do this. - -/datum/round_event/wizard/cursed_items/start() - var/item_set = pick("wizardmimic", "swords", "bigfatdoobie", "boxing", "voicemodulators", "catgirls2015") - var/list/loadout[SLOTS_AMT] - var/ruins_spaceworthiness - var/ruins_wizard_loadout - - switch(item_set) - if("wizardmimic") - loadout[ITEM_SLOT_OCLOTHING] = /obj/item/clothing/suit/wizrobe - loadout[ITEM_SLOT_FEET] = /obj/item/clothing/shoes/sandal/magic - loadout[ITEM_SLOT_HEAD] = /obj/item/clothing/head/wizard - ruins_spaceworthiness = 1 - if("swords") - loadout[ITEM_SLOT_HANDS] = /obj/item/katana/cursed - if("bigfatdoobie") - loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/cigarette/rollie/trippy - ruins_spaceworthiness = 1 - if("boxing") - loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/luchador - loadout[ITEM_SLOT_GLOVES] = /obj/item/clothing/gloves/boxing - ruins_spaceworthiness = 1 - if("voicemodulators") - loadout[ITEM_SLOT_MASK] = /obj/item/clothing/mask/chameleon - if("catgirls2015") - loadout[ITEM_SLOT_HEAD] = /obj/item/clothing/head/kitty - ruins_spaceworthiness = 1 - ruins_wizard_loadout = 1 - - for(var/mob/living/carbon/human/H as anything in GLOB.human_list) - if(ruins_spaceworthiness && isspaceturf(H.loc) || isplasmaman(H)) - continue //#savetheminers - if(ruins_wizard_loadout && iswizard(H)) - continue - if(item_set == "catgirls2015") //Wizard code means never having to say you're sorry - H.gender = FEMALE - for(var/i in 1 to loadout.len) - if(loadout[i]) - var/obj/item/J = loadout[i] - var/obj/item/I = new J //dumb but required because of byond throwing a fit anytime new gets too close to a list - H.dropItemToGround(H.get_item_by_slot(i), TRUE) - H.equip_to_slot_or_del(I, i) - ADD_TRAIT(I, TRAIT_NODROP, CURSED_ITEM_TRAIT) - I.item_flags |= DROPDEL - I.name = "cursed " + I.name - - for(var/mob/living/carbon/human/H as anything in GLOB.human_list) - var/datum/effect_system/smoke_spread/smoke = new - smoke.set_up(0, H.loc) - smoke.start() diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 4774ea852424..69c15b1e3494 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -1023,11 +1023,11 @@ GLOBAL_LIST_INIT(hallucination_list, list( if(prob(25)) target.halitem.icon_state = "plasticx40" if(3) //sword - target.halitem.icon = 'icons/obj/transforming_energy.dmi' + target.halitem.icon = 'icons/obj/weapon/energy.dmi' target.halitem.icon_state = "sword0" target.halitem.name = "Energy Sword" if(4) //stun baton - target.halitem.icon = 'icons/obj/items_and_weapons.dmi' + target.halitem.icon = 'icons/obj/items.dmi' target.halitem.icon_state = "stunbaton" target.halitem.name = "Stun Baton" if(5) //emag diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index 785607cdef67..49de009448f2 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -602,7 +602,7 @@ desc = "Legend says something amazing happens when you collect enough of these." custom_price = 100 custom_premium_price = 110 - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "sandstar" w_class = WEIGHT_CLASS_TINY custom_materials = list(/datum/material/gold = 200) diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm index b1191fda7ada..1eb1d255c340 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_misc.dm @@ -265,7 +265,7 @@ /datum/reagent/consumable/milk = 1, /datum/reagent/consumable/cherryjelly = 5, /obj/item/stock_parts/cell/super =1, - /obj/item/melee/sabre = 1 + /obj/item/melee/sword/sabre = 1 ) result = /obj/item/reagent_containers/food/snacks/powercrepe subcategory = CAT_MISCFOOD diff --git a/code/modules/holodeck/items.dm b/code/modules/holodeck/items.dm index d56fd4f9c32c..c0d985e89d79 100644 --- a/code/modules/holodeck/items.dm +++ b/code/modules/holodeck/items.dm @@ -13,7 +13,7 @@ /obj/item/holo/esword name = "holographic energy sword" desc = "May the force be with you. Sorta." - icon = 'icons/obj/transforming_energy.dmi' + icon = 'icons/obj/weapon/energy.dmi' icon_state = "sword" lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' @@ -69,7 +69,7 @@ /obj/item/toy/beach_ball/holoball name = "basketball" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "basketball" item_state = "basketball" desc = "Here's your chance, do your dance at the Space Jam." diff --git a/code/modules/hydroponics/grown/nettle.dm b/code/modules/hydroponics/grown/nettle.dm index f9633ade7661..3fa14561b8d1 100644 --- a/code/modules/hydroponics/grown/nettle.dm +++ b/code/modules/hydroponics/grown/nettle.dm @@ -45,7 +45,7 @@ seed = /obj/item/seeds/nettle name = "nettle" desc = "It's probably not wise to touch it with bare hands..." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "nettle" lefthand_file = 'icons/mob/inhands/weapons/plants_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/plants_righthand.dmi' diff --git a/code/modules/hydroponics/grown/root.dm b/code/modules/hydroponics/grown/root.dm index 97773e39f277..d3f847d7e292 100644 --- a/code/modules/hydroponics/grown/root.dm +++ b/code/modules/hydroponics/grown/root.dm @@ -28,7 +28,7 @@ /obj/item/reagent_containers/food/snacks/grown/carrot/attackby(obj/item/I, mob/user, params) if(I.get_sharpness()) to_chat(user, "You sharpen the carrot into a shiv with [I].") - var/obj/item/kitchen/knife/shiv/carrot/Shiv = new /obj/item/kitchen/knife/shiv/carrot + var/obj/item/melee/knife/shiv/carrot/Shiv = new /obj/item/melee/knife/shiv/carrot remove_item_from_storage(user) qdel(src) user.put_in_hands(Shiv) diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm index 74d004849a2a..56ad2264ce01 100644 --- a/code/modules/hydroponics/hydroitemdefines.dm +++ b/code/modules/hydroponics/hydroitemdefines.dm @@ -59,7 +59,7 @@ /obj/item/cultivator name = "cultivator" desc = "It's used for removing weeds or scratching your back." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "cultivator" item_state = "cultivator" lefthand_file = 'icons/mob/inhands/equipment/hydroponics_lefthand.dmi' @@ -106,7 +106,7 @@ /obj/item/hatchet name = "hatchet" desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/weapon/axe.dmi' icon_state = "hatchet" item_state = "hatchet" lefthand_file = 'icons/mob/inhands/equipment/hydroponics_lefthand.dmi' diff --git a/code/modules/jobs/job_types/chaplain.dm b/code/modules/jobs/job_types/chaplain.dm index ab4ceb6968c0..5efe0a0a00d2 100644 --- a/code/modules/jobs/job_types/chaplain.dm +++ b/code/modules/jobs/job_types/chaplain.dm @@ -15,20 +15,6 @@ var/obj/item/storage/book/bible/booze/B = new - if(GLOB.religion) - B.deity_name = GLOB.deity - B.name = GLOB.bible_name - B.icon_state = GLOB.bible_icon_state - B.item_state = GLOB.bible_item_state - to_chat(H, "There is already an established religion onboard the station. You are an acolyte of [GLOB.deity]. Defer to the Chaplain.") - H.equip_to_slot_or_del(B, ITEM_SLOT_BACKPACK) - var/nrt = GLOB.holy_weapon_type || /obj/item/nullrod - var/obj/item/nullrod/N = new nrt(H) - H.put_in_hands(N) - if(GLOB.religious_sect) - GLOB.religious_sect.on_conversion(H) - return - var/new_religion = DEFAULT_RELIGION if(M.client && M.client.prefs.custom_names["religion"]) new_religion = M.client.prefs.custom_names["religion"] diff --git a/code/modules/jobs/job_types/shaft_miner.dm b/code/modules/jobs/job_types/shaft_miner.dm index 1469e592b4de..341116d30c8c 100644 --- a/code/modules/jobs/job_types/shaft_miner.dm +++ b/code/modules/jobs/job_types/shaft_miner.dm @@ -26,7 +26,7 @@ r_pocket = /obj/item/storage/bag/ore //causes issues if spawned in backpack backpack_contents = list( /obj/item/flashlight/seclite=1,\ - /obj/item/kitchen/knife/combat/survival=1,\ + /obj/item/melee/knife/survival=1,\ /obj/item/stack/marker_beacon/ten=1,\ /obj/item/radio/weather_monitor=1) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 55d33ee80d20..9c6e90469fcc 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -319,7 +319,7 @@ scanner.computer.inventory.Add(src) to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. Title added to general inventory.'") - else if(istype(I, /obj/item/kitchen/knife) || I.tool_behaviour == TOOL_WIRECUTTER) + else if(istype(I, /obj/item/melee/knife) || I.tool_behaviour == TOOL_WIRECUTTER) to_chat(user, "You begin to carve out [title]...") if(do_after(user, 30, target = src)) to_chat(user, "You carve out the pages from [title]! You didn't want to read it anyway.") diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 71de02b3ca1c..38b3728651ce 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -358,7 +358,6 @@ GLOBAL_LIST(cachedbooks) // List of our cached book datums return null /obj/machinery/computer/bookmanagement/proc/print_forbidden_lore(mob/user) - new /obj/item/melee/cultblade/dagger(get_turf(src)) to_chat(user, "Your sanity barely endures the seconds spent in the vault's browsing window. The only thing to remind you of this when you stop browsing is a sinister dagger sitting on the desk. You don't even remember where it came from...") user.visible_message("[user] stares at the blank screen for a few moments, [user.p_their()] expression frozen in fear. When [user.p_they()] finally awaken[user.p_s()] from it, [user.p_they()] look[user.p_s()] a lot older.", 2) diff --git a/code/modules/mapping/mapping_helpers.dm b/code/modules/mapping/mapping_helpers.dm index 2040764eefb9..251cf46e7c5f 100644 --- a/code/modules/mapping/mapping_helpers.dm +++ b/code/modules/mapping/mapping_helpers.dm @@ -280,7 +280,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/mapping_helpers/no_lava) //cake + knife to cut it! if(length(table)) var/turf/food_turf = get_turf(pick(table)) - new /obj/item/kitchen/knife(food_turf) + new /obj/item/melee/knife/kitchen(food_turf) var/obj/item/food/cake/birthday/iancake = new(food_turf) iancake.desc = "Happy birthday, Ian!" diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm index 21bfb509e6fb..ea43fe78f176 100644 --- a/code/modules/mining/abandoned_crates.dm +++ b/code/modules/mining/abandoned_crates.dm @@ -136,7 +136,7 @@ for(var/i in 1 to 3) new /obj/item/clothing/mask/cigarette/rollie(src) if(6 to 10) - new /obj/item/melee/skateboard/pro(src) + new /obj/item/skateboard/pro(src) if(11 to 15) new /mob/living/simple_animal/bot/honkbot(src) if(16 to 20) @@ -211,7 +211,7 @@ for(var/i in 1 to 30) new /mob/living/simple_animal/hostile/cockroach(src) if(92) - new /obj/item/katana(src) + new /obj/item/melee/sword/katana(src) if(93) new /obj/item/dnainjector/xraymut(src) if(94) @@ -220,7 +220,6 @@ if(95) new /obj/item/toy/plush/nukeplushie(src) if(96) - new /obj/item/banhammer(src) for(var/i in 1 to 3) new /obj/item/mine/pressure/sound(src) if(97) @@ -237,5 +236,5 @@ if(99) new /obj/item/implanter/sad_trombone(src) if(100) - new /obj/item/melee/skateboard/hoverboard(src) + new /obj/item/skateboard/hoverboard(src) spawned_loot = TRUE diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm index 3b390da34251..b5e112713a82 100644 --- a/code/modules/mining/equipment/explorer_gear.dm +++ b/code/modules/mining/equipment/explorer_gear.dm @@ -190,3 +190,37 @@ /obj/item/clothing/head/hooded/survivor_hood/Initialize() . = ..() AddComponent(/datum/component/armor_plate) + +/obj/item/clothing/suit/hooded/scrap + name = "scrap suit" + desc = "A ragged makeshift suit." + lefthand_file = 'icons/mob/inhands/clothing_lefthand.dmi' + righthand_file = 'icons/mob/inhands/clothing_righthand.dmi' + icon_state = "survivor" + item_state = "survivor_suit" + body_parts_covered = CHEST|GROIN|LEGS|ARMS + min_cold_protection_temperature = (FIRE_SUIT_MIN_TEMP_PROTECT * 2) + cold_protection = CHEST|GROIN|LEGS|ARMS + max_heat_protection_temperature = (FIRE_SUIT_MAX_TEMP_PROTECT / 2) + heat_protection = CHEST|GROIN|LEGS|ARMS + hoodtype = /obj/item/clothing/head/hooded/scrap + armor = list("melee" = 15, "bullet" = 10, "laser" = 10, "energy" = 15, "bomb" = 20, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 30) + allowed = list(/obj/item/flashlight, /obj/item/tank/internals) + resistance_flags = FIRE_PROOF + supports_variations = DIGITIGRADE_VARIATION | VOX_VARIATION + +/obj/item/clothing/head/hooded/scrap + name = "scrap hood" + desc = "A loose-fitting hood. It gets the job done." + icon_state = "explorerold" + suit = /obj/item/clothing/suit/hooded/scrap + body_parts_covered = HEAD + flags_inv = HIDEHAIR|HIDEEARS + armor = list("melee" = 15, "bullet" = 10, "laser" = 10, "energy" = 15, "bomb" = 20, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 30) + +/obj/item/clothing/suit/armor/vest/scrap + name = "scrap armor" + desc = "An 'armor' vest consisting of sheet metal held together with cable. Who thought this was a good idea?" + icon_state = "scraparmor" + item_state = "scraparmor" + armor = list("melee" = 15, "bullet" = 10, "laser" = 10, "energy" = 15, "bomb" = 20, "bio" = 100, "rad" = 20, "fire" = 50, "acid" = 30) diff --git a/code/modules/mining/equipment/survival_pod.dm b/code/modules/mining/equipment/survival_pod.dm index 2a38ae896e76..15f7cb2e3a69 100644 --- a/code/modules/mining/equipment/survival_pod.dm +++ b/code/modules/mining/equipment/survival_pod.dm @@ -308,17 +308,16 @@ var/possible = list(/obj/item/ship_in_a_bottle, /obj/item/gun/energy/pulse, /obj/item/book/granter/martial/carp, - /obj/item/melee/supermatter_sword, + /obj/item/melee/sword/supermatter, /obj/item/shield/changeling, /obj/item/lava_staff, - /obj/item/energy_katana, + /obj/item/melee/sword/energy_katana, /obj/item/hierophant_club, /obj/item/gun/energy/minigun, /obj/item/gun/ballistic/automatic/assault/hydra/lmg/extended, /obj/item/stack/telecrystal/twenty, /obj/item/nuke_core, - /obj/item/phylactery, - /obj/item/banhammer) + /obj/item/phylactery) /obj/item/fakeartefact/Initialize() . = ..() diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index f9563cc078eb..bf6fb15c9332 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -419,7 +419,7 @@ /obj/item/seeds/lavaland/puce/attackby(obj/item/item, mob/user, params) . = ..() //anyone intending to add more garnishes using this method should componentize this - if(!istype(item, /obj/item/kitchen/knife)) + if(!istype(item, /obj/item/melee/knife)) return playsound(src, 'sound/effects/glassbr1.ogg', 50, TRUE, -1) to_chat(user, "You start breaking [src] up into shards...") diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 2af5515e47a7..afae0dd0a6c0 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -21,8 +21,6 @@ new /obj/item/clothing/suit/space/hardsuit/cult(src) if(3) new /obj/item/necromantic_stone/lava(src) - if(4) - new /obj/item/katana/cursed(src) if(5) new /obj/item/clothing/glasses/godeye(src) if(6) @@ -47,7 +45,7 @@ new /obj/item/borg/upgrade/modkit/lifesteal(src) new /obj/item/bedsheet/cult(src) if(14) - new /obj/item/nullrod/scythe/talking/necro(src) + new /obj/item/scythe(src) if(15) new /obj/item/book_of_babel(src) if(16) @@ -80,8 +78,6 @@ new /obj/item/gun/energy/spur(src) if(28) new /obj/item/clothing/suit/armor/ascetic(src) - if(29) - new /obj/item/kitchen/knife/envy(src) /obj/structure/closet/crate/necropolis/tendril/greater desc = "It's watching you wearily. It seems terribly bloated." @@ -96,8 +92,6 @@ new /obj/item/clothing/suit/space/hardsuit/cult(src) if(3) new /obj/item/necromantic_stone/lava(src) - if(4) - new /obj/item/katana/cursed(src) if(5) new /obj/item/clothing/glasses/godeye(src) if(6) @@ -122,7 +116,7 @@ new /obj/item/borg/upgrade/modkit/lifesteal(src) new /obj/item/bedsheet/cult(src) if(14) - new /obj/item/nullrod/scythe/talking/necro(src) + new /obj/item/scythe(src) if(15) new /obj/item/book_of_babel(src) if(16) @@ -155,8 +149,6 @@ new /obj/item/gun/energy/spur(src) if(28) new /obj/item/clothing/suit/armor/ascetic(src) - if(29) - new /obj/item/kitchen/knife/envy(src) //KA modkit design discs /obj/item/disk/design_disk/modkit_disc @@ -738,8 +730,8 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/costume/roman(H), ITEM_SLOT_ICLOTHING) H.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(H), ITEM_SLOT_FEET) H.put_in_hands(new /obj/item/shield/riot/roman(H), TRUE) - H.put_in_hands(new /obj/item/claymore(H), TRUE) - H.equip_to_slot_or_del(new /obj/item/spear(H), ITEM_SLOT_BACK) + H.put_in_hands(new /obj/item/melee/sword/claymore(H), TRUE) + H.equip_to_slot_or_del(new /obj/item/melee/spear(H), ITEM_SLOT_BACK) //ice cube /obj/item/freeze_cube @@ -1204,7 +1196,7 @@ var/loot = rand(1,4) switch(loot) if(1) - new /obj/item/melee/ghost_sword(src) + new /obj/item/melee/sword/claymore(src) if(2) new /obj/item/lava_staff(src) if(3) @@ -1212,91 +1204,6 @@ if(4) new /obj/item/dragons_blood(src) -/obj/item/melee/ghost_sword - name = "\improper spectral blade" - desc = "A rusted and dulled blade. It doesn't look like it'd do much damage. It glows weakly." - icon_state = "spectral" - item_state = "spectral" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - flags_1 = CONDUCT_1 - sharpness = IS_SHARP - w_class = WEIGHT_CLASS_BULKY - force = 1 - throwforce = 1 - hitsound = 'sound/effects/ghost2.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "rended") - var/summon_cooldown = 0 - var/list/mob/dead/observer/spirits - -/obj/item/melee/ghost_sword/Initialize() - . = ..() - spirits = list() - START_PROCESSING(SSobj, src) - GLOB.poi_list |= src - AddComponent(/datum/component/butchering, 150, 90) - -/obj/item/melee/ghost_sword/Destroy() - for(var/mob/dead/observer/G in spirits) - G.invisibility = GLOB.observer_default_invisibility - spirits.Cut() - STOP_PROCESSING(SSobj, src) - GLOB.poi_list -= src - . = ..() - -/obj/item/melee/ghost_sword/attack_self(mob/user) - if(summon_cooldown > world.time) - to_chat(user, "You just recently called out for aid. You don't want to annoy the spirits!") - return - to_chat(user, "You call out for aid, attempting to summon spirits to your side.") - - notify_ghosts("[user] is raising [user.p_their()] [src], calling for your help!", - enter_link="
(Click to help)", - source = user, action=NOTIFY_ORBIT, ignore_key = POLL_IGNORE_SPECTRAL_BLADE, header = "Spectral blade") - - summon_cooldown = world.time + 300 - -/obj/item/melee/ghost_sword/process() - ghost_check() - -/obj/item/melee/ghost_sword/proc/ghost_check() - var/ghost_counter = 0 - var/turf/T = get_turf(src) - var/list/contents = T.GetAllContents() - var/mob/dead/observer/current_spirits = list() - for(var/thing in contents) - var/atom/A = thing - A.transfer_observers_to(src) - - for(var/i in orbiters?.orbiters) - if(!isobserver(i)) - continue - var/mob/dead/observer/G = i - ghost_counter++ - G.invisibility = 0 - current_spirits |= G - - for(var/mob/dead/observer/G in spirits - current_spirits) - G.invisibility = GLOB.observer_default_invisibility - - spirits = current_spirits - - return ghost_counter - -/obj/item/melee/ghost_sword/attack(mob/living/target, mob/living/carbon/human/user) - force = 0 - var/ghost_counter = ghost_check() - - force = clamp((ghost_counter * 4), 0, 75) - user.visible_message("[user] strikes with the force of [ghost_counter] vengeful spirits!") - ..() - -/obj/item/melee/ghost_sword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - var/ghost_counter = ghost_check() - final_block_chance += clamp((ghost_counter * 5), 0, 75) - owner.visible_message("[owner] is protected by a ring of [ghost_counter] ghosts!") - return ..() - //Blood /obj/item/dragons_blood diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 15cde601689e..4b2774c3894a 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -121,6 +121,6 @@ new /obj/item/clothing/suit/hooded/explorer(src) new /obj/item/clothing/mask/gas/explorer(src) new /obj/item/gun/energy/kinetic_accelerator(src) - new /obj/item/kitchen/knife/combat/survival(src) + new /obj/item/melee/knife/survival(src) new /obj/item/flashlight/seclite(src) new /obj/item/clothing/gloves/explorer(src) diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index 01610cd13644..665e75da9cef 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -170,7 +170,7 @@ to_chat(user, "Please close the access panel before locking it.") else to_chat(user, "\The [src] doesn't seem to respect your authority.") - else if(istype(W, /obj/item/kitchen/knife) && user.a_intent != INTENT_HARM) + else if(istype(W, /obj/item/melee/knife) && user.a_intent != INTENT_HARM) to_chat(user, "You start attaching \the [W] to \the [src]...") if(do_after(user, 25, target = src)) deputize(W, user) diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index d43d744e2800..b6f5c58b424e 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -115,7 +115,7 @@ name = "pile of bear armor" desc = "A scattered pile of various shaped armor pieces fitted for a bear, some duct tape, and a nail filer. Crude instructions \ are written on the back of one of the plates. This seems like an awful idea." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "bear_armor_upgrade" /obj/item/bear_armor/afterattack(atom/target, mob/user, proximity_flag) diff --git a/code/modules/mob/living/simple_animal/hostile/human/frontiersman.dm b/code/modules/mob/living/simple_animal/hostile/human/frontiersman.dm index ba5f75ffb249..d8b4af5344ea 100644 --- a/code/modules/mob/living/simple_animal/hostile/human/frontiersman.dm +++ b/code/modules/mob/living/simple_animal/hostile/human/frontiersman.dm @@ -9,7 +9,7 @@ melee_damage_lower = 15 melee_damage_upper = 15 loot = list(/obj/effect/mob_spawn/human/corpse/frontier, - /obj/item/kitchen/knife/combat/survival) + /obj/item/melee/knife/survival) atmos_requirements = list("min_oxy" = 5, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 1, "min_co2" = 0, "max_co2" = 5, "min_n2" = 0, "max_n2" = 0) faction = list(FACTION_ANTAG_FRONTIERSMEN) footstep_type = FOOTSTEP_MOB_SHOE diff --git a/code/modules/mob/living/simple_animal/hostile/human/skeleton.dm b/code/modules/mob/living/simple_animal/hostile/human/skeleton.dm index b251dda91e48..147c2081f622 100644 --- a/code/modules/mob/living/simple_animal/hostile/human/skeleton.dm +++ b/code/modules/mob/living/simple_animal/hostile/human/skeleton.dm @@ -49,7 +49,7 @@ loot = list(/obj/effect/decal/remains/human, /obj/item/clothing/suit/armor/witchhunter, /obj/item/clothing/head/witchunter, - /obj/item/claymore/weak{name = "holy sword"}) + /obj/item/melee/sword/claymore{name = "holy sword"}) /mob/living/simple_animal/hostile/human/skeleton/ice name = "ice skeleton" diff --git a/code/modules/mob/living/simple_animal/hostile/human/survivors.dm b/code/modules/mob/living/simple_animal/hostile/human/survivors.dm index 52863c1a5c64..ed356764271f 100644 --- a/code/modules/mob/living/simple_animal/hostile/human/survivors.dm +++ b/code/modules/mob/living/simple_animal/hostile/human/survivors.dm @@ -116,7 +116,7 @@ /obj/item/stack/marker_beacon/ten = 15, /obj/item/mining_scanner = 5, /obj/item/extinguisher/mini = 10, - /obj/item/kitchen/knife/combat = 5, + /obj/item/melee/knife/combat = 5, /obj/item/flashlight/seclite = 10, /obj/item/stack/sheet/sinew = 10, /obj/item/stack/sheet/bone = 5, @@ -132,7 +132,7 @@ /obj/item/stack/marker_beacon/ten = 10, /obj/item/mining_scanner = 20, /obj/item/extinguisher/mini = 10, - /obj/item/kitchen/knife/combat/survival = 10, + /obj/item/melee/knife/survival = 10, /obj/item/flashlight/seclite = 10, /obj/item/stack/sheet/sinew = 10, /obj/item/stack/sheet/bone = 10 @@ -144,11 +144,11 @@ /obj/item/stack/marker_beacon/ten = 5, /obj/item/mining_scanner = 5, /obj/item/extinguisher/mini = 10, - /obj/item/kitchen/knife/combat/survival = 12, + /obj/item/melee/knife/survival = 12, /obj/item/flashlight/seclite = 10, /obj/item/stack/sheet/sinew = 5, /obj/item/stack/sheet/bone = 5, - /obj/item/kitchen/knife/combat = 3, + /obj/item/melee/knife/combat = 3, /obj/item/reagent_containers/food/snacks/rationpack = 30 ) ) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/codename_claw.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/codename_claw.dm index a762a9298279..d3a50564ca75 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/codename_claw.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/codename_claw.dm @@ -58,7 +58,7 @@ speed = 5 move_to_delay = 5 speak_emote = list("verbalizes") - mob_trophy = /obj/item/nullrod/armblade/tentacle + mob_trophy = /obj/item/melee/synthetic_arm_blade loot = list(/obj/effect/spawner/clawloot) health = 2250 maxHealth = 2250 diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/cult_templar.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/cult_templar.dm index 08ef1a7b21cb..c06c78068ce9 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/cult_templar.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/cult_templar.dm @@ -23,8 +23,8 @@ ranged_cooldown_time = 20 vision_range = 10 damage_coeff = list(BRUTE = 1, BURN = 0.5, TOX = 0.5, CLONE = 0.5, STAMINA = 0, OXY = 0.5) - loot = list(/obj/item/claymore/cursed, /obj/item/clothing/suit/space/hardsuit/cult/enchanted) - mob_trophy = list(/obj/item/claymore/cursed, /obj/item/clothing/suit/space/hardsuit/cult/enchanted, /obj/item/upgradescroll) + loot = list(/obj/item/melee/sword/claymore, /obj/item/clothing/suit/space/hardsuit/cult/enchanted) + mob_trophy = list(/obj/item/melee/sword/claymore, /obj/item/clothing/suit/space/hardsuit/cult/enchanted, /obj/item/upgradescroll) wander = FALSE del_on_death = TRUE blood_volume = BLOOD_VOLUME_NORMAL @@ -40,7 +40,7 @@ /datum/action/innate/megafauna_attack/rapid_fire) move_force = MOVE_FORCE_NORMAL var/turf/starting - var/obj/item/claymore/cursed/mob/weapon + var/obj/item/melee/sword/claymore/weapon var/charging = FALSE var/dash_cooldown = 6 SECONDS var/runic_blast_cooldown = 14 SECONDS @@ -50,23 +50,6 @@ var/dash_num = 3 var/newcolor = rgb(149, 10, 10) -/obj/item/claymore/cursed - name = "cursed longsword" - desc = "For those who overcame a great challenge. It glows with a dim red light." - icon_state = "cultblade" - item_state = "cultblade" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' - w_class = WEIGHT_CLASS_BULKY - throwforce = 25 - block_chance = 65 - armour_penetration = 50 - sharpness = IS_SHARP - -/obj/item/claymore/cursed/mob - block_chance = 0 - force = 16 - /mob/living/simple_animal/hostile/megafauna/cult_templar/Initialize() . = ..() starting = get_turf(src) @@ -421,7 +404,7 @@ /obj/item/clothing/suit/space/hardsuit/cult/enchanted name = "\improper Cursed Nar'Sien hardened armor" desc = "A heavily-armored exosuit worn by warriors of the Nar'Sien cult. This one is cursed, screaming voices into the mind of the wearer." - allowed = list(/obj/item/gun, /obj/item/nullrod, /obj/item/tank/internals) + allowed = list(/obj/item/gun, /obj/item/tank/internals) armor = list("melee" = 75, "bullet" = 50, "laser" = 30, "energy" = 50, "bomb" = 100, "bio" = 100, "rad" = 80, "fire" = 100, "acid" = 100) max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT resistance_flags = FIRE_PROOF | LAVA_PROOF diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord_outfits.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord_outfits.dm index f0c70edc3037..1a347db1646b 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord_outfits.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord_outfits.dm @@ -230,7 +230,7 @@ /obj/item/stack/marker_beacon/ten = 2, /obj/item/mining_scanner = 2, /obj/item/extinguisher/mini = 2, - /obj/item/kitchen/knife/combat/survival = 3, + /obj/item/melee/knife/survival = 3, /obj/item/flashlight/seclite = 3, /obj/item/stack/sheet/sinew = 3, /obj/item/stack/sheet/bone = 3 @@ -275,7 +275,7 @@ if(prob(75)) back = pick(/obj/item/storage/backpack/industrial, /obj/item/storage/backpack/satchel/eng, /obj/item/storage/backpack/duffelbag/engineering, /obj/item/storage/backpack/messenger/engi) if(prob(10)) - back = /obj/item/fireaxe + back = /obj/item/melee/axe/fire for(var/i = 1 to 3) if(prob(75)) backpack_contents += pickweight(list( @@ -424,7 +424,7 @@ if(prob(75)) accessory = /obj/item/clothing/accessory/armband/cargo if(prob(25)) - suit = /obj/item/clothing/suit/armor/vest/scrap_armor + suit = /obj/item/clothing/suit/armor/vest/scrap suit_store = /obj/item/gun/ballistic/rifle/illestren /datum/outfit/generic/cargo diff --git a/code/modules/mod/modules/modules_ninja.dm b/code/modules/mod/modules/modules_ninja.dm index 69da2287eb72..767a229d98f5 100644 --- a/code/modules/mod/modules/modules_ninja.dm +++ b/code/modules/mod/modules/modules_ninja.dm @@ -170,7 +170,7 @@ /// The item linked to the module that will get recalled. var/obj/item/linked_weapon /// The accepted typepath we can link to. - var/accepted_type = /obj/item/energy_katana + var/accepted_type = /obj/item/melee/sword/energy_katana /obj/item/mod/module/weapon_recall/on_suit_activation() ADD_TRAIT(mod.wearer, TRAIT_NOGUNS, MOD_TRAIT) diff --git a/code/modules/ninja/energy_katana.dm b/code/modules/ninja/energy_katana.dm index c00d32d25809..14392e1c0874 100644 --- a/code/modules/ninja/energy_katana.dm +++ b/code/modules/ninja/energy_katana.dm @@ -1,37 +1,30 @@ -/obj/item/energy_katana +/obj/item/melee/sword/energy_katana name = "energy katana" desc = "A katana infused with strong energy." icon_state = "energy_katana" item_state = "energy_katana" - lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' - righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' force = 40 throwforce = 20 block_chance = 50 armour_penetration = 50 - w_class = WEIGHT_CLASS_NORMAL - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") - slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT - sharpness = IS_SHARP max_integrity = 200 resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF var/datum/effect_system/spark_spread/spark_system var/datum/action/innate/dash/ninja/jaunt var/dash_toggled = TRUE -/obj/item/energy_katana/Initialize() +/obj/item/melee/sword/energy_katana/Initialize() . = ..() jaunt = new(src) spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, src) spark_system.attach(src) -/obj/item/energy_katana/attack_self(mob/user) +/obj/item/melee/sword/energy_katana/attack_self(mob/user) dash_toggled = !dash_toggled to_chat(user, "You [dash_toggled ? "enable" : "disable"] the dash function on [src].") -/obj/item/energy_katana/afterattack(atom/target, mob/user, proximity_flag, click_parameters) +/obj/item/melee/sword/energy_katana/afterattack(atom/target, mob/user, proximity_flag, click_parameters) . = ..() if(dash_toggled) jaunt.Teleport(user, target) @@ -41,13 +34,13 @@ playsound(user, 'sound/weapons/blade1.ogg', 50, TRUE) target.emag_act(user) -/obj/item/energy_katana/pickup(mob/living/user) +/obj/item/melee/sword/energy_katana/pickup(mob/living/user) . = ..() jaunt.Grant(user, src) user.update_icons() playsound(src, 'sound/items/unsheath.ogg', 25, TRUE) -/obj/item/energy_katana/dropped(mob/user) +/obj/item/melee/sword/energy_katana/dropped(mob/user) . = ..() jaunt?.Remove(user) user.update_icons() @@ -55,7 +48,7 @@ //If we hit the Ninja who owns this Katana, they catch it. //Works for if the Ninja throws it or it throws itself or someone tries //To throw it at the ninja -/obj/item/energy_katana/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) +/obj/item/melee/sword/energy_katana/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) if(ishuman(hit_atom)) var/mob/living/carbon/human/H = hit_atom if(istype(H.wear_suit, /obj/item/clothing/suit/space/space_ninja)) @@ -66,7 +59,7 @@ ..() -/obj/item/energy_katana/proc/returnToOwner(mob/living/carbon/human/user, doSpark = 1, caught = 0) +/obj/item/melee/sword/energy_katana/proc/returnToOwner(mob/living/carbon/human/user, doSpark = 1, caught = 0) if(!istype(user)) return forceMove(get_turf(user)) @@ -94,7 +87,7 @@ to_chat(user, "[msg]") -/obj/item/energy_katana/Destroy() +/obj/item/melee/sword/energy_katana/Destroy() QDEL_NULL(spark_system) QDEL_NULL(jaunt) return ..() diff --git a/code/modules/ninja/outfit.dm b/code/modules/ninja/outfit.dm index 2b5976db4d59..1c3c24927bfd 100644 --- a/code/modules/ninja/outfit.dm +++ b/code/modules/ninja/outfit.dm @@ -12,7 +12,7 @@ l_pocket = /obj/item/grenade/c4/x4 r_pocket = /obj/item/tank/internals/emergency_oxygen internals_slot = ITEM_SLOT_RPOCKET - belt = /obj/item/energy_katana + belt = /obj/item/melee/sword/energy_katana implants = list(/obj/item/implant/explosive) diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm index cb355014d4e7..4f368b630496 100644 --- a/code/modules/ninja/suit/suit.dm +++ b/code/modules/ninja/suit/suit.dm @@ -26,7 +26,7 @@ Contents: var/datum/effect_system/spark_spread/spark_system var/datum/techweb/stored_research var/obj/item/disk/tech_disk/t_disk//To copy design onto disk. - var/obj/item/energy_katana/energyKatana //For teleporting the katana back to the ninja (It's an ability) + var/obj/item/melee/sword/energy_katana/energyKatana //For teleporting the katana back to the ninja (It's an ability) //Other articles of ninja gear worn together, used to easily reference them after initializing. var/obj/item/clothing/head/helmet/space/space_ninja/n_hood diff --git a/code/modules/photography/_pictures.dm b/code/modules/photography/_pictures.dm index 511d75ac6c3f..6570cd00bb04 100644 --- a/code/modules/photography/_pictures.dm +++ b/code/modules/photography/_pictures.dm @@ -45,7 +45,7 @@ if(!picture_image) return var/icon/small_img = icon(picture_image) - var/icon/ic = icon('icons/obj/items_and_weapons.dmi', iconstate ? iconstate :"photo") + var/icon/ic = icon('icons/obj/items.dmi', iconstate ? iconstate :"photo") small_img.Scale(8, 8) ic.Blend(small_img,ICON_OVERLAY, 13, 13) picture_icon = ic diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index e91a03e421f3..c2096983fb03 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -4,7 +4,6 @@ /obj/item/camera name = "camera" - icon = 'icons/obj/items_and_weapons.dmi' desc = "A polaroid camera." icon_state = "camera" item_state = "camera" diff --git a/code/modules/photography/camera/film.dm b/code/modules/photography/camera/film.dm index b44b93361083..a6001011eb29 100644 --- a/code/modules/photography/camera/film.dm +++ b/code/modules/photography/camera/film.dm @@ -3,7 +3,6 @@ */ /obj/item/camera_film name = "film cartridge" - icon = 'icons/obj/items_and_weapons.dmi' desc = "A camera film cartridge. Insert it into a camera to reload it." icon_state = "film" item_state = "electropack" diff --git a/code/modules/photography/photos/album.dm b/code/modules/photography/photos/album.dm index 2ba5f5499307..19c2c1297f6b 100644 --- a/code/modules/photography/photos/album.dm +++ b/code/modules/photography/photos/album.dm @@ -4,7 +4,7 @@ /obj/item/storage/photo_album name = "photo album" desc = "A big book used to store photos and mementos." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "album" item_state = "album" lefthand_file = 'icons/mob/inhands/misc/books_lefthand.dmi' diff --git a/code/modules/photography/photos/photo.dm b/code/modules/photography/photos/photo.dm index 7274d477babb..ea3b4ff6a99d 100644 --- a/code/modules/photography/photos/photo.dm +++ b/code/modules/photography/photos/photo.dm @@ -3,7 +3,7 @@ */ /obj/item/photo name = "photo" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "photo" item_state = "paper" w_class = WEIGHT_CLASS_TINY diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index b6fc6367e85c..6ed294fa8936 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -804,7 +804,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) /obj/machinery/power/supermatter_crystal/attackby(obj/item/W, mob/living/user, params) if(!istype(W) || (W.item_flags & ABSTRACT) || !istype(user)) return - if(istype(W, /obj/item/melee/roastingstick)) + if(istype(W, /obj/item/roastingstick)) return ..() if(istype(W, /obj/item/clothing/mask/cigarette)) var/obj/item/clothing/mask/cigarette/cig = W diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index b4f46e6e4c19..1fe7a307353d 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -180,7 +180,7 @@ /obj/item/reagent_containers/spray/pepper name = "pepperspray" desc = "Manufactured by UhangInc, used to blind and down an opponent quickly." - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' icon_state = "pepperspray" item_state = "pepperspray" lefthand_file = 'icons/mob/inhands/equipment/security_lefthand.dmi' diff --git a/code/modules/research/designs/autolathe_designs.dm b/code/modules/research/designs/autolathe_designs.dm index a2b295f2e6fa..d1fe33024919 100644 --- a/code/modules/research/designs/autolathe_designs.dm +++ b/code/modules/research/designs/autolathe_designs.dm @@ -356,7 +356,7 @@ id = "kitchen_knife" build_type = AUTOLATHE materials = list(/datum/material/iron = 12000) - build_path = /obj/item/kitchen/knife + build_path = /obj/item/melee/knife/kitchen category = list("initial","Dinnerware") /datum/design/plastic_knife @@ -364,7 +364,7 @@ id = "plastic_knife" build_type = AUTOLATHE | PROTOLATHE materials = list(/datum/material/plastic = 100) - build_path = /obj/item/kitchen/knife/plastic + build_path = /obj/item/melee/knife/plastic category = list("initial", "Tool Designs","Dinnerware") /datum/design/fork @@ -865,7 +865,7 @@ id = "cleaver" build_type = AUTOLATHE materials = list(/datum/material/iron = 18000) - build_path = /obj/item/kitchen/knife/butcher + build_path = /obj/item/melee/knife/butcher category = list("initial", "Dinnerware") /datum/design/spraycan diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 816cd4f9fdbf..98a088756d81 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -229,7 +229,7 @@ id = "roastingstick" build_type = PROTOLATHE materials = list(/datum/material/iron=1000, /datum/material/glass = 500, /datum/material/bluespace = 250) - build_path = /obj/item/melee/roastingstick + build_path = /obj/item/roastingstick category = list("Equipment") departmental_flags = DEPARTMENTAL_FLAG_SERVICE diff --git a/code/modules/research/xenobiology/crossbreeding/_weapons.dm b/code/modules/research/xenobiology/crossbreeding/_weapons.dm index ac663059d0c0..3f80f17e8a32 100644 --- a/code/modules/research/xenobiology/crossbreeding/_weapons.dm +++ b/code/modules/research/xenobiology/crossbreeding/_weapons.dm @@ -16,35 +16,6 @@ Slimecrossing Weapons if(prob(20)) user.emote("scream") -//Rainbow knife - Burning Rainbow -/obj/item/kitchen/knife/rainbowknife - name = "rainbow knife" - desc = "A strange, transparent knife which constantly shifts color. It hums slightly when moved." - icon = 'icons/obj/slimecrossing.dmi' - icon_state = "rainbowknife" - item_state = "rainbowknife" - force = 18 - throwforce = 15 - damtype = BRUTE - -/obj/item/kitchen/knife/rainbowknife/afterattack(atom/O, mob/user, proximity) - if(proximity && istype(O, /mob/living)) - damtype = pick(BRUTE, BURN, TOX, OXY) - switch(damtype) - if(BRUTE) - hitsound = 'sound/weapons/bladeslice.ogg' - attack_verb = list("slashed","sliced","cut") - if(BURN) - hitsound = 'sound/weapons/sear.ogg' - attack_verb = list("burned","singed","heated") - if(TOX) - hitsound = 'sound/weapons/pierce.ogg' - attack_verb = list("poisoned","dosed","toxified") - if(OXY) - hitsound = 'sound/effects/space_wind.ogg' - attack_verb = list("suffocated","winded","vacuumed") - return ..() - //Adamantine shield - Chilling Adamantine /obj/item/shield/adamantineshield name = "adamantine shield" diff --git a/code/modules/research/xenobiology/crossbreeding/burning.dm b/code/modules/research/xenobiology/crossbreeding/burning.dm index e9fd98232e2c..26c151e42316 100644 --- a/code/modules/research/xenobiology/crossbreeding/burning.dm +++ b/code/modules/research/xenobiology/crossbreeding/burning.dm @@ -305,11 +305,3 @@ Burning extracts: new /obj/item/shield/adamantineshield(get_turf(user)) ..() -/obj/item/slimecross/burning/rainbow - colour = "rainbow" - effect_desc = "Creates the Rainbow Knife, a kitchen knife that deals random types of damage." - -/obj/item/slimecross/burning/rainbow/do_effect(mob/user) - user.visible_message("[src] flattens into a glowing rainbow blade.") - new /obj/item/kitchen/knife/rainbowknife(get_turf(user)) - ..() diff --git a/code/modules/ruins/objects_and_mobs/sin_ruins.dm b/code/modules/ruins/objects_and_mobs/sin_ruins.dm index 7b5bd27a8ada..0747fb746ddd 100644 --- a/code/modules/ruins/objects_and_mobs/sin_ruins.dm +++ b/code/modules/ruins/objects_and_mobs/sin_ruins.dm @@ -102,34 +102,3 @@ var/turf/open/chasm/C = T C.set_target(dest) C.drop(user) - -//can't be bothered to do sloth right now, will make later - -/obj/item/kitchen/knife/envy //Envy's knife: Found in the Envy ruin. Attackers take on the appearance of whoever they strike. - name = "envy's knife" - desc = "Their success will be yours." - icon = 'icons/obj/wizard.dmi' - icon_state = "render" - item_state = "knife" - lefthand_file = 'icons/mob/inhands/equipment/kitchen_lefthand.dmi' - righthand_file = 'icons/mob/inhands/equipment/kitchen_righthand.dmi' - force = 18 - throwforce = 10 - w_class = WEIGHT_CLASS_NORMAL - hitsound = 'sound/weapons/bladeslice.ogg' - -/obj/item/kitchen/knife/envy/afterattack(atom/movable/AM, mob/living/carbon/human/user, proximity) - . = ..() - if(!proximity) - return - if(!istype(user)) - return - if(ishuman(AM)) - var/mob/living/carbon/human/H = AM - if(user.real_name != H.dna.real_name) - user.real_name = H.dna.real_name - H.dna.transfer_identity(user, transfer_SE=1) - user.updateappearance(mutcolor_update=1) - user.domutcheck() - user.visible_message("[user]'s appearance shifts into [H]'s!", \ - "[H.p_they(TRUE)] think[H.p_s()] [H.p_theyre()] sooo much better than you. Not anymore, [H.p_they()] won't.") diff --git a/code/modules/ruins/rockplanet_ruin_code.dm b/code/modules/ruins/rockplanet_ruin_code.dm index d09bbe9d5dd7..5eea45c24c6c 100644 --- a/code/modules/ruins/rockplanet_ruin_code.dm +++ b/code/modules/ruins/rockplanet_ruin_code.dm @@ -100,7 +100,7 @@ /obj/item/strange_crystal/attackby(obj/item/item, mob/user, params) . = ..() - if(!istype(item, /obj/item/kitchen/knife)) + if(!istype(item, /obj/item/melee/knife)) return playsound(src, 'sound/effects/glassbr1.ogg', 50, TRUE, -1) to_chat(user, "You start breaking [src] up into shards...") diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 0c535f58ae23..756d889f5bc5 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -91,7 +91,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/item/storage/overmap_ship, 28) new /obj/item/tank/internals/oxygen/red(src) new /obj/item/tank/internals/oxygen/red(src) new /obj/item/pickaxe/emergency(src) - new /obj/item/kitchen/knife/hunting(src) + new /obj/item/melee/knife/hunting(src) new /obj/item/survivalcapsule(src) /obj/item/storage/overmap_ship/fueled/PopulateContents() diff --git a/code/modules/spells/spell_types/conjure.dm b/code/modules/spells/spell_types/conjure.dm index c34d5cf7c985..d2e3cc957ad9 100644 --- a/code/modules/spells/spell_types/conjure.dm +++ b/code/modules/spells/spell_types/conjure.dm @@ -63,7 +63,7 @@ range = -1 clothes_req = FALSE var/obj/item/item - var/item_type = /obj/item/banhammer + var/item_type = /obj/item school = "conjuration" charge_max = 150 cooldown_min = 10 diff --git a/code/modules/spells/spell_types/devil.dm b/code/modules/spells/spell_types/devil.dm index 421b7f40f11c..f1654551df3a 100644 --- a/code/modules/spells/spell_types/devil.dm +++ b/code/modules/spells/spell_types/devil.dm @@ -1,25 +1,3 @@ -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork - name = "Summon Pitchfork" - desc = "A devil's weapon of choice. Use this to summon/unsummon your pitchfork." - invocation_type = "none" - include_user = TRUE - range = -1 - clothes_req = FALSE - item_type = /obj/item/pitchfork/demonic - - school = "conjuration" - charge_max = 150 - cooldown_min = 10 - action_icon = 'icons/mob/actions/actions_minor_antag.dmi' - action_icon_state = "pitchfork" - action_background_icon_state = "bg_demon" - -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater - item_type = /obj/item/pitchfork/demonic/greater - -/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended - item_type = /obj/item/pitchfork/demonic/ascended - /obj/effect/proc_holder/spell/targeted/conjure_item/violin item_type = /obj/item/instrument/violin/golden desc = "A devil's instrument of choice. Use this to summon/unsummon your golden violin." diff --git a/code/modules/spells/spell_types/godhand.dm b/code/modules/spells/spell_types/godhand.dm index 5cf7e7e1e509..94f0c8a4fcad 100644 --- a/code/modules/spells/spell_types/godhand.dm +++ b/code/modules/spells/spell_types/godhand.dm @@ -4,7 +4,7 @@ var/catchphrase = "High Five!" var/on_use_sound = null var/obj/effect/proc_holder/spell/targeted/touch/attached_spell - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' lefthand_file = 'icons/mob/inhands/misc/touchspell_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/touchspell_righthand.dmi' icon_state = "latexballon" diff --git a/code/modules/surgery/advanced/lobotomy.dm b/code/modules/surgery/advanced/lobotomy.dm index d1c882f96620..0807e1e5c8cc 100644 --- a/code/modules/surgery/advanced/lobotomy.dm +++ b/code/modules/surgery/advanced/lobotomy.dm @@ -26,7 +26,7 @@ implements = list( TOOL_SCALPEL = 85, // there is no way this should be reasonable to do basically at all without a real surgery. ghetto lobotomy, for real? /obj/item/melee/transforming/energy/sword = 25, - /obj/item/kitchen/knife = 15, + /obj/item/melee/knife = 15, /obj/item/shard = 10, /obj/item = 5) time = 10 SECONDS diff --git a/code/modules/surgery/amputation.dm b/code/modules/surgery/amputation.dm index 91cd1dce07e4..e737acbb78d7 100644 --- a/code/modules/surgery/amputation.dm +++ b/code/modules/surgery/amputation.dm @@ -14,9 +14,9 @@ TOOL_SCALPEL = 100, TOOL_SAW = 100, /obj/item/melee/arm_blade = 80, - /obj/item/fireaxe = 50, + /obj/item/melee/axe/fire = 50, /obj/item/hatchet = 40, - /obj/item/kitchen/knife/butcher = 25) + /obj/item/melee/knife/butcher = 25) time = 6.4 SECONDS preop_sound = 'sound/surgery/scalpel1.ogg' success_sound = 'sound/surgery/organ2.ogg' diff --git a/code/modules/surgery/coronary_bypass.dm b/code/modules/surgery/coronary_bypass.dm index a4628d19efff..ceb376f3587c 100644 --- a/code/modules/surgery/coronary_bypass.dm +++ b/code/modules/surgery/coronary_bypass.dm @@ -22,7 +22,7 @@ name = "incise heart" implements = list( TOOL_SCALPEL = 90, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, /obj/item/shard = 33) time = 1.6 SECONDS preop_sound = 'sound/surgery/scalpel1.ogg' diff --git a/code/modules/surgery/experimental_dissection.dm b/code/modules/surgery/experimental_dissection.dm index 70dbac246e4e..eccf729d263f 100644 --- a/code/modules/surgery/experimental_dissection.dm +++ b/code/modules/surgery/experimental_dissection.dm @@ -34,7 +34,7 @@ /obj/item/scalpel/augment = 75, /obj/item/scalpel/advanced = 60, TOOL_SCALPEL = 45, - /obj/item/kitchen/knife = 30, + /obj/item/melee/knife = 30, /obj/item/shard = 10)// special tools not only cut down time but also improve probability time = 125 silicons_obey_prob = TRUE diff --git a/code/modules/surgery/gastrectomy.dm b/code/modules/surgery/gastrectomy.dm index f4bd48c4729d..6d00f5ae7588 100644 --- a/code/modules/surgery/gastrectomy.dm +++ b/code/modules/surgery/gastrectomy.dm @@ -25,7 +25,7 @@ implements = list( TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 33, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, /obj/item/shard = 10) time = 52 experience_given = (MEDICAL_SKILL_ORGAN_FIX*0.8) //for consistency across organ surgeries diff --git a/code/modules/surgery/hepatectomy.dm b/code/modules/surgery/hepatectomy.dm index e612b6fa18c5..0571cf9b2397 100644 --- a/code/modules/surgery/hepatectomy.dm +++ b/code/modules/surgery/hepatectomy.dm @@ -24,7 +24,7 @@ implements = list( TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 33, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, /obj/item/shard = 25) time = 52 experience_given = (MEDICAL_SKILL_ORGAN_FIX*0.8) //repeatable so not as much xp diff --git a/code/modules/surgery/lobectomy.dm b/code/modules/surgery/lobectomy.dm index 09ef68f03e18..79d3d79bcee5 100644 --- a/code/modules/surgery/lobectomy.dm +++ b/code/modules/surgery/lobectomy.dm @@ -23,7 +23,7 @@ implements = list( TOOL_SCALPEL = 95, /obj/item/melee/transforming/energy/sword = 33, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, /obj/item/shard = 25) time = 4.2 SECONDS preop_sound = 'sound/surgery/scalpel1.ogg' diff --git a/code/modules/surgery/mechanic_steps.dm b/code/modules/surgery/mechanic_steps.dm index 3730f7cf1302..694081f7af78 100644 --- a/code/modules/surgery/mechanic_steps.dm +++ b/code/modules/surgery/mechanic_steps.dm @@ -4,7 +4,7 @@ implements = list( TOOL_SCREWDRIVER = 100, TOOL_SCALPEL = 75, // med borgs could try to unscrew shell with scalpel - /obj/item/kitchen/knife = 50, + /obj/item/melee/knife/kitchen = 50, /obj/item = 10) time = 2.4 SECONDS preop_sound = 'sound/items/screwdriver.ogg' @@ -28,7 +28,7 @@ implements = list( TOOL_SCREWDRIVER = 100, TOOL_SCALPEL = 75, - /obj/item/kitchen/knife = 50, + /obj/item/melee/knife/kitchen = 50, /obj/item = 10) time = 2.4 SECONDS preop_sound = 'sound/items/screwdriver.ogg' diff --git a/code/modules/surgery/organic_steps.dm b/code/modules/surgery/organic_steps.dm index 42018e6c1d87..8959a7f99715 100644 --- a/code/modules/surgery/organic_steps.dm +++ b/code/modules/surgery/organic_steps.dm @@ -5,7 +5,7 @@ implements = list( TOOL_SCALPEL = 100, /obj/item/melee/transforming/energy/sword = 40, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, /obj/item/shard = 25, /obj/item = 15) //any sharp item time = 1.6 SECONDS @@ -151,18 +151,18 @@ name = "saw bone" implements = list( TOOL_SAW = 100, - /obj/item/fireaxe = 50, + /obj/item/melee/axe/fire = 50, /obj/item/melee/arm_blade = 40, /obj/item/hatchet = 40, - /obj/item/kitchen/knife/butcher = 33, + /obj/item/melee/knife/butcher = 33, /obj/item = 10) //10% success (sort of) with any sharp item with a force>=10 time = 5.4 SECONDS preop_sound = list( /obj/item/circular_saw = 'sound/surgery/saw.ogg', /obj/item/melee/arm_blade = 'sound/surgery/scalpel1.ogg', - /obj/item/fireaxe = 'sound/surgery/scalpel1.ogg', + /obj/item/melee/axe/fire = 'sound/surgery/scalpel1.ogg', /obj/item/hatchet = 'sound/surgery/scalpel1.ogg', - /obj/item/kitchen/knife/butcher = 'sound/surgery/scalpel1.ogg', + /obj/item/melee/knife/butcher = 'sound/surgery/scalpel1.ogg', /obj/item = 'sound/surgery/scalpel1.ogg', ) success_sound = 'sound/surgery/bone3.ogg' diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 5d6fac852d51..665086d1981d 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -232,11 +232,11 @@ /obj/item/organ/cyberimp/arm/toolset/emag_act(mob/user) for(var/datum/weakref/created_item in items_list) var/obj/potential_knife = created_item.resolve() - if(istype(/obj/item/kitchen/knife/combat/cyborg, potential_knife)) + if(istype(/obj/item/melee/knife/combat/cyborg, potential_knife)) return FALSE to_chat(user, "You unlock [src]'s integrated knife!") - items_list += WEAKREF(new /obj/item/kitchen/knife/combat/cyborg(src)) + items_list += WEAKREF(new /obj/item/melee/knife/combat/cyborg(src)) return TRUE /obj/item/organ/cyberimp/arm/esword diff --git a/code/modules/surgery/plastic_surgery.dm b/code/modules/surgery/plastic_surgery.dm index 9c87a5b5a93f..ed54575bb1bf 100644 --- a/code/modules/surgery/plastic_surgery.dm +++ b/code/modules/surgery/plastic_surgery.dm @@ -8,7 +8,7 @@ name = "reshape face" implements = list( TOOL_SCALPEL = 100, - /obj/item/kitchen/knife = 40, + /obj/item/melee/knife = 40, TOOL_WIRECUTTER = 33) time = 64 experience_given = MEDICAL_SKILL_MEDIUM diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index 317297c4fe8d..5da5f497bda4 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -171,7 +171,7 @@ //spases 4 legibilititie icon_state = "swa" - icon = 'icons/obj/items_and_weapons.dmi' + icon = 'icons/obj/items.dmi' lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index d26226e3ea83..ef4630109543 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -1892,7 +1892,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/role_restricted/greykingsword name = "Blade of The Grey Tide" desc = "A weapon of legend, forged by the greatest crackheads of our generation." - item = /obj/item/melee/greykingsword + item = /obj/item/melee/sword/greyking cost = 2 restricted_roles = list("Assistant", "Chemist") diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index 8d6acea28452..ebef11cd2630 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -57,7 +57,7 @@ ///Stores the default icon state var/board_icon = "skateboard" ///The handheld item counterpart for the board - var/board_item_type = /obj/item/melee/skateboard + var/board_item_type = /obj/item/skateboard ///Stamina drain multiplier var/instability = 10 @@ -165,13 +165,13 @@ desc = "A RaDSTORMz brand professional skateboard. Looks a lot more stable than the average board." icon_state = "skateboard2" board_icon = "skateboard2" - board_item_type = /obj/item/melee/skateboard/pro + board_item_type = /obj/item/skateboard/pro instability = 6 /obj/vehicle/ridden/scooter/skateboard/hoverboard/ name = "hoverboard" desc = "A blast from the past, so retro!" - board_item_type = /obj/item/melee/skateboard/hoverboard + board_item_type = /obj/item/skateboard/hoverboard instability = 3 icon_state = "hoverboard_red" board_icon = "hoverboard_red" @@ -188,7 +188,7 @@ /obj/vehicle/ridden/scooter/skateboard/hoverboard/admin name = "\improper Board Of Directors" desc = "The engineering complexity of a spaceship concentrated inside of a board. Just as expensive, too." - board_item_type = /obj/item/melee/skateboard/hoverboard/admin + board_item_type = /obj/item/skateboard/hoverboard/admin instability = 0 icon_state = "hoverboard_nt" board_icon = "hoverboard_nt" diff --git a/code/modules/vending/drinnerware.dm b/code/modules/vending/drinnerware.dm index 3e51271093ad..18b8fd522aab 100644 --- a/code/modules/vending/drinnerware.dm +++ b/code/modules/vending/drinnerware.dm @@ -15,10 +15,10 @@ /obj/item/reagent_containers/food/condiment/peppermill = 5, /obj/item/clothing/suit/apron/chef = 2, /obj/item/kitchen/rollingpin = 2, - /obj/item/kitchen/knife = 2, - /obj/item/kitchen/knife/pizza_cutter = 2, + /obj/item/melee/knife/kitchen = 2, + /obj/item/melee/knife/pizza_cutter = 2, /obj/item/book/granter/crafting_recipe/cooking_sweets_101 = 2, - /obj/item/kitchen/knife/butcher = 1) + /obj/item/melee/knife/butcher = 1) refill_canister = /obj/item/vending_refill/dinnerware default_price = 50 extra_price = 250 diff --git a/code/modules/vending/games.dm b/code/modules/vending/games.dm index c803fa347e9f..e54479cd55ca 100644 --- a/code/modules/vending/games.dm +++ b/code/modules/vending/games.dm @@ -15,8 +15,8 @@ /obj/item/camera = 3, /obj/item/dyespray = 3) premium = list( - /obj/item/melee/skateboard/pro = 3, - /obj/item/melee/skateboard/hoverboard = 1) + /obj/item/skateboard/pro = 3, + /obj/item/skateboard/hoverboard = 1) refill_canister = /obj/item/vending_refill/games default_price = 50 extra_price = 250 diff --git a/code/modules/vending/sustenance.dm b/code/modules/vending/sustenance.dm index 0677a77edb58..02a95555468f 100644 --- a/code/modules/vending/sustenance.dm +++ b/code/modules/vending/sustenance.dm @@ -11,7 +11,7 @@ /obj/item/reagent_containers/food/drinks/ice/prison = 12, /obj/item/reagent_containers/food/snacks/candy_corn/prison = 6) contraband = list( - /obj/item/kitchen/knife = 6, + /obj/item/melee/knife/kitchen = 6, /obj/item/reagent_containers/food/drinks/coffee = 12, /obj/item/tank/internals/emergency_oxygen = 6, /obj/item/clothing/mask/breath = 6) diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index da3fdb134010..4686c12da1ad 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -375,8 +375,7 @@ icon_state = "chapdrobe" product_ads = "Are you being bothered by cultists or pesky revenants? Then come and dress like the holy man!;Clothes for men of the cloth!" vend_reply = "Thank you for using the ChapDrobe!" - products = list(/obj/item/storage/box/holy = 1, - /obj/item/storage/backpack/cultpack = 1, + products = list(/obj/item/storage/backpack/cultpack = 1, /obj/item/clothing/head/beret/service = 1, //WS edit - berets /obj/item/clothing/accessory/pocketprotector/cosmetology = 1, /obj/item/clothing/under/rank/civilian/chaplain = 1, diff --git a/icons/mob/inhands/weapons/swords_lefthand.dmi b/icons/mob/inhands/weapons/swords_lefthand.dmi index 41093fde051e78163950f7436c0c7d621a0e1ee5..49732e254e41fcc1d25883f00e51eb2188565715 100644 GIT binary patch literal 30216 zcmb?@2UJtr)-D#5B7!1t3xWtrla5p+pmd~ng3^vklPgdx!*liSE8d~rJX`%WCr=4>I_iwP`dXAaKY}aW8nJG(gosd{o2*q(Sd@(GbL4D%`ruoL8iG(uHB8z zUOc%v!L;b1?)h#rxxg#m3?bT+K|5$$D#{9hLj``lYX}JrJmS-v$zS;0$b`{fD@!Uz zAzGS^F^=unO%^5gZZ}H~4s|CTP62)bG2^b)-5QA^Mp5Lu?35>BQ9lc!p3c99LW4UD zK9H1>X77tGpB