diff --git a/_maps/map_files/Talos/TGS_Talos.dmm b/_maps/map_files/Talos/TGS_Talos.dmm index f0adc348b91..5d05be20f9f 100644 --- a/_maps/map_files/Talos/TGS_Talos.dmm +++ b/_maps/map_files/Talos/TGS_Talos.dmm @@ -4238,6 +4238,9 @@ /area/mainship/living/basketball) "cqy" = ( /obj/machinery/loadout_vendor, +/obj/structure/window{ + dir = 4 + }, /turf/open/floor/mainship/red{ dir = 1 }, @@ -9586,6 +9589,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/mainship/hull/port_hull) +"fuK" = ( +/obj/structure/window{ + dir = 8 + }, +/obj/machinery/quick_vendor/beginner, +/turf/open/floor/mainship/orange{ + dir = 1 + }, +/area/mainship/squads/bravo) "fuL" = ( /obj/effect/turf_decal/siding/metal, /obj/machinery/camera/autoname{ @@ -9952,7 +9964,10 @@ /turf/open/floor/mainship/metal, /area/mainship/hallways/hangar) "fKa" = ( -/obj/machinery/loadout_vendor, +/obj/machinery/quick_vendor/beginner, +/obj/structure/window{ + dir = 8 + }, /turf/open/floor/mainship/emerald{ dir = 6 }, @@ -15462,6 +15477,9 @@ /area/mainship/hallways/bow_hallway) "jsH" = ( /obj/machinery/loadout_vendor, +/obj/structure/window{ + dir = 4 + }, /turf/open/floor/mainship/emerald, /area/mainship/squads/charlie) "jsI" = ( @@ -17406,7 +17424,10 @@ /turf/open/floor/mainship/blue/full, /area/mainship/hallways/hangar) "kCI" = ( -/obj/machinery/loadout_vendor, +/obj/machinery/quick_vendor/beginner, +/obj/structure/window{ + dir = 8 + }, /turf/open/floor/mainship/red{ dir = 5 }, @@ -21707,12 +21728,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /turf/open/floor/plating, /area/mainship/hull/starboard_hull) -"mSl" = ( -/obj/structure/window{ - dir = 8 - }, -/turf/open/floor/mainship/blue, -/area/mainship/squads/delta) "mSt" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden/layer1{ dir = 9 @@ -27154,14 +27169,6 @@ /obj/structure/closet/firecloset, /turf/open/floor/plating, /area/mainship/hull/starboard_hull) -"pWv" = ( -/obj/structure/window{ - dir = 8 - }, -/turf/open/floor/mainship/orange{ - dir = 1 - }, -/area/mainship/squads/bravo) "pWN" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ dir = 1 @@ -31131,6 +31138,9 @@ /area/mainship/hallways/hangar) "snY" = ( /obj/machinery/loadout_vendor, +/obj/structure/window{ + dir = 4 + }, /turf/open/floor/mainship/blue, /area/mainship/squads/delta) "soq" = ( @@ -31472,12 +31482,6 @@ /obj/structure/prop/mainship/sensor_computer1, /turf/open/floor/mainship/black/full, /area/mainship/command/cic) -"sAK" = ( -/obj/machinery/loadout_vendor, -/turf/open/floor/mainship/orange{ - dir = 1 - }, -/area/mainship/squads/bravo) "sAW" = ( /obj/structure/table/reinforced, /obj/machinery/computer/operating, @@ -34686,10 +34690,10 @@ /area/mainship/living/grunt_rnr) "uAy" = ( /obj/machinery/light/mainship, -/obj/machinery/loadout_vendor, /obj/structure/window{ - dir = 4 + dir = 8 }, +/obj/machinery/quick_vendor/beginner, /turf/open/floor/mainship/blue, /area/mainship/squads/delta) "uBb" = ( @@ -82160,7 +82164,7 @@ hwt sRd pTc xhq -sAK +iqo xZI fNK hFG @@ -82417,7 +82421,7 @@ qvh dNU nJh xhq -iqo +fuK sEf lYT dme @@ -82674,7 +82678,7 @@ nYl eDk pTc xhq -pWv +oZG sXV sFX nju @@ -82719,7 +82723,7 @@ eWU bny aDy knz -mSl +igP tkN eDY bli diff --git a/_maps/map_files/generic/Admin_Level.dmm b/_maps/map_files/generic/Admin_Level.dmm index 4641989b3ba..de030817734 100644 --- a/_maps/map_files/generic/Admin_Level.dmm +++ b/_maps/map_files/generic/Admin_Level.dmm @@ -648,10 +648,10 @@ /turf/closed/mineral/smooth/indestructible, /area/centcom/valhalla) "jvi" = ( -/obj/machinery/marine_selector/clothes/valhalla, /obj/effect/turf_decal/warning_stripes/thick{ dir = 6 }, +/obj/machinery/quick_vendor/beginner, /turf/open/floor/iron/dark/textured, /area/centcom/valhalla) "jvR" = ( @@ -1011,13 +1011,13 @@ /turf/open/floor/mainship/rubber, /area/centcom/valhalla) "nKg" = ( -/obj/machinery/marine_selector/clothes/valhalla, /obj/effect/turf_decal/warning_stripes/thick{ dir = 6 }, /obj/effect/turf_decal/warning_stripes/thick{ dir = 8 }, +/obj/machinery/quick_vendor/beginner, /turf/open/floor/iron/dark/textured, /area/centcom/valhalla) "nOQ" = ( diff --git a/_maps/shuttles/tgs_bigbury.dmm b/_maps/shuttles/tgs_bigbury.dmm index 2933690aedd..2265863c7f3 100644 --- a/_maps/shuttles/tgs_bigbury.dmm +++ b/_maps/shuttles/tgs_bigbury.dmm @@ -1013,6 +1013,10 @@ }, /turf/open/floor/mainship/blue, /area/shuttle/canterbury/cic) +"Uc" = ( +/obj/machinery/quick_vendor/beginner, +/turf/open/floor/mainship/mono, +/area/shuttle/canterbury) "Ui" = ( /obj/structure/window/reinforced{ dir = 4 @@ -1517,7 +1521,7 @@ an ac FQ Fl -Fl +Uc bG an ma @@ -1590,7 +1594,7 @@ ab bG UO aO -Fl +Uc bA bA yp diff --git a/_maps/shuttles/tgs_canterbury.dmm b/_maps/shuttles/tgs_canterbury.dmm index 6938ea9f984..907f024dd2a 100644 --- a/_maps/shuttles/tgs_canterbury.dmm +++ b/_maps/shuttles/tgs_canterbury.dmm @@ -816,7 +816,7 @@ /obj/structure/window/reinforced/toughened{ dir = 4 }, -/obj/machinery/loadout_vendor/crash, +/obj/machinery/quick_vendor/beginner, /turf/open/floor/mainship/cargo, /area/shuttle/canterbury) "KE" = ( diff --git a/code/__DEFINES/equipment.dm b/code/__DEFINES/equipment.dm index 6e74a31bb58..326b4d295cf 100644 --- a/code/__DEFINES/equipment.dm +++ b/code/__DEFINES/equipment.dm @@ -117,6 +117,12 @@ ///If a storage container can be restocked into a vendor #define BYPASS_VENDOR_CHECK (1<<0) +//flags_id +///If you can get buy a loadout +#define CAN_BUY_LOADOUT (1<<0) +///If you have used the GHMME +#define USED_GHMME (1<<1) + //========================================================================================== //flags_inv_hide diff --git a/code/__DEFINES/jobs.dm b/code/__DEFINES/jobs.dm index dff605b19ae..efd176e83bd 100644 --- a/code/__DEFINES/jobs.dm +++ b/code/__DEFINES/jobs.dm @@ -159,14 +159,3 @@ GLOBAL_LIST_INIT(jobs_fallen_marine, typecacheof(list(/datum/job/fallen/marine), #define SILO_ORIGIN "xenos from silo generation" #define SQUAD_MAX_POSITIONS(total_positions) CEILING(total_positions / length(SSjob.active_squads), 1) - -/// How many points a marine can spend in job specific vendors by default -#define DEFAULT_TOTAL_BUY_POINTS 45 -/// How many points a medic can spend on pills -#define MEDIC_TOTAL_BUY_POINTS 45 -/// How many points an engineer can spend -#define ENGINEER_TOTAL_BUY_POINTS 75 -/// How many points the field commander can spend -#define COMMANDER_TOTAL_BUY_POINTS 45 -/// How many points the synthetic can spend -#define SYNTH_TOTAL_BUY_POINTS 50 diff --git a/code/__DEFINES/loadout.dm b/code/__DEFINES/loadout.dm index 7bc87cc508f..93397daaae6 100644 --- a/code/__DEFINES/loadout.dm +++ b/code/__DEFINES/loadout.dm @@ -16,6 +16,10 @@ #define CAT_MOD "JAEGER STORAGE MODULES" #define CAT_ARMMOD "JAEGER ARMOR MODULES" +// Synth Special Categories +#define CAT_SMR "SUITS AND ARMOR" // Synth's suits +#define CAT_SHN "HATS" // Synth's non-protective hats + #define CAT_MEDSUP "MEDICAL SUPPLIES" #define CAT_ENGSUP "ENGINEERING SUPPLIES" #define CAT_LEDSUP "LEADER SUPPLIES" @@ -26,9 +30,34 @@ #define CAT_ROBOT "COMBAT ROBOT SUPPLIES" #define CAT_LOAD "LOADOUT" -// Synth Special Categories -#define CAT_SMR "SUITS AND ARMOR" // Synth's suits -#define CAT_SHN "HATS" // Synth's non-protective hats +/// How many points a marine can spend by default +#define MARINE_TOTAL_BUY_POINTS 45 +/// How many points the robot can spend +#define ROBOT_TOTAL_BUY_POINTS 45 +/// How many points the leader can spend +#define LEADER_TOTAL_BUY_POINTS 45 +/// How many points the leader can spend +#define SMARTGUNNER_TOTAL_BUY_POINTS 45 +/// How many points a medic can spend on pills +#define MEDIC_TOTAL_BUY_POINTS 45 +/// How many points an engineer can spend +#define ENGINEER_TOTAL_BUY_POINTS 75 +/// How many points the field commander can spend +#define COMMANDER_TOTAL_BUY_POINTS 45 +/// How many points the synthetic can spend +#define SYNTH_TOTAL_BUY_POINTS 50 + +GLOBAL_LIST_INIT(default_marine_points, list( + CAT_MARINE = MARINE_TOTAL_BUY_POINTS, + CAT_ROBOT = ROBOT_TOTAL_BUY_POINTS, + CAT_SGSUP = SMARTGUNNER_TOTAL_BUY_POINTS, + CAT_ENGSUP = ENGINEER_TOTAL_BUY_POINTS, + CAT_LEDSUP = LEADER_TOTAL_BUY_POINTS, + CAT_MEDSUP = MEDIC_TOTAL_BUY_POINTS, + CAT_FCSUP = COMMANDER_TOTAL_BUY_POINTS, + CAT_SYNTH = SYNTH_TOTAL_BUY_POINTS, +)) + #define VENDOR_FACTION_NEUTRAL "Neutral" #define VENDOR_FACTION_CRASH "Crash" @@ -74,7 +103,7 @@ GLOBAL_LIST_INIT(marine_gear_listed_products, list( /obj/structure/closet/crate/mortar_ammo/howitzer_kit = list(CAT_MARINE, "Howitzer kit", 35, "orange3"), /obj/structure/closet/crate/mortar_ammo/mlrs_kit = list(CAT_MARINE, "MLRS kit", 35, "orange3"), /obj/item/reagent_containers/hypospray/autoinjector/oxycodone = list(CAT_MARINE, "Oxycodone autoinjector", 5, "cyan"), - /obj/item/reagent_containers/hypospray/autoinjector/russian_red = list(CAT_MARINE, "Emergency autoinjecto", 10, "cyan"), + /obj/item/reagent_containers/hypospray/autoinjector/russian_red = list(CAT_MARINE, "Emergency autoinjector", 10, "cyan"), /obj/item/reagent_containers/hypospray/autoinjector/synaptizine = list(CAT_MARINE, "Synaptizine autoinjector", 8, "cyan"), /obj/vehicle/ridden/motorbike = list(CAT_MARINE, "Bike", 30, "blue"), /obj/item/sidecar = list(CAT_MARINE, "Bike sidecar", 8, "blue"), @@ -685,7 +714,7 @@ GLOBAL_LIST_INIT(medic_clothes_listed_products, list( /obj/item/armor_module/storage/uniform/holster = list(CAT_WEB, "Shoulder handgun holster", 0, "black"), /obj/item/storage/belt/lifesaver/full = list(CAT_BEL, "Lifesaver belt", 0, "orange"), /obj/item/storage/belt/rig/medical = list(CAT_BEL, "Rig belt", 0, "black"), - /obj/item/storage/belt/hypospraybelt = list(CAT_BEL, "Hypospray belt", 0, "black"), + /obj/item/storage/belt/hypospraybelt/full = list(CAT_BEL, "Hypospray belt", 0, "black"), /obj/item/armor_module/module/welding = list(CAT_HEL, "Jaeger welding module", 0, "orange"), /obj/item/armor_module/module/binoculars = list(CAT_HEL, "Jaeger binoculars module", 0, "orange"), /obj/item/armor_module/module/artemis = list(CAT_HEL, "Jaeger Freyr module", 0, "orange"), @@ -909,7 +938,7 @@ GLOBAL_LIST_INIT(synthetic_clothes_listed_products, list( /obj/item/clothing/gloves/white = list(CAT_GLO, "White gloves", 0, "black"), /obj/item/storage/belt/lifesaver/full = list(CAT_BEL, "Lifesaver belt", 0, "orange", "synth-attachable"), /obj/item/storage/belt/rig/medical = list(CAT_BEL, "Rig belt", 0, "black"), - /obj/item/storage/belt/hypospraybelt = list(CAT_BEL, "Hypospray belt", 0, "black"), + /obj/item/storage/belt/hypospraybelt/full = list(CAT_BEL, "Hypospray belt", 0, "black"), /obj/item/clothing/shoes/marine = list(CAT_SHO, "Marine combat boots", 0, "synth-rcmarmor"), /obj/item/clothing/shoes/white = list(CAT_SHO, "White shoes", 0, "synth-armor"), /obj/item/clothing/shoes/brown = list(CAT_SHO, "Brown shoes", 0, "synth-armor"), diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index a3828b13965..34c33c11cf0 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -481,6 +481,10 @@ GLOBAL_LIST_INIT(bitfields, list( "flags_storage" = list( "BYPASS_VENDOR_CHECK" = BYPASS_VENDOR_CHECK, ), + "flags_id" = list( + "CAN_BUY_LOADOUT" = CAN_BUY_LOADOUT, + "USED_GHMME" = USED_GHMME, + ), "ghost_hud" = list( "GHOST_HUD_MED" = GHOST_HUD_MED, "GHOST_HUD_SEC" = GHOST_HUD_SEC, diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm index 933d263cf64..bd9ced9abe7 100644 --- a/code/datums/outfit.dm +++ b/code/datums/outfit.dm @@ -44,32 +44,32 @@ //Start with uniform,suit,backpack for additional slots if(w_uniform) - H.equip_to_slot_or_del(new w_uniform(H),SLOT_W_UNIFORM, override_nodrop = TRUE) + H.equip_to_slot_or_del(new w_uniform(H), SLOT_W_UNIFORM, override_nodrop = TRUE) if(wear_suit) - H.equip_to_slot_or_del(new wear_suit(H),SLOT_WEAR_SUIT, override_nodrop = TRUE) + H.equip_to_slot_or_del(new wear_suit(H), SLOT_WEAR_SUIT, override_nodrop = TRUE) if(back) - H.equip_to_slot_or_del(new back(H),SLOT_BACK, override_nodrop = TRUE) + H.equip_to_slot_or_del(new back(H), SLOT_BACK, override_nodrop = TRUE) if(belt) - H.equip_to_slot_or_del(new belt(H),SLOT_BELT, override_nodrop = TRUE) + H.equip_to_slot_or_del(new belt(H), SLOT_BELT, override_nodrop = TRUE) if(gloves) - H.equip_to_slot_or_del(new gloves(H),SLOT_GLOVES, override_nodrop = TRUE) + H.equip_to_slot_or_del(new gloves(H), SLOT_GLOVES, override_nodrop = TRUE) if(shoes) - H.equip_to_slot_or_del(new shoes(H),SLOT_SHOES, override_nodrop = TRUE) + H.equip_to_slot_or_del(new shoes(H), SLOT_SHOES, override_nodrop = TRUE) if(head) - H.equip_to_slot_or_del(new head(H),SLOT_HEAD, override_nodrop = TRUE) + H.equip_to_slot_or_del(new head(H), SLOT_HEAD, override_nodrop = TRUE) if(mask) - H.equip_to_slot_or_del(new mask(H),SLOT_WEAR_MASK, override_nodrop = TRUE) + H.equip_to_slot_or_del(new mask(H), SLOT_WEAR_MASK, override_nodrop = TRUE) if(ears) if(visualsOnly) H.equip_to_slot_or_del(new /obj/item/radio/headset(H), SLOT_EARS, override_nodrop = TRUE) //We don't want marine cameras. For now they have the same item_state as the rest. else H.equip_to_slot_or_del(new ears(H), SLOT_EARS, override_nodrop = TRUE) if(glasses) - H.equip_to_slot_or_del(new glasses(H),SLOT_GLASSES, override_nodrop = TRUE) + H.equip_to_slot_or_del(new glasses(H), SLOT_GLASSES, override_nodrop = TRUE) if(id) - H.equip_to_slot_or_del(new id(H),SLOT_WEAR_ID, override_nodrop = TRUE) + H.equip_to_slot_or_del(new id(H), SLOT_WEAR_ID, override_nodrop = TRUE) if(suit_store) - H.equip_to_slot_or_del(new suit_store(H),SLOT_S_STORE, override_nodrop = TRUE) + H.equip_to_slot_or_del(new suit_store(H), SLOT_S_STORE, override_nodrop = TRUE) if(l_hand) H.put_in_l_hand(new l_hand(H)) if(r_hand) @@ -77,9 +77,9 @@ if(!visualsOnly) // Items in pockets or backpack don't show up on mob's icon. if(l_store) - H.equip_to_slot_or_del(new l_store(H),SLOT_L_STORE, override_nodrop = TRUE) + H.equip_to_slot_or_del(new l_store(H), SLOT_L_STORE, override_nodrop = TRUE) if(r_store) - H.equip_to_slot_or_del(new r_store(H),SLOT_R_STORE, override_nodrop = TRUE) + H.equip_to_slot_or_del(new r_store(H), SLOT_R_STORE, override_nodrop = TRUE) if(box) if(!backpack_contents) @@ -93,7 +93,7 @@ if(!isnum(number))//Default to 1 number = 1 for(var/i in 1 to number) - H.equip_to_slot_or_del(new path(H),SLOT_IN_BACKPACK, override_nodrop = TRUE) + H.equip_to_slot_or_del(new path(H), SLOT_IN_BACKPACK, override_nodrop = TRUE) post_equip(H, visualsOnly) diff --git a/code/datums/quick_load/_quick_load.dm b/code/datums/quick_load/_quick_load.dm new file mode 100644 index 00000000000..21ab939e25a --- /dev/null +++ b/code/datums/quick_load/_quick_load.dm @@ -0,0 +1,83 @@ +/datum/outfit/quick + ///Description of the loadout + var/desc = "Description here" + ///How much of this loadout there is. infinite by default + var/quantity = -1 + ///What job this loadout is associated with. Used for tabs and access. + var/jobtype = SQUAD_MARINE + +/datum/outfit/quick/equip(mob/living/carbon/human/H, visualsOnly = FALSE, client/override_client) + pre_equip(H, visualsOnly, override_client) + + //Start with uniform,suit,backpack for additional slots. Deletes any existing equipped item to avoid accidentally losing half your loadout. Not suitable for standard gamemodes! + if(w_uniform) + qdel(H.w_uniform) + H.equip_to_slot_or_del(new w_uniform(H), SLOT_W_UNIFORM, override_nodrop = TRUE) + if(wear_suit) + qdel(H.wear_suit) + H.equip_to_slot_or_del(new wear_suit(H), SLOT_WEAR_SUIT, override_nodrop = TRUE) + if(back) + qdel(H.back) + H.equip_to_slot_or_del(new back(H), SLOT_BACK, override_nodrop = TRUE) + if(belt) + qdel(H.belt) + H.equip_to_slot_or_del(new belt(H), SLOT_BELT, override_nodrop = TRUE) + if(gloves) + qdel(H.gloves) + H.equip_to_slot_or_del(new gloves(H), SLOT_GLOVES, override_nodrop = TRUE) + if(shoes) + qdel(H.shoes) + H.equip_to_slot_or_del(new shoes(H), SLOT_SHOES, override_nodrop = TRUE) + if(head) + qdel(H.head) + H.equip_to_slot_or_del(new head(H), SLOT_HEAD, override_nodrop = TRUE) + if(mask) + qdel(H.wear_mask) + H.equip_to_slot_or_del(new mask(H), SLOT_WEAR_MASK, override_nodrop = TRUE) + if(ears) + qdel(H.wear_ear) + if(visualsOnly) + H.equip_to_slot_or_del(new /obj/item/radio/headset(H), SLOT_EARS, override_nodrop = TRUE) + else + H.equip_to_slot_or_del(new ears(H, H.assigned_squad, H.job.type), SLOT_EARS, override_nodrop = TRUE) + if(glasses) + qdel(H.glasses) + H.equip_to_slot_or_del(new glasses(H), SLOT_GLASSES, override_nodrop = TRUE) + if(id) + H.equip_to_slot_or_del(new id(H), SLOT_WEAR_ID, override_nodrop = TRUE) + if(suit_store) + qdel(H.s_store) + H.equip_to_slot_or_del(new suit_store(H), SLOT_S_STORE, override_nodrop = TRUE) + if(l_hand) + qdel(H.l_hand) + H.put_in_l_hand(new l_hand(H)) + if(r_hand) + qdel(H.r_hand) + H.put_in_r_hand(new r_hand(H)) + + if(!visualsOnly) // Items in pockets or backpack don't show up on mob's icon. + if(l_store) + qdel(H.l_store) + H.equip_to_slot_or_del(new l_store(H), SLOT_L_STORE, override_nodrop = TRUE) + if(r_store) + qdel(H.r_store) + H.equip_to_slot_or_del(new r_store(H), SLOT_R_STORE, override_nodrop = TRUE) + + if(box) + if(!backpack_contents) + backpack_contents = list() + backpack_contents.Insert(1, box) + backpack_contents[box] = 1 + + if(backpack_contents) + for(var/path in backpack_contents) + var/number = backpack_contents[path] + if(!isnum(number))//Default to 1 + number = 1 + for(var/i in 1 to number) + H.equip_to_slot_or_del(new path(H), SLOT_IN_BACKPACK, override_nodrop = TRUE) + + post_equip(H, visualsOnly) + + H.update_body() + return TRUE diff --git a/code/datums/quick_load/beginner/_beginner.dm b/code/datums/quick_load/beginner/_beginner.dm new file mode 100644 index 00000000000..758a463c113 --- /dev/null +++ b/code/datums/quick_load/beginner/_beginner.dm @@ -0,0 +1,26 @@ +/*! + * Any loadout that is intended for the new player loadout vendor + */ + +///When making new loadouts, remember to also add the typepath to the list under init_beginner_loadouts() or else it won't show up in the vendor + +/datum/outfit/quick/beginner + name = "Beginner loadout base" + desc = "The base loadout for beginners. You shouldn't be able to see this" + jobtype = SQUAD_MARINE + + w_uniform = /obj/item/clothing/under/marine + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten + gloves = /obj/item/clothing/gloves/marine + mask = /obj/item/clothing/mask/bandanna + head = /obj/item/clothing/head/modular/m10x + r_store = /obj/item/storage/pouch/medkit/firstaid + l_store = /obj/item/storage/holster/flarepouch/full + back = /obj/item/storage/backpack/marine/satchel + belt = /obj/item/storage/belt/marine + ears = /obj/item/radio/headset/mainship/marine + +/datum/outfit/quick/beginner/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BOOT) diff --git a/code/datums/quick_load/beginner/corpsman.dm b/code/datums/quick_load/beginner/corpsman.dm new file mode 100644 index 00000000000..9bdf2c98e44 --- /dev/null +++ b/code/datums/quick_load/beginner/corpsman.dm @@ -0,0 +1,92 @@ +/datum/outfit/quick/beginner/corpsman + jobtype = SQUAD_CORPSMAN + + w_uniform = /obj/item/clothing/under/marine/corpsman/corpman_vest + glasses = /obj/item/clothing/glasses/hud/health + r_hand = /obj/item/medevac_beacon + +/datum/outfit/quick/beginner/corpsman/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + +/datum/outfit/quick/beginner/corpsman/lifesaver + name = "Standard Lifesaver" + desc = "Miracle in progress. \ + Wields the bolt action Leicaster Repeater, and is equipped with a large variety of medicine for keeping the entire corps topped up and in the fight." + + suit_store = /obj/item/weapon/gun/shotgun/pump/lever/repeater/beginner + wear_suit = /obj/item/clothing/suit/modular/xenonauten/mimirinjector + gloves = /obj/item/defibrillator/gloves + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/mimir + r_store = /obj/item/storage/pouch/medkit/medic + l_store = /obj/item/storage/pouch/shotgun + back = /obj/item/storage/backpack/marine/corpsman + belt = /obj/item/storage/belt/lifesaver/beginner + l_hand = /obj/item/paper/tutorial/lifesaver + +/datum/outfit/quick/beginner/corpsman/lifesaver/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/oxycodone, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/nanoblood, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/roller/medevac, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/tweezers, SLOT_IN_ACCESSORY) + + for(var/i in 1 to 8) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_SUIT) + for(var/i in 1 to 2) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dexalinplus, SLOT_IN_SUIT) + for(var/i in 1 to 2) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + for(var/i in 1 to 2) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon, SLOT_IN_SUIT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_BACKPACK) + + for(var/i in 1 to 7) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p4570, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + for(var/i in 1 to 7) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/repeater, SLOT_IN_L_POUCH) + +/datum/outfit/quick/beginner/corpsman/hypobelt + name = "Standard Hypobelt" + desc = "Putting the combat in combat medic. \ + Wields the pump action SH-35 shotgun, and is equipped with a belt full of hyposprays for rapidly treating patients in bad condition." + + suit_store = /obj/item/weapon/gun/shotgun/pump/t35/beginner + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/lightmedical + gloves = /obj/item/healthanalyzer/gloves + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/antenna + r_store = /obj/item/storage/pouch/medkit/medic + l_store = /obj/item/storage/pouch/shotgun + back = /obj/item/storage/backpack/marine/corpsman + belt = /obj/item/storage/belt/hypospraybelt/beginner + l_hand = /obj/item/paper/tutorial/hypobelt + +/datum/outfit/quick/beginner/corpsman/hypobelt/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/stack/medical/splint, SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/oxycodone, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/roller/medevac, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/tweezers, SLOT_IN_SUIT) + + for(var/i in 1 to 7) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/slug, SLOT_IN_L_POUCH) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/defibrillator/advanced, SLOT_IN_BACKPACK) + for(var/i in 1 to 4) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/shotgun, SLOT_IN_BACKPACK) diff --git a/code/datums/quick_load/beginner/engineer.dm b/code/datums/quick_load/beginner/engineer.dm new file mode 100644 index 00000000000..b4d344d4972 --- /dev/null +++ b/code/datums/quick_load/beginner/engineer.dm @@ -0,0 +1,102 @@ +/datum/outfit/quick/beginner/engineer + jobtype = SQUAD_ENGINEER + + w_uniform = /obj/item/clothing/under/marine/brown_vest + gloves = /obj/item/clothing/gloves/marine/insulated + l_store = /obj/item/storage/pouch/tools/engineer + +/datum/outfit/quick/beginner/engineer/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + + human.equip_to_slot_or_del(new /obj/item/explosive/grenade/chem_grenade/razorburn_smol, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/tool/handheld_charger/hicapcell, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/medium_stack, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + + human.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + human.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + +/datum/outfit/quick/beginner/engineer/builder + name = "Engineer Standard" + desc = "Born to build. Equipped with a metric ton of metal, you can be certain that a lack of barricades is not a possibility with you around." + + suit_store = /obj/item/weapon/gun/smg/vector/beginner + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/mimirengi + mask = /obj/item/clothing/mask/gas/tactical + head = /obj/item/clothing/head/modular/m10x/mimir + back = /obj/item/storage/backpack/marine/radiopack + glasses = /obj/item/clothing/glasses/welding/superior + l_hand = /obj/item/paper/tutorial/builder + +/datum/outfit/quick/beginner/engineer/builder/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + + for(var/i in 1 to 7) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/vector, SLOT_IN_BELT) + + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/small_stack, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/full, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/basic, SLOT_IN_BACKPACK) + for(var/i in 1 to 4) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/acp, SLOT_IN_BACKPACK) + +/datum/outfit/quick/beginner/engineer/burnitall + name = "Flamethrower" + desc = "For those who truly love to watch the world burn. Equipped with a laser and a flamethrower, you can be certain that none of your enemies will be left un-burnt." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/beginner + wear_suit = /obj/item/clothing/suit/modular/xenonauten/engineer + mask = /obj/item/clothing/mask/gas/tactical/coif + head = /obj/item/clothing/head/modular/m10x/superiorwelding + back = /obj/item/storage/holster/backholster/flamer + belt = /obj/item/storage/belt/marine/te_cells + glasses = /obj/item/clothing/glasses/meson + l_hand = /obj/item/paper/tutorial/flamer + +/datum/outfit/quick/beginner/engineer/burnitall/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/medium_stack, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/tool/multitool, SLOT_IN_SUIT) + + human.equip_to_slot_or_del(new /obj/item/weapon/gun/flamer/big_flamer/marinestandard/engineer/beginner(human), SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/storage/box/explosive_mines/large, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/basic, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_BACKPACK) + +/datum/outfit/quick/beginner/engineer/pcenjoyer + name = "Plasma Cutter" + desc = "For the open-air enjoyers. Equipped with a plasma cutter, you will be able to cut down all types of walls and obstacles that dare exist within your vicinity." + + suit_store = /obj/item/tool/pickaxe/plasmacutter + wear_suit = /obj/item/clothing/suit/modular/xenonauten/engineer + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/superiorwelding + back = /obj/item/storage/backpack/marine/engineerpack + belt = /obj/item/belt_harness/marine + glasses = /obj/item/clothing/glasses/meson + l_hand = /obj/item/paper/tutorial/plasmacutter + +/datum/outfit/quick/beginner/engineer/pcenjoyer/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/small_stack, SLOT_IN_SUIT) + + human.equip_to_slot_or_del(new /obj/item/weapon/gun/revolver/r44(human), SLOT_IN_BACKPACK) + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/revolver/r44, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/basic, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/magnum, SLOT_IN_BACKPACK) diff --git a/code/datums/quick_load/beginner/marine.dm b/code/datums/quick_load/beginner/marine.dm new file mode 100644 index 00000000000..270ff63b38d --- /dev/null +++ b/code/datums/quick_load/beginner/marine.dm @@ -0,0 +1,223 @@ +/datum/outfit/quick/beginner/marine/rifleman + name = "Rifleman" + desc = "A typical rifleman for the marines. \ + Wields the AR-12, a versatile all-rounder assault rifle with a powerful underbarrel grenade launcher attached. \ + Also carries the strong P-23 sidearm and a variety of flares, medical equipment, and more for every situation." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/hodgrenades + head = /obj/item/clothing/head/modular/m10x/hod + w_uniform = /obj/item/clothing/under/marine/holster + suit_store = /obj/item/weapon/gun/rifle/ar12/medic + l_hand = /obj/item/paper/tutorial/beginner_rifleman + +/datum/outfit/quick/beginner/marine/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + +/datum/outfit/quick/beginner/marine/rifleman/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_BACKPACK) + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BELT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/beginner(human), SLOT_IN_ACCESSORY) + + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/marine/machinegunner + name = "Machinegunner" + desc = "The king of suppressive fire. Uses the MG-60, a fully automatic 200 round machine gun with a bipod attached. \ + Excels at denying large areas to the enemy and eliminating those who refuse to leave." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_onegeneral + head = /obj/item/clothing/head/modular/m10x/tyr + w_uniform = /obj/item/clothing/under/marine/black_vest + back = /obj/item/storage/backpack/marine/standard + belt = /obj/item/storage/belt/sparepouch + suit_store = /obj/item/weapon/gun/rifle/mg60/beginner + mask = /obj/item/clothing/mask/rebreather + l_hand = /obj/item/paper/tutorial/beginner_machinegunner + +/datum/outfit/quick/beginner/marine/machinegunner/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 8) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BACKPACK) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) + + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/plasma_pistol, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/marine/marksman + name = "Marksman" + desc = "Quality over quantity. Equipped with the DMR-37, an accurate long-range designated marksman rifle with a scope attached. \ + While subpar in close quarters, the precision of the DMR is unmatched, exceeding at taking out threats from afar." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/lightmedical + head = /obj/item/clothing/head/modular/m10x/tyr + w_uniform = /obj/item/clothing/under/marine/holster + belt = /obj/item/belt_harness/marine + l_store = /obj/item/storage/pouch/magazine/large + r_store = /obj/item/storage/pouch/magazine/large + suit_store = /obj/item/weapon/gun/rifle/dmr37/beginner + mask = /obj/item/clothing/mask/breath + l_hand = /obj/item/paper/tutorial/beginner_marksman + +/datum/outfit/quick/beginner/marine/marksman/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_BACKPACK) + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x27mm, SLOT_IN_BACKPACK) + + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/dmr37, SLOT_IN_L_POUCH) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/beginner(human), SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/bicaridine, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/kelotane, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/tricordrazine, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/tramadol, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/marine/shotgunner + name = "Shotgunner" + desc = "Up close and personal. Wields the SH-39, a semi-automatic shotgun loaded with slugs. \ + An absolute monster at short to mid range, the shotgun will do heavy damage to any target hit, as well as stunning them briefly, staggering them, and knocking them back." + + w_uniform = /obj/item/clothing/under/marine/holster + wear_suit = /obj/item/clothing/suit/modular/xenonauten/lightgeneral + suit_store = /obj/item/weapon/gun/shotgun/combat/standardmarine/beginner + belt = /obj/item/storage/belt/shotgun + head = /obj/item/clothing/head/modular/m10x/freyr + gloves = /obj/item/clothing/gloves/marine/fingerless + mask = /obj/item/clothing/mask/gas/tactical/coif + l_hand = /obj/item/paper/tutorial/beginner_shotgunner + +/datum/outfit/quick/beginner/marine/shotgunner/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/shotgun, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/shotgun, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_BACKPACK) + + for(var/i in 1 to 14) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/slug, SLOT_IN_BELT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/plasma_pistol/beginner(human), SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/marine/shocktrooper + name = "Shocktrooper" + desc = "The bleeding edge of the corps. \ + Equipped with the experimental battery-fed laser rifle, featuring four different modes that can be freely swapped between, with an underbarrel flamethrower for area denial and clearing mazes." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/medic + belt = /obj/item/storage/belt/marine/te_cells + glasses = /obj/item/clothing/glasses/sunglasses/fake/big + wear_suit = /obj/item/clothing/suit/modular/xenonauten/lightgeneral + head = /obj/item/clothing/head/modular/m10x/freyr + mask = /obj/item/clothing/mask/gas/tactical/coif + r_store = /obj/item/cell/lasgun/volkite/powerpack/marine + w_uniform = /obj/item/clothing/under/marine/corpman_vest + l_hand = /obj/item/paper/tutorial/beginner_shocktrooper + +/datum/outfit/quick/beginner/marine/shocktrooper/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 5) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_BACKPACK) + + human.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/powerpack/marine, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_SUIT) + + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/bicaridine, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/kelotane, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/tricordrazine, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/tramadol, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/dylovene, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/beginner/marine/hazmat + name = "Hazmat" + desc = "Designed for danger. \ + Wields the Type 71 'GROZA', a powerful yet innacurate assault rifle that fires auto-bursts. \ + Wears Mimir combat armor, rendering the user immune to the dangerous toxic gas possessed by many xenomorphs." + + head = /obj/item/clothing/head/modular/m10x/mimir + suit_store = /obj/item/weapon/gun/rifle/type71/beginner + w_uniform = /obj/item/clothing/under/marine/black_vest + wear_suit = /obj/item/clothing/suit/modular/xenonauten/mimir + mask = /obj/item/clothing/mask/rebreather/scarf + l_hand = /obj/item/paper/tutorial/beginner_hazmat + +/datum/outfit/quick/beginner/marine/hazmat/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/groza, SLOT_IN_BACKPACK) + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_BACKPACK) + + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/type71, SLOT_IN_BELT) + + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/plasma_pistol, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/marine/cqc + name = "CQC" + desc = "Swift and lethal. \ + Equipped with the AR-18, a lightweight carbine with a rapid-fire burst mode. Designed for maximum mobility, soldiers are able to rush in, assault the enemy, and retreat before they can respond." + + suit_store = /obj/item/weapon/gun/rifle/ar18/beginner + wear_suit = /obj/item/clothing/suit/modular/xenonauten/lightgeneral + w_uniform = /obj/item/clothing/under/marine/black_vest + head = /obj/item/clothing/head/modular/m10x/freyr + glasses = /obj/item/clothing/glasses/mgoggles + l_hand = /obj/item/paper/tutorial/beginner_cqc + +/datum/outfit/quick/beginner/marine/cqc/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + for(var/i in 1 to 6) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar18, SLOT_IN_BELT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_BACKPACK) + + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/plasma_pistol, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/beginner/robot.dm b/code/datums/quick_load/beginner/robot.dm new file mode 100644 index 00000000000..654acd9f737 --- /dev/null +++ b/code/datums/quick_load/beginner/robot.dm @@ -0,0 +1,78 @@ +/datum/outfit/quick/beginner/robot + jobtype = SQUAD_ROBOT + + w_uniform = /obj/item/clothing/under/marine/robotic/black_vest + shoes = null + wear_suit = /obj/item/clothing/suit/modular/robot + gloves = null + mask = null + head = /obj/item/clothing/head/modular/robot + r_store = /obj/item/storage/pouch/tools/full + +/datum/outfit/quick/beginner/robot/post_equip(mob/living/carbon/human/robot, visualsOnly) + robot.equip_to_slot_or_del(new /obj/item/tool/surgery/solderingtool, SLOT_IN_ACCESSORY) + robot.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_ACCESSORY) + robot.equip_to_slot_or_del(new /obj/item/tool/weldingtool, SLOT_IN_ACCESSORY) + robot.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + robot.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + + robot.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_HEAD) + robot.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_HEAD) + +/datum/outfit/quick/beginner/robot/laser_rifle + name = "Laser Rifleman" + desc = "A typycal robotic rifleman. Uses the Laser Rifle, often called as the TE-M by marines. Has multiple firemodes for tactical flexibility. Uses standard Terra Experimental (abbreviated as TE) power cells. \ + As with all TE Laser weapons, they use a lightweight alloy combined without the need for bullets any longer decreases their weight and aiming speed quite some vs their ballistic counterparts." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/medic + belt = /obj/item/storage/belt/marine + head = /obj/item/clothing/head/modular/robot/motion_detector + wear_suit = /obj/item/clothing/suit/modular/robot/svalinn + l_hand = /obj/item/paper/tutorial/robot_laser_rifleman + +/datum/outfit/quick/beginner/robot/laser_rifle/post_equip(mob/living/carbon/human/robot, visualsOnly) + . = ..() + for(var/i in 1 to 3) + robot.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BELT) + for(var/i in 1 to 3) + robot.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle/recharger, SLOT_IN_BELT) + + for(var/i in 1 to 6) + robot.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) + robot.equip_to_slot_or_del(new /obj/item/weapon/powerfist/full, SLOT_IN_BACKPACK) + + robot.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/powerpack/marine, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/robot/laser_machinegunner + name = "Laser Machinegunner" + desc = "The king of suppressive fire. Uses the Laser Machinegun, often called as the TE-M by marines. High efficiency modulators ensure the TE-M has an extremely high fire count, and multiple firemodes makes it a flexible infantry support gun. Uses standard Terra Experimental (abbreviated as TE) power cells. \ + As with all TE Laser weapons, they use a lightweight alloy combined without the need for bullets any longer decreases their weight and aiming speed quite some vs their ballistic counterparts." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_mlaser/beginner + back = /obj/item/cell/lasgun/volkite/powerpack/marine_back + belt = /obj/item/belt_harness/marine + head = /obj/item/clothing/head/modular/robot/heavy/tyr + wear_suit = /obj/item/clothing/suit/modular/robot/heavy/tyr_onegeneral + l_hand = /obj/item/paper/tutorial/robot_laser_machinegunner + +/datum/outfit/quick/beginner/robot/laser_machinegunner/post_equip(mob/living/carbon/human/robot, visualsOnly) + . = ..() + robot.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_SUIT) + robot.equip_to_slot_or_del(new /obj/item/weapon/powerfist/full, SLOT_IN_SUIT) + +/datum/outfit/quick/beginner/robot/laser_sniper + name = "Laser Sniper" + desc = "The king of suppressive fire. Uses the Laser Sniper Rifle, it has an integrated charge selector for normal, heat, and overcharge settings. Uses standard Terra Experimental (abbreviated as TE) power cells. \ + As with all TE Laser weapons, they use a lightweight alloy combined without the need for bullets any longer decreases their weight and aiming speed quite some vs their ballistic counterparts." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_sniper/beginner + back = /obj/item/cell/lasgun/volkite/powerpack/marine_back + belt = /obj/item/storage/holster/belt/pistol/laser + head = /obj/item/clothing/head/modular/robot/light/motion_detector + wear_suit = /obj/item/clothing/suit/modular/robot/light/baldur_general + l_hand = /obj/item/paper/tutorial/robot_laser_sniper + +/datum/outfit/quick/beginner/robot/laser_sniper/post_equip(mob/living/carbon/human/robot, visualsOnly) + . = ..() + robot.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_SUIT) + robot.equip_to_slot_or_del(new /obj/item/weapon/powerfist/full, SLOT_IN_SUIT) diff --git a/code/datums/quick_load/beginner/smartgunner.dm b/code/datums/quick_load/beginner/smartgunner.dm new file mode 100644 index 00000000000..2bec9cc7e06 --- /dev/null +++ b/code/datums/quick_load/beginner/smartgunner.dm @@ -0,0 +1,55 @@ +/datum/outfit/quick/beginner/smartgunner + jobtype = SQUAD_SMARTGUNNER + + w_uniform = /obj/item/clothing/under/marine/black_vest + wear_suit = /obj/item/clothing/suit/modular/xenonauten/lightgeneral + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/antenna + belt = /obj/item/belt_harness/marine + glasses = /obj/item/clothing/glasses/night/m56_goggles + +/datum/outfit/quick/beginner/smartgunner/post_equip(mob/living/carbon/human/human, visualsOnly) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_HEAD) + human.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/inaprovaline, SLOT_IN_HEAD) + +/datum/outfit/quick/beginner/smartgunner/sg29 + name = "Standard Smartmachinegun" + desc = "Tactical support fire. \ + Uses the SG-29, a specialist light machine gun that will shoot through your allies, \ + equipped with a tactical sensor to detect enemies through smoke, walls, and darkness." + + suit_store = /obj/item/weapon/gun/rifle/sg29/pmc + l_hand = /obj/item/paper/tutorial/smartmachinegunner + +/datum/outfit/quick/beginner/smartgunner/sg29/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/plasma_pistol, SLOT_IN_SUIT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) + + for(var/i in 1 to 4) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) + human.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + +/datum/outfit/quick/beginner/smartgunner/sg85 + name = "Standard Smartminigun" + desc = "Lead wall! Wields the SG-85, a specialist minigun that holds one thousand rounds and can shoot through your allies, \ + equipped with a tactical sensor to detect enemies through smoke, walls, and darkness." + + suit_store = /obj/item/weapon/gun/minigun/smart_minigun/motion_detector + back = /obj/item/ammo_magazine/minigun_powerpack/smartgun + l_hand = /obj/item/paper/tutorial/smartminigunner + +/datum/outfit/quick/beginner/smartgunner/sg85/post_equip(mob/living/carbon/human/human, visualsOnly) + . = ..() + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_SUIT) + human.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_SUIT) + + for(var/i in 1 to 3) + human.equip_to_slot_or_del(new /obj/item/storage/box/m94, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_ACCESSORY) + human.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/som/_som.dm b/code/datums/quick_load/som/_som.dm new file mode 100644 index 00000000000..a318ad50073 --- /dev/null +++ b/code/datums/quick_load/som/_som.dm @@ -0,0 +1,4 @@ +//Base SOM outfit +/datum/outfit/quick/som + name = "SOM base" + desc = "This is the base typepath for all SOM quick vendor outfits. You shouldn't see this." diff --git a/code/datums/quick_load/som/engineer.dm b/code/datums/quick_load/som/engineer.dm new file mode 100644 index 00000000000..91d7956c0db --- /dev/null +++ b/code/datums/quick_load/som/engineer.dm @@ -0,0 +1,178 @@ +//Base SOM engineer outfit +/datum/outfit/quick/som/engineer + name = "SOM Squad Engineer" + jobtype = "SOM Squad Engineer" + + ears = /obj/item/radio/headset/distress/som + w_uniform = /obj/item/clothing/under/som/webbing + shoes = /obj/item/clothing/shoes/marine/som/knife + wear_suit = /obj/item/clothing/suit/modular/som/engineer + gloves = /obj/item/clothing/gloves/marine/som/insulated + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/som/engineer + glasses = /obj/item/clothing/glasses/meson + r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol + l_store = /obj/item/storage/pouch/tools/som/full + back = /obj/item/storage/backpack/lightpack/som + +/datum/outfit/quick/som/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/cell/high, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/medium_stack, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_SUIT) + +/datum/outfit/quick/som/engineer/standard_assaultrifle + name = "V-31 Engineer" + desc = "Battlefield engineer; building up and tearing down. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." + + suit_store = /obj/item/weapon/gun/rifle/som/standard + belt = /obj/item/storage/belt/marine/som/som_rifle + +/datum/outfit/quick/som/engineer/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/engineer/mpi + name = "MPI-KM Engineer" + desc = "Battlefield engineer; building up and tearing down. Equipped with an MPI_KM assault rifle, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." + + suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/magharness + belt = /obj/item/storage/belt/marine/som/mpi_black + +/datum/outfit/quick/som/engineer/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/engineer/standard_carbine + name = "V-34 Engineer" + desc = "Battlefield engineer; building up and tearing down. Equipped with a V-34 carbine, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." + + suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard + belt = /obj/item/storage/belt/marine/som/carbine_black + +/datum/outfit/quick/som/engineer/standard_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/engineer/standard_smg + name = "V-21 Engineer" + desc = "Battlefield engineer; building up and tearing down. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. " + + suit_store = /obj/item/weapon/gun/smg/som/support + belt = /obj/item/storage/belt/marine/som/som_smg + +/datum/outfit/quick/som/engineer/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/engineer/standard_shotgun + name = "V-51 Engineer" + desc = "Battlefield engineer; building up and tearing down. Equipped with a V-51 semi-automatic shotgun, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. " + + belt = /obj/item/storage/belt/shotgun/som/flechette + suit_store = /obj/item/weapon/gun/shotgun/som/support + +/datum/outfit/quick/som/engineer/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/som/leader.dm b/code/datums/quick_load/som/leader.dm new file mode 100644 index 00000000000..5fb40442f85 --- /dev/null +++ b/code/datums/quick_load/som/leader.dm @@ -0,0 +1,148 @@ +//Base SOM leader outfit +/datum/outfit/quick/som/squad_leader + name = "SOM Squad Leader" + jobtype = "SOM Squad Leader" + + ears = /obj/item/radio/headset/distress/som + w_uniform = /obj/item/clothing/under/som/leader/webbing + shoes = /obj/item/clothing/shoes/marine/som/knife + wear_suit = /obj/item/clothing/suit/modular/som/heavy/leader/valk + gloves = /obj/item/clothing/gloves/marine/som/veteran + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/som/leader + glasses = /obj/item/clothing/glasses/hud/health + r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol_leader + l_store = /obj/item/storage/pouch/grenade/som/combat_patrol + back = /obj/item/storage/backpack/satchel/som + +/datum/outfit/quick/som/squad_leader/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/som/squad_leader/standard_assaultrifle + name = "V-31 Squad Leader" + desc = "Tactical utility. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, Gorgon heavy armor with 'Valkyrie' autodoctor module, a large variety of grenades as well as AP ammunition. Excellent performance against heavily armored targets, while the plentiful grenade provide greater tactical flexibility." + + back = /obj/item/storage/backpack/lightpack/som + suit_store = /obj/item/weapon/gun/rifle/som/veteran + belt = /obj/item/storage/belt/marine/som/som_rifle_ap + +/datum/outfit/quick/som/squad_leader/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/squad_leader/standard_smg + name = "V-21 Squad Leader" + desc = "Close range high damage, high speed. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, Gorgon heavy armor with 'Valkyrie' autodoctor module, a good variety of grenades and AP ammunition. Allows for excellent close to medium range firepower, especially against heavily armored targets, and is surprisingly mobile." + + suit_store = /obj/item/weapon/gun/smg/som/veteran + belt = /obj/item/storage/belt/marine/som/som_smg_ap + +/datum/outfit/quick/som/squad_leader/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/squad_leader/charger + name = "Charger Squad Leader" + desc = "For the leader that prefers to be up close and personal. Equipped with a volkite charger with motion sensor and gyrostabiliser for better one handed use, Gorgon heavy armor with 'Valkyrie' autodoctor module and a good variety of grenades. Allows for excellent close to medium range firepower, with first rate survivability. Very dangerous." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/scout + belt = /obj/item/storage/belt/marine/som/volkite + +/datum/outfit/quick/som/squad_leader/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/squad_leader/caliver + name = "Caliver Squad Leader" + desc = "Victory through superior firepower. Equipped with a volkite caliver and motion sensor, Gorgon heavy armor with 'Valkyrie' autodoctor module and a good variety of grenades. Allows for excellent damage at all ranges, with first rate survivability. Very dangerous." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/tacsensor + belt = /obj/item/storage/belt/marine/som/volkite + +/datum/outfit/quick/som/squad_leader/caliver/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/squad_leader/mpi + name = "MPI_KM Squad Leader" + desc = "For the leader with a taste for nostalgia. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher, Gorgon heavy armor with 'Valkyrie' autodoctor module and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." + + suit_store = /obj/item/weapon/gun/rifle/mpi_km/grenadier + belt = /obj/item/storage/belt/marine/som/mpi_plum + +/datum/outfit/quick/som/squad_leader/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/extended, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/som/marine.dm b/code/datums/quick_load/som/marine.dm new file mode 100644 index 00000000000..f43e6f81559 --- /dev/null +++ b/code/datums/quick_load/som/marine.dm @@ -0,0 +1,289 @@ +//Base SOM marine outfit +/datum/outfit/quick/som/marine + name = "SOM Squad Marine" + jobtype = "SOM Squad Standard" + + ears = /obj/item/radio/headset/distress/som + w_uniform = /obj/item/clothing/under/som/webbing + shoes = /obj/item/clothing/shoes/marine/som/knife + wear_suit = /obj/item/clothing/suit/modular/som/shield + gloves = /obj/item/clothing/gloves/marine/som + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/som + r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol + l_store = /obj/item/storage/pouch/grenade/som/combat_patrol + back = /obj/item/storage/backpack/satchel/som + +/datum/outfit/quick/som/marine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/som/marine/standard_assaultrifle + name = "V-31 Infantryman" + desc = "The typical SOM infantryman. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor and a good selection of grenades. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." + + suit_store = /obj/item/weapon/gun/rifle/som/standard + belt = /obj/item/storage/belt/marine/som/som_rifle + +/datum/outfit/quick/som/marine/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/mpi + name = "MPI_KM Infantryman" + desc = "A call back to an earlier time. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." + + suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/grenadier + belt = /obj/item/storage/belt/marine/som/mpi_black + +/datum/outfit/quick/som/marine/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/light_carbine + name = "V-34 Light Infantryman" + desc = "Mobile and dangerous. Equipped with a V-34 carbine, light armor with an 'Aegis' shield module and a large supply of grenades. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." + + wear_suit = /obj/item/clothing/suit/modular/som/light/shield + suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard + belt = /obj/item/storage/belt/marine/som/carbine_black + +/datum/outfit/quick/som/marine/light_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/scout + name = "V-21 Light Infantryman" + desc = "Highly mobile scouting configuration. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, light armor with an 'Aegis' shield module and a good selection of grenades. Allows for exceptional mobility and blistering firepower, it will falter in extended engagements where low armor and the V-21's high rate of fire can become liabilities." + + wear_suit = /obj/item/clothing/suit/modular/som/light/shield + suit_store = /obj/item/weapon/gun/smg/som/scout + belt = /obj/item/storage/belt/marine/som/som_smg + +/datum/outfit/quick/som/marine/scout/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/shotgunner + name = "V-51 Pointman" + desc = "For close encounters. Equipped with a V-51 semi-automatic shotgun, light armor with an 'Aegis' shield module and a large selection of grenades. Allows for good mobility and dangerous CQC firepower." + + belt = /obj/item/storage/belt/shotgun/som/mixed + wear_suit = /obj/item/clothing/suit/modular/som/light/shield + suit_store = /obj/item/weapon/gun/shotgun/som/standard + +/datum/outfit/quick/som/marine/shotgunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/pyro + name = "V-62 Flamethrower Operator" + desc = "Smells like victory. Equipped with an V-62 incinerator and wide nozzle, V-11 equipped for rapid burst fire, heavy armor upgraded with a 'Hades' fireproof module, and a backtank of fuel. Has better than average range and can quickly burn down large areas. It suffers from significant slowdown, lacks an integrated extinguisher, and undisciplined use can result in rapidly consuming all available fuel." + + head = /obj/item/clothing/head/modular/som/hades + wear_suit = /obj/item/clothing/suit/modular/som/heavy/pyro + belt = /obj/item/storage/holster/belt/pistol/m4a3/som + back = /obj/item/ammo_magazine/flamer_tank/backtank + suit_store = /obj/item/weapon/gun/flamer/som/mag_harness + +/datum/outfit/quick/som/marine/pyro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/breacher + name = "V-21 Breacher" + desc = "Heavy armored breaching configuration. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, heavy armor, a boarding shield and a good selection of grenades. Offers outstanding protection although damage may be lacking, particular at longer range." + + glasses = /obj/item/clothing/glasses/welding + wear_suit = /obj/item/clothing/suit/modular/som/heavy/shield + suit_store = /obj/item/weapon/gun/smg/som/one_handed + belt = /obj/item/storage/belt/marine/som/som_smg + r_hand = /obj/item/weapon/shield/riot/marine/som + +/datum/outfit/quick/som/marine/breacher/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/breacher_melee + name = "CQC Breacher" + desc = "For when a complete lack of subtlety is required. Equipped with 'Lorica' enhanced heavy armor and armed with a monsterous two handed breaching axe, designed to cut through heavy armor. When properly wielded, it also provides a degree of protection." + + head = /obj/item/clothing/head/modular/som/lorica + wear_suit = /obj/item/clothing/suit/modular/som/heavy/lorica + suit_store = /obj/item/weapon/twohanded/fireaxe/som + belt = /obj/item/storage/holster/belt/pistol/m4a3/som + +/datum/outfit/quick/som/marine/breacher_melee/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/marine/machine_gunner + name = "V-41 Machinegunner" + desc = "Heavy static firesupport. Equipped with a V-41 machine gun, burst fire V-11 sidearm and some basic building supplies. While often ill suited to the SOM's standard doctrine of mobility and aggression, the V-41 is typically seen in defensive positions or second line units where its poor mobility is a minor drawback compared to its sustained firepower." + + suit_store = /obj/item/weapon/gun/rifle/som_mg/standard + belt = /obj/item/storage/holster/belt/pistol/m4a3/som + l_store = /obj/item/storage/pouch/construction/som + +/datum/outfit/quick/som/marine/machine_gunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) + +/datum/outfit/quick/som/marine/charger + name = "Charger Infantryman" + desc = "The future infantryman of the SOM. Equipped with a volkite charger, medium armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The charger is the SOM's premier close/medium range weapon, with good mobility, and can be used (with some difficulty) one handed when required." + quantity = 4 + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/magharness + belt = /obj/item/storage/belt/marine/som/volkite + +/datum/outfit/quick/som/marine/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/som/medic.dm b/code/datums/quick_load/som/medic.dm new file mode 100644 index 00000000000..da5b9eaf6ae --- /dev/null +++ b/code/datums/quick_load/som/medic.dm @@ -0,0 +1,170 @@ +//Base SOM medic outfit +/datum/outfit/quick/som/medic + name = "SOM Squad Medic" + jobtype = "SOM Squad Medic" + + belt = /obj/item/storage/belt/lifesaver/som/quick + ears = /obj/item/radio/headset/distress/som + w_uniform = /obj/item/clothing/under/som/medic/vest + shoes = /obj/item/clothing/shoes/marine/som/knife + wear_suit = /obj/item/clothing/suit/modular/som/medic + gloves = /obj/item/clothing/gloves/marine/som + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/som + glasses = /obj/item/clothing/glasses/hud/health + r_store = /obj/item/storage/pouch/magazine/large/som + l_store = /obj/item/storage/pouch/grenade/som/combat_patrol + back = /obj/item/storage/backpack/lightpack/som + +/datum/outfit/quick/som/medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tweezers_advanced, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/spaceacillin, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/nanoblood, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/combat_advanced, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/defibrillator, SLOT_IN_SUIT) + +/datum/outfit/quick/som/medic/standard_assaultrifle + name = "V-31 Medic" + desc = "Keeping your buddies alive and in the fight. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." + + suit_store = /obj/item/weapon/gun/rifle/som/standard + +/datum/outfit/quick/som/medic/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) + +/datum/outfit/quick/som/medic/mpi + name = "MPI_KM Medic" + desc = "Keeping your buddies alive and in the fight. Equipped with an MPI_KM assault rifle, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." + + suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/magharness + +/datum/outfit/quick/som/medic/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) + +/datum/outfit/quick/som/medic/standard_carbine + name = "V-34 Medic" + desc = "Keeping your buddies alive and in the fight. Equipped with an V-34 carbine, medium armor for massive firepower and mobility, but poor ammo economy and range. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." + + suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard + +/datum/outfit/quick/som/medic/standard_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) + +/datum/outfit/quick/som/medic/standard_smg + name = "V-21 Medic" + desc = "Keeping your buddies alive and in the fight. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability." + + suit_store = /obj/item/weapon/gun/smg/som/support + +/datum/outfit/quick/som/medic/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) + +/datum/outfit/quick/som/medic/standard_shotgun + name = "V-51 Medic" + desc = "Keeping your buddies alive and in the fight. Equipped with a V-51 semi-automatic shotgun, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability." + + r_store = /obj/item/storage/pouch/shotgun/som + suit_store = /obj/item/weapon/gun/shotgun/som/support + +/datum/outfit/quick/som/medic/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) diff --git a/code/datums/quick_load/som/veteran.dm b/code/datums/quick_load/som/veteran.dm new file mode 100644 index 00000000000..c1e51db6611 --- /dev/null +++ b/code/datums/quick_load/som/veteran.dm @@ -0,0 +1,303 @@ +//Base SOM veteran outfit +/datum/outfit/quick/som/veteran + name = "SOM Squad Veteran" + jobtype = "SOM Squad Veteran" + + ears = /obj/item/radio/headset/distress/som + w_uniform = /obj/item/clothing/under/som/veteran/webbing + shoes = /obj/item/clothing/shoes/marine/som/knife + wear_suit = /obj/item/clothing/suit/modular/som/heavy/shield + gloves = /obj/item/clothing/gloves/marine/som/veteran + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/som/veteran + glasses = /obj/item/clothing/glasses/meson + r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol + l_store = /obj/item/storage/pouch/grenade/som/combat_patrol + back = /obj/item/storage/backpack/satchel/som + +/datum/outfit/quick/som/veteran/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/som/veteran/standard_assaultrifle + name = "V-31 Veteran Infantryman" + desc = "Heavily armed and armored SOM elite. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, heavy armor, a large variety of grenades as well as AP ammunition. Excellent performance against heavily armored targets, while the plentiful grenade provide greater tactical flexibility." + + back = /obj/item/storage/backpack/lightpack/som + suit_store = /obj/item/weapon/gun/rifle/som/veteran + belt = /obj/item/storage/belt/marine/som/som_rifle_ap + +/datum/outfit/quick/som/veteran/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/standard_smg + name = "V-21 Veteran Infantryman" + desc = "Close range high damage, high speed. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, heavy armor, a good variety of grenades and AP ammunition. Allows for excellent close to medium range firepower, especially against heavily armored targets, and is surprisingly mobile." + + suit_store = /obj/item/weapon/gun/smg/som/veteran + belt = /obj/item/storage/belt/marine/som/som_smg_ap + +/datum/outfit/quick/som/veteran/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/breacher + name = "Charger Veteran Breacher" + desc = "Heavy armored breaching configuration. Equipped with a volkite charger configured for better one handed use, heavy armor upgraded with 'Lorica' armor reinforcements, a boarding shield and a good selection of grenades. Premier protection and deadly close range firepower." + + head = /obj/item/clothing/head/modular/som/lorica + glasses = /obj/item/clothing/glasses/welding + wear_suit = /obj/item/clothing/suit/modular/som/heavy/lorica + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/somvet + belt = /obj/item/storage/belt/marine/som/volkite + r_hand = /obj/item/weapon/shield/riot/marine/som + +/datum/outfit/quick/som/veteran/breacher/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/charger + name = "Charger Veteran Infantryman" + desc = "Heavily armed and armored SOM elite. Equipped with a volkite charger with motion sensor and gyrostabiliser for better one handed use, heavy armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The charger is the SOM's premier close/medium range weapon, with good mobility, and can be used (with some difficulty) one handed." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/scout + belt = /obj/item/storage/belt/marine/som/volkite + +/datum/outfit/quick/som/veteran/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/caliver + name = "Caliver Veteran Infantryman" + desc = "Heavily armed and armored SOM elite. Equipped with a volkite caliver, heavy armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The caliver provides deadly firepower at all ranges. Approach with caution." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/standard + belt = /obj/item/storage/belt/marine/som/volkite + +/datum/outfit/quick/som/veteran/caliver/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/caliver_pack + name = "Caliver Veteran Rifleman" + desc = "Heavily armed and armored SOM elite. Equipped with a volkite caliver with motion sensor, heavy armor, plenty of grenades and a back mounted self charging power supply. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The caliver provides deadly firepower at all ranges, and the power pack allows for sustained period of fire, although over extended periods of time the recharge may struggle to keep up with the demands of the weapon." + quantity = 2 + + belt = /obj/item/storage/belt/grenade/som + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/tacsensor + l_store = /obj/item/storage/pouch/pistol/som + back = /obj/item/cell/lasgun/volkite/powerpack + +/datum/outfit/quick/som/veteran/caliver_pack/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_BELT) + + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_L_POUCH) + +/datum/outfit/quick/som/veteran/mpi + name = "MPI_KM Veteran Infantryman" + desc = "Heavily armed and armored SOM elite, with a taste for nostalgia. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." + + suit_store = /obj/item/weapon/gun/rifle/mpi_km/grenadier + belt = /obj/item/storage/belt/marine/som/mpi_plum + +/datum/outfit/quick/som/veteran/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/extended, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/carbine + name = "V-34 Veteran Infantryman" + desc = "Heavily armed and armored SOM elite, with a taste for nostalgia. Equipped with an heirloom V-34 carbine, and a large supply of grenades. An old weapon that saw extensive use during the original Martian rebellion, this one has been preserved and passed down the generations. The V-34 is largely surpassed by the VX-32, however with its high calibre rounds and good rate of fire, it cannot be underestimated." + + suit_store = /obj/item/weapon/gun/rifle/som_carbine/mag_harness + belt = /obj/item/storage/belt/marine/som/carbine + +/datum/outfit/quick/som/veteran/carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/culverin + name = "Culverin Veteran Machinegunner" + desc = "Heavily armored heavy firesupport. Equipped with a volkite culverin and self charging backpack power unit, and a shotgun sidearm. The culverin is the most powerful man portable weapon the SOM have been seen to field. Capabable of laying down a tremendous barrage of firepower for extended periods of time. Although the back-mounted powerpack is self charging, it cannot keep up with the immense power requirements of the gun, so sustained, prolonged use can degrade the weapon's effectiveness greatly." + quantity = 2 + + belt = /obj/item/weapon/gun/shotgun/double/sawn + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/culverin/magharness + back = /obj/item/cell/lasgun/volkite/powerpack + +/datum/outfit/quick/som/veteran/culverin/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/rocket_man + name = "V-71 Rocket Veteran" + desc = "War crimes have never been so easy. Equipped with a V-71 RPG and both incendiary and rad warheads, as well as a V-21 submachine gun with radioactive ammunition, heavy armor with a 'Mithridatius' environmental protection system, and rad grenades. Designed to inspire fear in the enemy and cripple them with deadly incendiary and radiological effects, providing excellent anti infantry support." + quantity = 2 + + head = /obj/item/clothing/head/modular/som/bio + wear_suit = /obj/item/clothing/suit/modular/som/heavy/mithridatius + suit_store = /obj/item/weapon/gun/smg/som/support + belt = /obj/item/storage/belt/marine/som + back = /obj/item/storage/holster/backholster/rpg/som/war_crimes + l_store = /obj/item/storage/pouch/grenade/som + +/datum/outfit/quick/som/veteran/rocket_man/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/som/veteran/blinker + name = "Blink Assault Veteran" + desc = "Shock melee assault class. Equipped with a blink drive and energy sword, light armor and a backup burstfire V-11. The blink drive allows for short range teleports at some risk to the user, but allows them to effortless close the distance to cut down enemies when used correctly." + quantity = 2 + + wear_suit = /obj/item/clothing/suit/modular/som/light/shield + belt = /obj/item/storage/holster/belt/pistol/m4a3/som + suit_store = /obj/item/weapon/energy/sword/som + back = /obj/item/blink_drive + +/datum/outfit/quick/som/veteran/blinker/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) diff --git a/code/datums/quick_load/tgmc/_tgmc.dm b/code/datums/quick_load/tgmc/_tgmc.dm new file mode 100644 index 00000000000..584d5e6849f --- /dev/null +++ b/code/datums/quick_load/tgmc/_tgmc.dm @@ -0,0 +1,31 @@ +//Base TGMC outfit +/datum/outfit/quick/tgmc + name = "TGMC base" + desc = "This is the base typepath for all TGMC quick vendor outfits. You shouldn't see this." + +//Base TGMC marine outfit +/datum/outfit/quick/tgmc/marine + name = "TGMC Squad Marine" + jobtype = SQUAD_MARINE + + ears = /obj/item/radio/headset/mainship/marine + w_uniform = /obj/item/clothing/under/marine/black_vest + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/shield + gloves = /obj/item/clothing/gloves/marine + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x + r_store = /obj/item/storage/pouch/firstaid/combat_patrol + l_store = /obj/item/storage/pouch/grenade/combat_patrol + back = /obj/item/storage/backpack/marine/satchel + +/datum/outfit/quick/tgmc/marine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) diff --git a/code/datums/quick_load/tgmc/corpsman.dm b/code/datums/quick_load/tgmc/corpsman.dm new file mode 100644 index 00000000000..560538ff605 --- /dev/null +++ b/code/datums/quick_load/tgmc/corpsman.dm @@ -0,0 +1,187 @@ +//Base TGMC corpsman outfit +/datum/outfit/quick/tgmc/corpsman + name = "TGMC Squad Corpsman" + jobtype = SQUAD_CORPSMAN + + belt = /obj/item/storage/belt/lifesaver/quick + ears = /obj/item/radio/headset/mainship/marine + glasses = /obj/item/clothing/glasses/hud/health + w_uniform = /obj/item/clothing/under/marine/corpsman/corpman_vest + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten/mimir + gloves = /obj/item/clothing/gloves/marine + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/mimir + r_store = /obj/item/storage/pouch/magazine/large + l_store = /obj/item/storage/pouch/grenade/combat_patrol + back = /obj/item/storage/backpack/marine/corpsman + +/datum/outfit/quick/tgmc/corpsman/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tweezers_advanced, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/nanoblood, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/spaceacillin, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/combat_advanced, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/defibrillator, SLOT_IN_SUIT) + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/neuraline, SLOT_IN_HEAD) + +/datum/outfit/quick/tgmc/corpsman/ar12 + name = "AR-12 Corpsman" + desc = "Keeping everone else in the fight. Armed with an AR-12 assault rifle with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/rifle/ar12/medic + +/datum/outfit/quick/tgmc/corpsman/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) + +/datum/outfit/quick/tgmc/corpsman/smg90 + name = "SMG-90 Corpsman" + desc = "Keeping everone else in the fight. Armed with an SMG-90 submachine gun to maintain good mobility, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/smg/smg90/tactical + +/datum/outfit/quick/tgmc/corpsman/smg90/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) + +/datum/outfit/quick/tgmc/corpsman/ar21 + name = "AR-21 Corpsman" + desc = "Keeping everone else in the fight. Armed with an AR-21 skirmish rifle with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/rifle/ar21/standard + +/datum/outfit/quick/tgmc/corpsman/ar21/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x25mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) + +/datum/outfit/quick/tgmc/corpsman/auto_shotgun + name = "SH-15 Corpsman" + desc = "Keeping everone else in the fight. Armed with a SH-15 auto shotgun with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/rifle/sh15/engineer + +/datum/outfit/quick/tgmc/corpsman/auto_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_R_POUCH) + + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + +/datum/outfit/quick/tgmc/corpsman/laser_medic + name = "Laser Rifle Corpsman" + desc = "Keeping everone else in the fight. Armed with an laser rifle with miniflamer, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/medic + +/datum/outfit/quick/tgmc/corpsman/laser_medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + +/datum/outfit/quick/tgmc/corpsman/laser_carbine + name = "Laser Carbine Corpsman" + desc = "Keeping everone else in the fight. Armed with an laser carbine with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/scout + +/datum/outfit/quick/tgmc/corpsman/laser_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) diff --git a/code/datums/quick_load/tgmc/engineer.dm b/code/datums/quick_load/tgmc/engineer.dm new file mode 100644 index 00000000000..e8afb80253c --- /dev/null +++ b/code/datums/quick_load/tgmc/engineer.dm @@ -0,0 +1,97 @@ +//Base TGMC engineer outfit +/datum/outfit/quick/tgmc/engineer + name = "TGMC Squad Engineer" + jobtype = SQUAD_ENGINEER + + ears = /obj/item/radio/headset/mainship/marine + glasses = /obj/item/clothing/glasses/meson + w_uniform = /obj/item/clothing/under/marine/engineer/black_vest + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten/engineer + gloves = /obj/item/clothing/gloves/marine/insulated + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/welding + r_store = /obj/item/storage/pouch/firstaid/combat_patrol + l_store = /obj/item/storage/pouch/tools/full + back = /obj/item/storage/backpack/marine/engineerpack + +/datum/outfit/quick/tgmc/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/cell/high, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/medium_stack, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_SUIT) + +/datum/outfit/quick/tgmc/engineer/rrengineer + name = "Rocket Specialist" + desc = "Bringing the big guns. Equipped with a AR-18 carbine and RL-160 along with the standard engineer kit. Excellent against groups of enemy infantry or light armor, but only has limited ammunition." + quantity = 2 + + suit_store = /obj/item/weapon/gun/rifle/ar18/engineer + back = /obj/item/storage/holster/backholster/rpg/low_impact + belt = /obj/item/storage/belt/marine/ar18 + +/datum/outfit/quick/tgmc/engineer/rrengineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/chem_grenade/razorburn_large, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/engineer/sentry + name = "Sentry Technician" + desc = "Firing more guns than you have hands. Equipped with a AR-12 assault rifle with miniflamer, and two minisentries along with the standard engineer kit. Allows the user to quickly setup strong points and lock areas down, with some sensible placement." + + suit_store = /obj/item/weapon/gun/rifle/ar12/engineer + belt = /obj/item/storage/belt/marine/ar12 + +/datum/outfit/quick/tgmc/engineer/sentry/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/mini/combat_patrol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/mini/combat_patrol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/minisentry, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/minisentry, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/chem_grenade/razorburn_large, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/engineer/demolition + name = "Demolition Specialist" + desc = "Boom boom, shake the room. Equipped with a SH-15 auto shotgun and UGL and an impressive array of mines, detpacks and grenades, along with the standard engineer kit. Excellent for blasting through any obstacle, and mining areas to restrict enemy movement." + + suit_store = /obj/item/weapon/gun/rifle/sh15/engineer + back = /obj/item/storage/backpack/marine/tech + belt = /obj/item/storage/belt/marine/auto_shotgun + +/datum/outfit/quick/tgmc/engineer/demolition/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/minelayer, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/explosive_mines/large, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/explosive_mines, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/tgmc/leader.dm b/code/datums/quick_load/tgmc/leader.dm new file mode 100644 index 00000000000..a76b712f4f0 --- /dev/null +++ b/code/datums/quick_load/tgmc/leader.dm @@ -0,0 +1,219 @@ +//Base TGMC leader outfit +/datum/outfit/quick/tgmc/leader + name = "TGMC Squad Leader" + jobtype = SQUAD_LEADER + ears = /obj/item/radio/headset/mainship/marine + glasses = /obj/item/clothing/glasses/hud/health + w_uniform = /obj/item/clothing/under/marine/black_vest + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/leader + gloves = /obj/item/clothing/gloves/marine + mask = /obj/item/clothing/mask/gas + head = /obj/item/clothing/head/modular/m10x/leader + r_store = /obj/item/storage/pouch/firstaid/combat_patrol_leader + l_store = /obj/item/storage/pouch/grenade/combat_patrol + back = /obj/item/storage/backpack/lightpack + +/datum/outfit/quick/tgmc/leader/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/tgmc/leader/ar12 + name = "AR-12 Patrol Leader" + desc = "Gives the orders. Equipped with an AR-12 assault rifle with UGL, plenty of grenades, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." + + suit_store = /obj/item/weapon/gun/rifle/ar12/rifleman + belt = /obj/item/storage/belt/marine/ar12 + +/datum/outfit/quick/tgmc/leader/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/ar18 + name = "AR-18 Patrol Leader" + desc = "Gives the orders. Equipped with an AR-18 carbine with plasma pistol attachment, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, while unleashing excellent damage at medium range." + + suit_store = /obj/item/weapon/gun/rifle/ar18/plasma_pistol + belt = /obj/item/storage/belt/marine/ar18 + +/datum/outfit/quick/tgmc/leader/ar18/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/combat_rifle + name = "AR-11 Patrol Leader" + desc = "Gives the orders. Equipped with an AR-11 combat rifle, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, with excellent damage at all ranges." + + suit_store = /obj/item/weapon/gun/rifle/ar11/standard + belt = /obj/item/storage/belt/marine/combat_rifle + +/datum/outfit/quick/tgmc/leader/combat_rifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/br64 + name = "BR-64 Patrol Leader" + desc = "Gives the orders. Equipped with an BR-64 battle rifle with UGL, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. The battle rifle offers improved damage and penetration compared to more common rifles, but still retains a grenade launcher that the AR-11 lacks." + + suit_store = /obj/item/weapon/gun/rifle/br64/standard + belt = /obj/item/storage/belt/marine/br64 + +/datum/outfit/quick/tgmc/leader/br64/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/auto_shotgun + name = "SH-15 Patrol Leader" + desc = "Gives the orders. Equipped with an SH-15 auto shotgun, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, with strong damage and control." + + suit_store = /obj/item/weapon/gun/rifle/sh15/plasma_pistol + belt = /obj/item/storage/belt/marine/auto_shotgun + +/datum/outfit/quick/tgmc/leader/auto_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/standard_laserrifle + name = "Laser Rifle Patrol Leader" + desc = "Gives the orders. Equipped with a laser rifle with UGL for better armor penetration against SOM, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/rifleman + belt = /obj/item/storage/belt/marine/te_cells + +/datum/outfit/quick/tgmc/leader/standard_laserrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/leader/oicw + name = "AR-55 Patrol Leader" + desc = "Gives the orders. Equipped with an AR-55 OICW with plenty of grenades for its integrated grenade launcher, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." + quantity = 2 + + suit_store = /obj/item/weapon/gun/rifle/tx55/combat_patrol + belt = /obj/item/storage/belt/marine/oicw + +/datum/outfit/quick/tgmc/leader/oicw/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx54, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx54, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/tgmc/marine.dm b/code/datums/quick_load/tgmc/marine.dm new file mode 100644 index 00000000000..d048d533143 --- /dev/null +++ b/code/datums/quick_load/tgmc/marine.dm @@ -0,0 +1,403 @@ +/datum/outfit/quick/tgmc/marine/ar12 + name = "AR-12 rifleman" + desc = "The classic line rifleman. Equipped with an AR-12 assault rifle with UGL, heavy armor, and plenty of grenades and ammunition. A solid all-rounder." + + suit_store = /obj/item/weapon/gun/rifle/ar12/rifleman + belt = /obj/item/storage/belt/marine/ar12 + +/datum/outfit/quick/tgmc/marine/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/standard_laserrifle + name = "Laser Rifleman" + desc = "For when bullets don't cut the mustard. Laser rifle with miniflamer and heavy armor. Lasers are more effective against SOM armor, but cannot break bones and damage organs." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/rifleman + belt = /obj/item/storage/belt/marine/te_cells + +/datum/outfit/quick/tgmc/marine/standard_laserrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/ar18 + name = "AR-18 Rifleman" + desc = "The modern line rifleman. Equipped with an AR-18 carbine with UGL, heavy armor, and plenty of grenades and ammunition. Boasts better mobility and damage output than the AR-12, but suffers with a smaller magazine and worse performance at longer ranges." + + suit_store = /obj/item/weapon/gun/rifle/ar18/standard + belt = /obj/item/storage/belt/marine/ar18 + +/datum/outfit/quick/tgmc/marine/ar18/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar18, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/combat_rifle + name = "AR-11 Rifleman" + desc = "The old rifleman. Equipped with an AR-11 combat rifle with heavy armor, and plenty of grenades and ammunition. Has a large capacity with deadly damage output at all ranges, but lacks many attachment options of more modern weapons and somewhat more cumbersome to handle." + + suit_store = /obj/item/weapon/gun/rifle/ar11/standard + belt = /obj/item/storage/belt/marine/combat_rifle + +/datum/outfit/quick/tgmc/marine/combat_rifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/br64 + name = "BR-64 Rifleman" + desc = "Heavier firepower for the discerning rifleman. Equipped with an BR-64 battle rifle with UGL, heavy armor, and plenty of grenades and ammunition. Higher damage and penetration, at the cost of a more bulky weapon." + + suit_store = /obj/item/weapon/gun/rifle/br64/standard + belt = /obj/item/storage/belt/marine/br64 + +/datum/outfit/quick/tgmc/marine/br64/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/ar21 + name = "AR-21 Rifleman" + desc = "Better stopping power at the cost of lower rate of fire. Equipped with an AR-21 skirmish rifle with UGL, heavy armor, and plenty of grenades and ammunition. Rewards good aim with its heavy rounds." + + suit_store = /obj/item/weapon/gun/rifle/ar21/standard + belt = /obj/item/storage/belt/marine/ar21 + +/datum/outfit/quick/tgmc/marine/ar21/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x25mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/alf_shocktrooper + name = "ALF-51B Shocktrooper" + desc = "Shock assault loadout. Equipped with an ALF-51B machinecarbine, heavy armor reinforced with a Mk.II 'Tyr' module, and plenty of grenades and ammunition. Offers excellent damage output and superior protection, however the ALF-51B's cutdown size means it suffers from severe damage falloff. Best used up close." + + head = /obj/item/clothing/head/modular/m10x/tyr + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two + suit_store = /obj/item/weapon/gun/rifle/alf_machinecarbine/assault + belt = /obj/item/storage/belt/marine/alf_machinecarbine + +/datum/outfit/quick/tgmc/marine/alf_shocktrooper/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/alf_machinecarbine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/alf_machinecarbine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/mg60 + name = "MG-60 Machinegunner" + desc = "The old reliable workhorse of the TGMC. Equipped with an MG-60 machinegun with bipod, heavy armor and some basic construction supplies. Good for holding ground and providing firesupport, and the cost of some mobility." + + belt = /obj/item/storage/belt/sparepouch + suit_store = /obj/item/weapon/gun/rifle/mg60/machinegunner + l_store = /obj/item/storage/pouch/construction + +/datum/outfit/quick/tgmc/marine/mg60/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) + +/datum/outfit/quick/tgmc/marine/mg27 + name = "MG-27 Machinegunner" + desc = "For when you need the biggest gun you can carry. Equipped with an MG-27 machinegun and miniscope and a MR-25 SMG as a side arm, as well as medium armor and a small amount of construction supplies. Allows for devestating, albeit static firepower." + + belt = /obj/item/storage/holster/m25 + wear_suit = /obj/item/clothing/suit/modular/xenonauten/shield + suit_store = /obj/item/weapon/gun/mg27/machinegunner + l_store = /obj/item/storage/pouch/construction + glasses = /obj/item/clothing/glasses/mgoggles + +/datum/outfit/quick/tgmc/marine/mg27/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m25/holstered(H), SLOT_IN_HOLSTER) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) + H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) + +/datum/outfit/quick/tgmc/marine/standard_lasermg + name = "Laser Machinegunner" + desc = "Mess free fire superiority. Laser machinegun with underbarrel grenade launcher and heavy armor. Comparatively light for a machinegun, with variable firemodes makes this weapon a flexible and dangerous weapon. Lasers are more effective against SOM armor, but cannot break bones and damage organs." + + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_mlaser/patrol + belt = /obj/item/storage/belt/marine/te_cells + +/datum/outfit/quick/tgmc/marine/standard_lasermg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/pyro + name = "FL-84 Flamethrower Operator" + desc = "For burning enemies, and sometimes friends. Equipped with an FL-84 flamethrower and wide nozzle, SMG-25 secondary weapon, heavy armor upgraded with a 'Surt' fireproof module, and a backtank of fuel. Can burn down large areas extremely quickly both to flush out the enemy and to cover flanks. Is very slow however, ineffective at long range, and can expend all available fuel quickly if used excessively." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/surt + mask = /obj/item/clothing/mask/gas/tactical + head = /obj/item/clothing/head/modular/m10x/surt + belt = /obj/item/storage/holster/m25 + back = /obj/item/ammo_magazine/flamer_tank/backtank + suit_store = /obj/item/weapon/gun/flamer/big_flamer/marinestandard/wide + +/datum/outfit/quick/tgmc/marine/pyro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m25/holstered(H), SLOT_IN_HOLSTER) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/standard_shotgun + name = "SH-35 Scout" + desc = "For getting too close for comfort. Equipped with a SH-35 shotgun with buckshot and flechette rounds, a MP-19 sidearm, a good amount of grenades and light armor with a cutting edge 'svallin' shield module. Provides for excellent mobility and devestating close range firepower, but will falter against sustained firepower." + + belt = /obj/item/storage/belt/shotgun + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield + suit_store = /obj/item/weapon/gun/shotgun/pump/t35/standard + belt = /obj/item/storage/belt/shotgun/mixed + +/datum/outfit/quick/tgmc/marine/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/compact(H), SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/standard_lasercarbine + name = "Laser Carbine Scout" + desc = "Highly mobile light infantry. Equipped with a laser carbine with UGL and a laser pistol sidearm, plenty of grenades and light armor with a cutting edge 'svallin' shield module. Excellent mobility, but not suited for sustained combat." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield + suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/scout + belt = /obj/item/storage/belt/marine/te_cells + +/datum/outfit/quick/tgmc/marine/standard_lasercarbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/light_carbine + name = "AR-18 Scout" + desc = "High damage and high speed. Equipped with an AR-18 carbine with UGL, light armor with a cutting edge 'svallin' shield module, and plenty of grenades and ammunition. Great mobility and damage output, but low magazine capacity and weak armor without the shield active means this loadout is best suited to hit and run tactics." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield + suit_store = /obj/item/weapon/gun/rifle/ar18/scout + belt = /obj/item/storage/belt/marine/ar18 + +/datum/outfit/quick/tgmc/marine/light_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar18, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/shield_tank + name = "SMG-25 Guardian" + desc = "Professional bullet catcher. Equipped with an SMG-25 submachine gun, a TL-172 defensive shield and heavy armor reinforced with a 'Tyr' module. Designed to absorb as much incoming damage as possible to protect your squishier comrades, however your mobility and damage output are notably diminished. Also of note: the excellent thermal mass of the TL-172 means it is unusually effective against the SOM's volkite weaponry." + + head = /obj/item/clothing/head/modular/m10x/tyr + glasses = /obj/item/clothing/glasses/welding + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two + suit_store = /obj/item/weapon/gun/smg/m25/magharness + belt = /obj/item/storage/belt/marine/secondary + r_hand = /obj/item/weapon/shield/riot/marine + +/datum/outfit/quick/tgmc/marine/shield_tank/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/machete + name = "Assault Marine" + desc = "This doesn't look standard issue... Equipped with a SMG-25 submachine gun, machete and heavy lift jetpack, along with light armor upgraded with a 'svallin' shield module. It's not clear why this is here, nevertheless it has excellent mobility, and would likely be devastating against anyone you manage to actually reach." + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield + back = /obj/item/jetpack_marine/heavy + belt = /obj/item/storage/holster/blade/machete/full + suit_store = /obj/item/weapon/gun/smg/m25/magharness + +/datum/outfit/quick/tgmc/marine/machete/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/marine/scout + name = "BR-8 Scout" + desc = "IFF scout. Equipped with a BR-8 with a good amount of grenades and light armor with a cutting edge 'svallin' shield module. Provides for good mobility and powerful IFF damage, but the BR-8 is difficult to bring to bear at close range, and light armor wilts under sustained fire." + quantity = 2 + + wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield + suit_store = /obj/item/weapon/gun/rifle/tx8/scout + belt = /obj/item/storage/belt/marine/tx8 + +/datum/outfit/quick/tgmc/marine/scout/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/scanner(H), SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx8, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx8, SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load/tgmc/smartgunner.dm b/code/datums/quick_load/tgmc/smartgunner.dm new file mode 100644 index 00000000000..10d49a38b08 --- /dev/null +++ b/code/datums/quick_load/tgmc/smartgunner.dm @@ -0,0 +1,94 @@ +//Base TGMC smartgunner outfit +/datum/outfit/quick/tgmc/smartgunner + name = "TGMC Squad Smartgunner" + jobtype = SQUAD_SMARTGUNNER + + belt = /obj/item/belt_harness/marine + ears = /obj/item/radio/headset/mainship/marine + glasses = /obj/item/clothing/glasses/night/m56_goggles + w_uniform = /obj/item/clothing/under/marine/black_vest + shoes = /obj/item/clothing/shoes/marine/full + wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two + gloves = /obj/item/clothing/gloves/marine + mask = /obj/item/clothing/mask/gas/tactical + head = /obj/item/clothing/head/modular/m10x/tyr + r_store = /obj/item/storage/pouch/firstaid/combat_patrol + l_store = /obj/item/storage/pouch/grenade/combat_patrol + back = /obj/item/storage/backpack/marine/satchel + +/datum/outfit/quick/tgmc/smartgunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) + + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) + H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) + +/datum/outfit/quick/tgmc/smartgunner/sg29 + name = "SG29 Smart Machinegunner" + desc = "A gun smarter than the average bear, or marine. Equipped with an SG-29 smart machine gun and heavy armor upgraded with a 'Tyr' extra armor mdule, the SG is responsible for providing mobile, accurate firesupport thanks to your IFF ammunition." + + suit_store = /obj/item/weapon/gun/rifle/sg29/patrol + +/datum/outfit/quick/tgmc/smartgunner/sg29/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) + +/datum/outfit/quick/tgmc/smartgunner/minigun_sg + name = "SG85 Smart Machinegunner" + desc = "More bullets than sense. Equipped with an SG-85 smart gatling gun, an MP-19 sidearm, heavy armor upgraded with a 'Tyr' extra armor mdule and a whole lot of bullets. For when you want to unleash a firehose of firepower. Try not to run out of ammo." + + belt = /obj/item/storage/belt/sparepouch + suit_store = /obj/item/weapon/gun/minigun/smart_minigun/motion_detector + back = /obj/item/ammo_magazine/minigun_powerpack/smartgun + +/datum/outfit/quick/tgmc/smartgunner/minigun_sg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) + + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_BELT) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/compact(H), SLOT_IN_BELT) + +/datum/outfit/quick/tgmc/smartgunner/sg62 + name = "SG62 Smart Machinegunner" + desc = "Flexibility and precision. Equipped with an SG-62 smart target rifle and heavy armor upgraded with a 'Tyr' extra armor mdule. The integrated spotting rifle comes with a variety of flexible ammo types, which combined with high damage, penetration and IFF, makes for a dangerous support loadout." + + belt = /obj/item/storage/belt/marine/sg62 + suit_store = /obj/item/weapon/gun/rifle/sg62/motion + +/datum/outfit/quick/tgmc/smartgunner/sg62/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + . = ..() + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/incendiary, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/tungsten, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/tungsten, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) + H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) + + H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) + H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) diff --git a/code/datums/quick_load_outfits.dm b/code/datums/quick_load_outfits.dm deleted file mode 100644 index 8269b69524e..00000000000 --- a/code/datums/quick_load_outfits.dm +++ /dev/null @@ -1,2225 +0,0 @@ -/datum/outfit/quick - ///Description of the loadout - var/desc = "Description here" - ///How much of this loadout there is. infinite by default - var/quantity = -1 - ///What job this loadout is associated with. Used for tabs and access. - var/jobtype = "Squad Marine" - - -/datum/outfit/quick/equip(mob/living/carbon/human/H, visualsOnly = FALSE, client/override_client) - pre_equip(H, visualsOnly, override_client) - - //Start with uniform,suit,backpack for additional slots. Deletes any existing equipped item to avoid accidentally losing half your loadout. Not suitable for standard gamemodes! - if(w_uniform) - qdel(H.w_uniform) - H.equip_to_slot_or_del(new w_uniform(H),SLOT_W_UNIFORM, override_nodrop = TRUE) - if(wear_suit) - qdel(H.wear_suit) - H.equip_to_slot_or_del(new wear_suit(H),SLOT_WEAR_SUIT, override_nodrop = TRUE) - if(back) - qdel(H.back) - H.equip_to_slot_or_del(new back(H),SLOT_BACK, override_nodrop = TRUE) - if(belt) - qdel(H.belt) - H.equip_to_slot_or_del(new belt(H),SLOT_BELT, override_nodrop = TRUE) - if(gloves) - qdel(H.gloves) - H.equip_to_slot_or_del(new gloves(H),SLOT_GLOVES, override_nodrop = TRUE) - if(shoes) - qdel(H.shoes) - H.equip_to_slot_or_del(new shoes(H),SLOT_SHOES, override_nodrop = TRUE) - if(head) - qdel(H.head) - H.equip_to_slot_or_del(new head(H),SLOT_HEAD, override_nodrop = TRUE) - if(mask) - qdel(H.wear_mask) - H.equip_to_slot_or_del(new mask(H),SLOT_WEAR_MASK, override_nodrop = TRUE) - if(ears) - qdel(H.wear_ear) - if(visualsOnly) - H.equip_to_slot_or_del(new /obj/item/radio/headset(H), SLOT_EARS, override_nodrop = TRUE) - else - H.equip_to_slot_or_del(new ears(H, H.assigned_squad, H.job.type), SLOT_EARS, override_nodrop = TRUE) - if(glasses) - qdel(H.glasses) - H.equip_to_slot_or_del(new glasses(H),SLOT_GLASSES, override_nodrop = TRUE) - if(id) - H.equip_to_slot_or_del(new id(H),SLOT_WEAR_ID, override_nodrop = TRUE) - if(suit_store) - qdel(H.s_store) - H.equip_to_slot_or_del(new suit_store(H),SLOT_S_STORE, override_nodrop = TRUE) - if(l_hand) - qdel(H.l_hand) - H.put_in_l_hand(new l_hand(H)) - if(r_hand) - qdel(H.r_hand) - H.put_in_r_hand(new r_hand(H)) - - if(!visualsOnly) // Items in pockets or backpack don't show up on mob's icon. - if(l_store) - qdel(H.l_store) - H.equip_to_slot_or_del(new l_store(H),SLOT_L_STORE, override_nodrop = TRUE) - if(r_store) - qdel(H.r_store) - H.equip_to_slot_or_del(new r_store(H),SLOT_R_STORE, override_nodrop = TRUE) - - if(box) - if(!backpack_contents) - backpack_contents = list() - backpack_contents.Insert(1, box) - backpack_contents[box] = 1 - - if(backpack_contents) - for(var/path in backpack_contents) - var/number = backpack_contents[path] - if(!isnum(number))//Default to 1 - number = 1 - for(var/i in 1 to number) - H.equip_to_slot_or_del(new path(H),SLOT_IN_BACKPACK, override_nodrop = TRUE) - - post_equip(H, visualsOnly) - - H.update_body() - return TRUE - -////TGMC///// - -//Base TGMC outfit -/datum/outfit/quick/tgmc - name = "TGMC base" - desc = "This is the base typepath for all TGMC quick vendor outfits. You shouldn't see this." - -//Base TGMC marine outfit -/datum/outfit/quick/tgmc/marine - name = "TGMC Squad Marine" - jobtype = "Squad Marine" - - ears = /obj/item/radio/headset/mainship/marine - w_uniform = /obj/item/clothing/under/marine/black_vest - shoes = /obj/item/clothing/shoes/marine/full - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/shield - gloves = /obj/item/clothing/gloves/marine - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/m10x - r_store = /obj/item/storage/pouch/firstaid/combat_patrol - l_store = /obj/item/storage/pouch/grenade/combat_patrol - back = /obj/item/storage/backpack/marine/satchel - -/datum/outfit/quick/tgmc/marine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/tgmc/marine/ar12 - name = "AR-12 rifleman" - desc = "The classic line rifleman. Equipped with an AR-12 assault rifle with UGL, heavy armor, and plenty of grenades and ammunition. A solid all-rounder." - - suit_store = /obj/item/weapon/gun/rifle/ar12/rifleman - belt = /obj/item/storage/belt/marine/ar12 - -/datum/outfit/quick/tgmc/marine/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/standard_laserrifle - name = "Laser Rifleman" - desc = "For when bullets don't cut the mustard. Laser rifle with miniflamer and heavy armor. Lasers are more effective against SOM armor, but cannot break bones and damage organs." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/rifleman - belt = /obj/item/storage/belt/marine/te_cells - -/datum/outfit/quick/tgmc/marine/standard_laserrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/ar18 - name = "AR-18 Rifleman" - desc = "The modern line rifleman. Equipped with an AR-18 carbine with UGL, heavy armor, and plenty of grenades and ammunition. Boasts better mobility and damage output than the AR-12, but suffers with a smaller magazine and worse performance at longer ranges." - - suit_store = /obj/item/weapon/gun/rifle/ar18/standard - belt = /obj/item/storage/belt/marine/ar18 - -/datum/outfit/quick/tgmc/marine/ar18/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar18, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/combat_rifle - name = "AR-11 Rifleman" - desc = "The old rifleman. Equipped with an AR-11 combat rifle with heavy armor, and plenty of grenades and ammunition. Has a large capacity with deadly damage output at all ranges, but lacks many attachment options of more modern weapons and somewhat more cumbersome to handle." - - suit_store = /obj/item/weapon/gun/rifle/ar11/standard - belt = /obj/item/storage/belt/marine/combat_rifle - -/datum/outfit/quick/tgmc/marine/combat_rifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/br64 - name = "BR-64 Rifleman" - desc = "Heavier firepower for the discerning rifleman. Equipped with an BR-64 battle rifle with UGL, heavy armor, and plenty of grenades and ammunition. Higher damage and penetration, at the cost of a more bulky weapon." - - suit_store = /obj/item/weapon/gun/rifle/br64/standard - belt = /obj/item/storage/belt/marine/br64 - -/datum/outfit/quick/tgmc/marine/br64/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/ar21 - name = "AR-21 Rifleman" - desc = "Better stopping power at the cost of lower rate of fire. Equipped with an AR-21 skirmish rifle with UGL, heavy armor, and plenty of grenades and ammunition. Rewards good aim with its heavy rounds." - - suit_store = /obj/item/weapon/gun/rifle/ar21/standard - belt = /obj/item/storage/belt/marine/ar21 - -/datum/outfit/quick/tgmc/marine/ar21/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x25mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/alf_shocktrooper - name = "ALF-51B Shocktrooper" - desc = "Shock assault loadout. Equipped with an ALF-51B machinecarbine, heavy armor reinforced with a Mk.II 'Tyr' module, and plenty of grenades and ammunition. Offers excellent damage output and superior protection, however the ALF-51B's cutdown size means it suffers from severe damage falloff. Best used up close." - - head = /obj/item/clothing/head/modular/m10x/tyr - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two - suit_store = /obj/item/weapon/gun/rifle/alf_machinecarbine/assault - belt = /obj/item/storage/belt/marine/alf_machinecarbine - -/datum/outfit/quick/tgmc/marine/alf_shocktrooper/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/alf_machinecarbine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/alf_machinecarbine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/mg60 - name = "MG-60 Machinegunner" - desc = "The old reliable workhorse of the TGMC. Equipped with an MG-60 machinegun with bipod, heavy armor and some basic construction supplies. Good for holding ground and providing firesupport, and the cost of some mobility." - - belt = /obj/item/storage/belt/sparepouch - suit_store = /obj/item/weapon/gun/rifle/mg60/machinegunner - l_store = /obj/item/storage/pouch/construction - -/datum/outfit/quick/tgmc/marine/mg60/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/marine/deployable, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg60, SLOT_IN_BELT) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) - -/datum/outfit/quick/tgmc/marine/mg27 - name = "MG-27 Machinegunner" - desc = "For when you need the biggest gun you can carry. Equipped with an MG-27 machinegun and miniscope and a MR-25 SMG as a side arm, as well as medium armor and a small amount of construction supplies. Allows for devestating, albeit static firepower." - - belt = /obj/item/storage/holster/m25 - wear_suit = /obj/item/clothing/suit/modular/xenonauten/shield - suit_store = /obj/item/weapon/gun/mg27/machinegunner - l_store = /obj/item/storage/pouch/construction - glasses = /obj/item/clothing/glasses/mgoggles - -/datum/outfit/quick/tgmc/marine/mg27/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/mg27, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m25/holstered(H), SLOT_IN_HOLSTER) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) - -/datum/outfit/quick/tgmc/marine/standard_lasermg - name = "Laser Machinegunner" - desc = "Mess free fire superiority. Laser machinegun with underbarrel grenade launcher and heavy armor. Comparatively light for a machinegun, with variable firemodes makes this weapon a flexible and dangerous weapon. Lasers are more effective against SOM armor, but cannot break bones and damage organs." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_mlaser/patrol - belt = /obj/item/storage/belt/marine/te_cells - -/datum/outfit/quick/tgmc/marine/standard_lasermg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/pyro - name = "FL-84 Flamethrower Operator" - desc = "For burning enemies, and sometimes friends. Equipped with an FL-84 flamethrower and wide nozzle, SMG-25 secondary weapon, heavy armor upgraded with a 'Surt' fireproof module, and a backtank of fuel. Can burn down large areas extremely quickly both to flush out the enemy and to cover flanks. Is very slow however, ineffective at long range, and can expend all available fuel quickly if used excessively." - - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/surt - mask = /obj/item/clothing/mask/gas/tactical - head = /obj/item/clothing/head/modular/m10x/surt - belt = /obj/item/storage/holster/m25 - back = /obj/item/ammo_magazine/flamer_tank/backtank - suit_store = /obj/item/weapon/gun/flamer/big_flamer/marinestandard/wide - -/datum/outfit/quick/tgmc/marine/pyro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/m25/holstered(H), SLOT_IN_HOLSTER) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/standard_shotgun - name = "SH-35 Scout" - desc = "For getting too close for comfort. Equipped with a SH-35 shotgun with buckshot and flechette rounds, a MP-19 sidearm, a good amount of grenades and light armor with a cutting edge 'svallin' shield module. Provides for excellent mobility and devestating close range firepower, but will falter against sustained firepower." - - belt = /obj/item/storage/belt/shotgun - wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield - suit_store = /obj/item/weapon/gun/shotgun/pump/t35/standard - belt = /obj/item/storage/belt/shotgun/mixed - -/datum/outfit/quick/tgmc/marine/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/compact(H), SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/standard_lasercarbine - name = "Laser Carbine Scout" - desc = "Highly mobile light infantry. Equipped with a laser carbine with UGL and a laser pistol sidearm, plenty of grenades and light armor with a cutting edge 'svallin' shield module. Excellent mobility, but not suited for sustained combat." - - wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/scout - belt = /obj/item/storage/belt/marine/te_cells - -/datum/outfit/quick/tgmc/marine/standard_lasercarbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/light_carbine - name = "AR-18 Scout" - desc = "High damage and high speed. Equipped with an AR-18 carbine with UGL, light armor with a cutting edge 'svallin' shield module, and plenty of grenades and ammunition. Great mobility and damage output, but low magazine capacity and weak armor without the shield active means this loadout is best suited to hit and run tactics." - - wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield - suit_store = /obj/item/weapon/gun/rifle/ar18/scout - belt = /obj/item/storage/belt/marine/ar18 - -/datum/outfit/quick/tgmc/marine/light_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar18, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/p23/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/p23, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/shield_tank - name = "SMG-25 Guardian" - desc = "Professional bullet catcher. Equipped with an SMG-25 submachine gun, a TL-172 defensive shield and heavy armor reinforced with a 'Tyr' module. Designed to absorb as much incoming damage as possible to protect your squishier comrades, however your mobility and damage output are notably diminished. Also of note: the excellent thermal mass of the TL-172 means it is unusually effective against the SOM's volkite weaponry." - - head = /obj/item/clothing/head/modular/m10x/tyr - glasses = /obj/item/clothing/glasses/welding - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two - suit_store = /obj/item/weapon/gun/smg/m25/magharness - belt = /obj/item/storage/belt/marine/secondary - r_hand = /obj/item/weapon/shield/riot/marine - -/datum/outfit/quick/tgmc/marine/shield_tank/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/machete - name = "Assault Marine" - desc = "This doesn't look standard issue... Equipped with a SMG-25 submachine gun, machete and heavy lift jetpack, along with light armor upgraded with a 'svallin' shield module. It's not clear why this is here, nevertheless it has excellent mobility, and would likely be devastating against anyone you manage to actually reach." - - wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield - back = /obj/item/jetpack_marine/heavy - belt = /obj/item/storage/holster/blade/machete/full - suit_store = /obj/item/weapon/gun/smg/m25/magharness - -/datum/outfit/quick/tgmc/marine/machete/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/m25, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/marine/scout - name = "BR-8 Scout" - desc = "IFF scout. Equipped with a BR-8 with a good amount of grenades and light armor with a cutting edge 'svallin' shield module. Provides for good mobility and powerful IFF damage, but the BR-8 is difficult to bring to bear at close range, and light armor wilts under sustained fire." - quantity = 2 - - wear_suit = /obj/item/clothing/suit/modular/xenonauten/light/shield - suit_store = /obj/item/weapon/gun/rifle/tx8/scout - belt = /obj/item/storage/belt/marine/tx8 - -/datum/outfit/quick/tgmc/marine/scout/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/scanner(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx8, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx8, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - - -//Base TGMC engineer outfit -/datum/outfit/quick/tgmc/engineer - name = "TGMC Squad Engineer" - jobtype = "Squad Engineer" - - ears = /obj/item/radio/headset/mainship/marine - glasses = /obj/item/clothing/glasses/meson - w_uniform = /obj/item/clothing/under/marine/engineer/black_vest - shoes = /obj/item/clothing/shoes/marine/full - wear_suit = /obj/item/clothing/suit/modular/xenonauten/engineer - gloves = /obj/item/clothing/gloves/marine/insulated - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/m10x/welding - r_store = /obj/item/storage/pouch/firstaid/combat_patrol - l_store = /obj/item/storage/pouch/tools/full - back = /obj/item/storage/backpack/marine/engineerpack - -/datum/outfit/quick/tgmc/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/cell/high, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/medium_stack, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_SUIT) - -/datum/outfit/quick/tgmc/engineer/rrengineer - name = "Rocket Specialist" - desc = "Bringing the big guns. Equipped with a AR-18 carbine and RL-160 along with the standard engineer kit. Excellent against groups of enemy infantry or light armor, but only has limited ammunition." - quantity = 2 - - suit_store = /obj/item/weapon/gun/rifle/ar18/engineer - back = /obj/item/storage/holster/backholster/rpg/low_impact - belt = /obj/item/storage/belt/marine/ar18 - -/datum/outfit/quick/tgmc/engineer/rrengineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/chem_grenade/razorburn_large, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/engineer/sentry - name = "Sentry Technician" - desc = "Firing more guns than you have hands. Equipped with a AR-12 assault rifle with miniflamer, and two minisentries along with the standard engineer kit. Allows the user to quickly setup strong points and lock areas down, with some sensible placement." - - suit_store = /obj/item/weapon/gun/rifle/ar12/engineer - belt = /obj/item/storage/belt/marine/ar12 - -/datum/outfit/quick/tgmc/engineer/sentry/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/mini/combat_patrol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/sentry/mini/combat_patrol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/minisentry, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/minisentry, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/chem_grenade/razorburn_large, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/engineer/demolition - name = "Demolition Specialist" - desc = "Boom boom, shake the room. Equipped with a SH-15 auto shotgun and UGL and an impressive array of mines, detpacks and grenades, along with the standard engineer kit. Excellent for blasting through any obstacle, and mining areas to restrict enemy movement." - - suit_store = /obj/item/weapon/gun/rifle/sh15/engineer - back = /obj/item/storage/backpack/marine/tech - belt = /obj/item/storage/belt/marine/auto_shotgun - -/datum/outfit/quick/tgmc/engineer/demolition/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/minelayer, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/explosive_mines/large, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/explosive_mines, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - -//Base TGMC corpsman outfit -/datum/outfit/quick/tgmc/corpsman - name = "TGMC Squad Corpsman" - jobtype = "Squad Corpsman" - - belt = /obj/item/storage/belt/lifesaver/quick - ears = /obj/item/radio/headset/mainship/marine - glasses = /obj/item/clothing/glasses/hud/health - w_uniform = /obj/item/clothing/under/marine/corpsman/corpman_vest - shoes = /obj/item/clothing/shoes/marine/full - wear_suit = /obj/item/clothing/suit/modular/xenonauten/mimir - gloves = /obj/item/clothing/gloves/marine - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/m10x/mimir - r_store = /obj/item/storage/pouch/magazine/large - l_store = /obj/item/storage/pouch/grenade/combat_patrol - back = /obj/item/storage/backpack/marine/corpsman - -/datum/outfit/quick/tgmc/corpsman/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tweezers_advanced, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/nanoblood, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/spaceacillin, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/combat_advanced, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/defibrillator, SLOT_IN_SUIT) - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/neuraline, SLOT_IN_HEAD) - -/datum/outfit/quick/tgmc/corpsman/ar12 - name = "AR-12 Corpsman" - desc = "Keeping everone else in the fight. Armed with an AR-12 assault rifle with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/rifle/ar12/medic - -/datum/outfit/quick/tgmc/corpsman/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_R_POUCH) - -/datum/outfit/quick/tgmc/corpsman/smg90 - name = "SMG-90 Corpsman" - desc = "Keeping everone else in the fight. Armed with an SMG-90 submachine gun to maintain good mobility, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/smg/smg90/tactical - -/datum/outfit/quick/tgmc/corpsman/smg90/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/smg90, SLOT_IN_R_POUCH) - -/datum/outfit/quick/tgmc/corpsman/ar21 - name = "AR-21 Corpsman" - desc = "Keeping everone else in the fight. Armed with an AR-21 skirmish rifle with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/rifle/ar21/standard - -/datum/outfit/quick/tgmc/corpsman/ar21/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x25mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar21, SLOT_IN_R_POUCH) - -/datum/outfit/quick/tgmc/corpsman/auto_shotgun - name = "SH-15 Corpsman" - desc = "Keeping everone else in the fight. Armed with a SH-15 auto shotgun with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/rifle/sh15/engineer - -/datum/outfit/quick/tgmc/corpsman/auto_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_R_POUCH) - - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - -/datum/outfit/quick/tgmc/corpsman/laser_medic - name = "Laser Rifle Corpsman" - desc = "Keeping everone else in the fight. Armed with an laser rifle with miniflamer, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/medic - -/datum/outfit/quick/tgmc/corpsman/laser_medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - -/datum/outfit/quick/tgmc/corpsman/laser_carbine - name = "Laser Carbine Corpsman" - desc = "Keeping everone else in the fight. Armed with an laser carbine with underbarrel grenade launcher, an impressive array of tools for healing your team, and a 'Mimir' biological protection module to allow you to continue operating in hazardous environments. With medivacs out of the question, you are the only thing standing between your buddies and an early grave." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/scout - -/datum/outfit/quick/tgmc/corpsman/laser_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_R_POUCH) - -//Base TGMC smartgunner outfit -/datum/outfit/quick/tgmc/smartgunner - name = "TGMC Squad Smartgunner" - jobtype = "Squad Smartgunner" - - belt = /obj/item/belt_harness/marine - ears = /obj/item/radio/headset/mainship/marine - glasses = /obj/item/clothing/glasses/night/m56_goggles - w_uniform = /obj/item/clothing/under/marine/black_vest - shoes = /obj/item/clothing/shoes/marine/full - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_two - gloves = /obj/item/clothing/gloves/marine - mask = /obj/item/clothing/mask/gas/tactical - head = /obj/item/clothing/head/modular/m10x/tyr - r_store = /obj/item/storage/pouch/firstaid/combat_patrol - l_store = /obj/item/storage/pouch/grenade/combat_patrol - back = /obj/item/storage/backpack/marine/satchel - -/datum/outfit/quick/tgmc/smartgunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/tgmc/smartgunner/sg29 - name = "SG29 Smart Machinegunner" - desc = "A gun smarter than the average bear, or marine. Equipped with an SG-29 smart machine gun and heavy armor upgraded with a 'Tyr' extra armor mdule, the SG is responsible for providing mobile, accurate firesupport thanks to your IFF ammunition." - - suit_store = /obj/item/weapon/gun/rifle/sg29/patrol - -/datum/outfit/quick/tgmc/smartgunner/sg29/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/sg29, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/smartgunner/minigun_sg - name = "SG85 Smart Machinegunner" - desc = "More bullets than sense. Equipped with an SG-85 smart gatling gun, an MP-19 sidearm, heavy armor upgraded with a 'Tyr' extra armor mdule and a whole lot of bullets. For when you want to unleash a firehose of firepower. Try not to run out of ammo." - - belt = /obj/item/storage/belt/sparepouch - suit_store = /obj/item/weapon/gun/minigun/smart_minigun/motion_detector - back = /obj/item/ammo_magazine/minigun_powerpack/smartgun - -/datum/outfit/quick/tgmc/smartgunner/minigun_sg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/mp19, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/smart_minigun, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/smg/mp19/compact(H), SLOT_IN_BELT) - -/datum/outfit/quick/tgmc/smartgunner/sg62 - name = "SG62 Smart Machinegunner" - desc = "Flexibility and precision. Equipped with an SG-62 smart target rifle and heavy armor upgraded with a 'Tyr' extra armor mdule. The integrated spotting rifle comes with a variety of flexible ammo types, which combined with high damage, penetration and IFF, makes for a dangerous support loadout." - - belt = /obj/item/storage/belt/marine/sg62 - suit_store = /obj/item/weapon/gun/rifle/sg62/motion - -/datum/outfit/quick/tgmc/smartgunner/sg62/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/tungsten, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/tungsten, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sg153/highimpact, SLOT_IN_ACCESSORY) - -//Base TGMC leader outfit -/datum/outfit/quick/tgmc/leader - name = "TGMC Squad Leader" - jobtype = "Squad Leader" - - ears = /obj/item/radio/headset/mainship/marine - glasses = /obj/item/clothing/glasses/hud/health - w_uniform = /obj/item/clothing/under/marine/black_vest - shoes = /obj/item/clothing/shoes/marine/full - wear_suit = /obj/item/clothing/suit/modular/xenonauten/heavy/leader - gloves = /obj/item/clothing/gloves/marine - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/m10x/leader - r_store = /obj/item/storage/pouch/firstaid/combat_patrol_leader - l_store = /obj/item/storage/pouch/grenade/combat_patrol - back = /obj/item/storage/backpack/lightpack - -/datum/outfit/quick/tgmc/leader/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/tgmc/leader/ar12 - name = "AR-12 Patrol Leader" - desc = "Gives the orders. Equipped with an AR-12 assault rifle with UGL, plenty of grenades, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." - - suit_store = /obj/item/weapon/gun/rifle/ar12/rifleman - belt = /obj/item/storage/belt/marine/ar12 - -/datum/outfit/quick/tgmc/leader/ar12/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/ar18 - name = "AR-18 Patrol Leader" - desc = "Gives the orders. Equipped with an AR-18 carbine with plasma pistol attachment, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, while unleashing excellent damage at medium range." - - suit_store = /obj/item/weapon/gun/rifle/ar18/plasma_pistol - belt = /obj/item/storage/belt/marine/ar18 - -/datum/outfit/quick/tgmc/leader/ar18/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/combat_rifle - name = "AR-11 Patrol Leader" - desc = "Gives the orders. Equipped with an AR-11 combat rifle, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, with excellent damage at all ranges." - - suit_store = /obj/item/weapon/gun/rifle/ar11/standard - belt = /obj/item/storage/belt/marine/combat_rifle - -/datum/outfit/quick/tgmc/leader/combat_rifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p492x34mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/br64 - name = "BR-64 Patrol Leader" - desc = "Gives the orders. Equipped with an BR-64 battle rifle with UGL, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. The battle rifle offers improved damage and penetration compared to more common rifles, but still retains a grenade launcher that the AR-11 lacks." - - suit_store = /obj/item/weapon/gun/rifle/br64/standard - belt = /obj/item/storage/belt/marine/br64 - -/datum/outfit/quick/tgmc/leader/br64/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x265mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/sticky, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/auto_shotgun - name = "SH-15 Patrol Leader" - desc = "Gives the orders. Equipped with an SH-15 auto shotgun, plenty of grenades, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents, with strong damage and control." - - suit_store = /obj/item/weapon/gun/rifle/sh15/plasma_pistol - belt = /obj/item/storage/belt/marine/auto_shotgun - -/datum/outfit/quick/tgmc/leader/auto_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_slug, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/sh15_flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/plasma_pistol, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/m15, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/standard_laserrifle - name = "Laser Rifle Patrol Leader" - desc = "Gives the orders. Equipped with a laser rifle with UGL for better armor penetration against SOM, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_rifle/rifleman - belt = /obj/item/storage/belt/marine/te_cells - -/datum/outfit/quick/tgmc/leader/standard_laserrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/deployable_camera, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/hud_tablet(H, /datum/job/terragov/squad/leader, H.assigned_squad), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/lasrifle, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/cloak, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/flamer_tank/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/tgmc/leader/oicw - name = "AR-55 Patrol Leader" - desc = "Gives the orders. Equipped with an AR-55 OICW with plenty of grenades for its integrated grenade launcher, some support kit such as deployable cameras, as well as heavy armor with a 'valkyrie' autodoc module. You can provide excellent support to your squad thanks to your kit and order shouting talents." - quantity = 2 - - suit_store = /obj/item/weapon/gun/rifle/tx55/combat_patrol - belt = /obj/item/storage/belt/marine/oicw - -/datum/outfit/quick/tgmc/leader/oicw/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x24mm, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/ar12, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx54, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/tx54, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/vp70/tactical(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/vp70, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign, SLOT_IN_ACCESSORY) - -//// SOM loadouts //// - -//Base SOM outfit -/datum/outfit/quick/som - name = "SOM base" - desc = "This is the base typepath for all SOM quick vendor outfits. You shouldn't see this." - -//Base SOM marine outfit -/datum/outfit/quick/som/marine - name = "SOM Squad Marine" - jobtype = "SOM Squad Standard" - - ears = /obj/item/radio/headset/distress/som - w_uniform = /obj/item/clothing/under/som/webbing - shoes = /obj/item/clothing/shoes/marine/som/knife - wear_suit = /obj/item/clothing/suit/modular/som/shield - gloves = /obj/item/clothing/gloves/marine/som - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/som - r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol - l_store = /obj/item/storage/pouch/grenade/som/combat_patrol - back = /obj/item/storage/backpack/satchel/som - -/datum/outfit/quick/som/marine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/som/marine/standard_assaultrifle - name = "V-31 Infantryman" - desc = "The typical SOM infantryman. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor and a good selection of grenades. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." - - suit_store = /obj/item/weapon/gun/rifle/som/standard - belt = /obj/item/storage/belt/marine/som/som_rifle - -/datum/outfit/quick/som/marine/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/mpi - name = "MPI_KM Infantryman" - desc = "A call back to an earlier time. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." - - suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/grenadier - belt = /obj/item/storage/belt/marine/som/mpi_black - -/datum/outfit/quick/som/marine/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/light_carbine - name = "V-34 Light Infantryman" - desc = "Mobile and dangerous. Equipped with a V-34 carbine, light armor with an 'Aegis' shield module and a large supply of grenades. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." - - wear_suit = /obj/item/clothing/suit/modular/som/light/shield - suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard - belt = /obj/item/storage/belt/marine/som/carbine_black - -/datum/outfit/quick/som/marine/light_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/scout - name = "V-21 Light Infantryman" - desc = "Highly mobile scouting configuration. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, light armor with an 'Aegis' shield module and a good selection of grenades. Allows for exceptional mobility and blistering firepower, it will falter in extended engagements where low armor and the V-21's high rate of fire can become liabilities." - - wear_suit = /obj/item/clothing/suit/modular/som/light/shield - suit_store = /obj/item/weapon/gun/smg/som/scout - belt = /obj/item/storage/belt/marine/som/som_smg - -/datum/outfit/quick/som/marine/scout/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/shotgunner - name = "V-51 Pointman" - desc = "For close encounters. Equipped with a V-51 semi-automatic shotgun, light armor with an 'Aegis' shield module and a large selection of grenades. Allows for good mobility and dangerous CQC firepower." - - belt = /obj/item/storage/belt/shotgun/som/mixed - wear_suit = /obj/item/clothing/suit/modular/som/light/shield - suit_store = /obj/item/weapon/gun/shotgun/som/standard - -/datum/outfit/quick/som/marine/shotgunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/pyro - name = "V-62 Flamethrower Operator" - desc = "Smells like victory. Equipped with an V-62 incinerator and wide nozzle, V-11 equipped for rapid burst fire, heavy armor upgraded with a 'Hades' fireproof module, and a backtank of fuel. Has better than average range and can quickly burn down large areas. It suffers from significant slowdown, lacks an integrated extinguisher, and undisciplined use can result in rapidly consuming all available fuel." - - head = /obj/item/clothing/head/modular/som/hades - wear_suit = /obj/item/clothing/suit/modular/som/heavy/pyro - belt = /obj/item/storage/holster/belt/pistol/m4a3/som - back = /obj/item/ammo_magazine/flamer_tank/backtank - suit_store = /obj/item/weapon/gun/flamer/som/mag_harness - -/datum/outfit/quick/som/marine/pyro/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) - - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/breacher - name = "V-21 Breacher" - desc = "Heavy armored breaching configuration. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, heavy armor, a boarding shield and a good selection of grenades. Offers outstanding protection although damage may be lacking, particular at longer range." - - glasses = /obj/item/clothing/glasses/welding - wear_suit = /obj/item/clothing/suit/modular/som/heavy/shield - suit_store = /obj/item/weapon/gun/smg/som/one_handed - belt = /obj/item/storage/belt/marine/som/som_smg - r_hand = /obj/item/weapon/shield/riot/marine/som - -/datum/outfit/quick/som/marine/breacher/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/breacher_melee - name = "CQC Breacher" - desc = "For when a complete lack of subtlety is required. Equipped with 'Lorica' enhanced heavy armor and armed with a monsterous two handed breaching axe, designed to cut through heavy armor. When properly wielded, it also provides a degree of protection." - - head = /obj/item/clothing/head/modular/som/lorica - wear_suit = /obj/item/clothing/suit/modular/som/heavy/lorica - suit_store = /obj/item/weapon/twohanded/fireaxe/som - belt = /obj/item/storage/holster/belt/pistol/m4a3/som - -/datum/outfit/quick/som/marine/breacher_melee/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/synaptizine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/marine/machine_gunner - name = "V-41 Machinegunner" - desc = "Heavy static firesupport. Equipped with a V-41 machine gun, burst fire V-11 sidearm and some basic building supplies. While often ill suited to the SOM's standard doctrine of mobility and aggression, the V-41 is typically seen in defensive positions or second line units where its poor mobility is a minor drawback compared to its sustained firepower." - - suit_store = /obj/item/weapon/gun/rifle/som_mg/standard - belt = /obj/item/storage/holster/belt/pistol/m4a3/som - l_store = /obj/item/storage/pouch/construction/som - -/datum/outfit/quick/som/marine/machine_gunner/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/som_mg, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/tool/shovel/etool, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags_empty/half, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/sandbags/large_stack, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_L_POUCH) - -/datum/outfit/quick/som/marine/charger - name = "Charger Infantryman" - desc = "The future infantryman of the SOM. Equipped with a volkite charger, medium armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The charger is the SOM's premier close/medium range weapon, with good mobility, and can be used (with some difficulty) one handed when required." - quantity = 4 - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/magharness - belt = /obj/item/storage/belt/marine/som/volkite - -/datum/outfit/quick/som/marine/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - -//Base SOM engineer outfit -/datum/outfit/quick/som/engineer - name = "SOM Squad Engineer" - jobtype = "SOM Squad Engineer" - - ears = /obj/item/radio/headset/distress/som - w_uniform = /obj/item/clothing/under/som/webbing - shoes = /obj/item/clothing/shoes/marine/som/knife - wear_suit = /obj/item/clothing/suit/modular/som/engineer - gloves = /obj/item/clothing/gloves/marine/som/insulated - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/som/engineer - glasses = /obj/item/clothing/glasses/meson - r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol - l_store = /obj/item/storage/pouch/tools/som/full - back = /obj/item/storage/backpack/lightpack/som - -/datum/outfit/quick/som/engineer/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/circuitboard/apc, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/cell/high, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/sheet/plasteel/medium_stack, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/sheet/metal/large_stack, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/barbed_wire/half_stack, SLOT_IN_SUIT) - -/datum/outfit/quick/som/engineer/standard_assaultrifle - name = "V-31 Engineer" - desc = "Battlefield engineer; building up and tearing down. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." - - suit_store = /obj/item/weapon/gun/rifle/som/standard - belt = /obj/item/storage/belt/marine/som/som_rifle - -/datum/outfit/quick/som/engineer/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/engineer/mpi - name = "MPI-KM Engineer" - desc = "Battlefield engineer; building up and tearing down. Equipped with an MPI_KM assault rifle, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." - - suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/magharness - belt = /obj/item/storage/belt/marine/som/mpi_black - -/datum/outfit/quick/som/engineer/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/engineer/standard_carbine - name = "V-34 Engineer" - desc = "Battlefield engineer; building up and tearing down. Equipped with a V-34 carbine, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." - - suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard - belt = /obj/item/storage/belt/marine/som/carbine_black - -/datum/outfit/quick/som/engineer/standard_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/engineer/standard_smg - name = "V-21 Engineer" - desc = "Battlefield engineer; building up and tearing down. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. " - - suit_store = /obj/item/weapon/gun/smg/som/support - belt = /obj/item/storage/belt/marine/som/som_smg - -/datum/outfit/quick/som/engineer/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/engineer/standard_shotgun - name = "V-51 Engineer" - desc = "Battlefield engineer; building up and tearing down. Equipped with a V-51 semi-automatic shotgun, medium armor, a deployable COPE sentry and a selection of explosives. Has a variety of supplies and equipment to build, repair or apply demolitions in the field. A valuable support asset to a well rounded combat force. " - - belt = /obj/item/storage/belt/shotgun/som/flechette - suit_store = /obj/item/weapon/gun/shotgun/som/support - -/datum/outfit/quick/som/engineer/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/assembly/signaler, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/detpack, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/stack/cable_coil, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_ACCESSORY) - -//Base SOM medic outfit -/datum/outfit/quick/som/medic - name = "SOM Squad Medic" - jobtype = "SOM Squad Medic" - - belt = /obj/item/storage/belt/lifesaver/som/quick - ears = /obj/item/radio/headset/distress/som - w_uniform = /obj/item/clothing/under/som/medic/vest - shoes = /obj/item/clothing/shoes/marine/som/knife - wear_suit = /obj/item/clothing/suit/modular/som/medic - gloves = /obj/item/clothing/gloves/marine/som - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/som - glasses = /obj/item/clothing/glasses/hud/health - r_store = /obj/item/storage/pouch/magazine/large/som - l_store = /obj/item/storage/pouch/grenade/som/combat_patrol - back = /obj/item/storage/backpack/lightpack/som - -/datum/outfit/quick/som/medic/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/roller, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tweezers_advanced, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/pill_bottle/spaceacillin, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/nanoblood, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/bodybag/cryobag, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/advanced/combat_advanced, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/defibrillator, SLOT_IN_SUIT) - -/datum/outfit/quick/som/medic/standard_assaultrifle - name = "V-31 Medic" - desc = "Keeping your buddies alive and in the fight. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. The rail launcher fires grenades that must arm mid flight, so are ineffective at close ranges, but add significant tactical options at medium range." - - suit_store = /obj/item/weapon/gun/rifle/som/standard - -/datum/outfit/quick/som/medic/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som, SLOT_IN_R_POUCH) - -/datum/outfit/quick/som/medic/mpi - name = "MPI_KM Medic" - desc = "Keeping your buddies alive and in the fight. Equipped with an MPI_KM assault rifle, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." - - suit_store = /obj/item/weapon/gun/rifle/mpi_km/black/magharness - -/datum/outfit/quick/som/medic/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/black, SLOT_IN_R_POUCH) - -/datum/outfit/quick/som/medic/standard_carbine - name = "V-34 Medic" - desc = "Keeping your buddies alive and in the fight. Equipped with an V-34 carbine, medium armor for massive firepower and mobility, but poor ammo economy and range. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability. The V-34 is a modern update of an old weapon that was a common sight during the original Martian rebellion. Very reliable and excellent stopping power in a small, lightweight package. Brought into service as a much cheaper alternative to the VX-32." - - suit_store = /obj/item/weapon/gun/rifle/som_carbine/black/standard - -/datum/outfit/quick/som/medic/standard_carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black, SLOT_IN_R_POUCH) - -/datum/outfit/quick/som/medic/standard_smg - name = "V-21 Medic" - desc = "Keeping your buddies alive and in the fight. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability." - - suit_store = /obj/item/weapon/gun/smg/som/support - -/datum/outfit/quick/som/medic/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_R_POUCH) - -/datum/outfit/quick/som/medic/standard_shotgun - name = "V-51 Medic" - desc = "Keeping your buddies alive and in the fight. Equipped with a V-51 semi-automatic shotgun, medium armor and a good selection of grenades. Packs a large amount of medical supplies, the squad medic is vital to maintaining combat viability." - - r_store = /obj/item/storage/pouch/shotgun/som - suit_store = /obj/item/weapon/gun/shotgun/som/support - -/datum/outfit/quick/som/medic/standard_shotgun/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/oxycodone, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclotplus, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/peridaxon_plus, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/flechette, SLOT_IN_R_POUCH) - -//Base SOM veteran outfit -/datum/outfit/quick/som/veteran - name = "SOM Squad Veteran" - jobtype = "SOM Squad Veteran" - - ears = /obj/item/radio/headset/distress/som - w_uniform = /obj/item/clothing/under/som/veteran/webbing - shoes = /obj/item/clothing/shoes/marine/som/knife - wear_suit = /obj/item/clothing/suit/modular/som/heavy/shield - gloves = /obj/item/clothing/gloves/marine/som/veteran - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/som/veteran - glasses = /obj/item/clothing/glasses/meson - r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol - l_store = /obj/item/storage/pouch/grenade/som/combat_patrol - back = /obj/item/storage/backpack/satchel/som - -/datum/outfit/quick/som/veteran/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/som/veteran/standard_assaultrifle - name = "V-31 Veteran Infantryman" - desc = "Heavily armed and armored SOM elite. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, heavy armor, a large variety of grenades as well as AP ammunition. Excellent performance against heavily armored targets, while the plentiful grenade provide greater tactical flexibility." - - back = /obj/item/storage/backpack/lightpack/som - suit_store = /obj/item/weapon/gun/rifle/som/veteran - belt = /obj/item/storage/belt/marine/som/som_rifle_ap - -/datum/outfit/quick/som/veteran/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/standard_smg - name = "V-21 Veteran Infantryman" - desc = "Close range high damage, high speed. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, heavy armor, a good variety of grenades and AP ammunition. Allows for excellent close to medium range firepower, especially against heavily armored targets, and is surprisingly mobile." - - suit_store = /obj/item/weapon/gun/smg/som/veteran - belt = /obj/item/storage/belt/marine/som/som_smg_ap - -/datum/outfit/quick/som/veteran/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/breacher - name = "Charger Veteran Breacher" - desc = "Heavy armored breaching configuration. Equipped with a volkite charger configured for better one handed use, heavy armor upgraded with 'Lorica' armor reinforcements, a boarding shield and a good selection of grenades. Premier protection and deadly close range firepower." - - head = /obj/item/clothing/head/modular/som/lorica - glasses = /obj/item/clothing/glasses/welding - wear_suit = /obj/item/clothing/suit/modular/som/heavy/lorica - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/somvet - belt = /obj/item/storage/belt/marine/som/volkite - r_hand = /obj/item/weapon/shield/riot/marine/som - -/datum/outfit/quick/som/veteran/breacher/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/tool/weldingtool/largetank, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/charger - name = "Charger Veteran Infantryman" - desc = "Heavily armed and armored SOM elite. Equipped with a volkite charger with motion sensor and gyrostabiliser for better one handed use, heavy armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The charger is the SOM's premier close/medium range weapon, with good mobility, and can be used (with some difficulty) one handed." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/scout - belt = /obj/item/storage/belt/marine/som/volkite - -/datum/outfit/quick/som/veteran/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/caliver - name = "Caliver Veteran Infantryman" - desc = "Heavily armed and armored SOM elite. Equipped with a volkite caliver, heavy armor and a good variety of grenades. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The caliver provides deadly firepower at all ranges. Approach with caution." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/standard - belt = /obj/item/storage/belt/marine/som/volkite - -/datum/outfit/quick/som/veteran/caliver/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/caliver_pack - name = "Caliver Veteran Rifleman" - desc = "Heavily armed and armored SOM elite. Equipped with a volkite caliver with motion sensor, heavy armor, plenty of grenades and a back mounted self charging power supply. Volkite weapons are exceptionally dangerous, especially against poorly armored or tightly grouped opponents. The caliver provides deadly firepower at all ranges, and the power pack allows for sustained period of fire, although over extended periods of time the recharge may struggle to keep up with the demands of the weapon." - quantity = 2 - - belt = /obj/item/storage/belt/grenade/som - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/tacsensor - l_store = /obj/item/storage/pouch/pistol/som - back = /obj/item/cell/lasgun/volkite/powerpack - -/datum/outfit/quick/som/veteran/caliver_pack/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_BELT) - - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_L_POUCH) - -/datum/outfit/quick/som/veteran/mpi - name = "MPI_KM Veteran Infantryman" - desc = "Heavily armed and armored SOM elite, with a taste for nostalgia. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." - - suit_store = /obj/item/weapon/gun/rifle/mpi_km/grenadier - belt = /obj/item/storage/belt/marine/som/mpi_plum - -/datum/outfit/quick/som/veteran/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/extended, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/carbine - name = "V-34 Veteran Infantryman" - desc = "Heavily armed and armored SOM elite, with a taste for nostalgia. Equipped with an heirloom V-34 carbine, and a large supply of grenades. An old weapon that saw extensive use during the original Martian rebellion, this one has been preserved and passed down the generations. The V-34 is largely surpassed by the VX-32, however with its high calibre rounds and good rate of fire, it cannot be underestimated." - - suit_store = /obj/item/weapon/gun/rifle/som_carbine/mag_harness - belt = /obj/item/storage/belt/marine/som/carbine - -/datum/outfit/quick/som/veteran/carbine/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/standard(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/carbine, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/incendiary/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/culverin - name = "Culverin Veteran Machinegunner" - desc = "Heavily armored heavy firesupport. Equipped with a volkite culverin and self charging backpack power unit, and a shotgun sidearm. The culverin is the most powerful man portable weapon the SOM have been seen to field. Capabable of laying down a tremendous barrage of firepower for extended periods of time. Although the back-mounted powerpack is self charging, it cannot keep up with the immense power requirements of the gun, so sustained, prolonged use can degrade the weapon's effectiveness greatly." - quantity = 2 - - belt = /obj/item/weapon/gun/shotgun/double/sawn - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/culverin/magharness - back = /obj/item/cell/lasgun/volkite/powerpack - -/datum/outfit/quick/som/veteran/culverin/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/buckshot, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/rocket_man - name = "V-71 Rocket Veteran" - desc = "War crimes have never been so easy. Equipped with a V-71 RPG and both incendiary and rad warheads, as well as a V-21 submachine gun with radioactive ammunition, heavy armor with a 'Mithridatius' environmental protection system, and rad grenades. Designed to inspire fear in the enemy and cripple them with deadly incendiary and radiological effects, providing excellent anti infantry support." - quantity = 2 - - head = /obj/item/clothing/head/modular/som/bio - wear_suit = /obj/item/clothing/suit/modular/som/heavy/mithridatius - suit_store = /obj/item/weapon/gun/smg/som/support - belt = /obj/item/storage/belt/marine/som - back = /obj/item/storage/holster/backholster/rpg/som/war_crimes - l_store = /obj/item/storage/pouch/grenade/som - -/datum/outfit/quick/som/veteran/rocket_man/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/rad, SLOT_IN_BELT) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/smokebomb/satrapine, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/rad, SLOT_IN_L_POUCH) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/packet/p10x20mm, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/veteran/blinker - name = "Blink Assault Veteran" - desc = "Shock melee assault class. Equipped with a blink drive and energy sword, light armor and a backup burstfire V-11. The blink drive allows for short range teleports at some risk to the user, but allows them to effortless close the distance to cut down enemies when used correctly." - quantity = 2 - - wear_suit = /obj/item/clothing/suit/modular/som/light/shield - belt = /obj/item/storage/holster/belt/pistol/m4a3/som - suit_store = /obj/item/weapon/energy/sword/som - back = /obj/item/blink_drive - -/datum/outfit/quick/som/veteran/blinker/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/pistol/som/extended, SLOT_IN_HOLSTER) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/pistol/som/burst(H), SLOT_IN_HOLSTER) - -//Base SOM leader outfit -/datum/outfit/quick/som/squad_leader - name = "SOM Squad Leader" - jobtype = "SOM Squad Leader" - - ears = /obj/item/radio/headset/distress/som - w_uniform = /obj/item/clothing/under/som/leader/webbing - shoes = /obj/item/clothing/shoes/marine/som/knife - wear_suit = /obj/item/clothing/suit/modular/som/heavy/leader/valk - gloves = /obj/item/clothing/gloves/marine/som/veteran - mask = /obj/item/clothing/mask/gas - head = /obj/item/clothing/head/modular/som/leader - glasses = /obj/item/clothing/glasses/hud/health - r_store = /obj/item/storage/pouch/firstaid/som/combat_patrol_leader - l_store = /obj/item/storage/pouch/grenade/som/combat_patrol - back = /obj/item/storage/backpack/satchel/som - -/datum/outfit/quick/som/squad_leader/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/russian_red, SLOT_IN_HEAD) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/combat_advanced, SLOT_IN_HEAD) - - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/gauze, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/stack/medical/heal_pack/ointment, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/isotonic, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/quickclot, SLOT_IN_SUIT) - H.equip_to_slot_or_del(new /obj/item/reagent_containers/hypospray/autoinjector/dylovene, SLOT_IN_SUIT) - -/datum/outfit/quick/som/squad_leader/standard_assaultrifle - name = "V-31 Squad Leader" - desc = "Tactical utility. Equipped with a V-31 assault rifle with integrated 'micro grenade' rail launcher, Gorgon heavy armor with 'Valkyrie' autodoctor module, a large variety of grenades as well as AP ammunition. Excellent performance against heavily armored targets, while the plentiful grenade provide greater tactical flexibility." - - back = /obj/item/storage/backpack/lightpack/som - suit_store = /obj/item/weapon/gun/rifle/som/veteran - belt = /obj/item/storage/belt/marine/som/som_rifle_ap - -/datum/outfit/quick/som/squad_leader/standard_assaultrifle/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/dragonbreath, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/cluster, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/handful/micro_grenade/smoke_burst, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/squad_leader/standard_smg - name = "V-21 Squad Leader" - desc = "Close range high damage, high speed. Equipped with a V-21 submachine gun with variable firerate allowing for extreme rates of fire when properly wielded, Gorgon heavy armor with 'Valkyrie' autodoctor module, a good variety of grenades and AP ammunition. Allows for excellent close to medium range firepower, especially against heavily armored targets, and is surprisingly mobile." - - suit_store = /obj/item/weapon/gun/smg/som/veteran - belt = /obj/item/storage/belt/marine/som/som_smg_ap - -/datum/outfit/quick/som/squad_leader/standard_smg/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/ap, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/smg/som/incendiary, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/squad_leader/charger - name = "Charger Squad Leader" - desc = "For the leader that prefers to be up close and personal. Equipped with a volkite charger with motion sensor and gyrostabiliser for better one handed use, Gorgon heavy armor with 'Valkyrie' autodoctor module and a good variety of grenades. Allows for excellent close to medium range firepower, with first rate survivability. Very dangerous." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/charger/scout - belt = /obj/item/storage/belt/marine/som/volkite - -/datum/outfit/quick/som/squad_leader/charger/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/squad_leader/caliver - name = "Caliver Squad Leader" - desc = "Victory through superior firepower. Equipped with a volkite caliver and motion sensor, Gorgon heavy armor with 'Valkyrie' autodoctor module and a good variety of grenades. Allows for excellent damage at all ranges, with first rate survivability. Very dangerous." - - suit_store = /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/caliver/tacsensor - belt = /obj/item/storage/belt/marine/som/volkite - -/datum/outfit/quick/som/squad_leader/caliver/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/flashbang/stun, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_ACCESSORY) - -/datum/outfit/quick/som/squad_leader/mpi - name = "MPI_KM Squad Leader" - desc = "For the leader with a taste for nostalgia. Equipped with an MPI_KM assault rifle, with under barrel grenade launcher, Gorgon heavy armor with 'Valkyrie' autodoctor module and a large supply of grenades. An old weapon that was a common sight during the original Martian rebellion, the MPI's good stopping power, reliability and a healthy dose of nostalgia means it is still seen in use by some among the SOM despite its age." - - suit_store = /obj/item/weapon/gun/rifle/mpi_km/grenadier - belt = /obj/item/storage/belt/marine/som/mpi_plum - -/datum/outfit/quick/som/squad_leader/mpi/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) - . = ..() - H.equip_to_slot_or_del(new /obj/item/storage/box/MRE/som, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta(H), SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/cell/lasgun/volkite/small, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/ammo_magazine/rifle/mpi_km/extended, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/tool/extinguisher/mini, SLOT_IN_BACKPACK) - H.equip_to_slot_or_del(new /obj/item/explosive/plastique, SLOT_IN_BACKPACK) - - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/explosive/grenade/som, SLOT_IN_ACCESSORY) - H.equip_to_slot_or_del(new /obj/item/binoculars/fire_support/campaign/som, SLOT_IN_ACCESSORY) diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 6144b76f955..b6be203bda1 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -26,16 +26,16 @@ var/access = list() /// The name registered_name on the card var/registered_name = "Unknown" + ///Miscelaneous ID flags + var/flags_id = CAN_BUY_LOADOUT ///Blood type of the person that has it. var/blood_type = "\[UNSET\]" ///How many points you can use to buy items var/marine_points = list() - ///What category of items can you buy - used for armor and poucehs + ///What category of items can you buy - used for armor and pouches var/marine_buy_choices = list() - ///Used for quick vendor, to restrict buying loadout more than once - var/can_buy_loadout = TRUE //alt titles are handled a bit weirdly in order to unobtrusively integrate into existing ID system var/assignment = null //can be alt title or the actual job @@ -202,7 +202,7 @@ icon_state = "dogtag" item_state = "dogtag" iff_signal = TGMC_LOYALIST_IFF - marine_points = list(CAT_MARINE = DEFAULT_TOTAL_BUY_POINTS) + marine_points = list(CAT_MARINE = MARINE_TOTAL_BUY_POINTS) var/dogtag_taken = FALSE /obj/item/card/id/dogtag/update_icon_state() @@ -242,16 +242,16 @@ // Vendor points for job override /obj/item/card/id/dogtag/smartgun - marine_points = list(CAT_SGSUP = DEFAULT_TOTAL_BUY_POINTS) + marine_points = list(CAT_SGSUP = SMARTGUNNER_TOTAL_BUY_POINTS) /obj/item/card/id/dogtag/robot - marine_points = list(CAT_ROBOT = DEFAULT_TOTAL_BUY_POINTS) + marine_points = list(CAT_ROBOT = ROBOT_TOTAL_BUY_POINTS) /obj/item/card/id/dogtag/engineer marine_points = list(CAT_ENGSUP = ENGINEER_TOTAL_BUY_POINTS) /obj/item/card/id/dogtag/leader - marine_points = list(CAT_LEDSUP = DEFAULT_TOTAL_BUY_POINTS) + marine_points = list(CAT_LEDSUP = LEADER_TOTAL_BUY_POINTS) /obj/item/card/id/dogtag/corpsman marine_points = list(CAT_MEDSUP = MEDIC_TOTAL_BUY_POINTS) @@ -261,14 +261,14 @@ /obj/item/card/id/dogtag/full marine_points = list( - CAT_MARINE = DEFAULT_TOTAL_BUY_POINTS, - CAT_SGSUP = DEFAULT_TOTAL_BUY_POINTS, + CAT_MARINE = MARINE_TOTAL_BUY_POINTS, + CAT_SGSUP = SMARTGUNNER_TOTAL_BUY_POINTS, CAT_ENGSUP = ENGINEER_TOTAL_BUY_POINTS, - CAT_LEDSUP = DEFAULT_TOTAL_BUY_POINTS, + CAT_LEDSUP = LEADER_TOTAL_BUY_POINTS, CAT_MEDSUP = MEDIC_TOTAL_BUY_POINTS, CAT_FCSUP = COMMANDER_TOTAL_BUY_POINTS, CAT_SYNTH = SYNTH_TOTAL_BUY_POINTS, - CAT_ROBOT = DEFAULT_TOTAL_BUY_POINTS, //necessary to correctly show max points + CAT_ROBOT = ROBOT_TOTAL_BUY_POINTS, //necessary to correctly show max points ) /obj/item/card/id/dogtag/som diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 35305327f8a..e2cc49f4463 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -1,5 +1,3 @@ - - /obj/item/storage/belt name = "belt" desc = "Can hold various things." @@ -12,19 +10,17 @@ w_class = WEIGHT_CLASS_BULKY allow_drawing_method = TRUE - - /obj/item/storage/belt/equipped(mob/user, slot) if(slot == SLOT_BELT) mouse_opacity = 2 //so it's easier to click when properly equipped. - ..() + return ..() /obj/item/storage/belt/dropped(mob/user) mouse_opacity = initial(mouse_opacity) - ..() + return ..() /obj/item/storage/belt/vendor_equip(mob/user) - ..() + . = ..() return user.equip_to_appropriate_slot(src) /obj/item/storage/belt/champion @@ -63,19 +59,17 @@ /obj/item/tool/surgery/solderingtool, ) -/obj/item/storage/belt/utility/full/Initialize(mapload) - . = ..() +/obj/item/storage/belt/utility/full/PopulateContents() new /obj/item/tool/screwdriver (src) new /obj/item/tool/wirecutters (src) new /obj/item/tool/weldingtool (src) new /obj/item/tool/wrench (src) new /obj/item/tool/crowbar (src) - new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange")) + new /obj/item/stack/cable_coil(src, 30, pick("red", "yellow", "orange")) new /obj/item/tool/multitool(src) -/obj/item/storage/belt/utility/atmostech/Initialize(mapload) - . = ..() +/obj/item/storage/belt/utility/atmostech/PopulateContents() new /obj/item/tool/screwdriver(src) new /obj/item/tool/wrench(src) new /obj/item/tool/weldingtool(src) @@ -129,8 +123,7 @@ /obj/item/tweezers_advanced, ) -/obj/item/storage/belt/lifesaver/full/Initialize(mapload) //The belt, with all it's magic inside! - . = ..() +/obj/item/storage/belt/lifesaver/full/PopulateContents() //The belt, with all it's magic inside! new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -153,8 +146,7 @@ new /obj/item/stack/medical/heal_pack/advanced/bruise_pack(src) new /obj/item/healthanalyzer(src) -/obj/item/storage/belt/lifesaver/quick/Initialize(mapload) //quick load for combat patrol - . = ..() +/obj/item/storage/belt/lifesaver/quick/PopulateContents() //quick load for combat patrol new /obj/item/stack/medical/heal_pack/advanced/bruise_pack(src) new /obj/item/stack/medical/heal_pack/advanced/bruise_pack(src) new /obj/item/stack/medical/heal_pack/advanced/burn_pack(src) @@ -169,14 +161,36 @@ new /obj/item/storage/pill_bottle/tricordrazine(src) new /obj/item/storage/pill_bottle/inaprovaline(src) new /obj/item/storage/pill_bottle/quickclot(src) - new /obj/item/storage/pill_bottle/alkysine(src) - new /obj/item/storage/pill_bottle/imidazoline(src) + new /obj/item/storage/pill_bottle/imialky(src) new /obj/item/storage/pill_bottle/meralyne(src) new /obj/item/storage/pill_bottle/dermaline(src) new /obj/item/storage/pill_bottle/hypervene(src) new /obj/item/reagent_containers/hypospray/autoinjector/dexalinplus(src) new /obj/item/healthanalyzer(src) +/obj/item/storage/belt/lifesaver/beginner/PopulateContents() //For beginner vendor + new /obj/item/storage/pill_bottle/bicaridine(src) + new /obj/item/storage/pill_bottle/meralyne(src) + new /obj/item/storage/pill_bottle/kelotane(src) + new /obj/item/storage/pill_bottle/dermaline(src) + new /obj/item/storage/pill_bottle/tramadol(src) + new /obj/item/storage/pill_bottle/tricordrazine(src) + new /obj/item/storage/pill_bottle/dylovene(src) + new /obj/item/storage/pill_bottle/inaprovaline(src) + new /obj/item/storage/pill_bottle/isotonic(src) + new /obj/item/storage/pill_bottle/spaceacillin(src) + new /obj/item/storage/pill_bottle/imialky(src) + new /obj/item/storage/pill_bottle/hypervene(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/splint(src) + new /obj/item/stack/medical/heal_pack/advanced/burn_pack(src) + new /obj/item/stack/medical/heal_pack/advanced/bruise_pack(src) + new /obj/item/healthanalyzer(src) + /obj/item/storage/belt/lifesaver/full/upp name ="\improper Type 41 pattern lifesaver bag" desc = "The Type 41 load rig is the standard-issue LBE of the UPP military. This configuration mounts a satchel filled with a range of injectors and light medical supplies, common among medics and partisans." @@ -190,8 +204,7 @@ icon_state = "medicbag_som" item_state = "medicbag_som" -/obj/item/storage/belt/lifesaver/som/ert/Initialize(mapload) - . = ..() +/obj/item/storage/belt/lifesaver/som/ert/PopulateContents() new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -214,8 +227,7 @@ new /obj/item/stack/medical/heal_pack/advanced/bruise_pack(src) new /obj/item/healthanalyzer(src) -/obj/item/storage/belt/lifesaver/som/quick/Initialize(mapload) - . = ..() +/obj/item/storage/belt/lifesaver/som/quick/PopulateContents() new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -223,8 +235,7 @@ new /obj/item/storage/pill_bottle/dylovene(src) new /obj/item/storage/pill_bottle/inaprovaline(src) new /obj/item/storage/pill_bottle/quickclot(src) - new /obj/item/storage/pill_bottle/alkysine(src) - new /obj/item/storage/pill_bottle/imidazoline(src) + new /obj/item/storage/pill_bottle/imialky(src) new /obj/item/storage/pill_bottle/hypervene(src) new /obj/item/storage/pill_bottle/meralyne(src) new /obj/item/storage/pill_bottle/dermaline(src) @@ -244,8 +255,7 @@ icon_state = "medicbag_icc" item_state = "medicbag_icc" -/obj/item/storage/belt/lifesaver/icc/ert/Initialize(mapload) - . = ..() +/obj/item/storage/belt/lifesaver/icc/ert/PopulateContents() new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -296,8 +306,7 @@ /obj/item/tweezers_advanced, ) -/obj/item/storage/belt/rig/medical/Initialize(mapload) //The belt, with all it's magic inside! - . = ..() +/obj/item/storage/belt/rig/medical/PopulateContents() new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -314,8 +323,7 @@ new /obj/item/defibrillator(src) new /obj/item/healthanalyzer(src) -/obj/item/storage/belt/rig/research/Initialize(mapload) //The belt, with all it's magic inside! - . = ..() +/obj/item/storage/belt/rig/research/PopulateContents() new /obj/item/storage/pill_bottle/bicaridine(src) new /obj/item/storage/pill_bottle/kelotane(src) new /obj/item/storage/pill_bottle/tramadol(src) @@ -349,8 +357,7 @@ /obj/item/storage/syringe_case, ) -/obj/item/storage/belt/hypospraybelt/Initialize(mapload) //The belt, with all it's magic inside! - . = ..() +/obj/item/storage/belt/hypospraybelt/full/PopulateContents() new /obj/item/reagent_containers/glass/bottle/bicaridine(src) new /obj/item/reagent_containers/glass/bottle/kelotane(src) new /obj/item/reagent_containers/glass/bottle/tramadol(src) @@ -369,6 +376,29 @@ new /obj/item/reagent_containers/hypospray/advanced/hypervene(src) new /obj/item/healthanalyzer(src) +/obj/item/storage/belt/hypospraybelt/beginner/PopulateContents() + new /obj/item/reagent_containers/glass/bottle/bicaridine(src) + new /obj/item/reagent_containers/glass/bottle/kelotane(src) + new /obj/item/reagent_containers/glass/bottle/tramadol(src) + new /obj/item/reagent_containers/glass/bottle/tricordrazine(src) + new /obj/item/reagent_containers/hypospray/advanced/big/bicaridine(src) + new /obj/item/reagent_containers/hypospray/advanced/big/kelotane(src) + new /obj/item/reagent_containers/hypospray/advanced/big/tramadol(src) + new /obj/item/reagent_containers/hypospray/advanced/big/tricordrazine(src) + new /obj/item/reagent_containers/hypospray/advanced/big/combatmix(src) + new /obj/item/reagent_containers/hypospray/advanced/big/dylovene(src) + new /obj/item/reagent_containers/hypospray/advanced/big/inaprovaline(src) + new /obj/item/reagent_containers/hypospray/advanced/big/isotonic(src) + new /obj/item/reagent_containers/hypospray/advanced/big/spaceacillin(src) + new /obj/item/reagent_containers/hypospray/advanced/big/quickclot(src) + new /obj/item/reagent_containers/hypospray/advanced/imialky(src) + new /obj/item/reagent_containers/hypospray/advanced/hypervene(src) + new /obj/item/reagent_containers/hypospray/advanced/peridaxon(src) + new /obj/item/reagent_containers/hypospray/advanced/quickclot(src) + new /obj/item/storage/syringe_case/meraderm(src) + new /obj/item/storage/syringe_case/meraderm(src) + new /obj/item/reagent_containers/hypospray/advanced/meraderm(src) + /obj/item/storage/belt/security name = "\improper M276 pattern security rig" desc = "The M276 is the standard load-bearing equipment of the TGMC. It consists of a modular belt with various clips. This configuration is commonly seen among TGMC Military Police and peacekeepers, though it can hold some light munitions." @@ -450,17 +480,7 @@ AddComponent(/datum/component/magazine_catcher) AddComponent(/datum/component/easy_restock) -/obj/item/storage/belt/marine/ar18/Initialize(mapload) - . = ..() - new /obj/item/ammo_magazine/rifle/ar18(src) - new /obj/item/ammo_magazine/rifle/ar18(src) - new /obj/item/ammo_magazine/rifle/ar18(src) - new /obj/item/ammo_magazine/rifle/ar18(src) - new /obj/item/ammo_magazine/rifle/ar18(src) - new /obj/item/ammo_magazine/rifle/ar18(src) - -/obj/item/storage/belt/marine/ar12/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/ar12/PopulateContents() new /obj/item/ammo_magazine/rifle/ar12(src) new /obj/item/ammo_magazine/rifle/ar12(src) new /obj/item/ammo_magazine/rifle/ar12(src) @@ -468,8 +488,15 @@ new /obj/item/ammo_magazine/rifle/ar12(src) new /obj/item/ammo_magazine/rifle/ar12(src) -/obj/item/storage/belt/marine/ar21/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/ar18/PopulateContents() + new /obj/item/ammo_magazine/rifle/ar18(src) + new /obj/item/ammo_magazine/rifle/ar18(src) + new /obj/item/ammo_magazine/rifle/ar18(src) + new /obj/item/ammo_magazine/rifle/ar18(src) + new /obj/item/ammo_magazine/rifle/ar18(src) + new /obj/item/ammo_magazine/rifle/ar18(src) + +/obj/item/storage/belt/marine/ar21/PopulateContents() new /obj/item/ammo_magazine/rifle/ar21(src) new /obj/item/ammo_magazine/rifle/ar21(src) new /obj/item/ammo_magazine/rifle/ar21(src) @@ -477,8 +504,7 @@ new /obj/item/ammo_magazine/rifle/ar21(src) new /obj/item/ammo_magazine/rifle/ar21(src) -/obj/item/storage/belt/marine/br64/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/br64/PopulateContents() new /obj/item/ammo_magazine/rifle/br64(src) new /obj/item/ammo_magazine/rifle/br64(src) new /obj/item/ammo_magazine/rifle/br64(src) @@ -486,8 +512,7 @@ new /obj/item/ammo_magazine/rifle/br64(src) new /obj/item/ammo_magazine/rifle/br64(src) -/obj/item/storage/belt/marine/t90/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/t90/PopulateContents() new /obj/item/ammo_magazine/smg/smg90(src) new /obj/item/ammo_magazine/smg/smg90(src) new /obj/item/ammo_magazine/smg/smg90(src) @@ -495,8 +520,7 @@ new /obj/item/ammo_magazine/smg/smg90(src) new /obj/item/ammo_magazine/smg/smg90(src) -/obj/item/storage/belt/marine/secondary/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/secondary/PopulateContents() new /obj/item/ammo_magazine/smg/m25(src) new /obj/item/ammo_magazine/smg/m25(src) new /obj/item/ammo_magazine/smg/m25(src) @@ -504,8 +528,7 @@ new /obj/item/ammo_magazine/smg/m25(src) new /obj/item/ammo_magazine/smg/m25(src) -/obj/item/storage/belt/marine/antimaterial/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/antimaterial/PopulateContents() new /obj/item/ammo_magazine/sniper/flak(src) new /obj/item/ammo_magazine/sniper/flak(src) new /obj/item/ammo_magazine/sniper/incendiary(src) @@ -513,8 +536,7 @@ new /obj/item/ammo_magazine/sniper(src) new /obj/item/ammo_magazine/sniper(src) -/obj/item/storage/belt/marine/tx8/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/tx8/PopulateContents() new /obj/item/ammo_magazine/rifle/tx8/impact(src) new /obj/item/ammo_magazine/rifle/tx8/impact(src) new /obj/item/ammo_magazine/rifle/tx8/incendiary(src) @@ -522,8 +544,7 @@ new /obj/item/ammo_magazine/rifle/tx8(src) new /obj/item/ammo_magazine/rifle/tx8(src) -/obj/item/storage/belt/marine/combat_rifle/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/combat_rifle/PopulateContents() new /obj/item/ammo_magazine/rifle/ar11(src) new /obj/item/ammo_magazine/rifle/ar11(src) new /obj/item/ammo_magazine/rifle/ar11(src) @@ -531,8 +552,7 @@ new /obj/item/ammo_magazine/rifle/ar11(src) new /obj/item/ammo_magazine/rifle/ar11(src) -/obj/item/storage/belt/marine/alf_machinecarbine/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/alf_machinecarbine/PopulateContents() new /obj/item/ammo_magazine/rifle/alf_machinecarbine(src) new /obj/item/ammo_magazine/rifle/alf_machinecarbine(src) new /obj/item/ammo_magazine/rifle/alf_machinecarbine(src) @@ -540,8 +560,7 @@ new /obj/item/ammo_magazine/rifle/alf_machinecarbine(src) new /obj/item/ammo_magazine/rifle/alf_machinecarbine(src) -/obj/item/storage/belt/marine/auto_shotgun/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/auto_shotgun/PopulateContents() new /obj/item/ammo_magazine/rifle/sh15_slug(src) new /obj/item/ammo_magazine/rifle/sh15_slug(src) new /obj/item/ammo_magazine/rifle/sh15_slug(src) @@ -549,8 +568,7 @@ new /obj/item/ammo_magazine/rifle/sh15_flechette(src) new /obj/item/ammo_magazine/rifle/sh15_flechette(src) -/obj/item/storage/belt/marine/te_cells/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/te_cells/PopulateContents() new /obj/item/cell/lasgun/lasrifle(src) new /obj/item/cell/lasgun/lasrifle(src) new /obj/item/cell/lasgun/lasrifle(src) @@ -558,8 +576,7 @@ new /obj/item/cell/lasgun/lasrifle(src) new /obj/item/cell/lasgun/lasrifle(src) -/obj/item/storage/belt/marine/oicw/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/oicw/PopulateContents() new /obj/item/ammo_magazine/rifle/ar12(src) new /obj/item/ammo_magazine/rifle/ar12(src) new /obj/item/ammo_magazine/rifle/tx54/incendiary(src) @@ -567,8 +584,7 @@ new /obj/item/ammo_magazine/rifle/tx54(src) new /obj/item/ammo_magazine/rifle/tx54(src) -/obj/item/storage/belt/marine/smartgun/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/smartgun/PopulateContents() new /obj/item/ammo_magazine/sg29(src) new /obj/item/ammo_magazine/sg29(src) new /obj/item/ammo_magazine/sg29(src) @@ -576,8 +592,7 @@ new /obj/item/ammo_magazine/sg29(src) new /obj/item/ammo_magazine/sg29(src) -/obj/item/storage/belt/marine/sg62/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/sg62/PopulateContents() new /obj/item/ammo_magazine/rifle/sg62(src) new /obj/item/ammo_magazine/rifle/sg62(src) new /obj/item/ammo_magazine/rifle/sg62(src) @@ -592,8 +607,7 @@ item_state = "upp_belt" //version full of type 71 mags -/obj/item/storage/belt/marine/upp/full/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/upp/full/PopulateContents() new /obj/item/ammo_magazine/rifle/type71(src) new /obj/item/ammo_magazine/rifle/type71(src) new /obj/item/ammo_magazine/rifle/type71(src) @@ -607,8 +621,7 @@ icon_state = "som_belt" item_state = "som_belt" -/obj/item/storage/belt/marine/som/som_rifle/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/som_rifle/PopulateContents() new /obj/item/ammo_magazine/rifle/som(src) new /obj/item/ammo_magazine/rifle/som(src) new /obj/item/ammo_magazine/rifle/som(src) @@ -616,8 +629,7 @@ new /obj/item/ammo_magazine/rifle/som(src) new /obj/item/ammo_magazine/rifle/som(src) -/obj/item/storage/belt/marine/som/som_rifle_ap/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/som_rifle_ap/PopulateContents() new /obj/item/ammo_magazine/rifle/som/ap(src) new /obj/item/ammo_magazine/rifle/som/ap(src) new /obj/item/ammo_magazine/rifle/som/ap(src) @@ -625,8 +637,7 @@ new /obj/item/ammo_magazine/rifle/som/ap(src) new /obj/item/ammo_magazine/rifle/som/ap(src) -/obj/item/storage/belt/marine/som/som_smg/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/som_smg/PopulateContents() new /obj/item/ammo_magazine/smg/som(src) new /obj/item/ammo_magazine/smg/som(src) new /obj/item/ammo_magazine/smg/som(src) @@ -634,8 +645,7 @@ new /obj/item/ammo_magazine/smg/som(src) new /obj/item/ammo_magazine/smg/som(src) -/obj/item/storage/belt/marine/som/som_smg_ap/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/som_smg_ap/PopulateContents() new /obj/item/ammo_magazine/smg/som/ap(src) new /obj/item/ammo_magazine/smg/som/ap(src) new /obj/item/ammo_magazine/smg/som/ap(src) @@ -643,8 +653,7 @@ new /obj/item/ammo_magazine/smg/som/ap(src) new /obj/item/ammo_magazine/smg/som/ap(src) -/obj/item/storage/belt/marine/som/volkite/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/volkite/PopulateContents() new /obj/item/cell/lasgun/volkite(src) new /obj/item/cell/lasgun/volkite(src) new /obj/item/cell/lasgun/volkite(src) @@ -652,8 +661,7 @@ new /obj/item/cell/lasgun/volkite(src) new /obj/item/cell/lasgun/volkite(src) -/obj/item/storage/belt/marine/som/mpi_plum/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/mpi_plum/PopulateContents() new /obj/item/ammo_magazine/rifle/mpi_km/plum(src) new /obj/item/ammo_magazine/rifle/mpi_km/plum(src) new /obj/item/ammo_magazine/rifle/mpi_km/plum(src) @@ -661,8 +669,7 @@ new /obj/item/ammo_magazine/rifle/mpi_km/plum(src) new /obj/item/ammo_magazine/rifle/mpi_km/plum(src) -/obj/item/storage/belt/marine/som/mpi_black/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/mpi_black/PopulateContents() new /obj/item/ammo_magazine/rifle/mpi_km/black(src) new /obj/item/ammo_magazine/rifle/mpi_km/black(src) new /obj/item/ammo_magazine/rifle/mpi_km/black(src) @@ -670,8 +677,7 @@ new /obj/item/ammo_magazine/rifle/mpi_km/black(src) new /obj/item/ammo_magazine/rifle/mpi_km/black(src) -/obj/item/storage/belt/marine/som/carbine/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/carbine/PopulateContents() new /obj/item/ammo_magazine/rifle/mpi_km/carbine(src) new /obj/item/ammo_magazine/rifle/mpi_km/carbine(src) new /obj/item/ammo_magazine/rifle/mpi_km/carbine(src) @@ -679,8 +685,7 @@ new /obj/item/ammo_magazine/rifle/mpi_km/carbine(src) new /obj/item/ammo_magazine/rifle/mpi_km/carbine(src) -/obj/item/storage/belt/marine/som/carbine_black/Initialize(mapload) - . = ..() +/obj/item/storage/belt/marine/som/carbine_black/PopulateContents() new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black(src) new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black(src) new /obj/item/ammo_magazine/rifle/mpi_km/carbine/black(src) @@ -732,9 +737,7 @@ max_storage_space = 28 can_hold = list(/obj/item/ammo_magazine/handful) - /obj/item/storage/belt/shotgun/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/ammo_magazine)) var/obj/item/ammo_magazine/M = I if(CHECK_BITFIELD(M.flags_magazine, MAGAZINE_HANDFUL)) @@ -764,8 +767,7 @@ return ..() -/obj/item/storage/belt/shotgun/flechette/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/flechette/PopulateContents() new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) @@ -781,8 +783,7 @@ new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) -/obj/item/storage/belt/shotgun/mixed/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/mixed/PopulateContents() new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) @@ -802,8 +803,7 @@ desc = "An ammunition belt designed to hold shotgun shells or individual bullets. Made with traditional SOM leather." icon_state = "shotgunbelt_som" -/obj/item/storage/belt/shotgun/som/flechette/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/som/flechette/PopulateContents() new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) @@ -819,8 +819,7 @@ new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) -/obj/item/storage/belt/shotgun/som/mixed/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/som/mixed/PopulateContents() new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) @@ -841,8 +840,7 @@ desc = "An ammunition belt designed to hold shotgun shells or individual bullets, made with a synthetic tan fibre." icon_state = "shotgunbelt_icc" -/obj/item/storage/belt/shotgun/icc/flechette/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/icc/flechette/PopulateContents() new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) @@ -858,8 +856,7 @@ new /obj/item/ammo_magazine/handful/flechette(src) new /obj/item/ammo_magazine/handful/flechette(src) -/obj/item/storage/belt/shotgun/icc/mixed/Initialize(mapload, ...) - . = ..() +/obj/item/storage/belt/shotgun/icc/mixed/PopulateContents() new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) new /obj/item/ammo_magazine/handful/buckshot(src) @@ -886,7 +883,7 @@ flags_atom = DIRLOCK -/obj/item/storage/belt/shotgun/martini/Initialize(mapload, ...) +/obj/item/storage/belt/shotgun/martini/Initialize(mapload) . = ..() update_icon() @@ -937,8 +934,7 @@ draw_mode = TRUE can_hold = list(/obj/item/stack/throwing_knife) -/obj/item/storage/belt/knifepouch/Initialize(mapload) - . = ..() +/obj/item/storage/belt/knifepouch/PopulateContents() new /obj/item/stack/throwing_knife(src) new /obj/item/stack/throwing_knife(src) new /obj/item/stack/throwing_knife(src) @@ -961,8 +957,7 @@ . = ..() AddComponent(/datum/component/tac_reload_storage) -/obj/item/storage/belt/grenade/standard/Initialize(mapload) - . = ..() +/obj/item/storage/belt/grenade/standard/PopulateContents() new /obj/item/explosive/grenade/incendiary(src) new /obj/item/explosive/grenade/incendiary(src) new /obj/item/explosive/grenade(src) @@ -977,8 +972,7 @@ desc = "A simple harness system available in many configurations. This version is designed to carry bulk quantities of grenades." icon_state = "grenadebelt_som" -/obj/item/storage/belt/grenade/som/standard/Initialize(mapload) - . = ..() +/obj/item/storage/belt/grenade/som/standard/PopulateContents() new /obj/item/explosive/grenade/incendiary/som(src) new /obj/item/explosive/grenade/incendiary/som(src) new /obj/item/explosive/grenade/som(src) @@ -996,8 +990,7 @@ max_storage_space = 48 can_hold = list(/obj/item/explosive/grenade) -/obj/item/storage/belt/grenade/b17/Initialize(mapload) - . = ..() +/obj/item/storage/belt/grenade/b17/PopulateContents() new /obj/item/explosive/grenade/incendiary(src) new /obj/item/explosive/grenade/incendiary(src) new /obj/item/explosive/grenade/incendiary(src) @@ -1042,8 +1035,7 @@ can_hold = list(/obj/item/reagent_containers/food/snacks/protein_pack) sprite_slots = 4 -/obj/item/storage/belt/protein_pack/Initialize(mapload) - . = ..() +/obj/item/storage/belt/protein_pack/PopulateContents() for(var/i in 1 to storage_slots) new /obj/item/reagent_containers/food/snacks/protein_pack(src) @@ -1071,7 +1063,6 @@ /obj/item/binoculars, ) -/obj/item/storage/belt/mortar_belt/full/Initialize() - . = ..() +/obj/item/storage/belt/mortar_belt/full/PopulateContents() new /obj/item/mortar_kit/knee(src) new /obj/item/binoculars/tactical/range(src) diff --git a/code/game/objects/items/storage/holsters.dm b/code/game/objects/items/storage/holsters.dm index 30c99425162..842827d2f2e 100644 --- a/code/game/objects/items/storage/holsters.dm +++ b/code/game/objects/items/storage/holsters.dm @@ -566,6 +566,7 @@ /obj/item/weapon/gun/pistol, /obj/item/ammo_magazine/pistol, /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol, + /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol, /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/serpenta, /obj/item/cell/lasgun/lasrifle, /obj/item/cell/lasgun/volkite/small, @@ -1050,3 +1051,10 @@ . = ..() var/obj/item/new_item = new /obj/item/weapon/claymore/tomahawk/classic(src) INVOKE_ASYNC(src, PROC_REF(handle_item_insertion), new_item) + +/obj/item/storage/holster/belt/pistol/laser/Initialize(mapload) + . = ..() + for(var/i in 1 to 5) + new /obj/item/cell/lasgun/lasrifle(src) + var/obj/item/weapon/gun/new_gun = new /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol/tactical(src) + INVOKE_ASYNC(src, PROC_REF(handle_item_insertion), new_gun) diff --git a/code/game/objects/items/storage/pouch.dm b/code/game/objects/items/storage/pouch.dm index d0b8b162cde..f081a50b630 100644 --- a/code/game/objects/items/storage/pouch.dm +++ b/code/game/objects/items/storage/pouch.dm @@ -802,14 +802,21 @@ /obj/item/tool/shovel/etool, ) -/obj/item/storage/pouch/tools/full/Initialize(mapload) - . = ..() +/obj/item/storage/pouch/tools/full/PopulateContents() new /obj/item/tool/screwdriver (src) new /obj/item/tool/wirecutters (src) new /obj/item/tool/weldingtool (src) new /obj/item/tool/wrench (src) new /obj/item/tool/crowbar (src) + +/obj/item/storage/pouch/tools/engineer/PopulateContents() + new /obj/item/tool/screwdriver (src) + new /obj/item/tool/wirecutters (src) + new /obj/item/tool/weldingtool/hugetank (src) + new /obj/item/tool/wrench (src) + new /obj/item/tool/crowbar (src) + /obj/item/storage/pouch/tools/som desc = "It's designed to hold maintenance tools - screwdriver, wrench, cable coil, etc. It also has a hook for an entrenching tool. Made with traditional SOM leather." icon_state = "tools_som" @@ -845,7 +852,6 @@ draw_mode = 0 can_hold = list(/obj/item/ammo_magazine/handful) - /obj/item/storage/pouch/shotgun/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/ammo_magazine)) var/obj/item/ammo_magazine/M = I diff --git a/code/game/objects/items/tools/maintenance_tools.dm b/code/game/objects/items/tools/maintenance_tools.dm index 98faf4f058f..5a2687bb87e 100644 --- a/code/game/objects/items/tools/maintenance_tools.dm +++ b/code/game/objects/items/tools/maintenance_tools.dm @@ -453,6 +453,7 @@ desc = "A hand-held, lightweight cell charger. It isn't going to give you tons of power, but it can help in a pinch." icon = 'icons/obj/items/tools.dmi' icon_state = "handheldcharger_black" + item_state = "handheldcharger_black" w_class = WEIGHT_CLASS_SMALL flags_atom = CONDUCT force = 6 @@ -530,7 +531,7 @@ cell = null playsound(user, 'sound/machines/click.ogg', 20, 1, 5) balloon_alert(user, "Removes the cell") - update_appearance() + update_icon_state() /obj/item/tool/handheld_charger/attack_hand(mob/living/user) if(user.get_inactive_held_item() != src) @@ -542,8 +543,12 @@ cell = null playsound(user, 'sound/machines/click.ogg', 20, 1, 5) balloon_alert(user, "Removes the cell") - update_appearance() + update_icon_state() /obj/item/tool/handheld_charger/Destroy() QDEL_NULL(cell) return ..() + +/obj/item/tool/handheld_charger/hicapcell/Initialize(mapload) + cell = new /obj/item/cell/high(src) + return ..() diff --git a/code/game/objects/items/weapons/misc.dm b/code/game/objects/items/weapons/misc.dm index ac69b7acad6..21ad30b426e 100644 --- a/code/game/objects/items/weapons/misc.dm +++ b/code/game/objects/items/weapons/misc.dm @@ -72,7 +72,7 @@ var/powerused = setting * 20 . += "It's power setting is set to [setting]." if(cell) - . += "It has [round(cell.charge/powerused, 1)] level [setting] punches remaining." + . += "It has [round(cell.charge / powerused, 1)] level [setting] punches remaining." else . += "There is no cell installed!" @@ -96,7 +96,7 @@ if(powerused > cell.charge) to_chat(user, span_warning("\The [src]'s cell doesn't have enough power!")) M.apply_damage((force * 0.2), BRUTE, user.zone_selected, MELEE) - playsound(loc, 'sound/weapons/punch1.ogg', 50, TRUE) + hitsound = 'sound/weapons/punch1.ogg' if(M == user) to_chat(user, span_userdanger("You punch yourself!")) else @@ -132,7 +132,7 @@ return if(cell) unload(user) - user.transferItemToLoc(I,src) + user.transferItemToLoc(I, src) cell = I update_icon() user.balloon_alert(user, "Cell inserted") @@ -163,6 +163,15 @@ update_icon() playsound(user, 'sound/weapons/guns/interact/rifle_reload.ogg', 25, TRUE) +/obj/item/weapon/powerfist/full + setting = 3 + +/obj/item/weapon/powerfist/full/Initialize(mapload) + var/obj/item/cell/lasgun/lasrifle/future_cell = new(src) // snowflaky, but we don't use it often, so it's fine? + future_cell.forceMove(src) + cell = future_cell + return ..() + /obj/item/weapon/brick name = "brick" desc = "It's a brick. Commonly used to hit things, occasionally used to build stuff instead." diff --git a/code/game/objects/machinery/vending/beginner_vendor.dm b/code/game/objects/machinery/vending/beginner_vendor.dm new file mode 100644 index 00000000000..706b579844c --- /dev/null +++ b/code/game/objects/machinery/vending/beginner_vendor.dm @@ -0,0 +1,41 @@ +//Beginner Vendor +GLOBAL_LIST_INIT(beginner_loadouts, init_beginner_loadouts()) + +/proc/init_beginner_loadouts() //List of all loadouts in quick_load_beginners.dm + . = list() + var/list/loadout_list = list( + /datum/outfit/quick/beginner/marine/rifleman, + /datum/outfit/quick/beginner/marine/machinegunner, + /datum/outfit/quick/beginner/marine/marksman, + /datum/outfit/quick/beginner/marine/shotgunner, + /datum/outfit/quick/beginner/marine/shocktrooper, + /datum/outfit/quick/beginner/marine/hazmat, + /datum/outfit/quick/beginner/marine/cqc, + /datum/outfit/quick/beginner/robot/laser_rifle, + /datum/outfit/quick/beginner/robot/laser_machinegunner, + /datum/outfit/quick/beginner/robot/laser_sniper, + /datum/outfit/quick/beginner/engineer/builder, + /datum/outfit/quick/beginner/engineer/burnitall, + /datum/outfit/quick/beginner/engineer/pcenjoyer, + /datum/outfit/quick/beginner/corpsman/lifesaver, + /datum/outfit/quick/beginner/corpsman/hypobelt, + /datum/outfit/quick/beginner/smartgunner/sg29, + /datum/outfit/quick/beginner/smartgunner/sg85, + ) + + for(var/loadout in loadout_list) + .[loadout] = new loadout + +/obj/machinery/quick_vendor/beginner //Loadout vendor that shits out basic pre-made loadouts so new players can get something usable + icon_state = "loadoutvendor" + categories = list( + SQUAD_MARINE, + SQUAD_ROBOT, + SQUAD_ENGINEER, + SQUAD_CORPSMAN, + SQUAD_SMARTGUNNER, + ) + drop_worn_items = TRUE + +/obj/machinery/quick_vendor/beginner/set_stock_list() + global_list_to_use = GLOB.beginner_loadouts diff --git a/code/game/objects/machinery/vending/new_marine_vendors.dm b/code/game/objects/machinery/vending/new_marine_vendors.dm index 95d73121db4..4d7a0836966 100644 --- a/code/game/objects/machinery/vending/new_marine_vendors.dm +++ b/code/game/objects/machinery/vending/new_marine_vendors.dm @@ -62,11 +62,11 @@ to_chat(user, span_warning("Access denied. Your assigned role doesn't have access to this machinery.")) return FALSE - var/obj/item/card/id/I = H.get_idcard() - if(!istype(I)) //not wearing an ID + var/obj/item/card/id/user_id = H.get_idcard() + if(!istype(user_id)) //not wearing an ID return FALSE - if(I.registered_name != H.real_name) + if(user_id.registered_name != H.real_name) return FALSE if(vendor_role && !istype(H.job, vendor_role)) @@ -138,13 +138,16 @@ return var/idx = text2path(params["vend"]) - var/obj/item/card/id/I = usr.get_idcard() + var/obj/item/card/id/user_id = usr.get_idcard() var/list/L = listed_products[idx] var/item_category = L[1] var/cost = L[3] - if(use_points && (item_category in I.marine_points) && I.marine_points[item_category] < cost) + if(!(user_id.flags_id & CAN_BUY_LOADOUT)) //If you use the quick-e-quip, you cannot also use the GHMMEs + to_chat(usr, span_warning("Access denied. You have already vended a loadout.")) + return FALSE + if(use_points && (item_category in user_id.marine_points) && user_id.marine_points[item_category] < cost) to_chat(usr, span_warning("Not enough points.")) if(icon_deny) flick(icon_deny, src) @@ -157,9 +160,9 @@ flick(icon_deny, src) return - if(item_category in I.marine_buy_choices) - if(I.marine_buy_choices[item_category] && GLOB.marine_selector_cats[item_category]) - I.marine_buy_choices[item_category] -= 1 + if(item_category in user_id.marine_buy_choices) + if(user_id.marine_buy_choices[item_category] && GLOB.marine_selector_cats[item_category]) + user_id.marine_buy_choices[item_category] -= 1 else if(cost == 0) to_chat(usr, span_warning("You can't buy things from this category anymore.")) @@ -192,9 +195,10 @@ for (var/obj/item/vended_item in vended_items) vended_item.on_vend(usr, faction, auto_equip = TRUE) - if(use_points && (item_category in I.marine_points)) - I.marine_points[item_category] -= cost + if(use_points && (item_category in user_id.marine_points)) + user_id.marine_points[item_category] -= cost . = TRUE + user_id.flags_id |= USED_GHMME /obj/machinery/marine_selector/clothes name = "GHMME Automated Closet" @@ -765,7 +769,10 @@ /obj/item/clothing/shoes/marine/separatist, ) -#undef DEFAULT_TOTAL_BUY_POINTS +#undef MARINE_TOTAL_BUY_POINTS +#undef ROBOT_TOTAL_BUY_POINTS +#undef SMARTGUNNER_TOTAL_BUY_POINTS +#undef LEADER_TOTAL_BUY_POINTS #undef MEDIC_TOTAL_BUY_POINTS #undef ENGINEER_TOTAL_BUY_POINTS #undef COMMANDER_TOTAL_BUY_POINTS diff --git a/code/game/objects/machinery/vending/quick_vendor.dm b/code/game/objects/machinery/vending/quick_vendor.dm index 200305b54b5..16f5a05c835 100644 --- a/code/game/objects/machinery/vending/quick_vendor.dm +++ b/code/game/objects/machinery/vending/quick_vendor.dm @@ -81,10 +81,10 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) for(var/X in loadout_list) .[X] = new X - /obj/machinery/quick_vendor name = "Kwik-E-Quip vendor" - desc = "An advanced vendor to instantly arm soldiers with specific sets of equipment, allowing for immediate combat deployment." + desc = "An advanced vendor to instantly arm soldiers with specific sets of equipment, allowing for immediate combat deployment. \ + Mutually exclusive with the GHMME." icon = 'icons/obj/machines/vending.dmi' icon_state = "specialist" density = TRUE @@ -100,12 +100,24 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) var/faction = FACTION_NEUTRAL //the different tabs in the vendor var/list/categories = list( - "Squad Marine", - "Squad Engineer", - "Squad Corpsman", - "Squad Smartgunner", - "Squad Leader", + SQUAD_MARINE, + SQUAD_ENGINEER, + SQUAD_CORPSMAN, + SQUAD_SMARTGUNNER, + SQUAD_LEADER, ) + ///Whichever global loadout is used to build the vendor stock + var/list/global_list_to_use + ///If the vendor drops your items, or deletes them when you vend a loadout + var/drop_worn_items = FALSE + +/obj/machinery/quick_vendor/Initialize(mapload) + . = ..() + set_stock_list() + +///Chooses which global list the vendor will build stock from, gets run on Initialize() +/obj/machinery/quick_vendor/proc/set_stock_list() + global_list_to_use = GLOB.quick_loadouts /obj/machinery/quick_vendor/Initialize(mapload) . = ..() @@ -149,6 +161,7 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) var/obj/item/card/id/user_id = human_user.get_idcard() if(user_id.registered_name != human_user.real_name) return FALSE + return TRUE /obj/machinery/quick_vendor/ui_interact(mob/living/user, datum/tgui/ui) @@ -165,9 +178,9 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) . = ..() var/list/data = list() var/list/loadouts_data_tgui = list() - for(var/loadout_data in GLOB.quick_loadouts) + for(var/loadout_data in global_list_to_use) var/list/next_loadout_data = list() //makes a list item with the below lines, for each loadout entry in the list - var/datum/outfit/quick/current_loadout = GLOB.quick_loadouts[loadout_data] + var/datum/outfit/quick/current_loadout = global_list_to_use[loadout_data] next_loadout_data["job"] = current_loadout.jobtype next_loadout_data["name"] = current_loadout.name next_loadout_data["desc"] = current_loadout.desc @@ -185,14 +198,13 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) data["vendor_categories"] = categories return data - /obj/machinery/quick_vendor/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) . = ..() if(.) return switch(action) if("selectLoadout") - var/datum/outfit/quick/selected_loadout = GLOB.quick_loadouts[text2path(params["loadout_outfit"])] + var/datum/outfit/quick/selected_loadout = global_list_to_use[text2path(params["loadout_outfit"])] if(!selected_loadout) to_chat(ui.user, span_warning("Error when loading this loadout")) CRASH("Fail to load loadouts") @@ -200,13 +212,36 @@ GLOBAL_LIST_INIT(quick_loadouts, init_quick_loadouts()) to_chat(usr, span_warning("This loadout has been depleted, you'll need to pick another.")) return var/obj/item/card/id/user_id = usr.get_idcard() //ui.user better? - if(selected_loadout.jobtype != user_id.rank) + var/user_job = user_id.rank + user_job = replacetext(user_job, "Fallen ", "") //So that jobs in valhalla can vend a loadout too + if(selected_loadout.jobtype != user_job) to_chat(usr, span_warning("You are not in the right job for this loadout!")) return - if(user_id.can_buy_loadout) - user_id.can_buy_loadout = FALSE + if(user_id.flags_id & USED_GHMME) //Same check here, in case they opened the UI before vending a loadout somehow + to_chat(ui.user, span_warning("Access denied, continue using the GHHME.")) + return FALSE + if(user_id.flags_id & CAN_BUY_LOADOUT) + for(var/points in user_id.marine_points) + if(user_id.marine_points[points] != GLOB.default_marine_points[points]) + to_chat(ui.user, span_warning("Access denied, continue using the GHHME.")) + return FALSE + for(var/option in user_id.marine_buy_choices) + if(user_id.marine_buy_choices[option] != GLOB.marine_selector_cats[option]) + to_chat(ui.user, span_warning("Access denied, continue using the GHHME.")) + return FALSE + user_id.flags_id &= ~CAN_BUY_LOADOUT selected_loadout.quantity -- + if(drop_worn_items) + for(var/obj/item/inventory_items in ui.user) + if(inventory_items.flags_equip_slot == ITEM_SLOT_ID) + continue + ui.user.dropItemToGround(inventory_items) selected_loadout.equip(ui.user) //actually equips the loadout + //After vending a quick loadout, remove points and GHMME options so that you can't vend them via loadout vendor + for(var/points in user_id.marine_points) + user_id.marine_points[points] = 0 + for(var/option in user_id.marine_buy_choices) + user_id.marine_buy_choices[option] = 0 else to_chat(usr, span_warning("You can't buy things from this category anymore.")) diff --git a/code/modules/clothing/modular_armor/attachments/uniform.dm b/code/modules/clothing/modular_armor/attachments/uniform.dm index 359ac95a346..84eafdcc7ea 100644 --- a/code/modules/clothing/modular_armor/attachments/uniform.dm +++ b/code/modules/clothing/modular_armor/attachments/uniform.dm @@ -81,9 +81,7 @@ /obj/item/bodybag, /obj/item/roller, /obj/item/whistle, - //RUTGMC EDIT ADDITION BEGIN - SOLDERING_TOOL /obj/item/tool/surgery/solderingtool, - //RUTGMC EDIT ADDITION END ) /obj/item/armor_module/storage/uniform/surgery_webbing diff --git a/code/modules/clothing/modular_armor/combat_robot.dm b/code/modules/clothing/modular_armor/combat_robot.dm index e15a93edc32..5326bc06233 100644 --- a/code/modules/clothing/modular_armor/combat_robot.dm +++ b/code/modules/clothing/modular_armor/combat_robot.dm @@ -47,6 +47,37 @@ to_chat(user, span_warning("You can't equip this as it requires mounting bolts on your body!")) return FALSE +//---- Medium armor with attachments +/obj/item/clothing/suit/modular/robot/hodgrenades + starting_attachments = list( + /obj/item/armor_module/module/ballistic_armor, + /obj/item/armor_module/storage/grenade, + ) + +/obj/item/clothing/suit/modular/robot/lightgeneral + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/general, + ) + +/obj/item/clothing/suit/modular/robot/lightengineer + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/engineering, + ) + +/obj/item/clothing/suit/modular/robot/lightinjector + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/injector, + ) + +/obj/item/clothing/suit/modular/robot/svalinn + starting_attachments = list( + /obj/item/armor_module/module/eshield, + /obj/item/armor_module/storage/general, + ) + /obj/item/clothing/suit/modular/robot/light name = "XR-1-L armor plating" desc = "Light armor plating designed for self mounting on TerraGov combat robotics. It has self-sealing bolts for mounting on robotic owners inside." @@ -54,6 +85,19 @@ slowdown = SLOWDOWN_ARMOR_VERY_LIGHT greyscale_config = /datum/greyscale_config/robot/light +//---- Light armor with attachments +/obj/item/clothing/suit/modular/robot/light/baldur_medical + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/medical, + ) + +/obj/item/clothing/suit/modular/robot/light/baldur_general + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/general, + ) + /obj/item/clothing/suit/modular/robot/heavy name = "XR-1-H armor plating" desc = "Heavy armor plating designed for self mounting on TerraGov combat robotics. It has self-sealing bolts for mounting on robotic owners inside." @@ -61,6 +105,19 @@ slowdown = SLOWDOWN_ARMOR_HEAVY greyscale_config = /datum/greyscale_config/robot/heavy +//---- Heavy armor with attachments +/obj/item/clothing/suit/modular/robot/heavy/tyr_onegeneral + starting_attachments = list( + /obj/item/armor_module/module/tyr_extra_armor/mark1, + /obj/item/armor_module/storage/general, + ) + +/obj/item/clothing/suit/modular/robot/heavy/lightengineer + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/engineering, + ) + /obj/item/clothing/suit/modular/robot/heavy/tyr starting_attachments = list( /obj/item/armor_module/module/tyr_extra_armor, @@ -112,13 +169,22 @@ starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/armor/visor/marine/robot) flags_item_map_variant = ITEM_JUNGLE_VARIANT|ITEM_ICE_VARIANT|ITEM_DESERT_VARIANT - /obj/item/clothing/head/modular/robot/mob_can_equip(mob/user, slot, warning = TRUE, override_nodrop = FALSE, bitslot = FALSE) . = ..() if(!isrobot(user)) to_chat(user, span_warning("You can't equip this as it requires mounting bolts on your body!")) return FALSE +//---- Medium helmets with attachments +/obj/item/clothing/head/modular/robot/hod + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/armor/visor/marine/robot, /obj/item/armor_module/module/hod_head) + +/obj/item/clothing/head/modular/robot/antenna + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/armor/visor/marine/robot/heavy, /obj/item/armor_module/module/antenna) + +/obj/item/clothing/head/modular/robot/motion_detector + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/armor/visor/marine/robot/heavy, /obj/item/armor_module/module/motion_detector) + /obj/item/clothing/head/modular/robot/light name = "XN-1-L upper armor plating" desc = "Light armor plating designed for self mounting on the upper half of TerraGov combat robotics. It has self-sealing bolts for mounting on robotic owners inside." @@ -126,6 +192,9 @@ soft_armor = list(MELEE = 40, BULLET = 55, LASER = 55, ENERGY = 50, BOMB = 40, BIO = 45, FIRE = 45, ACID = 50) greyscale_config = /datum/greyscale_config/robot/light +/obj/item/clothing/head/modular/robot/light/motion_detector + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/armor/visor/marine/robot/light, /obj/item/armor_module/module/motion_detector) + /obj/item/clothing/head/modular/robot/heavy name = "XN-1-H upper armor plating" desc = "Heavy armor plating designed for self mounting on the upper half of TerraGov combat robotics. It has self-sealing bolts for mounting on robotic owners inside." diff --git a/code/modules/clothing/modular_armor/xenonauten.dm b/code/modules/clothing/modular_armor/xenonauten.dm index 7c22869979f..86d17709e2f 100644 --- a/code/modules/clothing/modular_armor/xenonauten.dm +++ b/code/modules/clothing/modular_armor/xenonauten.dm @@ -44,18 +44,42 @@ allowed_uniform_type = /obj/item/clothing/under +/obj/item/clothing/suit/modular/xenonauten/hodgrenades + starting_attachments = list( + /obj/item/armor_module/module/ballistic_armor, + /obj/item/armor_module/storage/grenade, + ) + /obj/item/clothing/suit/modular/xenonauten/engineer starting_attachments = list( /obj/item/armor_module/module/better_shoulder_lamp, /obj/item/armor_module/storage/engineering, ) +/obj/item/clothing/suit/modular/xenonauten/lightmedical + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/medical, + ) + +/obj/item/clothing/suit/modular/xenonauten/lightgeneral + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/general, + ) + /obj/item/clothing/suit/modular/xenonauten/mimir starting_attachments = list( /obj/item/armor_module/module/mimir_environment_protection/mark1, /obj/item/armor_module/storage/general, ) +/obj/item/clothing/suit/modular/xenonauten/mimirinjector + starting_attachments = list( + /obj/item/armor_module/module/mimir_environment_protection/mark1, + /obj/item/armor_module/storage/injector, + ) + /obj/item/clothing/suit/modular/xenonauten/shield starting_attachments = list( /obj/item/armor_module/module/eshield, @@ -81,6 +105,12 @@ /obj/item/armor_module/storage/medical, ) +/obj/item/clothing/suit/modular/xenonauten/light/lightmedical + starting_attachments = list( + /obj/item/armor_module/module/better_shoulder_lamp, + /obj/item/armor_module/storage/medical, + ) + /obj/item/clothing/suit/modular/xenonauten/heavy name = "\improper Xenonauten-H pattern armored vest" desc = "A XN-H vest, also known as Xenonauten, a set vest with modular attachments made to work in many enviroments. This one seems to be a heavy variant. Alt-Click to remove attached items. Use it to toggle the built-in flashlight." @@ -88,12 +118,24 @@ slowdown = SLOWDOWN_ARMOR_HEAVY greyscale_config = /datum/greyscale_config/xenonaut/heavy +/obj/item/clothing/suit/modular/xenonauten/heavy/mimirengi + starting_attachments = list( + /obj/item/armor_module/module/mimir_environment_protection/mark1, + /obj/item/armor_module/storage/engineering, + ) + /obj/item/clothing/suit/modular/xenonauten/heavy/leader starting_attachments = list( /obj/item/armor_module/module/valkyrie_autodoc, /obj/item/armor_module/storage/medical, ) +/obj/item/clothing/suit/modular/xenonauten/heavy/tyr_onegeneral + starting_attachments = list( + /obj/item/armor_module/module/tyr_extra_armor/mark1, + /obj/item/armor_module/storage/general, + ) + /obj/item/clothing/suit/modular/xenonauten/heavy/tyr_one starting_attachments = list( /obj/item/armor_module/module/tyr_extra_armor/mark1, @@ -106,6 +148,12 @@ /obj/item/armor_module/storage/medical, ) +/obj/item/clothing/suit/modular/xenonauten/heavy/grenadier //Literally grenades + starting_attachments = list( + /obj/item/armor_module/module/ballistic_armor, + /obj/item/armor_module/storage/grenade, + ) + /obj/item/clothing/suit/modular/xenonauten/heavy/surt starting_attachments = list( /obj/item/armor_module/module/fire_proof, @@ -177,9 +225,21 @@ visorless_offset_y = 0 +/obj/item/clothing/head/modular/m10x/hod + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/hod_head) + +/obj/item/clothing/head/modular/m10x/freyr + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/artemis) + +/obj/item/clothing/head/modular/m10x/antenna + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/antenna) + /obj/item/clothing/head/modular/m10x/welding starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/welding) +/obj/item/clothing/head/modular/m10x/superiorwelding + starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/welding/superior) + /obj/item/clothing/head/modular/m10x/mimir starting_attachments = list(/obj/item/armor_module/storage/helmet, /obj/item/armor_module/module/mimir_environment_protection/mimir_helmet/mark1) diff --git a/code/modules/clothing/under/marine_uniform.dm b/code/modules/clothing/under/marine_uniform.dm index d7b87ec67aa..ff4630c8b27 100644 --- a/code/modules/clothing/under/marine_uniform.dm +++ b/code/modules/clothing/under/marine_uniform.dm @@ -19,6 +19,21 @@ /obj/item/clothing/under/marine/black_vest starting_attachments = list(/obj/item/armor_module/storage/uniform/black_vest) +/obj/item/clothing/under/marine/brown_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/brown_vest) + +/obj/item/clothing/under/marine/corpman_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/white_vest) + +/obj/item/clothing/under/marine/black_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/black_vest) + +/obj/item/clothing/under/marine/brown_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/brown_vest) + +/obj/item/clothing/under/marine/holster + starting_attachments = list(/obj/item/armor_module/storage/uniform/holster) + //Squad colored turtlenecks /obj/item/clothing/under/marine/squad/neck name = "\improper TGMC Delta turtleneck" @@ -526,9 +541,21 @@ to_chat(user, span_warning("You can't equip this as it requires mounting screws on your body!")) return FALSE -/obj/item/clothing/under/marine/robotic/webbing +/obj/item/clothing/under/marine/robotic/black_vest starting_attachments = list(/obj/item/armor_module/storage/uniform/black_vest) +/obj/item/clothing/under/marine/robotic/brown_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/brown_vest) + +/obj/item/clothing/under/marine/robotic/corpman_vest + starting_attachments = list(/obj/item/armor_module/storage/uniform/white_vest) + +/obj/item/clothing/under/marine/robotic/webbing + starting_attachments = list(/obj/item/armor_module/storage/uniform/webbing) + +/obj/item/clothing/under/marine/robotic/holster + starting_attachments = list(/obj/item/armor_module/storage/uniform/holster) + /obj/item/clothing/under/marine/squad/neck/foreign name = "\improper TGMC Foreign Legion turtleneck" desc = "Tacticool looking, squad issued uniform. This one belongs to the Foreign Legion, smells like fast food." diff --git a/code/modules/paperwork/beginner_tutorials.dm b/code/modules/paperwork/beginner_tutorials.dm new file mode 100644 index 00000000000..d90de89dc53 --- /dev/null +++ b/code/modules/paperwork/beginner_tutorials.dm @@ -0,0 +1,360 @@ +//Each beginner loadout in quick_load_beginners.dm has a instruction pamphlet. + +/obj/item/paper/tutorial/beginner_rifleman + name = "Rifleman Tutorial" + info = {"As a rifleman, you are suited for virtually all theatres of combat. Your AR-12 assault rifle is accurate and effective at all ranges, and its powerful underbarrel grenade launcher poses even further danger to mid-range threats. Inside your backpack is a box of flares to refill your flare pouch, gauze and ointment for brute (slashes) and burn (acid) wounds respectively, and backup magazines for your AR 12. Your belt contains backup magazines for your AR-12, while your body armor contains additional grenades to reload your underbarrel grenade launcher with. Your left pocket contains a flare gun holster and several flares. Your right pocket contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your boots contain a MRE, in case you get hungry, and a standard issue combat knife for clearing weeds or breaking things.
+
+ Try to spend as much time as possible near other marines - being alone is very dangerous. Your versatility is an immense strength and makes you the ideal battle buddy for virtually any other marine. You can easily work with a shotgunner to clear close quarters areas, or perhaps with a machine gunner to hold a fortified position, or even take point in front of a marksman. When not in immediate danger, use your flare gun to keep your surroundings lit, as your and your fellow marines' lives may very well depend on it.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ While holding your AR-12, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. (Note that your grenades will NOT go through marines!) The second option changes the firing mode, between Single Automatic, Burst, and Burst Automatic. Automatic modes will keep firing as long as you hold down the mouse button. The third option enables your underbarrel grenade launcher. Once enabled, you can use right click to launch a grenade out!
+
+ On running out of ammo, the empty magazine will automatically eject from the rifle. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the rifle, which can be done without an empty hand and with a different magazine still in the gun. You can reload the underbarrel launcher by right clicking on the gun while holding a valid grenade (like the HEDP grenades in your webbing.)
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ Your P23 has a pistol lace attached. By toggling it in the top left while wielding it, it becomes impossible for you to drop - or for it to be knocked out of your hand by a xenomorph. Similarly, your AR-12 has a magnetic harness, which means if you drop it or otherwise lose it, it'll automatically snap back to your armor.
+
+ Because your AR-12 can effectively engage at all ranges, your optimal range is whatever your opponent's optimal range isn't. Try keeping the distance from ferocious melee enemies, while getting too close for comfort with squishier ranged ones."} + +/obj/item/paper/tutorial/beginner_machinegunner + name = "Machinergunner Tutorial" + info = {"As a machinegunner, you are the backbone of a marine force. While you possess heavy armor reinforced with Tyr-pattern plating (strengthening its defense even further against melee attacks), your slow move speed and the unwieldy nature of your MG-60 machine gun means you should not be spearheading any pushes. Your backpack contains several additional box magazines, allowing you to carry almost two THOUSAND rounds on your person at any time. Your left pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your right pocket contains a flare gun holster and several flares. Your suit storage contains two plasma pistols, which are low in damage but can start fires. Your webbing contains an MRE to eat and both gauze and ointment, Your boots contain a MRE for further eating, and a standard issue combat knife for clearing weeds or breaking things.
+
+ Your full strength is hard to utilize on your own or in the very front of battle. Your ideal positions are either safely behind a barricade guarding a front or flank from assault, or behind your fellow marines, shooting over them with aim mode to protect them from enemies. Keep in mind that your heavy armor and weapon means you move rather slowly - so if you get the order to leave a position, get moving early to avoid being left behind.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ While holding your MG-60, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. The bipod button will deploy your bipod, increasing fire rate and accuracy significantly for as long as you remain stationary.
+
+ On running out of ammo, the empty magazine will automatically eject from the machine gun. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the machine gun, which can be done without an empty hand and with a different magazine still in the gun.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ On your belt is a belt harness. By left clicking on your belt harness with your machine gun, you can attach them. If you drop your machine gun, or have a xenomorph make you drop it, your machine gun will automatically return to your armor if it's attached.
+
+ If you are facehugged, quickly take out your plasma pistol and shoot the ground with it, then walk into the fire. While this will cause you to be set on fire, facehuggers will detach in the presence of fire, preventing you from becoming infected. You can press B (or click resist in the bottom right) once the facehugger has detached to stop, drop, and roll, extinguishing the fire.
+
+ Your impressive magazine size means you don't need to reload often. You can suppress one spot for an impressive amount of time, and you have the ammo and damage to clear out resin walls.
+
+ The more bullets you shoot, the better a marine you are. It's actually that simple."} + +/obj/item/paper/tutorial/beginner_marksman + name = "Marksman Tutorial" + info = {"As a marksman, you are a master of precision and range, and should utilize both of these advantages as much as possible. Your DMR-37 is incredibly accurate at long ranges and packs a devastating punch. Due to your ability to engage at long range - and conversely, your inability to engage properly at short range - you should be staying as far from conflict as possible while still remaining in your rifle's effective range. Your backpack and both of your pouches contain spare magazines for your DMR. Your backpack also contains an MRE to eat, and both gauze and ointment for treating injuries. Your armor contains Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and an inaprovaline injector for helping other marines in critical condition. Your webbing contains the MK88 Mod 4, a fully automatic handgun for self-defense, as well as spare magazines for it. Your boots contain a MRE to eat, and survival knife for clearing weeds and breaking things.
+
+ With your DMR, aim to support other marines from afar using your scope and aim mode. Your range means that many xenomorphs might not realize you're watching over an area until you're already shooting at them - use this to your advantage. Your rate of fire is relatively slow compared to automatic weapons, so make each of your shots count.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ On running out of ammo, the empty magazine will automatically eject from the DMR. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the DMR, which can be done without an empty hand and with a different magazine still in the gun.
+
+ While holding your DMR-37, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. The scope button will zoom your screen out and towards the direction you're currently facing, allowing you to see (and shoot at) targets much farther away.
+
+ On your belt is a belt harness. By left clicking on your belt harness with your DMR, you can attach them. If you drop your DMR, or have a xenomorph make you drop it, your DMR will automatically return to your armor if it's attached.
+
+ Try holding your fire until your target is already engaging someone else. While this may seem counter-intuitive, it allows you to wait until they've already committed to a fight (that's likely to damage them) and may cause them to not notice your presence until it's too late, increasing the odds of securing a kill.
+
+ Do not attempt to use your DMR at too close of a range, as marksman weapons have a chance to miss against enemies that are near you. Instead, try switching to your 88 Mod 4, your fully automatic handgun that's much more effective at close range."} + +/obj/item/paper/tutorial/beginner_shotgunner + name = "Shotgunner Tutorial" + info = {"As a shotgunner, you are the spearhead of the marine force. Your semiautomatic SH-39 fires slugs that will devastate any target at short to medium range, dealing heavy damage as well as leaving them stunned and staggered. Your role is to be at the front of any marine push, side by side with your fellow marines as you charge into danger. Your shotgun shell rig on your belt, as well as your backpack, hold many additional slugs to reload your shotgun with. Your backpack also contains an MRE to eat, and both gauze and ointment for treating injuries, as well as inaprovaline. Your left pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your right pocket contains a flare gun holster and several flares. Your webbing contains a plasma pistol, a low damage sidearm that starts fires wherever it hits. Your suit storage contains boxes of additional flares. Your boots contain a MRE to eat, and a combat knife for clearing weeds and breaking things.
+
+ You should be close to the enemy constantly to take full advantage of your shotgun. This does not mean you should run off alone, as this is a good way to get yourself killed; rather, be in front of other marines, clearing away enemies to allow them to safely advance and cover you.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ While holding your SH-39, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ If you are facehugged, quickly take out your plasma pistol and shoot the ground with it, then walk into the fire. While this will cause you to be set on fire, facehuggers will detach in the presence of fire, preventing you from becoming infected. You can press B (or click resist in the bottom right) once the facehugger has detached to stop, drop, and roll, extinguishing the fire.
+
+ To reload your shotgun, take out a handful of shells with a free hand and click your gun with them while it's in your other hand.
+
+ Shotguns can take a variety of rounds, in case slugs aren't your style. Buckshot rounds have more stopping power but fall off at mid range, while flechette rounds are less generally effective in exchange for drastically improved performance against heavily armored targets. The requisitions-exclusive incendiary slugs aren't quite as powerful as standard slugs but set anything they hit on fire!
+
+ The green M50 signal flares in your body armor don't last as long as normal flares but deploying them signals to CAS (close air support) that you're requesting an airstrike in the region, also granting them the ability to see and shoot at xenomorphs in the area.
+
+ Using the powerful knockback of your shotgun to knock xenomorphs TOWARDS other marines is a good way to get kills - most xenomorphs can't deal with that many marines at once!
+
+ Shotguns don't have access to aimmode, so be careful near other marines so you don't risk shooting them.
+
+ You have incredibly high per-shot damage. Waiting a little bit to allow a xenomorph to get closer before opening fire can lure it into a false sense of safety, potentially scoring you a kill."} + +/obj/item/paper/tutorial/beginner_shocktrooper + name = "Shocktrooper Tutorial" + info = {"As a shock trooper, you are a versatile yet powerful frontliner, and aim to change up tactics often to gain the advantage. You use the multimodal laser rifle, an experimental battery-powered weapon with an underbarrel flamethrower. Your belt contains spare energy cells for your laser rifle. Your right pocket and body armor contain a powerpack each- effectively bulkier versions of energy cells. Your body armor also contains a box of flares. Your left pocket contains a flare gun holster and several flares. Your backpack contains a large amount of miniature fuel tanks for use with your underbarrel flamethrower, as well as an inaprovaline autoinjector. Your webbing contains Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and gauze and ointment, which also heal brute and burn damage respectively. Your boots contains a MRE, in case you get hungry.
+
+ Switching between the different modes of your laser rifle is key to mastery on the battlefield. Like other frontliners, you aim to lead the push into enemy territory, clearing the path forward and facing xenomorphs head-on.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ On running out of ammo, the empty battery will automatically eject from the rifle. To reload, simply grab a new battery with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the battery from its storage directly onto the rifle, which can be done without an empty hand and with a different battery still in the gun. The powerpacks are a bit different - they have to be click-dragged while in one of your pockets to attach to the gun, and once attached remain in your pocket. However, they have four times the energy of a normal magazine. To refuel your underbarrel flamethrower, right click the gun with an empty hand to remove the old tank, then right click the gun again with a fresh tank.
+
+ While holding your laser rifle, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. By pressing toggle mini flamethrower, you enable your underbarrel flamethrower, which you can now shoot with right click.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ By pressing unique action (default: space bar), you can cycle between the different modes of your laser gun. Standard mode rapidly fires laser beams, Overcharge mode fires more powerful beams at a lower rate of fire, weakening mode slows the target mildly as well as draining their plasma, and microwave applies a stacking debuff (up to five times) that deals armor-piercing damage over time. Note that different modes consume battery charge at different rates.
+
+ Laser weapons, unlike traditional ballistics, can fire through windows unimpeded. Use this with stronger windows, such as ballistic glass, to attack the enemy without them being able to attack you back."} + +/obj/item/paper/tutorial/beginner_hazmat + name = "Hazmat Tutorial" + info = {"As a HAZMAT, you excel in situations too dangerous for other marines. Your Mimir type armor grants you complete immunity to toxic gas, from acid to neurotoxin. It also provides an increased resistance against acid in general, for dealing with ranged xenomorphs. Your AR-11 is somewhat unwieldy and inaccurate, but packs both potent bursts and an impressive 70-round magazine. Your backpack, left pouch, and suit storage are all filled with spare magazines for your AR-11. Your right pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your webbing contains flares for lighting areas, gauze and ointment for treating wounds, and a miniature fire extinguisher. Your boots contain a MRE, for when you get hungry.
+
+ Unlike other marines, you have no reason to fear toxic gas - and thanks to your tactical sensor, you pose quite a threat to xenomorphs while in it. Hide in smoke and use your sensor to fire at xenomorphs that can't see you back. In the absence of smoke, your AR-11 is still quite powerful, and can be used in many situations, though its inaccuracy makes it somewhat less potent at longer ranges.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ While holding your Type 71, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. The button changes the firing mode, between Burst and Burst Automatic. Automatic burst will keep firing as long as you hold down the mouse button. The tactical sensor option toggles your tactical sensor - you should keep this on always.
+
+ Your tactical sensor will periodically blip, detecting moving targets in an area a little bigger than your screen. Green circles are friendly targets (or anyone wearing a marine ID), while red circles accompanied with an audible blip are unknown (almost always hostile) targets. This sensor works even without vision, such as through any form of smoke and through walls.
+
+ On running out of ammo, the empty magazine will automatically eject from the rifle. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the rifle, which can be done without an empty hand and with a different magazine still in the gun.
+
+ Your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility. However, note that xenomorphs will often determine a marine's position in a smoke cloud by their light, so you should turn OFF your light if hiding in smoke!
+
+ On your belt is a belt harness. By left clicking on your belt harness with your AR-11, you can attach them. If you drop your AR, or have a xenomorph make you drop it, your AR will automatically return to your armor if it's attached.
+
+ While you're no machinegunner, you have over 700 rounds on you. Don't be afraid to shoot at anything that blips on your tactical sensor (as long as there aren't friendlies in the way!)"} + +/obj/item/paper/tutorial/beginner_cqc + name = "CQC Tutorial" + info = {"As a CQC marine, you are incredibly mobile, and should be using and abusing your speed to dart in and out of danger. You are effective both spearheading the assault and pushing into flanks. Your AR-18 carbine isn't the most dangerous rifle, nor does it have a particularly high magazine size, but it's incredibly lightweight compared to almost any other weapon, and its relative accuracy and stability even while moving and high fire rate allow it to pose a surprise threat to almost any xenomorphs. Your belt, body armor, and backpack all contain spare magazines for your AR-18. Your backpack also contains an MRE (in case you get hungry) as well as gauze and ointment to treat injuries with. Your left pocket contains a flare gun and several flares. Your right pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your webbing contains gauze and ointment for healing, an MRE for eating, and two boxes of flares. Your boots contain a MRE for eating, and a combat knife for clearing weeds and breaking things.
+
+ Your speed is your greatest strength. You should be using it to rush into combat and chase after already injured enemies, only to rapidly retreat before things turn south. You're ideal at scouting locations, quickly reinforcing threatened positions, and overall being everywhere at once.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ While holding your AR-18, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. The button changes the firing mode, between Single Automatic, Burst, and Burst Automatic. Automatic modes will keep firing as long as you hold down the mouse button. The tactical sensor option toggles your tactical sensor - you should keep this on always.
+
+ On running out of ammo, the empty magazine will automatically eject from the rifle. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the rifle, which can be done without an empty hand and with a different magazine still in the gun.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ Don't be afraid to charge headfirst into danger if you think you can save a teammate or get a kill - you have the speed to get back out, after all. The ALT key by default allows humans or clones to sprint at the cost of stamina, to go even faster!
+
+ While your rifle runs out of ammo quickly, its rapid fire four round bursts deal impressive damage. Combined with your speed, you are the master of ambushing."} + +/obj/item/paper/tutorial/builder + name = "Builder Tutorial" + info = {"The builder loadout is designed around you establishing defenses, barricades made from metal, plasteel or sandbags. You are the frontline, without you marines will be exposed to attacks from any and all directions. Use your quicker build speed and tools to aid and repair barricades, and fix APCs for generating the nuclear disks to win the round! Your loadout contains materials, a MG42 Light machine gun for self defense and suppression, and a radiopack for ordering more material to entrench and establish a fortified defensive position.
+
+ TIPS
+
+ In your webbing you will find a spare powercell and a handheld cell crank charger to charge them, when fixing apcs swap the empty battery for your full one and insert the empty one into your crank and charge it for the next disk!
+
+ When building defensive barricades it is best to not make them "flush" with nearby doors or walls. Instead pull back 1 tile and build it there, this prevents xenos from hiding around the corner behind the walls and smacking your cades freely without repercussion.
+
+ All metal barricades can be upgraded, the basic upgrade is of course barbed wire. This damages xenos when they attack the barricade and prevents them (and marines!) from climbing over the barricade.
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage."} + +/obj/item/paper/tutorial/flamer + name = "Flamer Tutorial" + info = {"As a flamethrower specialist your job is to burn, burn some more and BURN again. You are equipped with a flamethrower bag that refills your flamethrower everytime you insert it back into the bag, and also have a lascarbine for more practical and pragmatic self defense. Also comes with a large box of claymore anti-personnel mines, and some general materials for helping fortify positions.
+
+ TIPS
+
+ Your flamethrower is best used to clear resin walls, it is a poor weapon for self defense and is best used to help carve a path through enemy mazes and to deny areas of movement without punishing xenos for trekking through the flames.
+
+ In your webbing you will find a spare powercell and a handheld cell crank charger to charge them, when fixing apcs swap the empty battery for your full one and insert the empty one into your crank and charge it for the next disk!
+
+ Your claymore mines are useful for denying an area from being easily flanked and can cause serious disruption (or even kill!) backlining xenomorphs from causing you a bad day.
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage."} + +/obj/item/paper/tutorial/plasmacutter + name = "PlasmaCutter Tutorial" + info = {"Tired of watching marines endlessly pour into a maze or terribly held choke point? This is the class for you then! With your plasma cutter you will be able to easily delete resin walls from existence, and carve through metal, reinforced or even solid rock walls! With this kit you'll be able to widen choke points and eradicate mazes with ease. This loadout also comes with a few materials for defenses and a R44 Revolver for self defense in your welderpack.
+
+ TIPS
+
+ Your Plasma Cutter (often abbreviated to PC) is a very versatile tool but it contains a limited charge of 7500, for resin walls the charge is rather miniscule at 100 Charge but a much heavier or thicker metallic or rock wall will cost you 1000 charge so make sure to keep track of how much charge your battery contains! Do remember to keep your welding module or goggles on when using it however, as the plasma cutter will damage your eyes until they're blind!
+
+ In your webbing you will find a spare powercell and a handheld cell crank charger to charge them, when fixing apcs swap the empty battery for your full one and insert the empty one into your crank and charge it for the next disk!
+
+ Your plasma cutter can be used as a melee weapon in emergency situations, while not the best by any means it can work in a pinch and if you manage to smack a xeno you'll get rewarded with draining them of a small amount of plasma and a bit of charge for your plasma cutter. Use this to destroy mazes and punish xenos for trying to attack you by refilling your battery. A recommended combo when frontlining us combining it with a defensive shield!
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage."} + +/obj/item/paper/tutorial/lifesaver + name = "Lifesaver Tutorial" + info = {"As the lifesaver, you are a MEDIC first and foremost. You should be prioritizing healing marines over trying to fight xenomorphs yourself. Your belt contains many pill bottles - examine them to find out what they do with shift click, and draw from them with right click. Your belt also contains splints, which are used on fractured bones, and a medical analyzer, which will tell you exactly what's wrong with a person. Avoid giving someone more than one pill of a given medicine at a time; many pills overdose at three, and some at two, and some marines might go and take a pill themselves, so one is safest. In your armor storage are an assortment of autoinjectors. Combat injectors should be used on marines in active danger, quick clot plus helps deal with internal bleeding, peridaxon plus heals organs, and dexalin plus helps with deoxygenation. Your right pouch contains three stacks of trauma and burn kits, which will cause a body part they're applied to to heal brute or burn damage over time respectively. It also contains a hypospray full of meraderm, a medicine mixture that heals both brute and burn damage quickly. Your webbing contains oxycodone, a painkiller, nanoblood, a blood replacement, a stasis bag to hold patients you aren't actively treating in to prevent their condition from worsening, tweezers to remove shrapnel, a roller bed to roll around patients with, and a medivac to evacuate patients. Your boots and helmet contain food.
+
+ Stay away from the frontlines - let patients come to (or be dragged to) you instead of putting yourself in danger. Try to remain in a safe location, as xenomorphs do not obey the Geneva convention and will in fact deliberately target you and your patients as often as possible.
+
+ TIPS
+
+ Your gloves are defibrillators. By clicking on any dead target with their exosuit removed (drag their sprite onto your sprite to remove it) you will attempt to bring them back to life, healing them somewhat and then resuscitating them if they're healed enough. Drag your gloves to your backpack to recharge them. This even works on robots! Make sure your intent is help while doing this or you might just punch them right after they revive, taking them out again.
+
+ While holding your repeater, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons.
+
+ As your rifle is bolt-action, it needs to be racked after every shot. Do this by pressing your Unique Action key, which defaults to the spacebar.
+
+ Your backpack contains ammo packets. You can click on your shotgun shell pouch to quickly transfer ammo into the pouch. You can then reload your repeater by clicking it while it's in your hand with the handful of bullets.
+
+ Before you do ANYTHING to a patient, use your medical analyzer on them. Not analyzing is the number one cause of overdoses. Right clicking with the analyzer instead shows them their own health scan, useful for getting their attention or informing them that they're fully healed.
+
+ When you dispense your equipment, a medivac beacon will appear on the floor. Pick this up, take your medivac and click it on the beacon so it says linked! Once done, you should go to your ship's medical bay and place the beacon by pressing Z with it in hand. Once groundside, you can now medivac people for treatment shipside. Shipside can fix bone fractures, clone damage, facehugging, and anything else you can't. To evac someone, deploy your medivac by pressing Z with it in hand, drag them onto it to buckle them to it, then right click to send them up. Drag the medivac to you to pick it back up once you're done.
+
+ Marines will "go cold" after five minutes of being dead, rendering them permanently unrevivable. This timer can be extended via your stasis bag or with CPR, which other marines can perform while you work by left clicking the corpse on help intent while neither of them are wearing a mask.
+
+ Accidentally overdose a marine? They're full of deadly neurotoxin? Don't panic - use hypervene. While uncomfortable for the marine, this medication (located in your medical belt) will rapidly purge their system.
+
+ You can use meralyne and dermaline at the same time as bicardine and kelotane, for an accelerated healing rate."} + +/obj/item/paper/tutorial/hypobelt + name = "Hypobelt Tutorial" + info = {"As the hypobelt medic, you are the master of rapid healing. Your belt is full of hyposprays which instantly apply a dose of medicine when you click a marine with them. Examine them with shift click to read their labels to find out what they do. Avoid injecting someone more than once or twice with the same medicine to prevent an overdose! Your pouch contains three stacks of trauma and burn kits, which will cause a body part they're applied to to heal brute or burn damage over time respectively. It also contains a hypospray full of meraderm, a medicine mixture that heals both brute and burn damage quickly. These hyposprays can be refilled by the bottles in the syringe cases of your belt. Your webbing is filled with splints for treating fractures. Your body armor contains oxycodone, a painkiller, a stasis bag to hold patients you aren't actively treating in to prevent their condition from worsening, tweezers to remove shrapnel, a roller bed to roll around patients with, and a medivac to evacuate patients. Your boots and helmet contain food.
+
+ Your light armor and quick injectors make you adept at rapidly getting marines back into the action. However, take care to avoid danger; xenomorphs WILL target you, and you will go down fast without proper protection.
+
+ TIPS
+
+ Your gloves are medical analyzers, which you can use on a patient by left clicking them. Before you do ANYTHING to a patient, use your medical analyzer on them. Not analyzing is the number one cause of overdoses. Right click with the analyzer instead shows them their own health scan, useful for getting their attention or informing them that they're fully healed.
+
+ In your backpack is a defibrillator. By clicking on any dead target with their exosuit removed (drag their sprite onto your sprite to remove it) you will attempt to bring them back to life, healing them somewhat and then resuscitating them if they're healed enough. Drag your defib to your backpack to recharge them. This even works on robots!
+
+ When you dispense your equipment, a medivac beacon will appear on the floor. Pick this up, take your medivac and click it on the beacon so it says linked! Once done, you should go to your ship's medical bay and place the beacon by pressing Z with it in hand. Once groundside, you can now medivac people for treatment shipside. Shipside can fix bone fractures, clone damage, facehugging, and anything else you can't. To evac someone, deploy your medivac by pressing Z with it in hand, drag them onto it to buckle them to it, then right click to send them up. Drag the medivac to you to pick it back up once you're done.
+
+ Marines will "go cold" after five minutes of being dead, rendering them permanently unrevivable. This timer can be extended via your stasis bag or with CPR, which other marines can perform while you work by left clicking the corpse on help intent while neither of them are wearing a mask.
+
+ Accidentally overdose a marine? They're full of deadly neurotoxin? Don't panic - use hypervene. While uncomfortable for the marine, this medication (located in your medical belt) will rapidly purge their system.
+
+ You can use meralyne and dermaline at the same time as bicardine and kelotane, for an accelerated healing rate.
+
+ As your shotgun is pump-action, you'll need to pump it after every shot by pressing Unique Action (default space.)
+
+ You can reload your shotgun by grabbing a handful of slugs from your backpack and clicking your shotgun with them."} + +/obj/item/paper/tutorial/smartmachinegunner + name = "Smartmachinegunner Tutorial" + info = {"As the smartmachinegunner, you are the very backbone of your squad, and should be behind another marine or three at all times. Your SG-29 is capable of firing directly through your teammates without risk of harm, so staying safe and behind your allies is essential to gaining full value out of it. Your backpack and body armor contain both fire extinguishers and spare ammo, with your backpack also containing a plasma pistol to start fires with. Your left pouch contains a flare gun holster and several flares. Your right pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your webbing contains flares for creating lights and gauze and ointment for treating injuries. Your helmet and boots contain food, in case you get hungry.
+
+ You should NEVER be at the front of a group of marines. Aim to provide covering fire for those who are in front, and let them protect you in turn by, well, being in front of you. Remember that your SG-29 fires through marines, so you don't need to worry about friendly fire.
+
+ TIPS
+
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ On your belt is a belt harness. By left clicking on your belt harness with your machine gun, you can attach them. If you drop your machine gun, or have a xenomorph make you drop it, your machine gun will automatically return to your armor if it's attached.
+
+ If you are facehugged, quickly take out your plasma pistol and shoot the ground with it, then walk into the fire. While this will cause you to be set on fire, facehuggers will detach in the presence of fire, preventing you from becoming infected. You can press B (or click resist in the bottom right) once the facehugger has detached to stop, drop, and roll, extinguishing the fire.
+
+ Your impressive magazine size means you don't need to reload often. You can suppress one spot for an impressive amount of time, and you have the ammo and damage to clear out resin walls.
+
+ While holding your SG-29, use Z to wield your weapon with both hands, increasing accuracy and stability and reducing recoil. In the top left of your screen are several weapon-specific buttons. The tactical sensor option toggles your tactical sensor - you should keep this on always.
+
+ Your tactical sensor will periodically blip, detecting moving targets in an area a little bigger than your screen. Green circles are friendly targets (or anyone wearing a marine ID), while red circles accompanied with an audible blip are unknown (almost always hostile) targets. This sensor works even without vision, such as through any form of smoke and through walls.
+
+ On running out of ammo, the empty magazine will automatically eject from the smartgun. To reload, simply grab a new magazine with an empty hand and click your gun with it. Alternatively, you can perform a tactical reload by click-dragging the magazine from its storage directly onto the rifle, which can be done without an empty hand and with a different magazine still in the gun.
+
+ STAY BEHIND OTHER MARINES. I cannot stress this enough. You are a priority target for xenomorphs due to your ability to provide covering fire from behind other marines.
+
+ Your massive drum size of 250 rounds means you don't need to reload often. Because of this, you should avoid reloading in dangerous areas if you can help it, instead waiting until you're back behind fortifications or other marines.
+
+ You possess an antenna module on your helmet, which allows you to receive shipments from requisitions (on the ship) while in the field. To request something, say :u followed by a clear and polite request as to what you would like to receive. For example, if you ran out of ammo, you might say ":u RO, requesting SG-29 drums to my antenna." After some amount of time, you will likely get a response in the requisitions channel (pay attention!) along the lines of "Yourname, your order is ready. Raise your antenna." To do this, click the antenna icon in the top left - you should get a notification in the bottom right informing you it's successfully raised. You should then HOLD STILL until you receive your order. (Once you've raised your antenna, it's polite to inform the RO, or requisitions officer, that it's raised.) After some time, you should hear a WOOSH noise, and a box will teleport to where you're standing with what you requested. Note that requisitions is the ONLY place you can get more smartgun ammo!
+
+ You are the most mobile among smartgunners - use this to your advantage. You are the best at providing cover fire for a mobile squad."} + +/obj/item/paper/tutorial/smartminigunner + name = "Smartminigunner Tutorial" + info = {"As the smartminigunner, you are the very embodiment of BRRT. With your huge SG-85 smart minigun, you can fire ten rounds per second for one hundred straight seconds, providing powerful covering fire for other marines. No enemy wants to get stuck in your line of fire. Instead of a backpack you carry a back mounted powerpack that feeds and powers your SG-85. In your body armor are two bins to refill your powerpack with. Your left pouch contains a flare gun holster and several flares. Your right pouch contains a first aid kit, complete with Bicardine (which heals brute damage), Kelotane (which heals burn damage), Tramadol (which is a painkiller), Tricordrazine (which heals all damage, but slowly), and Dylovene (which heals toxin, or poison damage), as well as splints and inaprovaline. Your webbing contains flares for creating lights and gauze and ointment for treating injuries. Your helmet and boots contain food, in case you get hungry.
+
+ Your minigun boasts both high levels of armor piercing and the ability to shoot through allies - use both to your advantage. Note that the heavy nature of your minigun and your brief windup before you can fire means you're best positioned defensively, firing at the toughest targets within range.
+
+ TIPS
+ BKTT is an acronym that is used to describe the combination of Bicardine, Kelotane, Tricordizine, and Tramadol used as an all-rounder combat medicine mix for any situation that heals all different types of damage. Make sure not to take more than two of each pill at a time - medicine takes a while to process through your system, and too many at once risks a dangerous overdose. Your gauze and ointment are body-part specific, unlike medication, but once you start applying one, you will keep applying it to all body parts that require treatment as long as you hold still. Your splints are used to alleviate the effects of bone fractures, by applying them to a fractured limb. Your inaprovaline autoinjector is not to be applied to yourself - rather, it should be applied to an alive marine that is so heavily injured they are unconscious on the ground (referred to as "critical condition") to rescue them from that state. You can remove pills from their packets directly by right clicking on the packet, even while it's in storage.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility.
+
+ On your belt is a belt harness. By left clicking on your belt harness with your minigun, you can attach them. If you drop your minigun, or have a xenomorph make you drop it, your machine gun will automatically return to your armor if it's attached. On the same note, by left clicking your powerpack, you hook up your minigun, allowing it to draw from it for ammo. If you drop your minigun, even if it's saved by the belt harness, you will have to re-attach it to the powerpack.
+
+ To reload your power back, take it into your hand, then grab an ammo bin with your other hand and click the power pack with it.
+
+ While holding your SG-85, use Z to wield your weapon with both hands, which is required to fire it. In the top left of your screen are several weapon-specific buttons. The tactical sensor option toggles your tactical sensor - you should keep this on always.
+
+ Your tactical sensor will periodically blip, detecting moving targets in an area a little bigger than your screen. Green circles are friendly targets (or anyone wearing a marine ID), while red circles accompanied with an audible blip are unknown (almost always hostile) targets. This sensor works even without vision, such as through any form of smoke and through walls.
+
+ You possess an antenna module on your helmet, which allows you to receive shipments from requisitions (on the ship) while in the field. To request something, say :u followed by a clear and polite request as to what you would like to receive. For example, if you ran out of ammo, you might say ":u RO, requesting SG-85 bins to my antenna." After some amount of time, you will likely get a response in the requisitions channel (pay attention!) along the lines of "Yourname, your order is ready. Raise your antenna." To do this, click the antenna icon in the top left - you should get a notification in the bottom right informing you it's successfully raised. You should then HOLD STILL until you receive your order. (Once you've raised your antenna, it's polite to inform the RO, or requisitions officer, that it's raised.) After some time, you should hear a WOOSH noise, and a box will teleport to where you're standing with what you requested. Note that requisitions is the ONLY place you can get more smartgun ammo!
+
+ STAY BEHIND OTHER MARINES. I cannot stress this enough. You are a priority target for xenomorphs due to your ability to provide covering fire from behind other marines.
+
+ You almost never need to reload - you have enough rounds to fire for almost two straight minutes. Because of this, you should exclusively reload when it is completely safe to do so, as other marines are counting on you to protect them.
+
+ Your minigun boasts an incredibly high amount of armor piercing. Aim for particularly durable targets, like Crushers and Kings, as you'll likely do a lot more damage."} + +/obj/item/paper/tutorial/robot_laser_rifleman + name = "Robot Laser Rifleman" + info = {"As a robot, you are immune to most traumas and toxins, but unable to run, which decreases your potential speed. Use either the instruments in your webbing, on the uniform, to repair yourself or autorepair ability. Welders are used to repair brute damage, cable coils for the burn damage, but the soldering tool is universal, so don't loose it!
+
+ Your weapon is called Laser Rifle, it uses laser batteries from your belt to shoot. Red batteries are self-recharging, at the cost of decreased charge amount. Use laser powerpack cell, from your suit storage, to quickly recharge spent laser batteries.
+
+ Don't forget to activate your armor integrated flashlight and helmet proximity detector module, by clicking buttons on the upper-left. +
+ You also have a mini-flamethrower attached to your gun. Enable it by clicking on the flamethrower button in upper-left. Shoot it by RMB-ing on the turfs. Reload it by clicking RMB with mini-flamethrower tanks from your backpack.
+
+ You have a charged powerfist in your backpack storage, use it when xenomorphs get too close to you, to send them flying away from you. X2 performance points if you send them in the place, where all the marines are standing.
+
+ In your helmet you have inaprovaline autoinjectors, use them on your human comrades, that seem sleeping on the battlefield, or just in critical state of health. It will recover 30% of their health instantly, which most probably will put them on their foot.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility. +
+ Your tools pouch can be used for the sake of helping your fellow engineers with repairing barricades, generators or something similar."} + +/obj/item/paper/tutorial/robot_laser_machinegunner + name = "Robot Laser Machinegunner" + info = {"As a robot, you are immune to most traumas and toxins, but unable to run, which decreases your potential speed. Use either the instruments in your webbing, on the uniform, to repair yourself or autorepair ability. Welders are used to repair brute damage, cable coils for the burn damage, but the soldering tool is universal, so don't loose it!
+
+ Your weapon is called Laser Machine Gun, it uses charge from laser batteries or powerpacks. Attack it your back powerpack for nearly infinite power-source for your weapon, as it recharges by the time by itself.
+
+ You have a magnetic harness on your belt slot, click it with your weapon, so you don't loose it when someone attacks you. +
+ Don't forget to activate your armor integrated flashlight, by clicking buttons on the upper-left. +
+ You have a charged powerfist in your suit storage, use it when xenomorphs get too close to you, to send them flying away from you. X2 performance points if you send them in the place, where all the marines are standing.
+
+ In your helmet you have inaprovaline autoinjectors, use them on your human comrades, that seem sleeping on the battlefield, or just in critical state of health. It will recover 30% of their health instantly, which most probably will put them on their foot.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility. +
+ Your tools pouch can be used for the sake of helping your fellow engineers with repairing barricades, generators or something similar."} + +/obj/item/paper/tutorial/robot_laser_sniper + name = "Robot Laser Sniper" + info = {"As a robot, you are immune to most traumas and toxins, but unable to run, which decreases your potential speed. Use either the instruments in your webbing, on the uniform, to repair yourself or autorepair ability. Welders are used to repair brute damage, cable coils for the burn damage, but the soldering tool is universal, so don't loose it!
+
+ Your weapon is called Laser Sniper Rifle, it uses charge from laser batteries or powerpacks. Attack it your back powerpack for nearly infinite power-source for your weapon, as it recharges by the time by itself.
+
+ You have a magnetic harness on your belt slot, click it with your weapon, so you don't loose it when someone attacks you. +
+ Don't forget to activate your armor integrated flashlight, by clicking buttons on the upper-left. +
+ You have a charged powerfist in your suit storage, use it when xenomorphs get too close to you, to send them flying away from you. X2 performance points if you send them in the place, where all the marines are standing.
+
+ In your helmet you have inaprovaline autoinjectors, use them on your human comrades, that seem sleeping on the battlefield, or just in critical state of health. It will recover 30% of their health instantly, which most probably will put them on their foot.
+
+ Your flare gun can be rapidly reloaded by just right clicking the flare pouch with it in hand. Your flare pouch can be refilled by left clicking on it while holding a flare box. Flare any dark area you can see to reduce the risk of a xenomorph ambushing you from the dark. On a similar note, your suit's light can be toggled in the top left - you should almost always keep this on to help your visibility. +
+ Your tools pouch can be used for the sake of helping your fellow engineers with repairing barricades, generators or something similar."} diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 4abcf549d5b..e43b4e4cb1f 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -272,6 +272,21 @@ attack_speed = 3 // should make reloading less painful icon_state_mini = "bullets" +/obj/item/ammo_magazine/handful/repeater + name = "handful of heavy impact rifle bullet (.45-70 Government)" + icon_state = "bullet" + current_rounds = 8 + max_rounds = 8 + default_ammo = /datum/ammo/bullet/rifle/repeater + caliber = CALIBER_4570 + +/obj/item/ammo_magazine/handful/slug + name = "handful of shotgun slug (12 gauge)" + icon_state = "shotgun slug" + current_rounds = 5 + default_ammo = /datum/ammo/bullet/shotgun/slug + caliber = CALIBER_12G + /obj/item/ammo_magazine/handful/buckshot name = "handful of shotgun buckshot shells (12g)" icon_state = "shotgun buckshot shell" diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 5672849ee67..f1a5bda995a 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -534,6 +534,7 @@ /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistol name = "\improper Terra Experimental laser pistol" desc = "A TerraGov standard issue laser pistol abbreviated as TE-P. It has an integrated charge selector for normal, heat and taser settings. Uses standard Terra Experimental (abbreviated as TE) power cells. As with all TE Laser weapons, they use a lightweight alloy combined without the need for bullets any longer decreases their weight and aiming speed quite some vs their ballistic counterparts." + w_class = WEIGHT_CLASS_NORMAL reload_sound = 'sound/weapons/guns/interact/standard_laser_pistol_reload.ogg' fire_sound = 'sound/weapons/guns/fire/Laser Pistol Standard.ogg' icon_state = "tep" @@ -694,6 +695,13 @@ /obj/item/attachable/gyro, ) +/obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_carbine/beginner + starting_attachment_types = list( + /obj/item/attachable/magnetic_harness, + /obj/item/attachable/verticalgrip, + /obj/item/attachable/bayonet, + ) + /datum/lasrifle/energy_carbine_mode/auto_burst rounds_per_shot = 12 ammo_datum_type = /datum/ammo/energy/lasgun/marine/carbine @@ -820,6 +828,9 @@ modify_fire_delay(aim_fire_delay) modify_auto_burst_delay(aim_fire_delay) +/obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_sniper/beginner + starting_attachment_types = list(/obj/item/attachable/scope/unremovable/laser_sniper_scope, /obj/item/attachable/foldable/bipod) + /datum/lasrifle/energy_sniper_mode/standard rounds_per_shot = 30 fire_delay = 0.8 SECONDS @@ -944,6 +955,9 @@ /obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_mlaser/patrol starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/weapon/gun/grenade_launcher/underslung, /obj/item/attachable/bayonet) +/obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_mlaser/beginner + starting_attachment_types = list(/obj/item/attachable/bayonet, /obj/item/attachable/motiondetector, /obj/item/attachable/gyro) + /datum/lasrifle/energy_mg_mode/standard rounds_per_shot = 4 ammo_datum_type = /datum/ammo/energy/lasgun/marine/autolaser diff --git a/code/modules/projectiles/guns/flamer.dm b/code/modules/projectiles/guns/flamer.dm index 86d2f9717fc..9c243f824dd 100644 --- a/code/modules/projectiles/guns/flamer.dm +++ b/code/modules/projectiles/guns/flamer.dm @@ -349,6 +349,13 @@ ) starting_attachment_types = list(/obj/item/attachable/flamer_nozzle, /obj/item/attachable/stock/t84stock) +/obj/item/weapon/gun/flamer/big_flamer/marinestandard/engineer/beginner + starting_attachment_types = list( + /obj/item/attachable/motiondetector, + /obj/item/attachable/flamer_nozzle, + /obj/item/attachable/stock/t84stock, + ) + /obj/item/weapon/gun/flamer/mini_flamer name = "mini flamethrower" desc = "A weapon-mounted refillable flamethrower attachment.\nIt is designed for short bursts." diff --git a/code/modules/projectiles/guns/grenade_launchers.dm b/code/modules/projectiles/guns/grenade_launchers.dm index a71fa5402f2..5b558ae81e0 100644 --- a/code/modules/projectiles/guns/grenade_launchers.dm +++ b/code/modules/projectiles/guns/grenade_launchers.dm @@ -131,6 +131,9 @@ The Grenade Launchers fire_delay = 1.3 SECONDS max_chamber_items = 5 +/obj/item/weapon/gun/grenade_launcher/multinade_launcher/beginner + starting_attachment_types = list(/obj/item/attachable/magnetic_harness) + /obj/item/weapon/gun/grenade_launcher/multinade_launcher/unloaded default_ammo_type = null diff --git a/code/modules/projectiles/guns/pistols.dm b/code/modules/projectiles/guns/pistols.dm index 369e524b139..cdf52223966 100644 --- a/code/modules/projectiles/guns/pistols.dm +++ b/code/modules/projectiles/guns/pistols.dm @@ -124,6 +124,9 @@ placed_overlay_iconstate = "tx7" +/obj/item/weapon/gun/pistol/plasma_pistol/beginner + starting_attachment_types = list(/obj/item/weapon/gun/shotgun/combat/masterkey, /obj/item/attachable/reddot, /obj/item/attachable/lasersight) + /obj/item/weapon/gun/pistol/plasma_pistol/can_attach(obj/item/attaching_to, mob/attacher) if(!attachments_by_slot[ATTACHMENT_SLOT_RAIL]) return TRUE @@ -219,6 +222,10 @@ /obj/item/weapon/gun/pistol/p23/tactical starting_attachment_types = list(/obj/item/attachable/reddot) + +/obj/item/weapon/gun/pistol/p23/beginner + starting_attachment_types = list(/obj/item/attachable/lace, /obj/item/attachable/reddot) + //------------------------------------------------------- //P-1911 @@ -546,6 +553,9 @@ /obj/item/weapon/gun/pistol/vp70/tactical starting_attachment_types = list(/obj/item/attachable/reddot, /obj/item/attachable/lasersight, /obj/item/attachable/compensator) +/obj/item/weapon/gun/pistol/vp70/beginner + starting_attachment_types = list(/obj/item/attachable/reddot, /obj/item/attachable/lasersight, /obj/item/attachable/lace) + //------------------------------------------------------- //VP78 diff --git a/code/modules/projectiles/guns/revolvers.dm b/code/modules/projectiles/guns/revolvers.dm index 715b5f705b9..dca92f6c726 100644 --- a/code/modules/projectiles/guns/revolvers.dm +++ b/code/modules/projectiles/guns/revolvers.dm @@ -148,6 +148,9 @@ base_gun_icon = "tp44cool" update_icon() +/obj/item/weapon/gun/revolver/r44/beginner + starting_attachment_types = list(/obj/item/attachable/reddot, /obj/item/attachable/compensator, /obj/item/attachable/lasersight) + //------------------------------------------------------- //RUSSIAN REVOLVER //Based on the 7.62mm Russian revolvers. diff --git a/code/modules/projectiles/guns/rifles.dm b/code/modules/projectiles/guns/rifles.dm index fa7127f893d..0f4d5b30f73 100644 --- a/code/modules/projectiles/guns/rifles.dm +++ b/code/modules/projectiles/guns/rifles.dm @@ -119,6 +119,9 @@ /obj/item/weapon/gun/rifle/ar18/plasma_pistol starting_attachment_types = list(/obj/item/attachable/stock/ar18stock, /obj/item/weapon/gun/pistol/plasma_pistol, /obj/item/attachable/motiondetector, /obj/item/attachable/compensator) +/obj/item/weapon/gun/rifle/ar18/beginner + starting_attachment_types = list(/obj/item/attachable/stock/ar18stock, /obj/item/attachable/magnetic_harness, /obj/item/attachable/angledgrip, /obj/item/attachable/compensator) + //------------------------------------------------------- //AR-12 Assault Rifle @@ -289,6 +292,8 @@ /obj/item/weapon/gun/rifle/dmr37/marksman starting_attachment_types = list(/obj/item/attachable/scope, /obj/item/attachable/angledgrip, /obj/item/attachable/extended_barrel) +/obj/item/weapon/gun/rifle/dmr37/beginner + starting_attachment_types = list(/obj/item/attachable/scope, /obj/item/attachable/verticalgrip, /obj/item/attachable/extended_barrel) //------------------------------------------------------- @@ -965,6 +970,12 @@ scatter_unwielded = 80 movement_acc_penalty_mult = 6 +/obj/item/weapon/gun/rifle/mg42/autorifleman + starting_attachment_types = list(/obj/item/attachable/verticalgrip, /obj/item/attachable/reddot) + +/obj/item/weapon/gun/rifle/mg42/autorifleman + starting_attachment_types = list(/obj/item/attachable/verticalgrip, /obj/item/attachable/reddot) + //------------------------------------------------------- //MG-60 General Purpose Machine Gun @@ -1036,12 +1047,12 @@ placed_overlay_iconstate = "lmg" -/obj/item/weapon/gun/rifle/mg42/autorifleman - starting_attachment_types = list(/obj/item/attachable/verticalgrip, /obj/item/attachable/reddot) - /obj/item/weapon/gun/rifle/mg60/machinegunner starting_attachment_types = list(/obj/item/attachable/stock/t60stock, /obj/item/attachable/foldable/bipod, /obj/item/attachable/magnetic_harness, /obj/item/attachable/extended_barrel) +/obj/item/weapon/gun/rifle/mg60/beginner + starting_attachment_types = list(/obj/item/attachable/stock/t60stock, /obj/item/attachable/foldable/bipod, /obj/item/attachable/magnetic_harness, /obj/item/attachable/heavy_barrel) + //------------------------------------------------------- //M41AE2 Heavy Pulse Rifle @@ -1181,6 +1192,8 @@ accuracy_mult_unwielded = 0.8 scatter = -1 +/obj/item/weapon/gun/rifle/type71/beginner + starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/attachable/bayonet, /obj/item/attachable/gyro) /obj/item/weapon/gun/rifle/type71/flamer name = "\improper Type 71 pulse rifle" diff --git a/code/modules/projectiles/guns/shotguns.dm b/code/modules/projectiles/guns/shotguns.dm index 5403d623ea4..218460a66a7 100644 --- a/code/modules/projectiles/guns/shotguns.dm +++ b/code/modules/projectiles/guns/shotguns.dm @@ -117,6 +117,10 @@ wield_delay = 0.8 SECONDS akimbo_additional_delay = 0.9 +/obj/item/weapon/gun/shotgun/combat/standardmarine/beginner + default_ammo_type = /datum/ammo/bullet/shotgun/slug + starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/attachable/heavy_barrel, /obj/item/attachable/verticalgrip, /obj/item/attachable/stock/t39stock) + /obj/item/weapon/gun/shotgun/combat/masterkey name = "masterkey shotgun" desc = "A weapon-mounted, three-shot shotgun. Reloadable with any normal 12 gauge shell. The short barrel reduces the ammo's effectiveness drastically in exchange for fitting as a attachment.." @@ -629,6 +633,9 @@ RU TGMC EDIT */ aim_slowdown = 0.6 movement_acc_penalty_mult = 5 +/obj/item/weapon/gun/shotgun/pump/lever/repeater/beginner + starting_attachment_types = list(/obj/item/attachable/magnetic_harness, /obj/item/attachable/bayonet) + //------------------------------------------------------ //MBX900 Lever Action Shotgun /obj/item/weapon/gun/shotgun/pump/lever/mbx900 @@ -742,6 +749,10 @@ RU TGMC EDIT */ default_ammo_type = /datum/ammo/bullet/shotgun/buckshot starting_attachment_types = list(/obj/item/attachable/foldable/t35stock, /obj/item/attachable/angledgrip, /obj/item/attachable/magnetic_harness) +/obj/item/weapon/gun/shotgun/pump/t35/beginner + default_ammo_type = /datum/ammo/bullet/shotgun/slug + starting_attachment_types = list(/obj/item/attachable/foldable/t35stock, /obj/item/attachable/gyro, /obj/item/attachable/magnetic_harness, /obj/item/attachable/bayonet) + //------------------------------------------------------- //THE MYTH, THE GUN, THE LEGEND, THE DEATH, THE ZX diff --git a/code/modules/projectiles/guns/smgs.dm b/code/modules/projectiles/guns/smgs.dm index 3370b484b02..9b3ed16087e 100644 --- a/code/modules/projectiles/guns/smgs.dm +++ b/code/modules/projectiles/guns/smgs.dm @@ -745,3 +745,6 @@ movement_acc_penalty_mult = 0.1 upper_akimbo_accuracy = 5 lower_akimbo_accuracy = 5 + +/obj/item/weapon/gun/smg/vector/beginner + starting_attachment_types = list(/obj/item/attachable/compensator, /obj/item/attachable/magnetic_harness, /obj/item/attachable/lasersight) diff --git a/code/modules/projectiles/magazines/energy.dm b/code/modules/projectiles/magazines/energy.dm index cd558200f2e..50009190cb8 100644 --- a/code/modules/projectiles/magazines/energy.dm +++ b/code/modules/projectiles/magazines/energy.dm @@ -57,6 +57,7 @@ icon_state = "te" icon_state_mini = "mag_cell_te" maxcharge = 600 + /obj/item/cell/lasgun/lasrifle/recharger name = "\improper Terra Experimental recharger battery" desc = "A prototype high density battery reverse-engineered from captured Volkite equipment. Due to developmental constraints and less than stellar jury-rigging, as well as space taken up by the recharger component, it boasts sub-par capacity." @@ -65,6 +66,7 @@ self_recharge = TRUE charge_amount = 12 //balanced around recharging 1 standard laser rifle shot per second charge_delay = 1 SECONDS + /obj/item/cell/lasgun/fob_sentry/cell maxcharge = INFINITY diff --git a/icons/obj/machines/vending.dmi b/icons/obj/machines/vending.dmi index 365d252ea4d..0b38ef29044 100644 Binary files a/icons/obj/machines/vending.dmi and b/icons/obj/machines/vending.dmi differ diff --git a/tgmc.dme b/tgmc.dme index ccf6761e5ff..76026e5cf25 100644 --- a/tgmc.dme +++ b/tgmc.dme @@ -367,7 +367,6 @@ #include "code\datums\outfit.dm" #include "code\datums\personal_statistics.dm" #include "code\datums\progressbar.dm" -#include "code\datums\quick_load_outfits.dm" #include "code\datums\recipe.dm" #include "code\datums\round_statistics.dm" #include "code\datums\saymode.dm" @@ -567,6 +566,25 @@ #include "code\datums\looping_sounds\miscellaneous.dm" #include "code\datums\looping_sounds\weather_sounds.dm" #include "code\datums\looping_sounds\xeno_sounds.dm" +#include "code\datums\quick_load\_quick_load.dm" +#include "code\datums\quick_load\beginner\_beginner.dm" +#include "code\datums\quick_load\beginner\corpsman.dm" +#include "code\datums\quick_load\beginner\engineer.dm" +#include "code\datums\quick_load\beginner\marine.dm" +#include "code\datums\quick_load\beginner\robot.dm" +#include "code\datums\quick_load\beginner\smartgunner.dm" +#include "code\datums\quick_load\som\_som.dm" +#include "code\datums\quick_load\som\engineer.dm" +#include "code\datums\quick_load\som\leader.dm" +#include "code\datums\quick_load\som\marine.dm" +#include "code\datums\quick_load\som\medic.dm" +#include "code\datums\quick_load\som\veteran.dm" +#include "code\datums\quick_load\tgmc\_tgmc.dm" +#include "code\datums\quick_load\tgmc\corpsman.dm" +#include "code\datums\quick_load\tgmc\engineer.dm" +#include "code\datums\quick_load\tgmc\leader.dm" +#include "code\datums\quick_load\tgmc\marine.dm" +#include "code\datums\quick_load\tgmc\smartgunner.dm" #include "code\datums\skins\_skin.dm" #include "code\datums\skins\drone.dm" #include "code\datums\skins\king.dm" @@ -1042,6 +1060,7 @@ #include "code\game\objects\machinery\telecomms\machines\receiver.dm" #include "code\game\objects\machinery\telecomms\machines\relay.dm" #include "code\game\objects\machinery\telecomms\machines\server.dm" +#include "code\game\objects\machinery\vending\beginner_vendor.dm" #include "code\game\objects\machinery\vending\loadout_vendor.dm" #include "code\game\objects\machinery\vending\marine_vending.dm" #include "code\game\objects\machinery\vending\new_marine_vendors.dm" @@ -1796,6 +1815,7 @@ #include "code\modules\organs\organs.dm" #include "code\modules\organs\pain.dm" #include "code\modules\organs\wound.dm" +#include "code\modules\paperwork\beginner_tutorials.dm" #include "code\modules\paperwork\carbonpaper.dm" #include "code\modules\paperwork\clipboard.dm" #include "code\modules\paperwork\filingcabinet.dm"