diff --git a/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm b/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm index 89eb1d901b2..f877e7c8ae3 100644 --- a/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm +++ b/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm @@ -756,7 +756,7 @@ pixel_x = -6; pixel_y = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, diff --git a/_maps/RandomRuins/SpaceRuins/hellfactory.dmm b/_maps/RandomRuins/SpaceRuins/hellfactory.dmm index 27a65ca7914..7ddd26f8419 100644 --- a/_maps/RandomRuins/SpaceRuins/hellfactory.dmm +++ b/_maps/RandomRuins/SpaceRuins/hellfactory.dmm @@ -347,7 +347,7 @@ "bm" = ( /obj/structure/table, /obj/item/stamp/denied, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 6; pixel_y = 6 }, diff --git a/_maps/RandomRuins/SpaceRuins/waystation.dmm b/_maps/RandomRuins/SpaceRuins/waystation.dmm index b183bc17e69..095b5504d2f 100644 --- a/_maps/RandomRuins/SpaceRuins/waystation.dmm +++ b/_maps/RandomRuins/SpaceRuins/waystation.dmm @@ -711,7 +711,7 @@ pixel_x = -6; pixel_y = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, @@ -2394,7 +2394,7 @@ /area/ruin/space/has_grav/waystation/cargooffice) "Qx" = ( /obj/structure/table, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/stamp/denied{ pixel_x = 8 }, diff --git a/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm b/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm index cc1b46b2ee4..4b9f943dab5 100644 --- a/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm +++ b/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm @@ -9974,7 +9974,7 @@ pixel_x = 7; pixel_y = 8 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -13943,7 +13943,7 @@ /obj/item/stamp/denied{ pixel_x = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -4 }, /turf/open/floor/carpet/executive, @@ -46865,7 +46865,7 @@ pixel_x = -5; pixel_y = -1 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 13; pixel_y = 12 }, @@ -62983,7 +62983,7 @@ pixel_x = -1; pixel_y = 11 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 1 }, @@ -75051,7 +75051,7 @@ pixel_x = -6; pixel_y = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -76649,7 +76649,7 @@ pixel_x = -6; pixel_y = -7 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = -1 }, @@ -83749,7 +83749,7 @@ pixel_x = 5; pixel_y = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -7; pixel_y = 2 }, diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 4a02e3e6e22..b44e64f1c1f 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -2715,7 +2715,7 @@ "aHG" = ( /obj/structure/table, /obj/item/folder, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/stamp/denied{ pixel_x = 3; pixel_y = 3 @@ -63045,7 +63045,7 @@ pixel_x = -7; pixel_y = 9 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -7; pixel_y = 1 }, diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index 9cf0703e6cd..3d22a330c7f 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -14508,7 +14508,7 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "dXh" = ( -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -16375,7 +16375,7 @@ /area/mine/eva/lower) "ezq" = ( /obj/structure/table, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/poster/random_official, /turf/open/floor/plating, /area/station/maintenance/port/fore) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index b5727025204..56deba97372 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -59969,7 +59969,7 @@ /obj/item/stamp/denied{ pixel_y = -1 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -9; pixel_y = -1 }, diff --git a/_maps/map_files/NebulaStation/NebulaStation.dmm b/_maps/map_files/NebulaStation/NebulaStation.dmm index a3d5117f2d1..800d8cc97e7 100644 --- a/_maps/map_files/NebulaStation/NebulaStation.dmm +++ b/_maps/map_files/NebulaStation/NebulaStation.dmm @@ -61002,7 +61002,7 @@ pixel_x = -6; pixel_y = 8 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -6 }, /turf/open/floor/iron/dark, @@ -79753,7 +79753,7 @@ pixel_x = 7; pixel_y = 14 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 7 }, diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 0c76fbbaf31..56eb8f78b12 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -719,7 +719,7 @@ pixel_x = 6; pixel_y = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 3; pixel_y = 3 }, @@ -2390,7 +2390,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/wood, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/courtroom) @@ -3388,7 +3388,7 @@ pixel_x = -2; pixel_y = 12 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_y = 7 }, /obj/structure/table/reinforced, @@ -3628,7 +3628,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -5570,7 +5570,7 @@ pixel_x = 6; pixel_y = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 3; pixel_y = 3 }, @@ -6344,7 +6344,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/wood, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/sign/nanotrasen/directional/north, @@ -6469,7 +6469,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -8576,7 +8576,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -9126,7 +9126,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/machinery/status_display/ai/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -11101,7 +11101,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index f3b34117b65..dac99748aca 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -16376,7 +16376,7 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, diff --git a/_maps/map_files/wawastation/wawastation.dmm b/_maps/map_files/wawastation/wawastation.dmm index b4573e87159..50e6419b9f5 100644 --- a/_maps/map_files/wawastation/wawastation.dmm +++ b/_maps/map_files/wawastation/wawastation.dmm @@ -190,7 +190,7 @@ dir = 4 }, /obj/structure/table/wood/fancy/orange, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, @@ -4931,7 +4931,7 @@ /area/station/maintenance/department/cargo) "bIe" = ( /obj/structure/table, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -23719,7 +23719,7 @@ pixel_x = 3; pixel_y = 12 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -6; pixel_y = 4 }, @@ -46890,7 +46890,7 @@ pixel_x = 4; pixel_y = -2 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 5; pixel_y = 12 }, diff --git a/_maps/shuttles/emergency_tranquility.dmm b/_maps/shuttles/emergency_tranquility.dmm index 00775852302..7e53a0ebce0 100644 --- a/_maps/shuttles/emergency_tranquility.dmm +++ b/_maps/shuttles/emergency_tranquility.dmm @@ -1603,7 +1603,7 @@ /obj/item/pen/fourcolor{ pixel_x = -4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 8; pixel_y = 5 }, diff --git a/_maps/shuttles/pirate_irs.dmm b/_maps/shuttles/pirate_irs.dmm index 5249c79fa76..5ad360f2f48 100644 --- a/_maps/shuttles/pirate_irs.dmm +++ b/_maps/shuttles/pirate_irs.dmm @@ -1508,7 +1508,7 @@ /area/shuttle/pirate) "NW" = ( /obj/structure/table/reinforced, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 10 }, diff --git a/code/game/objects/effects/spawners/random/bureaucracy.dm b/code/game/objects/effects/spawners/random/bureaucracy.dm index 583d3ad95a1..ea66c109a10 100644 --- a/code/game/objects/effects/spawners/random/bureaucracy.dm +++ b/code/game/objects/effects/spawners/random/bureaucracy.dm @@ -19,7 +19,7 @@ name = "stamp spawner" icon_state = "stamp" loot = list( - /obj/item/stamp = 3, + /obj/item/stamp/granted = 3, /obj/item/stamp/denied = 1, ) diff --git a/code/modules/admin/admin_fax_panel.dm b/code/modules/admin/admin_fax_panel.dm index 3a9744ee3e4..d426c48b14d 100644 --- a/code/modules/admin/admin_fax_panel.dm +++ b/code/modules/admin/admin_fax_panel.dm @@ -25,7 +25,7 @@ ADMIN_VERB(fax_panel, R_ADMIN, "Fax Panel", "View and respond to faxes sent to C available_faxes += WEAKREF(fax) //Get all stamps - for(var/stamp in subtypesof(/obj/item/stamp)) + for(var/stamp in valid_subtypesof(/obj/item/stamp)) var/obj/item/stamp/real_stamp = new stamp() if(!istype(real_stamp, /obj/item/stamp/chameleon) && !istype(real_stamp, /obj/item/stamp/mod)) var/stamp_detail = real_stamp.get_writing_implement_details() diff --git a/code/modules/cargo/packs/general.dm b/code/modules/cargo/packs/general.dm index ca70a167428..92364c33b8a 100644 --- a/code/modules/cargo/packs/general.dm +++ b/code/modules/cargo/packs/general.dm @@ -113,7 +113,7 @@ /obj/item/folder/red, /obj/item/folder/yellow, /obj/item/clipboard = 2, - /obj/item/stamp, + /obj/item/stamp/granted, /obj/item/stamp/denied, /obj/item/laser_pointer/purple, ) diff --git a/code/modules/cargo/packs/service.dm b/code/modules/cargo/packs/service.dm index 858040bb544..919d4ca6153 100644 --- a/code/modules/cargo/packs/service.dm +++ b/code/modules/cargo/packs/service.dm @@ -7,7 +7,7 @@ back to work with this crate containing stamps, an export scanner, \ destination tagger, hand labeler and some package wrapping." cost = CARGO_CRATE_VALUE * 1.75 - contains = list(/obj/item/stamp, + contains = list(/obj/item/stamp/granted, /obj/item/stamp/denied, /obj/item/universal_scanner, /obj/item/dest_tagger, diff --git a/code/modules/clothing/chameleon/_chameleon_action.dm b/code/modules/clothing/chameleon/_chameleon_action.dm index 4befe80fbe8..88ca8e51fe8 100644 --- a/code/modules/clothing/chameleon/_chameleon_action.dm +++ b/code/modules/clothing/chameleon/_chameleon_action.dm @@ -93,7 +93,7 @@ chameleon_typecache |= typecacheof(type_to_add) for(var/obj/item/item_type as anything in chameleon_typecache) - if(chameleon_blacklist[item_type] || (item_type::item_flags & ABSTRACT) || !item_type::icon_state) + if(chameleon_blacklist[item_type] || (item_type::item_flags & ABSTRACT) || item_type == item_type::abstract_type || !item_type::icon_state) continue var/chameleon_item_name = "[item_type::name] ([item_type::post_init_icon_state || item_type::icon_state])" chameleon_list[chameleon_item_name] = item_type diff --git a/code/modules/clothing/chameleon/generic_chameleon_clothing.dm b/code/modules/clothing/chameleon/generic_chameleon_clothing.dm index 052b1ef2c57..fcfc3b7e927 100644 --- a/code/modules/clothing/chameleon/generic_chameleon_clothing.dm +++ b/code/modules/clothing/chameleon/generic_chameleon_clothing.dm @@ -325,6 +325,7 @@ do { \ // Cham Stamp /obj/item/stamp/chameleon + icon_state = "stamp-syndicate" actions_types = list(/datum/action/item_action/chameleon/change/stamp) action_slots = ALL diff --git a/code/modules/jobs/job_types/quartermaster.dm b/code/modules/jobs/job_types/quartermaster.dm index 251032662bf..23e1dc59925 100644 --- a/code/modules/jobs/job_types/quartermaster.dm +++ b/code/modules/jobs/job_types/quartermaster.dm @@ -29,7 +29,7 @@ /datum/job_department/cargo, /datum/job_department/command, ) - family_heirlooms = list(/obj/item/stamp, /obj/item/stamp/denied) + family_heirlooms = list(/obj/item/stamp/granted, /obj/item/stamp/denied) mail_goodies = list( /obj/item/circuitboard/machine/emitter = 3 ) diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index 504bb89fe4e..a20b65f7aca 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -1,8 +1,8 @@ /obj/item/stamp - name = "\improper GRANTED rubber stamp" + name = "rubber stamp" desc = "A rubber stamp for stamping important documents." icon = 'icons/obj/service/bureaucracy.dmi' - icon_state = "stamp-ok" + abstract_type = /obj/item/stamp worn_icon_state = "nothing" inhand_icon_state = "stamp" throwforce = 0 @@ -34,6 +34,7 @@ dye_color = DYE_LAW /obj/item/stamp/head + abstract_type = /obj/item/stamp/head /obj/item/stamp/head/Initialize(mapload) . = ..() @@ -75,6 +76,11 @@ icon_state = "stamp-qm" dye_color = DYE_QM +/obj/item/stamp/granted + name = "\improper GRANTED rubber stamp" + icon_state = "stamp-ok" + dye_color = DYE_GREEN + /obj/item/stamp/denied name = "\improper DENIED rubber stamp" icon_state = "stamp-deny" diff --git a/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm b/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm index 9d83f3c7cff..1d9244fb619 100644 --- a/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm +++ b/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm @@ -287,7 +287,7 @@ /obj/item/taperecorder, /obj/item/lighter, /obj/item/laser_pointer, - /obj/item/stamp, + /obj/item/stamp/granted, /obj/item/stamp/denied, ) diff --git a/tools/UpdatePaths/Scripts/94139_granted_stamp.txt b/tools/UpdatePaths/Scripts/94139_granted_stamp.txt new file mode 100644 index 00000000000..0b7ae67377f --- /dev/null +++ b/tools/UpdatePaths/Scripts/94139_granted_stamp.txt @@ -0,0 +1 @@ +/obj/item/stamp : /obj/item/stamp/granted{@OLD} \ No newline at end of file