Skip to content

Commit

Permalink
Merge branch 'idomappin' of https://github.com/kirieee/PvE-CMSS13 int…
Browse files Browse the repository at this point in the history
…o idomappin
  • Loading branch information
kirieee committed Oct 22, 2023
2 parents 327ef1e + 9d11305 commit 7a44798
Show file tree
Hide file tree
Showing 14 changed files with 121 additions and 16 deletions.
2 changes: 1 addition & 1 deletion code/datums/factions/uscm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
marine_rk = "co"
border_rk = "command"
if(JOB_SO)
marine_rk = "so"
marine_rk = "aso" //buffed by PvE CM
border_rk = "command"
if(JOB_AUXILIARY_OFFICER)
marine_rk = "aso"
Expand Down
3 changes: 3 additions & 0 deletions code/game/jobs/job/civilians/support/doctor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,6 @@ AddTimelock(/datum/job/civilian/doctor, list(
name = JOB_DOCTOR
icon_state = "doc_spawn"
job = /datum/job/civilian/doctor

#undef DOCTOR_VARIANT
#undef SURGEON_VARIANT
15 changes: 15 additions & 0 deletions code/game/jobs/job/command/cic/staffofficer.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@

#define SECOND_LT_VARIANT "Second Lieutenant"
#define FIRST_LT_VARIANT "First Lieutenant"

/datum/job/command/bridge
title = JOB_SO
total_positions = 4
Expand All @@ -8,6 +12,8 @@
gear_preset = /datum/equipment_preset/uscm_ship/so
entry_message_body = "<a href='%WIKIPAGE%'>Your job is to monitor the Marines, man the CIC, and listen to your superior officers.</a> You are in charge of logistics and the overwatch system. You are also in line to take command after other eligible superior commissioned officers."

job_options = list(FIRST_LT_VARIANT = "1stLt", SECOND_LT_VARIANT = "2ndLt")

/datum/job/command/bridge/set_spawn_positions(count)
spawn_positions = so_slot_formula(count)

Expand All @@ -26,6 +32,12 @@
/datum/job/command/bridge/generate_entry_message(mob/living/carbon/human/H)
return ..()

/datum/job/command/bridge/handle_job_options(option)
if(option != FIRST_LT_VARIANT)
gear_preset = /datum/equipment_preset/uscm_ship/so/lesser_rank
else
gear_preset = /datum/equipment_preset/uscm_ship/so

AddTimelock(/datum/job/command/bridge, list(
JOB_SQUAD_LEADER = 1 HOURS,
JOB_HUMAN_ROLES = 15 HOURS
Expand All @@ -45,3 +57,6 @@ AddTimelock(/datum/job/command/bridge, list(

/datum/job/command/bridge/ai/get_total_positions(latejoin = 0)
return latejoin ? total_positions : spawn_positions

#undef SECOND_LT_VARIANT
#undef FIRST_LT_VARIANT
15 changes: 15 additions & 0 deletions code/game/jobs/job/marine/squad/leader.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@

#define SSGT_VARIANT "Staff Sergeant"
#define GYSGT_VARIANT "Gunnery Sergeant"

/datum/job/marine/leader
title = JOB_SQUAD_LEADER
total_positions = 4
Expand All @@ -7,6 +11,14 @@
gear_preset = /datum/equipment_preset/uscm/leader
entry_message_body = "<a href='%WIKIPAGE%'>You are responsible for the men and women of your squad.</a> Make sure they are on task, working together, and communicating. You are also in charge of communicating with command and letting them know about the situation first hand. Keep out of harm's way."

job_options = list(GYSGT_VARIANT = "GYSGT", SSGT_VARIANT = "SSGT")

/datum/job/marine/leader/handle_job_options(option)
if(option != GYSGT_VARIANT)
gear_preset = /datum/equipment_preset/uscm/leader/lesser_rank
else
gear_preset = /datum/equipment_preset/uscm/leader

/datum/job/marine/leader/whiskey
title = JOB_WO_SQUAD_LEADER
flags_startup_parameters = ROLE_ADD_TO_SQUAD
Expand Down Expand Up @@ -40,3 +52,6 @@ AddTimelock(/datum/job/marine/leader, list(
/datum/job/marine/leader/ai
total_positions = 1
spawn_positions = 1

#undef SSGT_VARIANT
#undef GYSGT_VARIANT
15 changes: 15 additions & 0 deletions code/game/jobs/job/marine/squad/medic.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@

#define LCPL_VARIANT "Lance Corporal"
#define CPL_VARIANT "Corporal"

/datum/job/marine/medic
title = JOB_SQUAD_MEDIC
total_positions = 16
Expand All @@ -7,6 +11,8 @@
gear_preset = /datum/equipment_preset/uscm/medic
entry_message_body = "<a href='%WIKIPAGE%'>You tend the wounds of your squad mates</a> and make sure they are healthy and active. You may not be a fully-fledged doctor, but you stand between life and death when it matters."

job_options = list(CPL_VARIANT = "CPL", LCPL_VARIANT = "LCPL")

/datum/job/marine/medic/set_spawn_positions(count)
for(var/datum/squad/sq in RoleAuthority.squads)
if(sq)
Expand All @@ -27,6 +33,12 @@

return (slots*4)

/datum/job/marine/medic/handle_job_options(option)
if(option != CPL_VARIANT)
gear_preset = /datum/equipment_preset/uscm/medic/lesser_rank
else
gear_preset = /datum/equipment_preset/uscm/medic

/datum/job/marine/medic/whiskey
title = JOB_WO_SQUAD_MEDIC
flags_startup_parameters = ROLE_ADD_TO_SQUAD
Expand Down Expand Up @@ -67,3 +79,6 @@ AddTimelock(/datum/job/marine/medic, list(

/datum/job/marine/medic/ai/get_total_positions(latejoin=0)
return latejoin ? total_positions : spawn_positions

#undef LCPL_VARIANT
#undef CPL_VARIANT
15 changes: 15 additions & 0 deletions code/game/jobs/job/marine/squad/smartgunner.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@

#define LCPL_VARIANT "Lance Corporal"
#define CPL_VARIANT "Corporal"

/datum/job/marine/smartgunner
title = JOB_SQUAD_SMARTGUN
total_positions = 4
Expand All @@ -8,6 +12,8 @@
gear_preset = /datum/equipment_preset/uscm/sg
entry_message_body = "<a href='%WIKIPAGE%'>You are the smartgunner.</a> Your task is to provide heavy weapons support."

job_options = list(CPL_VARIANT = "CPL", LCPL_VARIANT = "LCPL")

/datum/job/marine/smartgunner/set_spawn_positions(count)
spawn_positions = sg_slot_formula(count)

Expand All @@ -23,6 +29,12 @@
total_positions_so_far = positions
return positions

/datum/job/marine/smartgunner/handle_job_options(option)
if(option != CPL_VARIANT)
gear_preset = /datum/equipment_preset/uscm/sg/lesser_rank
else
gear_preset = /datum/equipment_preset/uscm/sg

/datum/job/marine/smartgunner/whiskey
title = JOB_WO_SQUAD_SMARTGUNNER
flags_startup_parameters = ROLE_ADD_TO_SQUAD
Expand Down Expand Up @@ -62,3 +74,6 @@ AddTimelock(/datum/job/marine/smartgunner, list(

/datum/job/marine/smartgunner/ai/get_total_positions(latejoin = 0)
return latejoin ? total_positions : spawn_positions

#undef LCPL_VARIANT
#undef CPL_VARIANT
14 changes: 14 additions & 0 deletions code/game/jobs/job/marine/squad/standard.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
#define STANDARD_MARINE_TO_TOTAL_SPAWN_RATIO 0.4

#define PVT_VARIANT "Private"
#define PFC_VARIANT "Private First Class"

/datum/job/marine/standard
title = JOB_SQUAD_MARINE
total_positions = -1
Expand All @@ -8,9 +11,17 @@
gear_preset = /datum/equipment_preset/uscm/pfc
entry_message_body = "You are a rank-and-file <a href='"+URL_WIKI_MARINE_QUICKSTART+"'>Marine of the USCM</a>, and that is your strength. What you lack alone, you gain standing shoulder to shoulder with the men and women of the corps. Ooh-rah!"

job_options = list(PFC_VARIANT = "PFC", PVT_VARIANT = "PVT")

/datum/job/marine/standard/set_spawn_positions(count)
spawn_positions = max((round(count * STANDARD_MARINE_TO_TOTAL_SPAWN_RATIO)), 8)

/datum/job/marine/standard/handle_job_options(option)
if(option != PFC_VARIANT)
gear_preset = /datum/equipment_preset/uscm/pfc/lesser_rank
else
gear_preset = /datum/equipment_preset/uscm/pfc

/datum/job/marine/standard/whiskey
title = JOB_WO_SQUAD_MARINE
flags_startup_parameters = ROLE_ADD_TO_SQUAD
Expand Down Expand Up @@ -43,3 +54,6 @@

/datum/job/marine/standard/ai/set_spawn_positions(count)
return spawn_positions

#undef PVT_VARIANT
#undef PFC_VARIANT
7 changes: 7 additions & 0 deletions code/game/jobs/job/marine/squad/tl.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@

#define SGT_VARIANT "Sergeant"

/datum/job/marine/tl
title = JOB_SQUAD_TEAM_LEADER
total_positions = 8
Expand All @@ -7,6 +10,8 @@
gear_preset = /datum/equipment_preset/uscm/tl
entry_message_body = "You are the <a href='%WIKIPAGE%'>Team Leader.</a>Your task is to assist the squad leader in leading the squad as well as utilize ordnance such as orbital bombardments, CAS, and mortar as well as coordinating resupply with Requisitions and CIC. If the squad leader dies, you are expected to lead in their place."

job_options = list(SGT_VARIANT = "SGT")

/datum/job/marine/tl/generate_entry_conditions(mob/living/carbon/human/spawning_human)
. = ..()
spawning_human.important_radio_channels += JTAC_FREQ
Expand Down Expand Up @@ -39,3 +44,5 @@ AddTimelock(/datum/job/marine/tl, list(
/datum/job/marine/tl/ai
total_positions = 2
spawn_positions = 2

#undef SGT_VARIANT
6 changes: 3 additions & 3 deletions code/modules/client/preferences.dm
Original file line number Diff line number Diff line change
Expand Up @@ -647,9 +647,9 @@ var/const/MAX_SAVE_SLOTS = 10

//limit - The amount of jobs allowed per column. Defaults to 13 to make it look nice.
//splitJobs - Allows you split the table by job. You can make different tables for each department by including their heads. Defaults to CE to make it look nice.
//width - Screen' width. Defaults to 550 to make it look nice.
//height - Screen's height. Defaults to 500 to make it look nice.
/datum/preferences/proc/SetChoices(mob/user, limit = 19, list/splitJobs = list(JOB_CHIEF_REQUISITION), width = 950, height = 700)
//width - Screen' width.
//height - Screen's height.
/datum/preferences/proc/SetChoices(mob/user, limit = 19, list/splitJobs = list(JOB_CHIEF_REQUISITION), width = 450, height = 450)
if(!RoleAuthority)
return

Expand Down
11 changes: 11 additions & 0 deletions code/modules/gear_presets/uscm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,9 @@
..()
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/marine/cryo(new_human), WEAR_L_EAR)

/datum/equipment_preset/uscm/pfc/lesser_rank
paygrade = "ME1"

//*****************************************************************************************************/

/datum/equipment_preset/uscm/sg
Expand Down Expand Up @@ -119,6 +122,9 @@
..()
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/marine/cryo(new_human), WEAR_L_EAR)

/datum/equipment_preset/uscm/sg/lesser_rank
paygrade = "ME3"

//*****************************************************************************************************/

/datum/equipment_preset/uscm/sg/full
Expand Down Expand Up @@ -285,6 +291,9 @@
..()
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/marine/cryo/med(new_human), WEAR_L_EAR)

/datum/equipment_preset/uscm/medic/lesser_rank
paygrade = "ME3"

//*****************************************************************************************************/

/datum/equipment_preset/uscm/tl
Expand Down Expand Up @@ -378,6 +387,8 @@
..()
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/marine/cryo/lead(new_human), WEAR_L_EAR)

/datum/equipment_preset/uscm/leader/lesser_rank
paygrade = "ME6"

//*****************************************************************************************************/
// ERT members that spawn with full gear from DEFCON
Expand Down
9 changes: 6 additions & 3 deletions code/modules/gear_presets/uscm_ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@
//*****************************************************************************************************/

/datum/equipment_preset/uscm_ship/reporter
name = "Combat Correspondent"
name = "Combat Correspondent (CIV)"
flags = EQUIPMENT_PRESET_START_OF_ROUND

access = list(
Expand Down Expand Up @@ -142,7 +142,7 @@
new_human.equip_to_slot_or_del(new /obj/item/notepad(new_human), WEAR_IN_BACK)

/datum/equipment_preset/uscm_ship/reporter_uscm
name = "Combat Correspondent"
name = "Combat Correspondent (USCM)"
flags = EQUIPMENT_PRESET_START_OF_ROUND|EQUIPMENT_PRESET_MARINE
access = list(
ACCESS_MARINE_COMMAND,
Expand Down Expand Up @@ -547,7 +547,7 @@
minimum_age = 25
skills = /datum/skills/SO

minimap_icon = list("cic" = MINIMAP_ICON_COLOR_BRONZE)
minimap_icon = list("cic" = MINIMAP_ICON_COLOR_SILVER)
minimap_background = MINIMAP_ICON_BACKGROUND_CIC

/datum/equipment_preset/uscm_ship/so/New()
Expand All @@ -569,6 +569,9 @@
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(new_human), WEAR_R_STORE)
new_human.equip_to_slot_or_del(new /obj/item/device/binoculars/range(new_human), WEAR_L_HAND)

/datum/equipment_preset/uscm_ship/so/lesser_rank
paygrade = "MO1"

//*****************************************************************************************************/

/datum/equipment_preset/uscm_ship/sea
Expand Down
10 changes: 8 additions & 2 deletions code/modules/projectiles/guns/smartgun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
actions_types = list(
/datum/action/item_action/smartgun/toggle_accuracy_improvement,
/datum/action/item_action/smartgun/toggle_ammo_type,
/datum/action/item_action/smartgun/toggle_auto_fire,
///datum/action/item_action/smartgun/toggle_auto_fire, - Thanks Bales
/datum/action/item_action/smartgun/toggle_lethal_mode,
///datum/action/item_action/smartgun/toggle_motion_detector,
/datum/action/item_action/smartgun/toggle_recoil_compensation,
Expand Down Expand Up @@ -213,6 +213,7 @@
// else
// button.icon_state = "template"

/*
/datum/action/item_action/smartgun/toggle_auto_fire/New(Target, obj/item/holder)
. = ..()
name = "Toggle Auto Fire"
Expand All @@ -235,6 +236,8 @@
else
button.icon_state = "template"
*/

/datum/action/item_action/smartgun/toggle_accuracy_improvement/New(Target, obj/item/holder)
. = ..()
name = "Toggle Accuracy Improvement"
Expand Down Expand Up @@ -476,6 +479,7 @@
drain -= 50
recalculate_attachment_bonuses()

/*
/obj/item/weapon/gun/smartgun/proc/toggle_auto_fire(mob/user)
if(!(flags_item & WIELDED))
to_chat(user, "[icon2html(src, usr)] You need to wield \the [src] to enable autofire.")
Expand Down Expand Up @@ -514,6 +518,7 @@
long_range_cooldown = initial(long_range_cooldown)
MD.scan()
/obj/item/weapon/gun/smartgun/proc/auto_prefire(warned) //To allow the autofire delay to properly check targets after waiting.
if(ishuman(loc) && (flags_item & WIELDED))
var/human_user = loc
Expand Down Expand Up @@ -595,7 +600,6 @@
/obj/item/weapon/gun/smartgun/proc/process_shot(mob/living/user, warned)
set waitfor = 0

if(!target)
return //Acquire our victim.
Expand All @@ -612,6 +616,8 @@
target = null
*/

///obj/item/weapon/gun/smartgun/proc/toggle_motion_detector(mob/user)
// to_chat(user, "[icon2html(src, usr)] You [motion_detector? "<B>disable</b>" : "<B>enable</b>"] \the [src]'s motion detector.")
// playsound(loc,'sound/machines/click.ogg', 25, 1)
Expand Down
Loading

0 comments on commit 7a44798

Please sign in to comment.