From f92a057f85866e6a96c9c2f1a69f358e014e7d2e Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 13:40:36 +0100 Subject: [PATCH 01/12] try to add an armor painter because i am cool like that. --- .../vendor_types/squad_prep/squad_prep.dm | 1 + code/modules/clothing/suits/marine_armor.dm | 76 +++++++++++++++++++ 2 files changed, 77 insertions(+) diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm index 2736de3a981d..185a778c24bf 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm @@ -191,6 +191,7 @@ list("Falling Falcons Shoulder Patch", round(scale * 15), /obj/item/clothing/accessory/patch/falcon, VENDOR_ITEM_REGULAR), list("USCM Shoulder Patch", round(scale * 15), /obj/item/clothing/accessory/patch, VENDOR_ITEM_REGULAR), list("Bedroll", round(scale * 20), /obj/item/roller/bedroll, VENDOR_ITEM_REGULAR), + list("Armor Painter", round(scale * 20), /obj/item/device/armor_painter, VENDOR_ITEM_REGULAR), list("OPTICS", -1, null, null, null), list("Advanced Medical Optic (CORPSMAN ONLY)", round(scale * 4), /obj/item/device/helmet_visor/medical/advanced, VENDOR_ITEM_REGULAR), diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index 1be37df150a8..36c38c89bdff 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1892,3 +1892,79 @@ armor_bio = CLOTHING_ARMOR_GIGAHIGHPLUS armor_rad = CLOTHING_ARMOR_GIGAHIGHPLUS armor_internaldamage = CLOTHING_ARMOR_HIGHPLUS + +//proc that allow to repaint/change sprite for + +GLOBAL_LIST_INIT(armor_paints, list("padded" = L1, "padless" = L2, "padless_lines" = L3, "carrier" = L4, "skull" = L5, "smooth" = L6)) + +/obj/item/device/armor_painter + name = "armor painter" + icon = 'icons/obj/items/paper.dmi' + icon_state = "labeler1" + item_state = "flight" + var/list/modes + var/mode + +/obj/item/device/armor_painter/New() + ..() + modes = new() + for(var/C in GLOB.armor_paints) + modes += "[C]" + mode = pick(modes) + +/obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) + if(!proximity) + to_chat(user, "target isn't at proximity.") + return + + if(!in_range(user, A)) + to_chat(user, "target isn't in range.") + return + + if(istype(A,/obj/item/clothing/suit/storage/marine/light)) + to_chat(user, "it's an light armor.") + A.icon_state = (GLOB.armor_paints[mode]) + return +/* + if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) + to_chat(user, "it's an meduim armor.") + P.change_color(GLOB.pipe_colors[mode]) + return + + if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) + to_chat(user, "it's an heavy armor.") + return +*/ + +/obj/item/device/armor_painter/attack_self(mob/user) + ..() + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes) + +/obj/item/device/armor_painter/get_examine_text(mob/user) + . = ..() + . += "It is in [mode] mode." + + +/obj/item/clothing/suit/storage/marine/light/padded + icon_state = "L1" + armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/light/padless + icon_state = "L2" + armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/light/padless_lines + icon_state = "L3" + armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/light/carrier + icon_state = "L4" + armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/light/skull + icon_state = "L5" + armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/light/smooth + icon_state = "L6" + armor_variation = 0 From 81429cf2775fea667b2726e9fd250ba7207dbf07 Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 13:49:10 +0100 Subject: [PATCH 02/12] fix --- code/modules/clothing/suits/marine_armor.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index 36c38c89bdff..bcd6060c91d7 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1895,7 +1895,7 @@ //proc that allow to repaint/change sprite for -GLOBAL_LIST_INIT(armor_paints, list("padded" = L1, "padless" = L2, "padless_lines" = L3, "carrier" = L4, "skull" = L5, "smooth" = L6)) +GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) /obj/item/device/armor_painter name = "armor painter" From b49c140368149e4520450f785d606c28d673a45f Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 14:29:46 +0100 Subject: [PATCH 03/12] extend to medium and heavy let's see if i am getting smarter. --- code/modules/clothing/suits/marine_armor.dm | 57 ++++++++++++++++++--- 1 file changed, 49 insertions(+), 8 deletions(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index bcd6060c91d7..317e9f2016e0 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1895,8 +1895,9 @@ //proc that allow to repaint/change sprite for -GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) - +GLOBAL_LIST_INIT(armor_paints_light, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) +GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "padless_lines" = "3", "carrier" = "4", "skull" = "5", "smooth" = "6")) +GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) /obj/item/device/armor_painter name = "armor painter" icon = 'icons/obj/items/paper.dmi' @@ -1908,8 +1909,18 @@ GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_ /obj/item/device/armor_painter/New() ..() modes = new() - for(var/C in GLOB.armor_paints) - modes += "[C]" + if(istype(A,/obj/item/clothing/suit/storage/marine/light)) + to_chat(user, "it's an light armor.") + for(var/C in GLOB.armor_paints_light) + modes += "[C]" + if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) + to_chat(user, "it's an meduim armor.") + for(var/C in GLOB.armor_paints_medium) + modes += "[C]" + if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) + to_chat(user, "it's an heavy armor.") + for(var/C in GLOB.armor_paints_heavy) + modes += "[C]" mode = pick(modes) /obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) @@ -1923,18 +1934,18 @@ GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_ if(istype(A,/obj/item/clothing/suit/storage/marine/light)) to_chat(user, "it's an light armor.") - A.icon_state = (GLOB.armor_paints[mode]) + A.icon_state = (GLOB.armor_paints_light[mode]) return -/* + if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) to_chat(user, "it's an meduim armor.") - P.change_color(GLOB.pipe_colors[mode]) + A.icon_state = (GLOB.armor_paints_medium[mode]) return if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) + A.icon_state = (GLOB.armor_paints_heavy[mode]) to_chat(user, "it's an heavy armor.") return -*/ /obj/item/device/armor_painter/attack_self(mob/user) ..() @@ -1968,3 +1979,33 @@ GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_ /obj/item/clothing/suit/storage/marine/light/smooth icon_state = "L6" armor_variation = 0 + +/obj/item/clothing/suit/storage/marine/medium/padded + name = "M3 pattern padded marine armor" + icon_state = "1" + specialty = "M3 pattern padded marine" + +/obj/item/clothing/suit/storage/marine/medium/padless + name = "M3 pattern padless marine armor" + icon_state = "2" + specialty = "M3 pattern padless marine" + +/obj/item/clothing/suit/storage/marine/medium/padless_lines + name = "M3 pattern ridged marine armor" + icon_state = "3" + specialty = "M3 pattern ridged marine" + +/obj/item/clothing/suit/storage/marine/medium/carrier + name = "M3 pattern carrier marine armor" + icon_state = "4" + specialty = "M3 pattern carrier marine" + +/obj/item/clothing/suit/storage/marine/medium/skull + name = "M3 pattern skull marine armor" + icon_state = "5" + specialty = "M3 pattern skull marine" + +/obj/item/clothing/suit/storage/marine/medium/smooth + name = "M3 pattern smooth marine armor" + icon_state = "6" + specialty = "M3 pattern smooth marine" From 5b5a1fb2a1b79a05ce7d2a5606ad81350c60b332 Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 14:46:00 +0100 Subject: [PATCH 04/12] roll back clean some stuff to... --- .../vendor_types/squad_prep/squad_prep.dm | 2 + code/modules/clothing/suits/marine_armor.dm | 68 +------------------ 2 files changed, 4 insertions(+), 66 deletions(-) diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm index 185a778c24bf..2abf9717431d 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm @@ -192,6 +192,8 @@ list("USCM Shoulder Patch", round(scale * 15), /obj/item/clothing/accessory/patch, VENDOR_ITEM_REGULAR), list("Bedroll", round(scale * 20), /obj/item/roller/bedroll, VENDOR_ITEM_REGULAR), list("Armor Painter", round(scale * 20), /obj/item/device/armor_painter, VENDOR_ITEM_REGULAR), + list("Armor Painter", round(scale * 20), /obj/item/device/floor_painter, VENDOR_ITEM_REGULAR), + list("Armor Painter", round(scale * 20), /obj/item/device/pipe_painter, VENDOR_ITEM_REGULAR), list("OPTICS", -1, null, null, null), list("Advanced Medical Optic (CORPSMAN ONLY)", round(scale * 4), /obj/item/device/helmet_visor/medical/advanced, VENDOR_ITEM_REGULAR), diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index 317e9f2016e0..c73884266c18 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1909,18 +1909,8 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa /obj/item/device/armor_painter/New() ..() modes = new() - if(istype(A,/obj/item/clothing/suit/storage/marine/light)) - to_chat(user, "it's an light armor.") - for(var/C in GLOB.armor_paints_light) - modes += "[C]" - if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) - to_chat(user, "it's an meduim armor.") - for(var/C in GLOB.armor_paints_medium) - modes += "[C]" - if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) - to_chat(user, "it's an heavy armor.") - for(var/C in GLOB.armor_paints_heavy) - modes += "[C]" + for(var/C in GLOB.armor_paints) + modes += "[C]" mode = pick(modes) /obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) @@ -1955,57 +1945,3 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa . = ..() . += "It is in [mode] mode." - -/obj/item/clothing/suit/storage/marine/light/padded - icon_state = "L1" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/light/padless - icon_state = "L2" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/light/padless_lines - icon_state = "L3" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/light/carrier - icon_state = "L4" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/light/skull - icon_state = "L5" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/light/smooth - icon_state = "L6" - armor_variation = 0 - -/obj/item/clothing/suit/storage/marine/medium/padded - name = "M3 pattern padded marine armor" - icon_state = "1" - specialty = "M3 pattern padded marine" - -/obj/item/clothing/suit/storage/marine/medium/padless - name = "M3 pattern padless marine armor" - icon_state = "2" - specialty = "M3 pattern padless marine" - -/obj/item/clothing/suit/storage/marine/medium/padless_lines - name = "M3 pattern ridged marine armor" - icon_state = "3" - specialty = "M3 pattern ridged marine" - -/obj/item/clothing/suit/storage/marine/medium/carrier - name = "M3 pattern carrier marine armor" - icon_state = "4" - specialty = "M3 pattern carrier marine" - -/obj/item/clothing/suit/storage/marine/medium/skull - name = "M3 pattern skull marine armor" - icon_state = "5" - specialty = "M3 pattern skull marine" - -/obj/item/clothing/suit/storage/marine/medium/smooth - name = "M3 pattern smooth marine armor" - icon_state = "6" - specialty = "M3 pattern smooth marine" From 7baba5da87ec173fbaccd41ce03f61c759e2c3a0 Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 14:49:02 +0100 Subject: [PATCH 05/12] fix --- code/modules/clothing/suits/marine_armor.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index c73884266c18..c0fab1bc35a8 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1895,7 +1895,7 @@ //proc that allow to repaint/change sprite for -GLOBAL_LIST_INIT(armor_paints_light, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) +GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "padless_lines" = "3", "carrier" = "4", "skull" = "5", "smooth" = "6")) GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) /obj/item/device/armor_painter From fdb5ed2f589c4ad2afb55a6ed473234e8e5d3e62 Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 14:50:58 +0100 Subject: [PATCH 06/12] fixiaefngiOGPIJ --- code/modules/clothing/suits/marine_armor.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index c0fab1bc35a8..d234e42626d9 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1924,7 +1924,7 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa if(istype(A,/obj/item/clothing/suit/storage/marine/light)) to_chat(user, "it's an light armor.") - A.icon_state = (GLOB.armor_paints_light[mode]) + A.icon_state = (GLOB.armor_paints[mode]) return if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) From 0e7bfa8b0f5a796929b8285823fe171c5feba0bd Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 15:13:56 +0100 Subject: [PATCH 07/12] trying something cross finger --- code/modules/clothing/suits/marine_armor.dm | 37 ++++++++++++++++----- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index d234e42626d9..e0c9529345ac 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1895,7 +1895,7 @@ //proc that allow to repaint/change sprite for -GLOBAL_LIST_INIT(armor_paints, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) +GLOBAL_LIST_INIT(armor_paints_light, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "padless_lines" = "3", "carrier" = "4", "skull" = "5", "smooth" = "6")) GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) /obj/item/device/armor_painter @@ -1903,15 +1903,29 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa icon = 'icons/obj/items/paper.dmi' icon_state = "labeler1" item_state = "flight" - var/list/modes + var/list/modes_light + var/list/modes_medium + var/list/modes_heavy var/mode /obj/item/device/armor_painter/New() ..() - modes = new() + + modes_light = new() for(var/C in GLOB.armor_paints) - modes += "[C]" - mode = pick(modes) + modes_light += "[C]" + mode = pick(modes_light) + + modes_medium = new() + for(var/C in GLOB.armor_paints_medium) + modes_medium += "[C]" + mode = pick(modes_medium) + + modes_heavy = new() + for(var/C in GLOB.armor_paints_heavy) + modes_heavy += "[C]" + mode = pick(modes_heavy) + /obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) if(!proximity) @@ -1924,11 +1938,11 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa if(istype(A,/obj/item/clothing/suit/storage/marine/light)) to_chat(user, "it's an light armor.") - A.icon_state = (GLOB.armor_paints[mode]) + A.icon_state = (GLOB.armor_paints_light[mode]) return if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) - to_chat(user, "it's an meduim armor.") + to_chat(user, "it's an medium armor.") A.icon_state = (GLOB.armor_paints_medium[mode]) return @@ -1939,7 +1953,14 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa /obj/item/device/armor_painter/attack_self(mob/user) ..() - mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes) + var/type = tgui_input_list(usr, "What type of armor?", "Armor painter", list("light", "medium", "heavy")) + switch(type) + if("light") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_light) + if("medium") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_medium) + if("heavy") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_heavy) /obj/item/device/armor_painter/get_examine_text(mob/user) . = ..() From ea4f8e747900f61a7ced414d77b9812ffcf0ca2e Mon Sep 17 00:00:00 2001 From: Julien Date: Thu, 15 Feb 2024 15:18:23 +0100 Subject: [PATCH 08/12] zgqfhghqerhg --- code/modules/clothing/suits/marine_armor.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index e0c9529345ac..be4eeeeff224 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1912,7 +1912,7 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa ..() modes_light = new() - for(var/C in GLOB.armor_paints) + for(var/C in GLOB.armor_paints_light) modes_light += "[C]" mode = pick(modes_light) From c7616eee1ef2192e7f24f19877ead7e2679d7509 Mon Sep 17 00:00:00 2001 From: Julien Date: Fri, 16 Feb 2024 11:17:18 +0100 Subject: [PATCH 09/12] clean up some stuff. --- .../vending/vendor_types/squad_prep/squad_prep.dm | 13 +++---------- code/modules/clothing/suits/marine_armor.dm | 2 +- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm index 2abf9717431d..d1a946392a62 100644 --- a/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm +++ b/code/game/machinery/vending/vendor_types/squad_prep/squad_prep.dm @@ -116,14 +116,9 @@ list("Shoulder Holster", 0.75, /obj/item/clothing/accessory/storage/holster, VENDOR_ITEM_REGULAR), list("ARMOR", -1, null, null), - list("M3 Pattern Carrier Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/carrier, VENDOR_ITEM_REGULAR), - list("M3 Pattern Padded Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/padded, VENDOR_ITEM_REGULAR), - list("M3 Pattern Padless Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/padless, VENDOR_ITEM_REGULAR), - list("M3 Pattern Ridged Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/padless_lines, VENDOR_ITEM_REGULAR), - list("M3 Pattern Skull Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/skull, VENDOR_ITEM_REGULAR), - list("M3 Pattern Smooth Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium/smooth, VENDOR_ITEM_REGULAR), - list("M3-EOD Pattern Heavy Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/heavy, VENDOR_ITEM_REGULAR), - list("M3-L Pattern Light Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/light, VENDOR_ITEM_REGULAR), + list("M3-L Pattern Marine Light Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/light, VENDOR_ITEM_REGULAR), + list("M3 Pattern Marine Armor", round(scale * 15), /obj/item/clothing/suit/storage/marine/medium, VENDOR_ITEM_REGULAR), + list("M3-EOD Pattern Marine Heavy Armor", round(scale * 10), /obj/item/clothing/suit/storage/marine/heavy, VENDOR_ITEM_REGULAR), list("BACKPACK", -1, null, null, null), list("Lightweight IMP Backpack", round(scale * 15), /obj/item/storage/backpack/marine, VENDOR_ITEM_REGULAR), @@ -192,8 +187,6 @@ list("USCM Shoulder Patch", round(scale * 15), /obj/item/clothing/accessory/patch, VENDOR_ITEM_REGULAR), list("Bedroll", round(scale * 20), /obj/item/roller/bedroll, VENDOR_ITEM_REGULAR), list("Armor Painter", round(scale * 20), /obj/item/device/armor_painter, VENDOR_ITEM_REGULAR), - list("Armor Painter", round(scale * 20), /obj/item/device/floor_painter, VENDOR_ITEM_REGULAR), - list("Armor Painter", round(scale * 20), /obj/item/device/pipe_painter, VENDOR_ITEM_REGULAR), list("OPTICS", -1, null, null, null), list("Advanced Medical Optic (CORPSMAN ONLY)", round(scale * 4), /obj/item/device/helmet_visor/medical/advanced, VENDOR_ITEM_REGULAR), diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index be4eeeeff224..28a90ecea804 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1901,7 +1901,7 @@ GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "pa /obj/item/device/armor_painter name = "armor painter" icon = 'icons/obj/items/paper.dmi' - icon_state = "labeler1" + icon_state = "camo" item_state = "flight" var/list/modes_light var/list/modes_medium From 464b2074371e1cef5319b83fc303a98eb6f59cdc Mon Sep 17 00:00:00 2001 From: Julien Date: Fri, 16 Feb 2024 11:22:05 +0100 Subject: [PATCH 10/12] creating a file for armor painter --- .../objects/items/devices/armor_painter.dm | 73 ++++++++++++++++++ code/modules/clothing/suits/marine_armor.dm | 74 ------------------- 2 files changed, 73 insertions(+), 74 deletions(-) create mode 100644 code/game/objects/items/devices/armor_painter.dm diff --git a/code/game/objects/items/devices/armor_painter.dm b/code/game/objects/items/devices/armor_painter.dm new file mode 100644 index 000000000000..3da88fd79343 --- /dev/null +++ b/code/game/objects/items/devices/armor_painter.dm @@ -0,0 +1,73 @@ +//proc that allow to repaint/change sprite for + +GLOBAL_LIST_INIT(armor_paints_light, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) +GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "padless_lines" = "3", "carrier" = "4", "skull" = "5", "smooth" = "6")) +GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) +/obj/item/device/armor_painter + name = "armor painter" + icon = 'icons/obj/items/paper.dmi' + icon_state = "camo" + item_state = "flight" + var/list/modes_light + var/list/modes_medium + var/list/modes_heavy + var/mode + +/obj/item/device/armor_painter/New() + ..() + + modes_light = new() + for(var/C in GLOB.armor_paints_light) + modes_light += "[C]" + mode = pick(modes_light) + + modes_medium = new() + for(var/C in GLOB.armor_paints_medium) + modes_medium += "[C]" + mode = pick(modes_medium) + + modes_heavy = new() + for(var/C in GLOB.armor_paints_heavy) + modes_heavy += "[C]" + mode = pick(modes_heavy) + + +/obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) + if(!proximity) + to_chat(user, "target isn't at proximity.") + return + + if(!in_range(user, A)) + to_chat(user, "target isn't in range.") + return + + if(istype(A,/obj/item/clothing/suit/storage/marine/light)) + to_chat(user, "it's an light armor.") + A.icon_state = (GLOB.armor_paints_light[mode]) + return + + if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) + to_chat(user, "it's an medium armor.") + A.icon_state = (GLOB.armor_paints_medium[mode]) + return + + if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) + A.icon_state = (GLOB.armor_paints_heavy[mode]) + to_chat(user, "it's an heavy armor.") + return + +/obj/item/device/armor_painter/attack_self(mob/user) + ..() + var/type = tgui_input_list(usr, "What type of armor?", "Armor painter", list("light", "medium", "heavy")) + switch(type) + if("light") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_light) + if("medium") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_medium) + if("heavy") + mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_heavy) + +/obj/item/device/armor_painter/get_examine_text(mob/user) + . = ..() + . += "It is in [mode] mode." + diff --git a/code/modules/clothing/suits/marine_armor.dm b/code/modules/clothing/suits/marine_armor.dm index 28a90ecea804..1be37df150a8 100644 --- a/code/modules/clothing/suits/marine_armor.dm +++ b/code/modules/clothing/suits/marine_armor.dm @@ -1892,77 +1892,3 @@ armor_bio = CLOTHING_ARMOR_GIGAHIGHPLUS armor_rad = CLOTHING_ARMOR_GIGAHIGHPLUS armor_internaldamage = CLOTHING_ARMOR_HIGHPLUS - -//proc that allow to repaint/change sprite for - -GLOBAL_LIST_INIT(armor_paints_light, list("padded" = "L1", "padless" = "L2", "padless_lines" = "L3", "carrier" = "L4", "skull" = "L5", "smooth" = "L6")) -GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "padless_lines" = "3", "carrier" = "4", "skull" = "5", "smooth" = "6")) -GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) -/obj/item/device/armor_painter - name = "armor painter" - icon = 'icons/obj/items/paper.dmi' - icon_state = "camo" - item_state = "flight" - var/list/modes_light - var/list/modes_medium - var/list/modes_heavy - var/mode - -/obj/item/device/armor_painter/New() - ..() - - modes_light = new() - for(var/C in GLOB.armor_paints_light) - modes_light += "[C]" - mode = pick(modes_light) - - modes_medium = new() - for(var/C in GLOB.armor_paints_medium) - modes_medium += "[C]" - mode = pick(modes_medium) - - modes_heavy = new() - for(var/C in GLOB.armor_paints_heavy) - modes_heavy += "[C]" - mode = pick(modes_heavy) - - -/obj/item/device/armor_painter/afterattack(atom/A, mob/user as mob, proximity) - if(!proximity) - to_chat(user, "target isn't at proximity.") - return - - if(!in_range(user, A)) - to_chat(user, "target isn't in range.") - return - - if(istype(A,/obj/item/clothing/suit/storage/marine/light)) - to_chat(user, "it's an light armor.") - A.icon_state = (GLOB.armor_paints_light[mode]) - return - - if(istype(A,/obj/item/clothing/suit/storage/marine/medium)) - to_chat(user, "it's an medium armor.") - A.icon_state = (GLOB.armor_paints_medium[mode]) - return - - if(istype(A,/obj/item/clothing/suit/storage/marine/heavy)) - A.icon_state = (GLOB.armor_paints_heavy[mode]) - to_chat(user, "it's an heavy armor.") - return - -/obj/item/device/armor_painter/attack_self(mob/user) - ..() - var/type = tgui_input_list(usr, "What type of armor?", "Armor painter", list("light", "medium", "heavy")) - switch(type) - if("light") - mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_light) - if("medium") - mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_medium) - if("heavy") - mode = tgui_input_list(usr, "Which armor tag do you want to use?", "Armor painter", modes_heavy) - -/obj/item/device/armor_painter/get_examine_text(mob/user) - . = ..() - . += "It is in [mode] mode." - From 09404b65048822c3e36d730ef78a983a11713028 Mon Sep 17 00:00:00 2001 From: Julien Date: Fri, 16 Feb 2024 13:06:43 +0100 Subject: [PATCH 11/12] fix dme --- colonialmarines.dme | 1 + 1 file changed, 1 insertion(+) diff --git a/colonialmarines.dme b/colonialmarines.dme index f3dc6f1f81d9..848a43bccc2e 100644 --- a/colonialmarines.dme +++ b/colonialmarines.dme @@ -1085,6 +1085,7 @@ #include "code\game\objects\items\circuitboards\mecha.dm" #include "code\game\objects\items\circuitboards\robot_modules.dm" #include "code\game\objects\items\devices\aicard.dm" +#include "code\game\objects\items\devices\armor_painter.dm" #include "code\game\objects\items\devices\autopsy_scanner.dm" #include "code\game\objects\items\devices\binoculars.dm" #include "code\game\objects\items\devices\cictablet.dm" From 78d5e0758df955fd5be46d6160b3bfe10e200a39 Mon Sep 17 00:00:00 2001 From: Julien Date: Sat, 17 Feb 2024 11:21:14 +0100 Subject: [PATCH 12/12] should fix the icon issue. --- code/game/objects/items/devices/armor_painter.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/armor_painter.dm b/code/game/objects/items/devices/armor_painter.dm index 3da88fd79343..206f4d6e35fe 100644 --- a/code/game/objects/items/devices/armor_painter.dm +++ b/code/game/objects/items/devices/armor_painter.dm @@ -5,7 +5,7 @@ GLOBAL_LIST_INIT(armor_paints_medium, list("padded" = "1", "padless" = "2", "pad GLOBAL_LIST_INIT(armor_paints_heavy, list("padded" = "H1", "padless" = "H2", "padless_lines" = "H3", "carrier" = "H4", "skull" = "H5", "smooth" = "H6")) /obj/item/device/armor_painter name = "armor painter" - icon = 'icons/obj/items/paper.dmi' + icon = 'icons/obj/items/items.dmi' icon_state = "camo" item_state = "flight" var/list/modes_light