Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Combat Correspondent Expansion Pt. 1 #5784

Merged
merged 46 commits into from
Mar 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
0dfd0fd
sets default camera size to 7
GrrrKitten Feb 21, 2024
d39b309
opens up photo album from 2.8 rows to 4 full tows
GrrrKitten Feb 21, 2024
a96c403
why did that commit as 30
GrrrKitten Feb 21, 2024
52690a5
adds new camera, removes turning on/off, speeds up photo taking
GrrrKitten Feb 22, 2024
20f8f3d
adds new camera item state
GrrrKitten Feb 22, 2024
9a1de6d
minor sprite fix
GrrrKitten Feb 22, 2024
6f87c6f
adds onmob sprite for belt camera
GrrrKitten Feb 22, 2024
2d0bb47
redoes CC uniforms to split them up
GrrrKitten Feb 22, 2024
e729312
redoes CC gear loadout per devs wishes
GrrrKitten Feb 22, 2024
46cc584
cleans up bad cam code + expands broadcasting cam storage
GrrrKitten Feb 22, 2024
0207af0
fixes pic taking bug, readds minor delay
GrrrKitten Feb 22, 2024
06dbec3
adds new portable fax machine
GrrrKitten Feb 22, 2024
77dbef9
gives new portable fax machine to civ CC
GrrrKitten Feb 22, 2024
a782283
whoopsies typo
GrrrKitten Feb 22, 2024
f46c4f6
minor sprite visibility improvements
GrrrKitten Feb 22, 2024
5edee8e
minor changes to the broadcasting camera
GrrrKitten Feb 22, 2024
0caf08d
fixes thing I broke being dum
GrrrKitten Feb 22, 2024
f9f4855
mirrors the faxpack sprite to look better
GrrrKitten Feb 22, 2024
9e222d2
removes final bit
GrrrKitten Feb 22, 2024
18ef342
how'd this get back in here
GrrrKitten Feb 22, 2024
8b9eb49
fixes uniform overflow issue
GrrrKitten Feb 22, 2024
1037a62
final touches (accidentally deleted these)
GrrrKitten Feb 22, 2024
7effc13
Merge branch 'master' into CC-expansion
Drulikar Feb 23, 2024
ef6402a
Update code/game/machinery/fax_machine.dm
GrrrKitten Feb 24, 2024
0faf398
fixes stuff as per feedback
GrrrKitten Feb 24, 2024
6ba5be3
Merge branch 'CC-expansion' of https://github.com/GrrrKitten/cmss13 i…
GrrrKitten Feb 24, 2024
3abb35e
merge shennanigans
GrrrKitten Feb 24, 2024
0c1d9b0
fixes another thing I missed
GrrrKitten Feb 24, 2024
94a0e60
sprite updates
GrrrKitten Feb 25, 2024
07b6dd8
Merge branch 'master' of https://github.com/GrrrKitten/cmss13 into CC…
GrrrKitten Feb 25, 2024
3c4fc74
Merge branch 'master' into CC-expansion
GrrrKitten Feb 25, 2024
e941721
how'd this get removed
GrrrKitten Feb 25, 2024
875077a
Merge branch 'CC-expansion' of https://github.com/GrrrKitten/cmss13 i…
GrrrKitten Feb 25, 2024
bbac1d4
fixes something I neglected in the merge conflict
GrrrKitten Feb 25, 2024
c75cb8a
dyslexia be damned
GrrrKitten Feb 25, 2024
c155415
Merge remote-tracking branch 'upstream/master' into CC-expansion
GrrrKitten Feb 26, 2024
666272c
test fix
GrrrKitten Feb 26, 2024
475a170
Merge branch 'master' of https://github.com/cmss13-devs/cmss13 into C…
GrrrKitten Feb 27, 2024
e258d1d
fixes fax_machine per sabreML feedback (tested and functional)
GrrrKitten Feb 28, 2024
7ff8b3c
missed one whoops
GrrrKitten Feb 28, 2024
3ed2fb3
SabreML fix for CC vendor (didnt I just merge this)
GrrrKitten Feb 28, 2024
0786464
SabreML fix for uscm_ship.dm
GrrrKitten Feb 28, 2024
8c5999a
Fixes Photography per SabreML feedback
GrrrKitten Feb 28, 2024
8d234a9
Merge branch 'CC-expansion' of https://github.com/GrrrKitten/cmss13 i…
GrrrKitten Feb 28, 2024
76f1b7a
cameras have to be wielded to take photos + inhand fixs + new inhands
GrrrKitten Feb 28, 2024
d740277
puts civ cc's new gear into vendor, tested and functional
GrrrKitten Mar 1, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions code/__DEFINES/vendors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
#define MARINE_CAN_BUY_COMBAT_ARMOR "combat_armor"
#define MARINE_CAN_BUY_KIT "kit"
#define MARINE_CAN_BUY_DRESS "dress"
#define CIVILIAN_CAN_BUY_BACKPACK "civilian_backpack"
#define CIVILIAN_CAN_BUY_UTILITY "civilian_utility"

#define MARINE_CAN_BUY_ALL list(MARINE_CAN_BUY_UNIFORM = 1, MARINE_CAN_BUY_SHOES = 1, MARINE_CAN_BUY_HELMET = 1, MARINE_CAN_BUY_ARMOR = 1, MARINE_CAN_BUY_GLOVES = 1, MARINE_CAN_BUY_EAR = 1, MARINE_CAN_BUY_BACKPACK = 1, MARINE_CAN_BUY_POUCH = 2, MARINE_CAN_BUY_BELT = 1, MARINE_CAN_BUY_GLASSES = 1, MARINE_CAN_BUY_MASK = 1, MARINE_CAN_BUY_ESSENTIALS = 1, MARINE_CAN_BUY_SECONDARY = 1, MARINE_CAN_BUY_ATTACHMENT = 1, MARINE_CAN_BUY_MRE = 1, MARINE_CAN_BUY_ACCESSORY = 1, MARINE_CAN_BUY_COMBAT_SHOES = 1, MARINE_CAN_BUY_COMBAT_HELMET = 1, MARINE_CAN_BUY_COMBAT_ARMOR = 1, MARINE_CAN_BUY_KIT = 1, MARINE_CAN_BUY_DRESS = 99)

Expand Down
87 changes: 83 additions & 4 deletions code/game/machinery/fax_machine.dm
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ GLOBAL_LIST_EMPTY(alldepartments)
else
to_chat(user, SPAN_NOTICE("\The [src] jammed! It can only accept up to five papers at once."))
playsound(src, "sound/machines/terminal_insert_disc.ogg", 50, TRUE)
flick("faxsend", src)
flick("[initial(icon_state)]send", src)
updateUsrDialog()
return

Expand Down Expand Up @@ -245,7 +245,7 @@ GLOBAL_LIST_EMPTY(alldepartments)
else
to_chat(ui.user, SPAN_NOTICE("\The [src] jammed! It can only accept up to five papers at once."))
playsound(src, "sound/machines/terminal_insert_disc.ogg", 50, TRUE)
flick("faxsend", src)
flick("[initial(icon_state)]send", src)
. = TRUE

if("ejectid")
Expand Down Expand Up @@ -408,10 +408,10 @@ GLOBAL_LIST_EMPTY(alldepartments)
return
if(! (F.inoperable() ) )

flick("faxreceive", F)
flick("[initial(icon_state)]receive", F)

// give the sprite some time to flick
spawn(20)
spawn(30)
var/obj/item/paper/P = new(F.loc,faxcontents.photo_list)
P.name = "faxed message"
P.info = "[faxcontents.data]"
Expand Down Expand Up @@ -515,6 +515,85 @@ GLOBAL_LIST_EMPTY(alldepartments)
target_department = "Brig"
network = "USCM High Command Quantum Relay"


///The deployed fax machine backpack
/obj/structure/machinery/faxmachine/backpack
name = "\improper Portable Press Fax Machine"
desc = "A standard issue portable fax machine for civilian reporters. Functions off of an internal battery. Cannot receive faxes while being worn. It is currently deployed. Click-drag the device towards you to pick it up."
icon_state = "fax_backpack"
needs_power = FALSE
use_power = USE_POWER_NONE
health = 150

///The wearable and deployable part of the fax machine backpack
/obj/item/device/fax_backpack
name = "\improper Portable Press Fax Machine"
desc = "A standard issue portable fax machine for civilian reporters. Functions off of an internal battery. Cannot receive faxes while being worn. It is currently undeployed. Activate the device inhand to deploy it."
icon = 'icons/obj/structures/machinery/library.dmi'
icon_state = "fax_backpack"
item_state = "fax_backpack"
w_class = SIZE_HUGE
flags_equip_slot = SLOT_BACK
flags_item = ITEM_OVERRIDE_NORTHFACE

/obj/item/device/fax_backpack/attack_self(mob/user) //activate item version fax inhand to deploy
if(!ishuman(user))
return
var/turf/deployturf = get_turf(user)
if(istype(deployturf, /turf/open))
var/turf/open/floor = deployturf
if(!floor.allow_construction)
to_chat(user, SPAN_WARNING("You cannot deploy [src] here, find a more secure surface!"))
return FALSE
var/fail = FALSE
if(deployturf.density)
fail = TRUE
else
var/static/list/blocking_types = typecacheof(list(
/obj/structure/machinery/defenses,
/obj/structure/window,
/obj/structure/windoor_assembly,
/obj/structure/machinery/door,
))
for(var/obj/blockingobj in deployturf.contents)
if(blockingobj.density && !(blockingobj.flags_atom & ON_BORDER))
fail = TRUE
break
if(is_type_in_typecache(blockingobj, blocking_types))
fail = TRUE
break
if(fail)
to_chat(user, SPAN_WARNING("You can't deploy [src] here, something is in the way."))
return
to_chat(user, SPAN_NOTICE("You begin to deploy [src]..."))
if(do_after(user, 4.5 SECONDS, INTERRUPT_ALL|BEHAVIOR_IMMOBILE, BUSY_ICON_BUILD))
to_chat(user, SPAN_NOTICE("You deploy [src]."))
var/obj/structure/machinery/faxmachine/backpack/deployedfax = new(deployturf)
transfer_label_component(deployedfax)
playsound(src.loc, 'sound/machines/print.ogg', 40, 1)
qdel(src)
return
return ..()
GrrrKitten marked this conversation as resolved.
Show resolved Hide resolved

/obj/structure/machinery/faxmachine/backpack/MouseDrop(over_object, src_location, over_location) //Drag the deployed fax onto you to pick it up.
if(!ishuman(usr))
return
var/mob/living/carbon/human/user = usr
if(over_object == user && in_range(src, user))
if(original_fax || scan)
to_chat(user, SPAN_NOTICE("There is still something in [src]. Remove it before you pick it up."))
return
to_chat(user, SPAN_NOTICE("You begin to pick up [src]..."))
if(do_after(user, 4.5 SECONDS, INTERRUPT_ALL|BEHAVIOR_IMMOBILE, BUSY_ICON_BUILD))
playsound(src.loc, 'sound/items/Ratchet.ogg', 25, 1)
to_chat(user, SPAN_NOTICE("You pick up [src]."))
var/obj/item/device/fax_backpack/faxbag = new(loc)
transfer_label_component(faxbag)
user.put_in_hands(faxbag)
qdel(src)
return
return ..()

/datum/fax
var/data
var/list/photo_list
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
//------------ CC CLOTHING VENDOR---------------

GLOBAL_LIST_INIT(cm_vending_clothing_combat_correspondent, list(
list("STANDARD EQUIPMENT (TAKE ALL)", 0, null, null, null),
list("Essential Reporter's Set", 0, /obj/effect/essentials_set/cc, MARINE_CAN_BUY_ESSENTIALS, VENDOR_ITEM_MANDATORY),
list("Portable Press Fax Machine", 0, /obj/item/device/fax_backpack, CIVILIAN_CAN_BUY_BACKPACK, VENDOR_ITEM_RECOMMENDED),
list("Press Broadcasting Camera", 0, /obj/item/device/camera/broadcasting, CIVILIAN_CAN_BUY_UTILITY, VENDOR_ITEM_RECOMMENDED),
list("Leather Satchel", 0, /obj/item/storage/backpack/satchel, MARINE_CAN_BUY_BACKPACK, VENDOR_ITEM_REGULAR),

list("UNIFORM (CHOOSE 1)", 0, null, null, null),
list("Black Uniform", 0, /obj/item/clothing/under/marine/reporter/black, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_REGULAR),
list("Orange Uniform", 0, /obj/item/clothing/under/marine/reporter/orange, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_REGULAR),
list("Red Uniform", 0, /obj/item/clothing/under/marine/reporter/red, MARINE_CAN_BUY_UNIFORM, VENDOR_ITEM_REGULAR),

list("ARMOR (CHOOSE 1)", 0, null, null, null),
list("Combat Correspondent's Armor", 0, /obj/item/clothing/suit/storage/marine/light/reporter, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_RECOMMENDED),
list("Blue Vest", 0, /obj/item/clothing/suit/storage/jacket/marine/reporter/blue, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),
list("Black Vest", 0, /obj/item/clothing/suit/storage/hazardvest/black, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),
list("Black Coat", 0, /obj/item/clothing/suit/storage/jacket/marine/reporter/black, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),
list("Green Coat", 0, /obj/item/clothing/suit/storage/jacket/marine/reporter/green, MARINE_CAN_BUY_ARMOR, VENDOR_ITEM_REGULAR),

list("HELMET (CHOOSE 1)", 0, null, null, null),
list("Combat Correspondent's Helmet", 0, /obj/item/clothing/head/helmet/marine/reporter, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_RECOMMENDED),
GrrrKitten marked this conversation as resolved.
Show resolved Hide resolved
list("Combat Correspondent's Cap", 0, /obj/item/clothing/head/cmcap/reporter, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_REGULAR),
list("Fedora", 0, /obj/item/clothing/head/fedora, MARINE_CAN_BUY_HELMET, VENDOR_ITEM_REGULAR),

list("REFILLS", 0, null, null, null),
list("Camera", 10, /obj/item/device/camera, null, VENDOR_ITEM_REGULAR),
list("Camera Film", 5, /obj/item/device/camera_film, null, VENDOR_ITEM_REGULAR),
list("Toner", 5, /obj/item/device/toner, null, VENDOR_ITEM_REGULAR),
list("Regulation Tapes", 15, /obj/item/storage/box/tapes, null, VENDOR_ITEM_REGULAR),
list("Paper Bin", 10, /obj/item/paper_bin/uscm, null, VENDOR_ITEM_REGULAR),
))

/obj/structure/machinery/cm_vending/clothing/combat_correspondent
name = "\improper ColMarTech Combat Correspondent Equipment Rack"
desc = "An automated rack hooked up to a colossal storage of Reporter standard-issue equipment."
req_access = list(ACCESS_PRESS)
vendor_role = list(JOB_COMBAT_REPORTER)

/obj/structure/machinery/cm_vending/clothing/combat_correspondent/get_listed_products(mob/user)
return GLOB.cm_vending_clothing_combat_correspondent

/obj/effect/essentials_set/cc
spawned_gear_list = list(
/obj/item/device/flashlight,
/obj/item/tool/pen,
/obj/item/device/binoculars,
/obj/item/notepad,
/obj/item/device/taperecorder,
)
6 changes: 2 additions & 4 deletions code/modules/clothing/head/head.dm
Original file line number Diff line number Diff line change
Expand Up @@ -416,10 +416,8 @@
/obj/item/clothing/head/cmcap/reporter
name = "combat correspondent cap"
desc = "A faithful cap for any terrain war correspondents may find themselves in."
icon = 'icons/mob/humans/onmob/contained/war_correspondent.dmi'
icon_state = "wc_flagcap"
item_state = "wc_flagcap"
contained_sprite = TRUE
icon_state = "cc_flagcap"
item_state = "cc_flagcap"
flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE
flags_marine_hat = HAT_GARB_OVERLAY

Expand Down
6 changes: 2 additions & 4 deletions code/modules/clothing/head/helmet.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1413,10 +1413,8 @@ GLOBAL_LIST_INIT(allowed_helmet_items, list(
/obj/item/clothing/head/helmet/marine/reporter
name = "press helmet"
desc = "A helmet designed to make it clear that the wearer is safety aware and not looking for a fight."
icon = 'icons/mob/humans/onmob/contained/war_correspondent.dmi'
icon_state = "wc_helm"
item_state = "wc_helm"
contained_sprite = TRUE
icon_state = "cc_helmet"
item_state = "cc_helmet"
flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE

built_in_visors = list()
Expand Down
7 changes: 3 additions & 4 deletions code/modules/clothing/suits/marine_armor/_marine_armor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -658,12 +658,11 @@
valid_accessory_slots = list(ACCESSORY_SLOT_ARMBAND, ACCESSORY_SLOT_DECOR, ACCESSORY_SLOT_MEDAL)
restricted_accessory_slots = list(ACCESSORY_SLOT_ARMBAND)

//==================War Correspondent==================\\
//==================Combat Correspondent==================\\

/obj/item/clothing/suit/storage/marine/light/reporter
name = "press body armor"
desc = "Body armor used by war correspondents in battles and wars across the universe."
icon = 'icons/mob/humans/onmob/contained/war_correspondent.dmi'
icon_state = "wc_armor"
icon_state = "cc_armor"
flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE
contained_sprite = TRUE

24 changes: 19 additions & 5 deletions code/modules/clothing/suits/marine_coat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -278,15 +278,29 @@
icon_state = "o_jacket"
item_state = "o_jacket"

//==================War Correspondent==================\\
//==================Combat Correspondent==================\\

/obj/item/clothing/suit/storage/jacket/marine/reporter
name = "combat correspondent jacket"
desc = "A jacket for the most fashionable war correspondents."
icon = 'icons/mob/humans/onmob/contained/war_correspondent.dmi'
icon_state = "wc_suit"
item_state = "wc_suit"
contained_sprite = TRUE
icon_state = "cc_brown"
item_state = "cc_brown"
flags_atom = NO_SNOW_TYPE
has_buttons = FALSE

/obj/item/clothing/suit/storage/jacket/marine/reporter/green
icon_state = "cc_green"
item_state = "cc_green"


/obj/item/clothing/suit/storage/jacket/marine/reporter/black
icon_state = "cc_black"
item_state = "cc_black"

/obj/item/clothing/suit/storage/jacket/marine/reporter/blue
icon_state = "cc_blue"
item_state = "cc_blue"


//==================Corporate Liaison==================\\

Expand Down
23 changes: 18 additions & 5 deletions code/modules/clothing/under/marine_uniform.dm
Original file line number Diff line number Diff line change
Expand Up @@ -882,11 +882,24 @@
/obj/item/clothing/under/marine/reporter
name = "combat correspondent uniform"
desc = "A relaxed and robust uniform fit for any potential reporting needs."
icon = 'icons/mob/humans/onmob/contained/war_correspondent.dmi'
icon_state = "wc_uniform"
worn_state = "wc_uniform"
contained_sprite = TRUE
flags_atom = NO_NAME_OVERRIDE
icon_state = "cc_white"
worn_state = "cc_white"
flags_atom = NO_SNOW_TYPE|NO_NAME_OVERRIDE
item_icons = list(
WEAR_BODY = 'icons/mob/humans/onmob/uniform_1.dmi',
)
GrrrKitten marked this conversation as resolved.
Show resolved Hide resolved

/obj/item/clothing/under/marine/reporter/black
icon_state = "cc_black"
worn_state = "cc_black"

/obj/item/clothing/under/marine/reporter/orange
icon_state = "cc_orange"
worn_state = "cc_orange"

/obj/item/clothing/under/marine/reporter/red
icon_state = "cc_red"
worn_state = "cc_red"

/obj/item/clothing/under/twe_suit
name = "representative's fine suit"
Expand Down
19 changes: 7 additions & 12 deletions code/modules/gear_presets/uscm_ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,18 +128,17 @@
minimap_background = MINIMAP_ICON_BACKGROUND_CIVILIAN

/datum/equipment_preset/uscm_ship/reporter/load_gear(mob/living/carbon/human/new_human)
var/back_item = /obj/item/storage/backpack/satchel

new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/almayer/reporter(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/marine/reporter(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/jacket/marine/reporter(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new back_item(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/camera(new_human), WEAR_L_HAND)
new_human.equip_to_slot_or_del(new /obj/item/device/camera_film(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/binoculars(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/notepad(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/large(new_human), WEAR_L_STORE)
new_human.equip_to_slot_or_del(new /obj/item/device/camera(new_human), WEAR_WAIST)

/datum/equipment_preset/uscm_ship/reporter/load_preset(mob/living/carbon/human/new_human, randomise, count_participant, client/mob_client, show_job_gear)
. = ..()
new_human.marine_buyable_categories[CIVILIAN_CAN_BUY_BACKPACK] = 1
new_human.marine_buyable_categories[CIVILIAN_CAN_BUY_UTILITY] = 1

/datum/equipment_preset/uscm_ship/reporter_uscm
name = "Combat Correspondent"
Expand Down Expand Up @@ -178,10 +177,6 @@
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/general/medium(new_human), WEAR_R_STORE)

new_human.equip_to_slot_or_del(new /obj/item/device/camera(new_human), WEAR_L_HAND)
new_human.equip_to_slot_or_del(new /obj/item/device/camera_film(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/binoculars(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/taperecorder(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/notepad(new_human), WEAR_IN_BACK)

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

Expand Down
Loading
Loading