diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index c66dc36e2d9..e3bc9d11426 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -520,6 +520,7 @@ in the SQL/updates folder. * Subtypes only intended to be used on away mission or ruin maps should be contained within an .dm file with a name corresponding to that map within `code\modules\awaymissions` or `code\modules\ruins` respectively. This is so in the event that the map is removed, that subtype will be removed at the same time as well to minimize leftover/unused data within the repo. * Please attempt to clean out any dirty variables that may be contained within items you alter through var-editing. For example, due to how DM functions, changing the `pixel_x` variable from 23 to 0 will leave a dirty record in the map's code of `pixel_x = 0`. Likewise this can happen when changing an item's icon to something else and then back. This can lead to some issues where an item's icon has changed within the code, but becomes broken on the map due to it still attempting to use the old entry. * Areas should not be var-edited on a map to change it's name or attributes. All areas of a single type and it's altered instances are considered the same area within the code, and editing their variables on a map can lead to issues with powernets and event subsystems which are difficult to debug. + * Unless they require custom placement, when placing the following items use the relevant "[direction] bump" instance, as it has predefined pixel offsets and directions that are standardised: APC, Air alarm, Fire alarm, station intercom, newscaster, extinguisher cabient, light switches. * If you are making non-minor edits to an area or room, (non-minor being anything more than moving a few objects or fixing small bugs) then you should ensure the entire area/room meets these standards. diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index da1d105f145..26213e67e13 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -278,6 +278,10 @@ FIRE ALARM LAZYADD(myArea.firealarms, src) update_icon() +/obj/machinery/firealarm/Initialize(mapload) + . = ..() + name = "fire alarm" + /obj/machinery/firealarm/Destroy() LAZYREMOVE(myArea.firealarms, src) return ..() diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index 8096f0655f0..22751575b04 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -22,12 +22,16 @@ switch(w_dir) if(NORTH) pixel_y = 25 + dir = NORTH if(SOUTH) pixel_y = -25 + dir = SOUTH if(EAST) pixel_x = 25 + dir = EAST if(WEST) pixel_x = -25 + dir = WEST if(SSradio) set_frequency(frequency) spawn(5) @@ -45,6 +49,7 @@ /obj/machinery/light_switch/Initialize() ..() set_frequency(frequency) + name = "light switch" /obj/machinery/light_switch/set_frequency(new_frequency) SSradio.remove_object(src, frequency) diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 607109f4a9d..4ec186b547d 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -9,31 +9,38 @@ flags = CONDUCT var/circuitry_installed = 1 var/buildstage = 0 + var/custom_name dog_fashion = null /obj/item/radio/intercom/custom name = "station intercom (Custom)" + custom_name = TRUE broadcasting = 0 listening = 0 /obj/item/radio/intercom/interrogation name = "station intercom (Interrogation)" + custom_name = TRUE frequency = AIRLOCK_FREQ /obj/item/radio/intercom/private name = "station intercom (Private)" + custom_name = TRUE frequency = AI_FREQ /obj/item/radio/intercom/command name = "station intercom (Command)" + custom_name = TRUE frequency = COMM_FREQ /obj/item/radio/intercom/specops name = "\improper Special Operations intercom" + custom_name = TRUE frequency = ERT_FREQ /obj/item/radio/intercom/department canhear_range = 5 + custom_name = TRUE broadcasting = 0 listening = 1 @@ -59,6 +66,11 @@ GLOB.global_intercoms.Add(src) update_icon() +/obj/item/radio/intercom/Initialize() + . = ..() + if(!custom_name) + name = "station intercom (General)" + /obj/item/radio/intercom/department/medbay/New() ..() internal_channels = GLOB.default_medbay_channels.Copy() @@ -252,6 +264,7 @@ /obj/item/radio/intercom/locked freqlock = TRUE + custom_name = TRUE /obj/item/radio/intercom/locked/ai_private name = "\improper AI intercom" diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index 5b129d485ee..98d4f8fe2e3 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -19,6 +19,7 @@ /obj/structure/extinguisher_cabinet/Initialize(mapload, direction = null) . = ..() + name = "extinguisher cabinet" if(direction) setDir(direction) set_pixel_offsets_from_dir(28, -28, 30, -30) diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 8f1acb83d4f..89a60737fc4 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -84,6 +84,7 @@ resistance_flags = FIRE_PROOF siemens_strength = 1 frequency = ATMOS_VENTSCRUB + var/custom_name var/alarm_id = null //var/skipprocess = 0 //Experimenting var/alarm_frequency = ATMOS_FIRE_FREQ @@ -125,6 +126,7 @@ name = "engine air alarm" locked = FALSE req_access = null + custom_name = TRUE req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_ENGINE) /obj/machinery/alarm/syndicate //general syndicate access @@ -235,7 +237,7 @@ /obj/machinery/alarm/proc/first_run() alarm_area = get_area(src) area_uid = alarm_area.uid - if(name == "alarm") + if(!custom_name) name = "[alarm_area.name] Air Alarm" apply_preset(1) // Don't cycle. GLOB.air_alarm_repository.update_cache(src) @@ -1089,6 +1091,7 @@ name = "all-access air alarm" desc = "This particular atmos control unit appears to have no access restrictions." locked = FALSE + custom_name = TRUE req_access = null req_one_access = null diff --git a/code/modules/newscaster/obj/newscaster.dm b/code/modules/newscaster/obj/newscaster.dm index 6294573a439..0430cb40cfb 100644 --- a/code/modules/newscaster/obj/newscaster.dm +++ b/code/modules/newscaster/obj/newscaster.dm @@ -65,6 +65,10 @@ /obj/machinery/newscaster/Initialize(mapload) . = ..() + if(is_security) + name = "security newscaster" + else + name = "newscaster" if(!jobblacklist) jobblacklist = list( /datum/job/ai,