diff --git a/code/datums/medal_awards.dm b/code/datums/medal_awards.dm index 818d623033d2..37b21bd2bb49 100644 --- a/code/datums/medal_awards.dm +++ b/code/datums/medal_awards.dm @@ -479,6 +479,10 @@ GLOBAL_LIST_INIT(xeno_medals, list(XENO_SLAUGHTER_MEDAL, XENO_RESILIENCE_MEDAL, continue recipient_ranks[recipient_name] = record.fields["rank"] possible_recipients += recipient_name + if(length(possible_recipients) == 0) + to_chat(recommendation_giver, SPAN_WARNING("It's not possible to give medals when the ship is empty. Tough luck, partner...")) + return FALSE + var/chosen_recipient = tgui_input_list(recommendation_giver, "Who do you want to recommend a medal for?", "Medal Recommendation", possible_recipients) if(!chosen_recipient) return FALSE diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 00f0ad16220c..52f8bd76e894 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -417,8 +417,14 @@ var/obj/item/card/id/id_card = wearer.wear_id?.GetID() if(!istype(id_card)) return - if(!(id_card.rank in list(JOB_SO, JOB_XO, JOB_SQUAD_LEADER))) - to_chat(wearer, SPAN_WARNING("Only Staff Officers, Executive Officers and Squad Leaders are permitted to give medal recommendations!")) + + var/datum/paygrade/paygrade_actual = GLOB.paygrades[id_card.paygrade] + if(!paygrade_actual) + return + if(!istype(paygrade_actual, /datum/paygrade/marine)) //We only want marines to be able to recommend for medals + return + if(paygrade_actual.ranking < 3) //E1 starts at 0, so anyone above Corporal (ranking = 3) can recommend for medals + to_chat(wearer, SPAN_WARNING("Only officers or NCO's (ME4+) can recommend medals!")) return if(add_medal_recommendation(usr)) to_chat(usr, SPAN_NOTICE("Recommendation successfully submitted."))