From a34b1c34df49f9dac5e20694210e2544c1497777 Mon Sep 17 00:00:00 2001
From: ClairionCM <115504494+ClairionCM@users.noreply.github.com>
Date: Sun, 21 Jan 2024 00:15:50 +0100
Subject: [PATCH 1/5] Adds a semi-big whistle cooldown. (#5469)
Adds a 10 second cooldown to the whistles to make them less spammy
# About the pull request
This PR gives the whistles a 10 second cooldown to have people spam them
less. It also sends a message telling the player how long they need to
wait before they can use it again.
# Explain why it's good for the game
Right now what often ends up happening is people deleting all of the
whistles because they are VERY loud and VERY spammy. This should make
that less of an issue.
# Testing Photographs and Procedure
It works :D
![image](https://github.com/cmss13-devs/cmss13/assets/115504494/58487e7c-3584-4ff1-ad63-c8fc918fa5a0)
# Changelog
:cl:
qol: made whistles less spammy
/:cl:
---------
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
---
code/game/objects/items/devices/whistle.dm | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/code/game/objects/items/devices/whistle.dm b/code/game/objects/items/devices/whistle.dm
index d017a430b88a..331df3ffa006 100644
--- a/code/game/objects/items/devices/whistle.dm
+++ b/code/game/objects/items/devices/whistle.dm
@@ -8,7 +8,8 @@
actions_types = list(/datum/action/item_action)
var/volume = 60
- var/spamcheck = 0
+ var/spam_cooldown_time = 10 SECONDS
+ COOLDOWN_DECLARE(spam_cooldown)
/obj/item/device/whistle/attack_self(mob/user)
..()
@@ -28,14 +29,14 @@
..()
/obj/item/device/whistle/proc/whistle_playsound(mob/user)
- if (spamcheck)
+ if(!COOLDOWN_FINISHED(src, spam_cooldown))
+ to_chat(user, SPAN_DANGER("You are out of breath after using [src]! Wait [COOLDOWN_SECONDSLEFT(src, spam_cooldown)] second\s."))
return
user.visible_message(SPAN_WARNING("[user] blows into [src]!"))
playsound(get_turf(src), 'sound/items/whistle.ogg', volume, 1, vary = 0)
- spamcheck = 1
- addtimer(VARSET_CALLBACK(src, spamcheck, FALSE), 3 SECONDS)
+ COOLDOWN_START(src, spam_cooldown, spam_cooldown_time)
/obj/item/device/whistle/MouseDrop(obj/over_object)
if(ishuman(usr))
From a3037ec6950567a2771829035f948caa1deff65a Mon Sep 17 00:00:00 2001
From: cm13-github <128137806+cm13-github@users.noreply.github.com>
Date: Sat, 20 Jan 2024 23:24:05 +0000
Subject: [PATCH 2/5] Automatic changelog for PR #5469 [ci skip]
---
html/changelogs/AutoChangeLog-pr-5469.yml | 4 ++++
1 file changed, 4 insertions(+)
create mode 100644 html/changelogs/AutoChangeLog-pr-5469.yml
diff --git a/html/changelogs/AutoChangeLog-pr-5469.yml b/html/changelogs/AutoChangeLog-pr-5469.yml
new file mode 100644
index 000000000000..3701dfdb8e5b
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-5469.yml
@@ -0,0 +1,4 @@
+author: "ClairionCM"
+delete-after: True
+changes:
+ - qol: "made whistles less spammy"
\ No newline at end of file
From 93b857f7fc6c44f168c6015a318f2d1b6f4b145a Mon Sep 17 00:00:00 2001
From: Releasethesea <135743398+Releasethesea@users.noreply.github.com>
Date: Sat, 20 Jan 2024 17:17:04 -0600
Subject: [PATCH 3/5] Adds more prescription goggles to loadout point buy
(#5492)
# About the pull request
this adds prescription variants of the goggles which lacked prescription
variants, so the black, orange, and M1A1
# Explain why it's good for the game
more customizability is always good for a game
# Testing Photographs and Procedure
Screenshots & Videos
Put screenshots and videos here with an empty line between the
screenshots and the `` tags.
# Changelog
:cl:
add: adds prescription variants of the orange, black, and M1A1 goggles
/:cl:
---
code/modules/client/preferences_gear.dm | 12 ++++++++++++
code/modules/clothing/glasses/glasses.dm | 24 ++++++++++++++++++++++++
code/modules/clothing/head/head.dm | 3 +++
code/modules/clothing/head/helmet.dm | 3 +++
4 files changed, 42 insertions(+)
diff --git a/code/modules/client/preferences_gear.dm b/code/modules/client/preferences_gear.dm
index 1337cadf5228..7f3d1eafcfb2 100644
--- a/code/modules/client/preferences_gear.dm
+++ b/code/modules/client/preferences_gear.dm
@@ -58,14 +58,26 @@ GLOBAL_LIST_EMPTY(gear_datums_by_name)
display_name = "Ballistic goggles, black"
path = /obj/item/clothing/glasses/mgoggles/black
+/datum/gear/eyewear/goggles_black/prescription
+ display_name = "Prescription ballistic goggles, black"
+ path = /obj/item/clothing/glasses/mgoggles/black/prescription
+
/datum/gear/eyewear/goggles_orange
display_name = "Ballistic goggles, orange"
path = /obj/item/clothing/glasses/mgoggles/orange
+/datum/gear/eyewear/goggles_orange/prescription
+ display_name = "Prescription ballistic goggles, orange"
+ path = /obj/item/clothing/glasses/mgoggles/orange/prescription
+
/datum/gear/eyewear/goggles2
display_name = "Ballistic goggles, M1A1"
path = /obj/item/clothing/glasses/mgoggles/v2
+/datum/gear/eyewear/goggles2/prescription
+ display_name = "Prescription ballistic goggles, M1A1"
+ path = /obj/item/clothing/glasses/mgoggles/v2/prescription
+
/datum/gear/eyewear/bimex_shades
display_name = "BiMex personal shades"
path = /obj/item/clothing/glasses/sunglasses/big
diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm
index ee2be75610b1..88605cb3b792 100644
--- a/code/modules/clothing/glasses/glasses.dm
+++ b/code/modules/clothing/glasses/glasses.dm
@@ -434,6 +434,14 @@
active_icon_state = "mgogglesblk_down"
inactive_icon_state = "mgogglesblk"
+/obj/item/clothing/glasses/mgoggles/black/prescription
+ name = "prescription black marine ballistic goggles"
+ desc = "Standard issue USCM goggles. While commonly found mounted atop M10 pattern helmets, they are also capable of preventing insects, dust, and other things from getting into one's eyes. This one has black tinted lenses. ntop of that, these ones contain prescription lenses."
+ icon_state = "mgogglesblk"
+ active_icon_state = "mgogglesblk_down"
+ inactive_icon_state = "mgogglesblk"
+ prescription = TRUE
+
/obj/item/clothing/glasses/mgoggles/orange
name = "orange marine ballistic goggles"
desc = "Standard issue USCM goggles. While commonly found mounted atop M10 pattern helmets, they are also capable of preventing insects, dust, and other things from getting into one's eyes. This one has amber colored day lenses."
@@ -441,6 +449,14 @@
active_icon_state = "mgogglesorg_down"
inactive_icon_state = "mgogglesorg"
+/obj/item/clothing/glasses/mgoggles/orange/prescription
+ name = "prescription orange marine ballistic goggles"
+ desc = "Standard issue USCM goggles. While commonly found mounted atop M10 pattern helmets, they are also capable of preventing insects, dust, and other things from getting into one's eyes. This one has amber colored day lenses."
+ icon_state = "mgogglesorg"
+ active_icon_state = "mgogglesorg_down"
+ inactive_icon_state = "mgogglesorg"
+ prescription = TRUE
+
/obj/item/clothing/glasses/mgoggles/v2
name = "M1A1 marine ballistic goggles"
desc = "Newer issue USCM goggles. While commonly found mounted atop M10 pattern helmets, they are also capable of preventing insects, dust, and other things from getting into one's eyes. This version has larger lenses."
@@ -448,6 +464,14 @@
active_icon_state = "mgoggles2_down"
inactive_icon_state = "mgoggles2"
+/obj/item/clothing/glasses/mgoggles/v2/prescription
+ name = "prescription M1A1 marine ballistic goggles"
+ desc = "Newer issue USCM goggles. While commonly found mounted atop M10 pattern helmets, they are also capable of preventing insects, dust, and other things from getting into one's eyes. This version has larger lenses."
+ icon_state = "mgoggles2"
+ active_icon_state = "mgoggles2_down"
+ inactive_icon_state = "mgoggles2"
+ prescription = TRUE
+
/obj/item/clothing/glasses/mgoggles/on_enter_storage(obj/item/storage/internal/S)
..()
diff --git a/code/modules/clothing/head/head.dm b/code/modules/clothing/head/head.dm
index ac4eb485c111..adfdd05b20d3 100644
--- a/code/modules/clothing/head/head.dm
+++ b/code/modules/clothing/head/head.dm
@@ -247,8 +247,11 @@
/obj/item/clothing/glasses/mgoggles = HAT_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/prescription = HAT_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/black = HAT_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/black/prescription = HAT_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/orange = HAT_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/orange/prescription = HAT_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/v2 = HAT_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/v2/prescription = HAT_GARB_RELAY_ICON_STATE,
/obj/item/prop/helmetgarb/helmet_nvg = HAT_GARB_RELAY_ICON_STATE,
/obj/item/prop/helmetgarb/helmet_nvg/cosmetic = HAT_GARB_RELAY_ICON_STATE,
/obj/item/prop/helmetgarb/helmet_nvg/marsoc = HAT_GARB_RELAY_ICON_STATE,
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 3d7d774bd1ed..86692ef95b6d 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -248,9 +248,12 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
// EYEWEAR
/obj/item/clothing/glasses/mgoggles = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/v2 = HELMET_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/v2/prescription = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/prescription = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/black = HELMET_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/black/prescription = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/mgoggles/orange = HELMET_GARB_RELAY_ICON_STATE,
+ /obj/item/clothing/glasses/mgoggles/orange/prescription = HELMET_GARB_RELAY_ICON_STATE,
/obj/item/clothing/glasses/sunglasses = "sunglasses",
/obj/item/clothing/glasses/sunglasses/prescription = "sunglasses",
/obj/item/clothing/glasses/sunglasses/aviator = "aviator",
From e51bde23e35e1d0f511e5ef8760cd52d2dfb358e Mon Sep 17 00:00:00 2001
From: cm13-github <128137806+cm13-github@users.noreply.github.com>
Date: Sat, 20 Jan 2024 23:49:55 +0000
Subject: [PATCH 4/5] Automatic changelog for PR #5492 [ci skip]
---
html/changelogs/AutoChangeLog-pr-5492.yml | 4 ++++
1 file changed, 4 insertions(+)
create mode 100644 html/changelogs/AutoChangeLog-pr-5492.yml
diff --git a/html/changelogs/AutoChangeLog-pr-5492.yml b/html/changelogs/AutoChangeLog-pr-5492.yml
new file mode 100644
index 000000000000..031cdd786ae5
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-5492.yml
@@ -0,0 +1,4 @@
+author: "Releasethesea"
+delete-after: True
+changes:
+ - rscadd: "adds prescription variants of the orange, black, and M1A1 goggles"
\ No newline at end of file
From a6a28b6fc1040398e8da4de988d7aa429e672e1c Mon Sep 17 00:00:00 2001
From: Changelogs
Date: Sun, 21 Jan 2024 01:18:25 +0000
Subject: [PATCH 5/5] Automatic changelog compile [ci skip]
---
html/changelogs/AutoChangeLog-pr-5441.yml | 4 ----
html/changelogs/AutoChangeLog-pr-5469.yml | 4 ----
html/changelogs/AutoChangeLog-pr-5492.yml | 4 ----
html/changelogs/AutoChangeLog-pr-5495.yml | 4 ----
html/changelogs/AutoChangeLog-pr-5496.yml | 4 ----
html/changelogs/archive/2024-01.yml | 14 ++++++++++++++
6 files changed, 14 insertions(+), 20 deletions(-)
delete mode 100644 html/changelogs/AutoChangeLog-pr-5441.yml
delete mode 100644 html/changelogs/AutoChangeLog-pr-5469.yml
delete mode 100644 html/changelogs/AutoChangeLog-pr-5492.yml
delete mode 100644 html/changelogs/AutoChangeLog-pr-5495.yml
delete mode 100644 html/changelogs/AutoChangeLog-pr-5496.yml
diff --git a/html/changelogs/AutoChangeLog-pr-5441.yml b/html/changelogs/AutoChangeLog-pr-5441.yml
deleted file mode 100644
index bbcf6c5c5af5..000000000000
--- a/html/changelogs/AutoChangeLog-pr-5441.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "Huffie56"
-delete-after: True
-changes:
- - rscadd: "Add some boards to the board vendor in engi on almayer(Air Alarm Electronics, Security Camera Monitor,\nStation Alerts, Arcade, Atmospheric Monitor)."
\ No newline at end of file
diff --git a/html/changelogs/AutoChangeLog-pr-5469.yml b/html/changelogs/AutoChangeLog-pr-5469.yml
deleted file mode 100644
index 3701dfdb8e5b..000000000000
--- a/html/changelogs/AutoChangeLog-pr-5469.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "ClairionCM"
-delete-after: True
-changes:
- - qol: "made whistles less spammy"
\ No newline at end of file
diff --git a/html/changelogs/AutoChangeLog-pr-5492.yml b/html/changelogs/AutoChangeLog-pr-5492.yml
deleted file mode 100644
index 031cdd786ae5..000000000000
--- a/html/changelogs/AutoChangeLog-pr-5492.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "Releasethesea"
-delete-after: True
-changes:
- - rscadd: "adds prescription variants of the orange, black, and M1A1 goggles"
\ No newline at end of file
diff --git a/html/changelogs/AutoChangeLog-pr-5495.yml b/html/changelogs/AutoChangeLog-pr-5495.yml
deleted file mode 100644
index 58990a93c18b..000000000000
--- a/html/changelogs/AutoChangeLog-pr-5495.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "Vicacrov"
-delete-after: True
-changes:
- - bugfix: "Fixes engine/weapon attach points layering below the dropship walls."
\ No newline at end of file
diff --git a/html/changelogs/AutoChangeLog-pr-5496.yml b/html/changelogs/AutoChangeLog-pr-5496.yml
deleted file mode 100644
index 3042d1a9b813..000000000000
--- a/html/changelogs/AutoChangeLog-pr-5496.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "SabreML"
-delete-after: True
-changes:
- - rscadd: "Made larvae and facehuggers able to use custom emotes."
\ No newline at end of file
diff --git a/html/changelogs/archive/2024-01.yml b/html/changelogs/archive/2024-01.yml
index 1b7474fdb8dc..0f2314f98bbc 100644
--- a/html/changelogs/archive/2024-01.yml
+++ b/html/changelogs/archive/2024-01.yml
@@ -269,3 +269,17 @@
- bugfix: Fixed mobs merged with weeds remaining ignited
SabreML:
- bugfix: Fixed the 'busy' circle icon being drawn above darkness and screen effects.
+2024-01-21:
+ ClairionCM:
+ - qol: made whistles less spammy
+ Huffie56:
+ - rscadd: 'Add some boards to the board vendor in engi on almayer(Air Alarm Electronics,
+ Security Camera Monitor,
+
+ Station Alerts, Arcade, Atmospheric Monitor).'
+ Releasethesea:
+ - rscadd: adds prescription variants of the orange, black, and M1A1 goggles
+ SabreML:
+ - rscadd: Made larvae and facehuggers able to use custom emotes.
+ Vicacrov:
+ - bugfix: Fixes engine/weapon attach points layering below the dropship walls.