mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-19 23:01:35 +00:00
Makes Medals Cooler (#22652)
* medal buff * reviews * Update code/game/objects/items/weapons/storage/lockbox.dm Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> * a * oops * bam * Update code/game/objects/items/weapons/storage/lockbox.dm * Update code/modules/clothing/under/accessories/accessory.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/clothing/under/accessories/accessory.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> * Update code/modules/clothing/under/accessories/accessory.dm --------- Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
@@ -13,6 +13,7 @@ GLOBAL_DATUM_INIT(command_announcer, /obj/item/radio/intercom/command, create_co
|
||||
/proc/create_global_announcer()
|
||||
spawn(0)
|
||||
GLOB.global_announcer = new(null)
|
||||
GLOB.global_announcer.config(list("Common", "Engineering", "Medical", "Supply", "Command", "Science", "Service", "Security", "Procedure"))
|
||||
return
|
||||
|
||||
/proc/create_command_announcer()
|
||||
|
||||
@@ -111,6 +111,29 @@
|
||||
new /obj/item/clothing/accessory/medal/silver/valor(src)
|
||||
new /obj/item/clothing/accessory/medal/heart(src)
|
||||
|
||||
/obj/item/storage/lockbox/medal/cc
|
||||
name = "central command medal box"
|
||||
desc = "A locked box used to store ALL the medals you could ever need."
|
||||
max_combined_w_class = 30
|
||||
storage_slots = 15
|
||||
req_access = list(ACCESS_CENT_COMMANDER)
|
||||
|
||||
/obj/item/storage/lockbox/medal/cc/populate_contents()
|
||||
new /obj/item/clothing/accessory/medal/gold/heroism(src)
|
||||
..()
|
||||
new /obj/item/clothing/accessory/medal/gold(src)
|
||||
new /obj/item/clothing/accessory/medal/silver(src)
|
||||
new /obj/item/clothing/accessory/medal(src)
|
||||
|
||||
// Departmental medals
|
||||
new /obj/item/clothing/accessory/medal/security(src)
|
||||
new /obj/item/clothing/accessory/medal/science(src)
|
||||
new /obj/item/clothing/accessory/medal/engineering(src)
|
||||
new /obj/item/clothing/accessory/medal/service(src)
|
||||
new /obj/item/clothing/accessory/medal/medical(src)
|
||||
new /obj/item/clothing/accessory/medal/legal(src)
|
||||
new /obj/item/clothing/accessory/medal/supply(src)
|
||||
|
||||
/obj/item/storage/lockbox/medal/hardmode_box
|
||||
name = "\improper HRD-MDE program medal box"
|
||||
desc = "A locked box used to store medals of pride. Use a fauna research disk on the box to transmit the data and print a medal."
|
||||
|
||||
@@ -77,18 +77,25 @@
|
||||
if(istype(H) && !ismonkeybasic(H)) //Monkeys are a snowflake because you can't remove accessories once added
|
||||
if(H.wear_suit && H.wear_suit.flags_inv & HIDEJUMPSUIT)
|
||||
to_chat(user, "[H]'s body is covered, and you cannot attach \the [src].")
|
||||
return 1
|
||||
return TRUE
|
||||
var/obj/item/clothing/under/U = H.w_uniform
|
||||
if(istype(U))
|
||||
if(user == H)
|
||||
U.attach_accessory(src, user, TRUE)
|
||||
return
|
||||
user.visible_message("<span class='notice'>[user] is putting a [src.name] on [H]'s [U.name]!</span>", "<span class='notice'>You begin to put a [src.name] on [H]'s [U.name]...</span>")
|
||||
if(do_after(user, 40, target=H) && H.w_uniform == U)
|
||||
user.visible_message("<span class='notice'>[user] puts a [src.name] on [H]'s [U.name]!</span>", "<span class='notice'>You finish putting a [src.name] on [H]'s [U.name].</span>")
|
||||
U.attackby(src, user)
|
||||
if(do_after(user, 4 SECONDS, target = H) && H.w_uniform == U)
|
||||
if(U.attach_accessory(src, user, TRUE))
|
||||
user.visible_message("<span class='notice'>[user] puts a [src.name] on [H]'s [U.name]!</span>", "<span class='notice'>You finish putting a [src.name] on [H]'s [U.name].</span>")
|
||||
after_successful_nonself_attach(H, user)
|
||||
else
|
||||
to_chat(user, "[H] is not wearing anything to attach \the [src] to.")
|
||||
return 1
|
||||
return TRUE
|
||||
return ..()
|
||||
|
||||
/obj/item/clothing/accessory/proc/after_successful_nonself_attach(mob/living/carbon/human/H, mob/living/user)
|
||||
return
|
||||
|
||||
//default attackby behaviour
|
||||
/obj/item/clothing/accessory/attackby(obj/item/I, mob/user, params)
|
||||
..()
|
||||
@@ -195,6 +202,29 @@
|
||||
item_color = "bronze"
|
||||
materials = list(MAT_METAL=1000)
|
||||
resistance_flags = FIRE_PROOF
|
||||
/// The channel we will announce on when we are rewarded to someone
|
||||
var/channel
|
||||
/// Will we try to announce, toggled by using in hand
|
||||
var/try_announce = TRUE
|
||||
|
||||
/obj/item/clothing/accessory/medal/examine(mob/user)
|
||||
. = ..()
|
||||
if(channel)
|
||||
. += "<span class='notice'>The tiny radio inside seems to be [try_announce ? "active" : "inactive"].</span>"
|
||||
|
||||
/obj/item/clothing/accessory/medal/attack_self(mob/user)
|
||||
. = ..()
|
||||
if(channel)
|
||||
try_announce = !try_announce
|
||||
to_chat(user, "<span class='notice'>You silently [try_announce ? "enable" : "disable"] the radio in [src].</span>")
|
||||
|
||||
/obj/item/clothing/accessory/medal/after_successful_nonself_attach(mob/living/carbon/human/H, mob/living/user)
|
||||
if(!channel || !try_announce)
|
||||
return
|
||||
if(!is_station_level(user.z))
|
||||
return
|
||||
GLOB.global_announcer.autosay("[H] has been rewarded [src] by [user]!", "Medal Announcer", channel = channel, follow_target_override = src)
|
||||
channel = null
|
||||
|
||||
// GOLD (awarded by centcom)
|
||||
/obj/item/clothing/accessory/medal/gold
|
||||
@@ -203,11 +233,13 @@
|
||||
icon_state = "gold"
|
||||
item_color = "gold"
|
||||
materials = list(MAT_GOLD=1000)
|
||||
channel = "Common"
|
||||
|
||||
/obj/item/clothing/accessory/medal/gold/captain
|
||||
name = "medal of captaincy"
|
||||
desc = "A golden medal awarded exclusively to those promoted to the rank of captain. It signifies the codified responsibilities of a captain to Nanotrasen, and their undisputable authority over their crew."
|
||||
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
channel = null // captains medal is special :)
|
||||
|
||||
/obj/item/clothing/accessory/medal/gold/captain/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -226,10 +258,12 @@
|
||||
icon_state = "silver"
|
||||
item_color = "silver"
|
||||
materials = list(MAT_SILVER=1000)
|
||||
channel = "Command"
|
||||
|
||||
/obj/item/clothing/accessory/medal/silver/valor
|
||||
name = "medal of valor"
|
||||
desc = "An award issued by Captains to crew members whose exceptional performance and service to the station has been commended by the station's top leadership."
|
||||
channel = "Common"
|
||||
|
||||
/obj/item/clothing/accessory/medal/silver/leadership
|
||||
name = "medal of command"
|
||||
@@ -243,30 +277,37 @@
|
||||
/obj/item/clothing/accessory/medal/security
|
||||
name = "robust security medal"
|
||||
desc = "An award issued by the HoS to security staff who excel at upholding the law."
|
||||
channel = "Security"
|
||||
|
||||
/obj/item/clothing/accessory/medal/science
|
||||
name = "smart science medal"
|
||||
desc = "An award issued by the RD to science staff who advance the frontiers of knowledge."
|
||||
channel = "Science"
|
||||
|
||||
/obj/item/clothing/accessory/medal/engineering
|
||||
name = "excellent engineering medal"
|
||||
desc = "An award issued by the CE to engineering staff whose dedication keep the station running at its best."
|
||||
channel = "Engineering"
|
||||
|
||||
/obj/item/clothing/accessory/medal/service
|
||||
name = "superior service medal"
|
||||
desc = "An award issued by the HoP to service staff who go above and beyond."
|
||||
channel = "Service"
|
||||
|
||||
/obj/item/clothing/accessory/medal/medical
|
||||
name = "magnificient medical medal"
|
||||
desc = "An award issued by the CMO to medical staff who excel at saving lives."
|
||||
channel = "Medical"
|
||||
|
||||
/obj/item/clothing/accessory/medal/legal
|
||||
name = "meritous legal medal"
|
||||
desc = "An award issued by the Magistrate to legal staff who uphold the rule of law."
|
||||
channel = "Procedure"
|
||||
|
||||
/obj/item/clothing/accessory/medal/supply
|
||||
name = "stable supply medal"
|
||||
desc = "An award issued by the Quartermaster to supply staff dedicated to being effective."
|
||||
channel = "Supply"
|
||||
|
||||
/obj/item/clothing/accessory/medal/recruiter // Prize for the NT Recruiter emagged arcade
|
||||
name = "nanotrasen recruiter medal"
|
||||
@@ -277,6 +318,7 @@
|
||||
desc = "A rarely-awarded medal for those who sacrifice themselves in the line of duty to save their fellow crew."
|
||||
icon_state = "bronze_heart"
|
||||
item_color = "bronze_heart"
|
||||
channel = "Common"
|
||||
|
||||
// Plasma, from NT research departments. For now, used by the HRD-MDE project for the moderate 2 fauna, drake and hierophant.
|
||||
|
||||
@@ -317,18 +359,22 @@
|
||||
/obj/item/clothing/accessory/medal/gold/bubblegum
|
||||
name = "bubblegum HRD-MDE award"
|
||||
desc = "An award which represents magnificant contributions to the HRD-MDE project in the form of analysing Bubblegum, and the related blood space."
|
||||
channel = null
|
||||
|
||||
/obj/item/clothing/accessory/medal/gold/heroism/hardmode_full //Kill every hardmode boss. In a shift. Good luck.
|
||||
name = "medal of incredible dedication"
|
||||
desc = "An extremely rare golden medal awarded only by CentComm. This medal was issued for miners who went above and beyond for the HRD-MDE project. Engraved on it is the phrase <i>'mori quam foedari'...</i>"
|
||||
channel = null
|
||||
|
||||
/obj/item/clothing/accessory/medal/silver/colossus
|
||||
name = "colossus HRD-MDE award"
|
||||
desc = "An award which represents major contributions to the HRD-MDE project in the form of analysing a colossus."
|
||||
channel = null
|
||||
|
||||
/obj/item/clothing/accessory/medal/silver/legion
|
||||
name = "legion HRD-MDE award"
|
||||
desc = "An award which represents major contributions to the HRD-MDE project in the form of analysing the Legion."
|
||||
channel = null
|
||||
|
||||
/obj/item/clothing/accessory/medal/blood_drunk
|
||||
name = "blood drunk HRD-MDE award"
|
||||
|
||||
Reference in New Issue
Block a user