diff --git a/maps/torch_fd/fd_torch.dm b/maps/torch_fd/fd_torch.dm index 90148ebfda837..1cfbc6462cffe 100644 --- a/maps/torch_fd/fd_torch.dm +++ b/maps/torch_fd/fd_torch.dm @@ -110,17 +110,17 @@ // --- JOB SECTION --- // #include "../torch/job/torch_access.dm" #include "job/torch_jobs.dm" - #include "job/exploration_team.dm" - #include "../torch/job/command_jobs.dm" - #include "../torch/job/corporate_jobs.dm" - #include "../torch/job/engineering_jobs.dm" - #include "../torch/job/exploration_jobs.dm" - #include "../torch/job/medical_jobs.dm" - #include "../torch/job/misc_jobs.dm" - #include "../torch/job/research_jobs.dm" - #include "../torch/job/security_jobs.dm" - #include "../torch/job/service_jobs.dm" - #include "../torch/job/supply_jobs.dm" + + #include "job/command_jobs.dm" + #include "job/corporate_jobs.dm" + #include "job/engineering_jobs.dm" + #include "job/exploration_jobs.dm" + #include "job/medical_jobs.dm" + #include "job/misc_jobs.dm" + #include "job/research_jobs.dm" + #include "job/security_jobs.dm" + #include "job/service_jobs.dm" + #include "job/supply_jobs.dm" #include "../torch/outfits/scgec.dm" #include "../torch/robot/module_flying_surveyor.dm" @@ -137,6 +137,11 @@ #include "../torch/job/outfits/service_outfits.dm" #include "../torch/job/outfits/supply_outfits.dm" + // --- JOBS ADDITION --- // + #include "job/addition/exploration_jobs.dm" + #include "job/addition/research_jobs.dm" + #include "job/addition/service_jobs.dm" + // --- MACHINERY --- // #include "../torch/machinery/apc_shuttle.dm" #include "../torch/machinery/keycard authentication.dm" diff --git a/maps/torch_fd/job/exploration_team.dm b/maps/torch_fd/job/addition/exploration_jobs.dm similarity index 70% rename from maps/torch_fd/job/exploration_team.dm rename to maps/torch_fd/job/addition/exploration_jobs.dm index ec7f6e5508b80..0a58a3192ccd4 100644 --- a/maps/torch_fd/job/exploration_team.dm +++ b/maps/torch_fd/job/addition/exploration_jobs.dm @@ -228,10 +228,10 @@ uniform = /obj/item/clothing/under/solgov/utility/fleet/combat/exploration shoes = /obj/item/clothing/shoes/dutyboots -/*/decl/hierarchy/outfit/job/torch/crew/exploration/expmed/army +/singleton/hierarchy/outfit/job/torch/crew/exploration/expmed/army name = OUTFIT_JOB_NAME("Expedition Medic - Army") - uniform = /obj/item/clothing/under/solgov/utility/army/exploration - shoes = /obj/item/clothing/shoes/dutyboots*/ + uniform = /obj/item/clothing/under/scga/utility/exploration + shoes = /obj/item/clothing/shoes/dutyboots /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng name = OUTFIT_JOB_NAME("Expedition Engineer - Expeditionary Corps") @@ -246,112 +246,9 @@ uniform = /obj/item/clothing/under/solgov/utility/fleet/combat/exploration shoes = /obj/item/clothing/shoes/dutyboots -/*/decl/hierarchy/outfit/job/torch/crew/exploration/expeng/army +/singleton/hierarchy/outfit/job/torch/crew/exploration/expeng/army name = OUTFIT_JOB_NAME("Expedition Engineer - Army") - uniform = /obj/item/clothing/under/solgov/utility/army/exploration - shoes = /obj/item/clothing/shoes/dutyboots*/ + uniform = /obj/item/clothing/under/scga/utility/exploration + shoes = /obj/item/clothing/shoes/dutyboots // OUTFITS // - -// ROLES ITSELF // - -/datum/job/expmed - title = "Exploration Medic" - department = "Exploration" - department_flag = EXP - total_positions = 1 - spawn_positions = 1 - supervisors = "the Commanding Officer, Executive Officer, and Pathfinder" - selection_color = "#68099e" - minimum_character_age = list(SPECIES_HUMAN = 19) - ideal_character_age = 25 - outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed - allowed_branches = list( - /datum/mil_branch/expeditionary_corps, - /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed/fleet - /*/datum/mil_branch/army = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed/army*/ - ) - - allowed_ranks = list( - /datum/mil_rank/ec/e3, - /datum/mil_rank/ec/e5, - /datum/mil_rank/fleet/e4, - /datum/mil_rank/fleet/e5 - /*/datum/mil_rank/army/e4, - /datum/mil_rank/army/e5*/ - ) - min_skill = list( SKILL_EVA = SKILL_BASIC, - SKILL_MEDICAL = SKILL_TRAINED - ) - max_skill = list( SKILL_MEDICAL = SKILL_EXPERIENCED, - SKILL_ANATOMY = SKILL_TRAINED, - SKILL_PILOT = SKILL_MAX, - SKILL_SCIENCE = SKILL_MAX, - SKILL_COMBAT = SKILL_EXPERIENCED, - SKILL_WEAPONS = SKILL_EXPERIENCED) - skill_points = 22 - - access = list( - access_explorer, access_maint_tunnels, access_eva, access_emergency_storage, - access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, - access_petrov, access_petrov_maint, access_research, access_radio_exp, access_radio_med, - access_medical, access_expedition_shuttle_helm - ) - - software_on_spawn = list(/datum/computer_file/program/suit_sensors, - /datum/computer_file/program/deck_management) - -/datum/job/expmed/get_description_blurb() - return "You are an Exploration Medic. Your duty is to go on expeditions to away sites. The Pathfinder is your team leader. You are to keep your team members alive. Keep a note that you are not a doctor, don't try to preform surgeries on your shuttle as you're not qualified for that." - -/datum/job/expeng - title = "Exploration Engineer" - department = "Exploration" - department_flag = EXP - total_positions = 1 - spawn_positions = 1 - supervisors = "the Commanding Officer, Executive Officer, and Pathfinder" - selection_color = "#68099e" - minimum_character_age = list(SPECIES_HUMAN = 19) - ideal_character_age = 25 - outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng - allowed_branches = list( - /datum/mil_branch/expeditionary_corps, - /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng/fleet, - /*/datum/mil_branch/army = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng/army*/ - ) - - allowed_ranks = list( - /datum/mil_rank/ec/e3, - /datum/mil_rank/ec/e5, - /datum/mil_rank/fleet/e3, - /datum/mil_rank/fleet/e4, - /datum/mil_rank/fleet/e5 - /*/datum/mil_rank/army/e3, - /datum/mil_rank/army/e4, - /datum/mil_rank/army/e5*/ - ) - min_skill = list( SKILL_EVA = SKILL_BASIC, - SKILL_CONSTRUCTION = SKILL_BASIC, - SKILL_ELECTRICAL = SKILL_BASIC, - SKILL_MEDICAL = SKILL_BASIC - ) - max_skill = list( SKILL_ANATOMY = SKILL_TRAINED, - SKILL_PILOT = SKILL_MAX, - SKILL_SCIENCE = SKILL_MAX, - SKILL_COMBAT = SKILL_EXPERIENCED, - SKILL_WEAPONS = SKILL_EXPERIENCED) - skill_points = 22 - - access = list( - access_explorer, access_maint_tunnels, access_eva, access_emergency_storage, - access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, - access_petrov, access_petrov_maint, access_research, access_radio_exp, access_radio_eng, access_expedition_shuttle_helm - ) - - software_on_spawn = list(/datum/computer_file/program/deck_management) - -/datum/job/expeng/get_description_blurb() - return "You are an Exploration Engineer. Your duty is to go on expeditions to away sites. The Pathfinder is your team leader. You are to keep shuttle operational and make holes wherever your boss says." - -// ROLES ITSELF // diff --git a/mods/_fd/fd_assets/code/research_guard.dm b/maps/torch_fd/job/addition/research_jobs.dm similarity index 71% rename from mods/_fd/fd_assets/code/research_guard.dm rename to maps/torch_fd/job/addition/research_jobs.dm index d894156e5303a..05a3e7c3676b8 100644 --- a/mods/_fd/fd_assets/code/research_guard.dm +++ b/maps/torch_fd/job/addition/research_jobs.dm @@ -1,5 +1,5 @@ /// Access -/var/const/access_research_security = "ACCESS_RESEARCH_SECURITY" //97 +var/const/access_research_security = "ACCESS_RESEARCH_SECURITY" //97 /datum/access/rnd_guard id = access_research_security desc = "Research Checkpoint" @@ -114,52 +114,11 @@ /obj/item/rig_module/cooling_unit) ///Job -/datum/job/research_guard - title = "Research Guard" - department = "Science" - department_flag = SCI - total_positions = 2 - spawn_positions = 2 - supervisors = "the Chief Science Officer" - selection_color = "#473d63" - economic_power = 5 - minimal_player_age = 0 - minimum_character_age = list(SPECIES_HUMAN = 26) - outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/research_guard - allowed_branches = list( - /datum/mil_branch/civilian, - /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/passenger/research_guard/ec - ) - - allowed_ranks = list( - /datum/mil_rank/civ/contractor, - /datum/mil_rank/ec/e3, - /datum/mil_rank/ec/e5 - ) - min_skill = list(SKILL_BUREAUCRACY = SKILL_TRAINED, - SKILL_EVA = SKILL_BASIC, - SKILL_COMBAT = SKILL_BASIC, - SKILL_WEAPONS = SKILL_TRAINED - ) - - max_skill = list( SKILL_COMBAT = SKILL_EXPERIENCED, - SKILL_WEAPONS = SKILL_EXPERIENCED) - skill_points = 20 - - access = list( - access_research_security, access_tox, access_tox_storage, access_maint_tunnels, access_research, access_xenobiology, access_xenoarch, access_nanotrasen, access_solgov_crew, - access_expedition_shuttle, access_guppy, access_hangar, access_petrov, access_petrov_helm, access_guppy_helm, - access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_maint, access_radio_sci - ) - - software_on_spawn = list(/datum/computer_file/program/camera_monitor) - -/datum/job/research_guard/get_description_blurb() - return "You are a security guard from the Organization of the Expeditionary Corps, which must protect the scientific department and its employees from various threats. Eat donuts, call scientists \"eggheads\"." - +/* /datum/map/torch/New() . = ..() var/index = allowed_jobs.Find(/datum/job/scientist_assistant) if(index) index++ allowed_jobs.Insert(index, /datum/job/research_guard) +*/ diff --git a/mods/_fd/fd_assets/code/chief_steward.dm b/maps/torch_fd/job/addition/service_jobs.dm similarity index 100% rename from mods/_fd/fd_assets/code/chief_steward.dm rename to maps/torch_fd/job/addition/service_jobs.dm diff --git a/maps/torch_fd/job/command_jobs.dm b/maps/torch_fd/job/command_jobs.dm new file mode 100644 index 0000000000000..baa8ad3f35fd2 --- /dev/null +++ b/maps/torch_fd/job/command_jobs.dm @@ -0,0 +1,405 @@ +/datum/job/captain + title = "Commanding Officer" + supervisors = "the Sol Central Government and the Sol Code of Uniform Justice" + minimal_player_age = 14 + economic_power = 16 + minimum_character_age = list(SPECIES_HUMAN = 40) + ideal_character_age = 50 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/CO + allowed_branches = list( + /datum/mil_branch/expeditionary_corps + ) + allowed_ranks = list( + /datum/mil_rank/ec/o6 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_SCIENCE = SKILL_TRAINED, + SKILL_PILOT = SKILL_TRAINED) + + max_skill = list( SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + skill_points = 30 + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/card_mod, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/captain/get_description_blurb() + return "You are the Commanding Officer. You are the top dog. You are an experienced professional officer in control of an entire ship, and ultimately responsible for all that happens onboard. Your job is to make sure [GLOB.using_map.full_name] fulfils its space exploration mission. Delegate to your Executive Officer, your department heads, and your Senior Enlisted Advisor to effectively manage the ship, and listen to and trust their expertise." + +/datum/job/captain/post_equip_rank(mob/person, alt_title) + var/sound/announce_sound = (GAME_STATE <= RUNLEVEL_SETUP)? null : sound('sound/misc/boatswain.ogg', volume=20) + captain_announcement.Announce("All hands, [alt_title || title] [person.real_name] on deck!", new_sound = announce_sound) + ..() + +/datum/job/hop + title = "Executive Officer" + supervisors = "the Commanding Officer" + department = "Command" + department_flag = COM + minimal_player_age = 14 + economic_power = 14 + minimum_character_age = list(SPECIES_HUMAN = 35) + ideal_character_age = 45 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/XO + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/command/XO/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/o5, + /datum/mil_rank/fleet/o4, + /datum/mil_rank/fleet/o5 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_COMPUTER = SKILL_BASIC, + SKILL_PILOT = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + skill_points = 30 + + access = list( + access_security, access_brig, access_armory, access_forensics_lockers, access_heads, access_medical, access_morgue, access_tox, access_tox_storage, + access_engine, access_engine_equip, access_maint_tunnels, access_external_airlocks, access_emergency_storage, access_change_ids, + access_ai_upload, access_teleporter, access_eva, access_bridge, access_all_personal_lockers, access_chapel_office, access_tech_storage, + access_atmospherics, access_janitor, access_crematorium, access_kitchen, access_robotics, access_cargo, access_construction, + access_chemistry, access_cargo_bot, access_hydroponics, access_manufacturing, access_library, access_lawyer, access_virology, access_cmo, + access_qm, access_network, access_network_admin, access_surgery, access_research, access_mining, access_mining_office, access_mailsorting, access_heads_vault, + access_mining_station, access_xenobiology, access_ce, access_hop, access_hos, access_RC_announce, access_keycard_auth, access_tcomsat, + access_gateway, access_sec_doors, access_psychiatrist, access_xenoarch, access_medical_equip, access_heads, access_hangar, access_guppy_helm, + access_expedition_shuttle_helm, access_aquila, access_aquila_helm, access_solgov_crew, access_nanotrasen, access_chief_steward, + access_emergency_armory, access_sec_guard, access_gun, access_expedition_shuttle, access_guppy, access_seneng, access_senmed, access_senadv, + access_explorer, access_pathfinder, access_pilot, access_commissary, access_petrov, access_petrov_helm, access_petrov_analysis, access_petrov_phoron, + access_petrov_toxins, access_petrov_chemistry, access_petrov_control, access_petrov_maint, access_rd, access_petrov_rd, access_torch_fax, access_torch_helm, + access_radio_comm, access_radio_eng, access_radio_med, access_radio_sec, access_radio_sup, access_radio_serv, access_radio_exp, access_radio_sci, access_research_storage + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/card_mod, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/hop/get_description_blurb() + return "You are the Executive Officer. You are an experienced senior officer, second in command of the ship, and are responsible for the smooth operation of the ship under your Commanding Officer. In their absence, you are expected to take their place. Your primary duty is directly managing department heads and all those outside a department heading. You are also responsible for the contractors and passengers aboard the ship. Consider the Senior Enlisted Advisor and Bridge Officers tools at your disposal." + +/datum/job/rd + title = "Chief Science Officer" + supervisors = "the Commanding Officer" + economic_power = 12 + minimal_player_age = 14 + minimum_character_age = list(SPECIES_HUMAN = 35) + ideal_character_age = 60 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/research/cso + allowed_branches = list( + /datum/mil_branch/expeditionary_corps + ) + allowed_ranks = list( + /datum/mil_rank/ec/o3, + /datum/mil_rank/ec/o5 + ) + + + min_skill = list( SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_COMPUTER = SKILL_BASIC, + SKILL_FINANCE = SKILL_TRAINED, + SKILL_BOTANY = SKILL_BASIC, + SKILL_ANATOMY = SKILL_BASIC, + SKILL_DEVICES = SKILL_BASIC, + SKILL_SCIENCE = SKILL_TRAINED) + + max_skill = list( SKILL_ANATOMY = SKILL_MAX, + SKILL_DEVICES = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + skill_points = 30 + + access = list( + access_tox, access_tox_storage, access_emergency_storage, access_teleporter, access_bridge, access_rd, + access_research, access_mining, access_mining_office, access_mining_station, access_xenobiology, access_aquila, + access_RC_announce, access_keycard_auth, access_xenoarch, access_nanotrasen, access_sec_guard, access_heads, + access_expedition_shuttle, access_guppy, access_hangar, access_petrov, access_petrov_helm, access_guppy_helm, + access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_rd, + access_petrov_control, access_petrov_maint, access_pathfinder, access_explorer, access_eva, access_solgov_crew, + access_expedition_shuttle, access_expedition_shuttle_helm, access_maint_tunnels, access_torch_fax, access_radio_comm, + access_radio_sci, access_radio_exp, access_research_storage + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/aidiag, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/rd/get_description_blurb() + return "You are the Chief Science Officer. You are responsible for the research department. You handle the science aspects of the project and liase with the corporate interests of the Expeditionary Corps Organisation. Make sure science gets done, do some yourself, and get your scientists on away missions to find things to benefit the project. Advise the CO on science matters." + +/datum/job/cmo + title = "Chief Medical Officer" + supervisors = "the Commanding Officer and the Executive Officer" + economic_power = 14 + minimal_player_age = 14 + minimum_character_age = list(SPECIES_HUMAN = 35) + ideal_character_age = 48 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/cmo + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/command/cmo/fleet + ) + allowed_ranks = list( + /datum/mil_rank/fleet/o3, + /datum/mil_rank/fleet/o4, + /datum/mil_rank/ec/o3 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_EXPERIENCED, + SKILL_CHEMISTRY = SKILL_BASIC, + SKILL_DEVICES = SKILL_TRAINED) + + max_skill = list( SKILL_MEDICAL = SKILL_MAX, + SKILL_ANATOMY = SKILL_MAX, + SKILL_CHEMISTRY = SKILL_MAX) + skill_points = 26 + + access = list( + access_medical, access_morgue, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_teleporter, access_eva, access_bridge, access_heads, + access_chapel_office, access_crematorium, access_chemistry, access_virology, access_aquila, + access_cmo, access_surgery, access_RC_announce, access_keycard_auth, access_psychiatrist, + access_medical_equip, access_solgov_crew, access_senmed, access_hangar, access_torch_fax, access_radio_comm, + access_radio_med + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/cmo/get_description_blurb() + return "You are the Chief Medical Officer. You manage the medical department. You ensure all members of medical are skilled, tasked and handling their duties. Ensure your doctors are staffing your infirmary and your corpsman/paramedics are ready for response. Act as a second surgeon or backup pharmacist in the absence of either. You are expected to know medical very well, along with general regulations." + +/datum/job/chief_engineer + title = "Chief Engineer" + supervisors = "the Commanding Officer and the Executive Officer" + economic_power = 12 + minimum_character_age = list(SPECIES_HUMAN = 27) + ideal_character_age = 40 + minimal_player_age = 14 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/chief_engineer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/command/chief_engineer/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/o3, + /datum/mil_rank/fleet/o2, + /datum/mil_rank/fleet/o3 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_COMPUTER = SKILL_TRAINED, + SKILL_EVA = SKILL_TRAINED, + SKILL_CONSTRUCTION = SKILL_TRAINED, + SKILL_ELECTRICAL = SKILL_TRAINED, + SKILL_ATMOS = SKILL_TRAINED, + SKILL_ENGINES = SKILL_EXPERIENCED) + + max_skill = list( SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ATMOS = SKILL_MAX, + SKILL_ENGINES = SKILL_MAX) + skill_points = 30 + + access = list( + access_engine, access_engine_equip, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_ai_upload, access_teleporter, access_eva, access_bridge, access_heads, + access_tech_storage, access_robotics, access_atmospherics, access_janitor, access_construction, + access_network, access_network_admin, access_ce, access_RC_announce, access_keycard_auth, access_tcomsat, + access_solgov_crew, access_aquila, access_seneng, access_hangar, access_torch_fax, access_torch_helm, access_radio_comm, + access_radio_eng + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/ntnetmonitor, + /datum/computer_file/program/power_monitor, + /datum/computer_file/program/supermatter_monitor, + /datum/computer_file/program/alarm_monitor, + /datum/computer_file/program/atmos_control, + /datum/computer_file/program/rcon_console, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/shields_monitor, + /datum/computer_file/program/reports) + +/datum/job/chief_engineer/get_description_blurb() + return "You are the Chief Engineer. You manage the Engineering Department. You are responsible for the Senior engineer, who is your right hand and (should be) an experienced, skilled engineer. Delegate to and listen to them. Manage your engineers, ensure vessel power stays on, breaches are patched and problems are fixed. Advise the CO on engineering matters. You are also responsible for the maintenance and control of any vessel synthetics. You are an experienced engineer with a wealth of theoretical knowledge. You should also know vessel regulations to a reasonable degree." + +/datum/job/hos + title = "Chief of Security" + supervisors = "the Commanding Officer and the Executive Officer" + economic_power = 10 + minimal_player_age = 14 + minimum_character_age = list(SPECIES_HUMAN = 25) + ideal_character_age = 35 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/cos + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/command/cos/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/o3, + /datum/mil_rank/fleet/o2, + /datum/mil_rank/fleet/o3 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_TRAINED, + SKILL_FORENSICS = SKILL_BASIC) + + max_skill = list( SKILL_COMBAT = SKILL_MAX, + SKILL_WEAPONS = SKILL_MAX, + SKILL_FORENSICS = SKILL_MAX) + skill_points = 28 + + access = list( + access_security, access_brig, access_armory, access_forensics_lockers, + access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_teleporter, access_eva, access_bridge, access_heads, access_aquila, + access_hos, access_RC_announce, access_keycard_auth, access_sec_doors, + access_solgov_crew, access_gun, access_emergency_armory, access_hangar, access_torch_fax, + access_radio_comm, access_radio_sec + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/digitalwarrant, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/hos/get_description_blurb() + return "You are the Chief of Security. You manage ship security. The Masters at Arms and the Military Police, as well as the Brig Chief and the Forensic Technician. You keep the vessel safe. You handle both internal and external security matters. You are the law. You are subordinate to the CO and the XO. You are expected to know the SCMJ and Sol law and Alert Procedure to a very high degree along with general regulations." + +/datum/job/representative + title = "SolGov Representative" + department = "Support" + department_flag = SPT + total_positions = 1 + spawn_positions = 1 + supervisors = "the Sol Central Government and the SCG Charter" + selection_color = "#2f2f7f" + economic_power = 16 + minimal_player_age = 0 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/representative + allowed_branches = list(/datum/mil_branch/solgov) + allowed_ranks = list(/datum/mil_rank/sol/gov) + min_skill = list( SKILL_BUREAUCRACY = SKILL_EXPERIENCED, + SKILL_FINANCE = SKILL_BASIC) + skill_points = 20 + minimum_character_age = list(SPECIES_HUMAN = 27) + + access = list( + access_representative, access_security, access_medical, + access_bridge, access_cargo, access_solgov_crew, + access_hangar, access_torch_fax, access_radio_comm + ) + + software_on_spawn = list(/datum/computer_file/program/reports) + +/datum/job/representative/get_description_blurb() + return "You are the Sol Gov Representative. You are a civilian assigned as both a diplomatic liaison for first contact and foreign affair situations on board. You are also responsible for monitoring for any serious missteps of justice, sol law or other ethical or legal issues aboard and informing and advising the Commanding Officer of them. You are a mid-level bureaucrat. You liaise between the crew and corporate interests on board. Send faxes back to Sol on mission progress and important events." + +/datum/job/sea + title = "Senior Enlisted Advisor" + department = "Support" + department_flag = SPT + total_positions = 1 + spawn_positions = 1 + supervisors = "the Commanding Officer and the Executive Officer" + selection_color = "#2f2f7f" + minimal_player_age = 14 + economic_power = 11 + minimum_character_age = list(SPECIES_HUMAN = 35) + ideal_character_age = 45 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/sea/fleet + allowed_branches = list( + /datum/mil_branch/fleet + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e8, + /datum/mil_rank/fleet/e9_alt1, + /datum/mil_rank/fleet/e9 + ) + min_skill = list( SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_TRAINED, + SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED, + SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ENGINES = SKILL_MAX, + SKILL_ATMOS = SKILL_MAX) + skill_points = 28 + + + access = list( + access_security, access_medical, access_engine, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_teleporter, access_eva, access_bridge, access_all_personal_lockers, access_janitor, + access_kitchen, access_cargo, access_RC_announce, access_keycard_auth, access_aquila, access_guppy_helm, + access_solgov_crew, access_gun, access_expedition_shuttle, access_guppy, access_senadv, access_hangar, access_torch_fax, + access_radio_comm, access_radio_eng, access_radio_med, access_radio_sec, access_radio_serv, access_radio_sup, access_radio_exp + ) + + software_on_spawn = list(/datum/computer_file/program/camera_monitor, + /datum/computer_file/program/reports) + +/datum/job/sea/get_description_blurb() + return "You are the Senior Enlisted Advisor. You are the highest enlisted person on the ship. You are directly subordinate to the CO. You advise them on enlisted concerns and provide expertise and advice to officers. You are responsible for ensuring discipline and good conduct among enlisted, as well as notifying officers of any issues and \"advising\" them on mistakes they make. You also handle various duties on behalf of the CO and XO. You are an experienced enlisted person, very likely equal only in experience to the CO and XO. You know the regulations better than anyone." + +/datum/job/bridgeofficer + title = "Bridge Officer" + department = "Support" + department_flag = SPT + total_positions = 3 + spawn_positions = 3 + supervisors = "the Commanding Officer and heads of staff" + selection_color = "#2f2f7f" + minimal_player_age = 0 + economic_power = 8 + minimum_character_age = list(SPECIES_HUMAN = 22) + ideal_character_age = 24 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/command/bridgeofficer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/command/bridgeofficer/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/o1, + /datum/mil_rank/fleet/o1 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_PILOT = SKILL_TRAINED) + + max_skill = list( SKILL_PILOT = SKILL_MAX) + skill_points = 20 + + + access = list( + access_security, access_medical, access_engine, access_maint_tunnels, access_emergency_storage, + access_bridge, access_janitor, access_kitchen, access_cargo, access_mailsorting, access_RC_announce, access_keycard_auth, + access_solgov_crew, access_aquila, access_aquila_helm, access_guppy, access_guppy_helm, access_external_airlocks, + access_eva, access_hangar, access_cent_creed, access_explorer, access_expedition_shuttle, access_expedition_shuttle_helm, access_teleporter, + access_torch_fax, access_torch_helm, access_radio_comm, access_radio_eng, access_radio_exp, access_radio_serv, access_radio_sci, access_radio_sup + ) + + software_on_spawn = list(/datum/computer_file/program/comm, + /datum/computer_file/program/suit_sensors, + /datum/computer_file/program/power_monitor, + /datum/computer_file/program/supermatter_monitor, + /datum/computer_file/program/alarm_monitor, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/shields_monitor, + /datum/computer_file/program/reports, + /datum/computer_file/program/deck_management) + +/datum/job/bridgeofficer/get_description_blurb() + return "You are a Bridge Officer. You are a very junior officer. You do not give orders of your own. You are subordinate to all of command. You handle matters on the bridge and report directly to the CO and XO. You take the Torch's helm and pilot the Aquila if needed. You monitor bridge computer programs and communications and report relevant information to command." diff --git a/maps/torch_fd/job/corporate_jobs.dm b/maps/torch_fd/job/corporate_jobs.dm new file mode 100644 index 0000000000000..3f17926d9ea09 --- /dev/null +++ b/maps/torch_fd/job/corporate_jobs.dm @@ -0,0 +1,34 @@ +/datum/job/liaison + title = "Workplace Liaison" + department = "Support" + department_flag = SPT + total_positions = 1 + spawn_positions = 1 + supervisors = "Corporate Regulations, the Union Charter, and the Expeditionary Corps Organisation" + selection_color = "#2f2f7f" + economic_power = 18 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 25) + alt_titles = list( + "Corporate Liaison", + "Union Representative", + "Corporate Representative", + "Corporate Executive" + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/workplace_liaison + allowed_branches = list(/datum/mil_branch/civilian) + allowed_ranks = list(/datum/mil_rank/civ/contractor) + min_skill = list( SKILL_BUREAUCRACY = SKILL_EXPERIENCED, + SKILL_FINANCE = SKILL_BASIC) + skill_points = 20 + + access = list( + access_liaison, access_bridge, access_solgov_crew, + access_nanotrasen, access_commissary, access_torch_fax, + access_radio_comm, access_radio_serv + ) + + software_on_spawn = list(/datum/computer_file/program/reports) + +/datum/job/liaison/get_description_blurb() + return "You are the Workplace Liaison. You are a civilian employee of EXO, the Expeditionary Corps Organisation, the government-owned corporate conglomerate that partially funds the Torch. You are on board the vessel to promote corporate interests and protect the rights of the contractors on board as their union leader. You are not internal affairs. You advise command on corporate and union matters and contractors on their rights and obligations. Maximise profit. Be the shady corporate shill you always wanted to be." diff --git a/maps/torch_fd/job/engineering_jobs.dm b/maps/torch_fd/job/engineering_jobs.dm new file mode 100644 index 0000000000000..ff139ad8761cd --- /dev/null +++ b/maps/torch_fd/job/engineering_jobs.dm @@ -0,0 +1,214 @@ +/datum/job/senior_engineer + title = "Senior Engineer" + department = "Engineering" + department_flag = ENG + total_positions = 1 + spawn_positions = 1 + supervisors = "the Chief Engineer" + selection_color = "#5b4d20" + economic_power = 7 + minimal_player_age = 3 + minimum_character_age = list(SPECIES_HUMAN = 27) + ideal_character_age = 40 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/engineering/senior_engineer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/engineering/senior_engineer/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/e7, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/fleet/e7, + /datum/mil_rank/fleet/e8, + ) + min_skill = list( SKILL_COMPUTER = SKILL_TRAINED, + SKILL_EVA = SKILL_TRAINED, + SKILL_CONSTRUCTION = SKILL_TRAINED, + SKILL_ELECTRICAL = SKILL_TRAINED, + SKILL_ATMOS = SKILL_TRAINED, + SKILL_ENGINES = SKILL_TRAINED) + + max_skill = list( SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ATMOS = SKILL_MAX, + SKILL_ENGINES = SKILL_MAX) + skill_points = 20 + + access = list( + access_engine, access_engine_equip, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_teleporter, access_eva, access_tech_storage, access_atmospherics, access_janitor, access_construction, + access_tcomsat, access_solgov_crew, access_seneng, access_hangar, access_network, access_network_admin, access_radio_eng + ) + + software_on_spawn = list(/datum/computer_file/program/power_monitor, + /datum/computer_file/program/supermatter_monitor, + /datum/computer_file/program/alarm_monitor, + /datum/computer_file/program/atmos_control, + /datum/computer_file/program/rcon_console, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/shields_monitor) + +/datum/job/senior_engineer/get_description_blurb() + return "You are the Senior Engineer. You are a veteran SNCO. You are subordinate to the Chief Engineer though you may have many years more experience than them and your subordinates are the rest of engineering. You should be an expert in practically every engineering area and familiar and possess leadership skills. Coordinate the team and ensure the smooth running of the department along with the Chief Engineer." + +/datum/job/engineer + title = "Engineer" + total_positions = 6 + spawn_positions = 6 + supervisors = "the Chief Engineer" + economic_power = 5 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 19) + ideal_character_age = 30 + alt_titles = list( + "Engine Technician", + "Damage Control Technician", + "Electrician", + "Atmospheric Technician", + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/engineering/engineer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/engineering/engineer/fleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/engineering/contractor + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5, + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_COMPUTER = SKILL_BASIC, + SKILL_EVA = SKILL_BASIC, + SKILL_CONSTRUCTION = SKILL_TRAINED, + SKILL_ELECTRICAL = SKILL_BASIC, + SKILL_ATMOS = SKILL_BASIC, + SKILL_ENGINES = SKILL_BASIC) + + max_skill = list( SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ATMOS = SKILL_MAX, + SKILL_ENGINES = SKILL_MAX) + skill_points = 20 + + access = list( + access_engine, access_engine_equip, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_teleporter, access_eva, access_tech_storage, access_atmospherics, access_janitor, access_construction, + access_solgov_crew, access_hangar, access_network, access_radio_eng + ) + + software_on_spawn = list(/datum/computer_file/program/power_monitor, + /datum/computer_file/program/supermatter_monitor, + /datum/computer_file/program/alarm_monitor, + /datum/computer_file/program/atmos_control, + /datum/computer_file/program/rcon_console, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/shields_monitor) + +/datum/job/engineer/get_description_blurb() + return "You are an Engineer. You operate under one of many titles and may be highly specialised in a specific area of engineering. You probably have at least a general familiarity with most other areas though this is not expected. You are subordinate to the Senior Engineer and the Chief Engineer and are expected to follow them." + +/datum/job/engineer_trainee + title = "Engineer Trainee" + department = "Engineering" + department_flag = ENG + total_positions = 2 + spawn_positions = 2 + supervisors = "the Chief Engineer and Engineering Personnel" + selection_color = "#5b4d20" + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 20 + + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/engineering/engineer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/engineering/engineer/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e2 + ) + + skill_points = 4 + no_skill_buffs = TRUE + + min_skill = list( SKILL_COMPUTER = SKILL_BASIC, + SKILL_HAULING = SKILL_TRAINED, + SKILL_EVA = SKILL_TRAINED, + SKILL_CONSTRUCTION = SKILL_TRAINED, + SKILL_ELECTRICAL = SKILL_TRAINED, + SKILL_ATMOS = SKILL_TRAINED, + SKILL_ENGINES = SKILL_TRAINED) + + max_skill = list( SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ATMOS = SKILL_MAX, + SKILL_ENGINES = SKILL_MAX) + + access = list( + access_engine_equip, access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_eva, access_tech_storage, access_janitor, access_construction, + access_solgov_crew, access_hangar, access_radio_eng + ) + + software_on_spawn = list(/datum/computer_file/program/power_monitor, + /datum/computer_file/program/supermatter_monitor, + /datum/computer_file/program/alarm_monitor, + /datum/computer_file/program/atmos_control, + /datum/computer_file/program/rcon_console, + /datum/computer_file/program/camera_monitor, + /datum/computer_file/program/shields_monitor) + +/datum/job/engineer_trainee/get_description_blurb() + return "You are an Engineer Trainee. You are learning how to operate the various onboard engineering systems from senior engineering staff. You are subordinate to all of the other engineers aboard. The role is only for players new to the engineering system and department." + +/datum/job/roboticist + title = "Roboticist" + department = "Engineering" + department_flag = ENG|ROB + + total_positions = 2 + spawn_positions = 2 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 25) + supervisors = "the Chief Engineer." + selection_color = "#5b4d20" + economic_power = 6 + alt_titles = list( + "Mechsuit Technician") + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/engineering/roboticist + allowed_branches = list( + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/engineering/roboticistec, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/engineering/roboticistfleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/engineering/roboticist + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e5, + /datum/mil_rank/ec/e5, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_COMPUTER = SKILL_TRAINED, + SKILL_DEVICES = SKILL_EXPERIENCED, + SKILL_EVA = SKILL_TRAINED, + SKILL_ANATOMY = SKILL_TRAINED, + SKILL_CONSTRUCTION = SKILL_BASIC, + SKILL_ELECTRICAL = SKILL_BASIC, + SKILL_MECH = HAS_PERK) + + max_skill = list( SKILL_CONSTRUCTION = SKILL_MAX, + SKILL_ELECTRICAL = SKILL_MAX, + SKILL_ATMOS = SKILL_EXPERIENCED, + SKILL_ENGINES = SKILL_EXPERIENCED, + SKILL_DEVICES = SKILL_MAX, + SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_EXPERIENCED) + skill_points = 20 + + access = list( + access_robotics, access_engine, access_solgov_crew, access_network, access_radio_eng + ) + +/datum/job/roboticist/get_description_blurb() + return "You are the Roboticist. You are responsible for repairing, upgrading and handling ship synthetics (like robots). You are also responsible for the production of exosuits(mechs) and bots for various departments. You answer to the Chief Engineer." diff --git a/maps/torch_fd/job/exploration_jobs.dm b/maps/torch_fd/job/exploration_jobs.dm new file mode 100644 index 0000000000000..561b8b592c703 --- /dev/null +++ b/maps/torch_fd/job/exploration_jobs.dm @@ -0,0 +1,217 @@ +/datum/job/pathfinder + title = "Pathfinder" + department = "Exploration" + department_flag = EXP + total_positions = 1 + spawn_positions = 1 + supervisors = "the Chief Science Officer" + selection_color = "#68099e" + minimal_player_age = 1 + economic_power = 10 + minimum_character_age = list(SPECIES_HUMAN = 25) + ideal_character_age = 35 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/pathfinder + allowed_branches = list(/datum/mil_branch/expeditionary_corps) + allowed_ranks = list( + /datum/mil_rank/ec/o1, + /datum/mil_rank/ec/o3 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_EVA = SKILL_TRAINED, + SKILL_SCIENCE = SKILL_TRAINED, + SKILL_PILOT = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX, + SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED) + skill_points = 22 + + access = list( + access_pathfinder, access_explorer, access_eva, access_maint_tunnels, access_bridge, access_emergency_storage, + access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_expedition_shuttle_helm, + access_guppy, access_hangar, access_petrov, access_petrov_helm, access_petrov_analysis, access_petrov_phoron, + access_petrov_toxins, access_petrov_chemistry, access_petrov_maint, access_tox, access_tox_storage, access_research, + access_xenobiology, access_xenoarch, access_torch_fax, access_radio_comm, access_radio_exp, access_radio_sci, access_research_storage + ) + + software_on_spawn = list(/datum/computer_file/program/deck_management, + /datum/computer_file/program/reports) + +/datum/job/pathfinder/get_description_blurb() + return "You are the Pathfinder. Your duty is to organize and lead the expeditions to away sites, carrying out the EC's Primary Mission. You command Explorers. You make sure that expedition has the supplies and personnel it needs. You can pilot Charon if nobody else provides a pilot. Once on the away mission, your duty is to ensure that anything of scientific interest is brought back to the ship and passed to the relevant research lab." + +/datum/job/nt_pilot + title = "Shuttle Pilot" + supervisors = "the Pathfinder" + department = "Exploration" + department_flag = EXP + total_positions = 1 + spawn_positions = 1 + selection_color = "#68099e" + economic_power = 8 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 24) + ideal_character_age = 25 + outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/pilot + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/exploration/pilot, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/exploration/pilot/fleet + ) + allowed_ranks = list( + /datum/mil_rank/civ/contractor = /singleton/hierarchy/outfit/job/torch/passenger/research/nt_pilot, + /datum/mil_rank/ec/e7, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/fleet/e7 + ) + + access = list( + access_mining_office, access_petrov, access_petrov_helm, access_petrov_maint, access_mining_station, + access_expedition_shuttle, access_expedition_shuttle_helm, access_guppy, access_hangar, access_guppy_helm, + access_mining, access_pilot, access_solgov_crew, access_eva, access_explorer, access_research, + access_radio_exp, access_radio_sci, access_radio_sup, access_maint_tunnels, access_emergency_storage + ) + min_skill = list( SKILL_EVA = SKILL_BASIC, + SKILL_PILOT = SKILL_TRAINED) + + max_skill = list( SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + +/datum/job/explorer + title = "Explorer" + department = "Exploration" + department_flag = EXP + total_positions = 5 + spawn_positions = 5 + supervisors = "the Pathfinder" + selection_color = "#68099e" + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 20 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/explorer + allowed_branches = list(/datum/mil_branch/expeditionary_corps) + + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5 + ) + min_skill = list( SKILL_EVA = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX, + SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED) + + access = list( + access_explorer, access_maint_tunnels, access_eva, access_emergency_storage, + access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_petrov, access_petrov_maint, access_research, access_radio_exp + ) + + software_on_spawn = list(/datum/computer_file/program/deck_management) + +/datum/job/explorer/get_description_blurb() + return "You are an Explorer. Your duty is to go on expeditions to away sites. The Pathfinder is your team leader. You are to look for anything of economic or scientific interest to the SCG - mineral deposits, alien flora/fauna, artifacts. You will also likely encounter hazardous environments, aggressive wildlife or malfunctioning defense systems, so tread carefully." + +/datum/job/expmed + title = "Exploration Medic" + department = "Exploration" + department_flag = EXP + total_positions = 1 + spawn_positions = 1 + supervisors = "the Commanding Officer, Executive Officer, and Pathfinder" + selection_color = "#68099e" + minimum_character_age = list(SPECIES_HUMAN = 19) + ideal_character_age = 25 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed/fleet, + /datum/mil_branch/scga = /singleton/hierarchy/outfit/job/torch/crew/exploration/expmed/army + ) + + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/scga/e4_alt, + /datum/mil_rank/scga/e4, + /datum/mil_rank/scga/e5, + /datum/mil_rank/scga/e6 + ) + min_skill = list( SKILL_EVA = SKILL_BASIC, + SKILL_MEDICAL = SKILL_TRAINED + ) + max_skill = list( SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_TRAINED, + SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX, + SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED) + skill_points = 22 + + access = list( + access_explorer, access_maint_tunnels, access_eva, access_emergency_storage, + access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_petrov, access_petrov_maint, access_research, access_radio_exp, access_radio_med, + access_medical, access_expedition_shuttle_helm + ) + + software_on_spawn = list(/datum/computer_file/program/suit_sensors, + /datum/computer_file/program/deck_management) + +/datum/job/expmed/get_description_blurb() + return "You are an Exploration Medic. Your duty is to go on expeditions to away sites. The Pathfinder is your team leader. You are to keep your team members alive. Keep a note that you are not a doctor, don't try to preform surgeries on your shuttle as you're not qualified for that." + +/datum/job/expeng + title = "Exploration Engineer" + department = "Exploration" + department_flag = EXP + total_positions = 1 + spawn_positions = 1 + supervisors = "the Commanding Officer, Executive Officer, and Pathfinder" + selection_color = "#68099e" + minimum_character_age = list(SPECIES_HUMAN = 19) + ideal_character_age = 25 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng/fleet, + /datum/mil_branch/scga = /singleton/hierarchy/outfit/job/torch/crew/exploration/expeng/army + ) + + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/scga/e4_alt, + /datum/mil_rank/scga/e4, + /datum/mil_rank/scga/e5, + /datum/mil_rank/scga/e6 + ) + min_skill = list( SKILL_EVA = SKILL_BASIC, + SKILL_CONSTRUCTION = SKILL_BASIC, + SKILL_ELECTRICAL = SKILL_BASIC, + SKILL_MEDICAL = SKILL_BASIC + ) + max_skill = list( SKILL_ANATOMY = SKILL_TRAINED, + SKILL_PILOT = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX, + SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED) + skill_points = 22 + + access = list( + access_explorer, access_maint_tunnels, access_eva, access_emergency_storage, + access_guppy_helm, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_petrov, access_petrov_maint, access_research, access_radio_exp, access_radio_eng, access_expedition_shuttle_helm + ) + + software_on_spawn = list(/datum/computer_file/program/deck_management) + +/datum/job/expeng/get_description_blurb() + return "You are an Exploration Engineer. Your duty is to go on expeditions to away sites. The Pathfinder is your team leader. You are to keep shuttle operational and make holes wherever your boss says." diff --git a/maps/torch_fd/job/medical_jobs.dm b/maps/torch_fd/job/medical_jobs.dm new file mode 100644 index 0000000000000..be0d938972952 --- /dev/null +++ b/maps/torch_fd/job/medical_jobs.dm @@ -0,0 +1,263 @@ +/datum/job/senior_doctor + title = "Physician" + department = "Medical" + department_flag = MED + minimal_player_age = 2 + minimum_character_age = list(SPECIES_HUMAN = 29) + ideal_character_age = 45 + total_positions = 2 + spawn_positions = 2 + supervisors = "the Chief Medical Officer" + selection_color = "#013d3b" + economic_power = 10 + alt_titles = list( + "Surgeon") + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/senior + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/medical/senior/fleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/medical/contractor/senior + ) + allowed_ranks = list( + /datum/mil_rank/ec/o1, + /datum/mil_rank/fleet/o1, + /datum/mil_rank/fleet/o2, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_EXPERIENCED, + SKILL_CHEMISTRY = SKILL_BASIC, + SKILL_DEVICES = SKILL_TRAINED) + + max_skill = list( SKILL_MEDICAL = SKILL_MAX, + SKILL_ANATOMY = SKILL_MAX, + SKILL_CHEMISTRY = SKILL_MAX) + skill_points = 20 + + access = list( + access_medical, access_morgue, access_virology, access_maint_tunnels, access_emergency_storage, + access_crematorium, access_chemistry, access_surgery, + access_medical_equip, access_solgov_crew, access_senmed, access_radio_med + ) + + software_on_spawn = list(/datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor) + +/datum/job/junior_doctor + title = "Medical Resident" + department = "Medical" + department_flag = MED + minimal_player_age = 2 + minimum_character_age = list(SPECIES_HUMAN = 24) + ideal_character_age = 45 + total_positions = 1 + spawn_positions = 1 + supervisors = "physicians and the Chief Medical Officer" + selection_color = "#013d3b" + economic_power = 6 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/senior + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/medical/senior/fleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/medical/contractor/senior + ) + allowed_ranks = list( + /datum/mil_rank/ec/o1, + /datum/mil_rank/fleet/o1, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_EXPERIENCED, + SKILL_CHEMISTRY = SKILL_BASIC, + SKILL_DEVICES = SKILL_TRAINED) + + max_skill = list( SKILL_MEDICAL = SKILL_MAX, + SKILL_ANATOMY = SKILL_MAX, + SKILL_CHEMISTRY = SKILL_MAX) + skill_points = 16 + + access = list( + access_medical, access_morgue, access_virology, access_maint_tunnels, access_emergency_storage, + access_crematorium, access_chemistry, access_surgery, + access_medical_equip, access_solgov_crew, access_senmed, access_radio_med + ) + + software_on_spawn = list(/datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor) + +/datum/job/doctor + title = "Medical Technician" + total_positions = 3 + spawn_positions = 3 + supervisors = "physicians and the Chief Medical Officer" + economic_power = 7 + minimum_character_age = list(SPECIES_HUMAN = 19) + ideal_character_age = 40 + minimal_player_age = 0 + alt_titles = list( + "Paramedic", + "Corpsman") + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/doctor + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/medical/doctor/fleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/medical/contractor + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_EVA = SKILL_BASIC, + SKILL_MEDICAL = SKILL_BASIC, + SKILL_ANATOMY = SKILL_BASIC) + + max_skill = list( SKILL_MEDICAL = SKILL_MAX, + SKILL_CHEMISTRY = SKILL_MAX) + + access = list( + access_medical, access_morgue, access_maint_tunnels, + access_external_airlocks, access_emergency_storage, + access_eva, access_surgery, access_medical_equip, + access_solgov_crew, access_hangar, access_radio_med + ) + + software_on_spawn = list(/datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor) + skill_points = 22 + +/datum/job/medical_trainee + title = "Trainee Medical Technician" + department = "Medical" + department_flag = MED + total_positions = 1 + spawn_positions = 1 + supervisors = "medical personnel and the Chief Medical Officer" + selection_color = "#013d3b" + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 20 + alt_titles = list( + "Corpsman Trainee") + + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/doctor + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/medical/doctor/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e2 + ) + + skill_points = 4 + no_skill_buffs = TRUE + + min_skill = list( SKILL_EVA = SKILL_TRAINED, + SKILL_HAULING = SKILL_TRAINED, + SKILL_MEDICAL = SKILL_EXPERIENCED, + SKILL_ANATOMY = SKILL_BASIC) + + max_skill = list( SKILL_MEDICAL = SKILL_MAX, + SKILL_ANATOMY = SKILL_MAX, + SKILL_CHEMISTRY = SKILL_MAX) + + access = list( + access_medical, access_morgue, access_maint_tunnels, + access_external_airlocks, access_emergency_storage, + access_surgery, access_medical_equip, access_solgov_crew, + access_radio_med + ) + + software_on_spawn = list(/datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor) + +/datum/job/medical_trainee/get_description_blurb() + return "You are a Trainee Medical Technician. You are learning how to treat and recover wounded crew from the more experienced medical personnel aboard. You are subordinate to the rest of the medical team. The role is only for players new to the medical system and department." + +/datum/job/chemist + title = "Pharmacist" + department = "Medical" + department_flag = MED + total_positions = 1 + spawn_positions = 1 + supervisors = "medical personnel, and the Chief Medical Officer" + selection_color = "#013d3b" + economic_power = 4 + minimum_character_age = list(SPECIES_HUMAN = 25) + ideal_character_age = 30 + minimal_player_age = 7 + alt_titles = list( + "Chemist" + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/contractor/chemist + allowed_branches = list(/datum/mil_branch/civilian) + allowed_ranks = list(/datum/mil_rank/civ/contractor) + min_skill = list( SKILL_MEDICAL = SKILL_BASIC, + SKILL_CHEMISTRY = SKILL_TRAINED) + + max_skill = list( SKILL_MEDICAL = SKILL_BASIC, + SKILL_ANATOMY = SKILL_BASIC, + SKILL_CHEMISTRY = SKILL_MAX) + skill_points = 16 + + access = list( + access_medical, access_maint_tunnels, access_emergency_storage, + access_medical_equip, access_solgov_crew, access_chemistry, + access_virology, access_morgue, access_crematorium, access_radio_med + ) + +/datum/job/chemist/get_description_blurb() + return "You are the Pharmacist. You make medicine and other useful substances. You are not a doctor or medic; you should not be treating patients, but rather providing the medicine to do so. You are subordinate to Physicians and Medical Technicians." + +/datum/job/psychiatrist + title = "Counselor" + total_positions = 1 + spawn_positions = 1 + ideal_character_age = 40 + economic_power = 5 + minimum_character_age = list(SPECIES_HUMAN = 24) + minimal_player_age = 0 + supervisors = "the Chief Medical Officer" + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/medical/counselor + alt_titles = list( + "Psychiatrist", + "Psychologist", + "Mentalist" + ) + + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/medical/counselor/ec, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/medical/counselor/fleet) + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/fleet/o1, + /datum/mil_rank/ec/o1) + min_skill = list( + SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_MEDICAL = SKILL_BASIC + ) + max_skill = list( + SKILL_MEDICAL = SKILL_TRAINED, + SKILL_ANATOMY = SKILL_TRAINED + ) + access = list( + access_medical, access_psychiatrist, + access_solgov_crew, access_medical_equip, access_radio_med + ) + + software_on_spawn = list( + /datum/computer_file/program/suit_sensors, + /datum/computer_file/program/camera_monitor + ) + give_psionic_implant_on_join = FALSE + + +/datum/job/psychiatrist/get_description_blurb() + return "You are the Counselor. Your main responsibility is the mental health and wellbeing of the crew. You are subordinate to the Chief Medical Officer." diff --git a/maps/torch_fd/job/misc_jobs.dm b/maps/torch_fd/job/misc_jobs.dm new file mode 100644 index 0000000000000..f2c323110fff8 --- /dev/null +++ b/maps/torch_fd/job/misc_jobs.dm @@ -0,0 +1,84 @@ +/******** +Synthetic +********/ + +/datum/job/cyborg + total_positions = 3 + spawn_positions = 3 + supervisors = "your laws" + minimal_player_age = 3 + allowed_ranks = list( + /datum/mil_rank/civ/synthetic + ) + +/datum/job/ai + minimal_player_age = 7 + total_positions = 1 + spawn_positions = 1 + allowed_ranks = list( + /datum/mil_rank/civ/synthetic + ) + +/******* +Civilian +*******/ + +/datum/job/assistant + title = "Passenger" + total_positions = -1 + spawn_positions = -1 + supervisors = "the Executive Officer" + economic_power = 6 + announced = FALSE + alt_titles = list( + "Journalist" = /singleton/hierarchy/outfit/job/torch/passenger/passenger/journalist, + "Historian", + "Botanist", + "Investor" = /singleton/hierarchy/outfit/job/torch/passenger/passenger/investor, + "Naturalist", + "Ecologist", + "Entertainer", + "Independent Observer", + "Sociologist", + "Trainer", + "Off-Duty" + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/passenger + allowed_branches = list(/datum/mil_branch/civilian) + allowed_ranks = list( + /datum/mil_rank/civ/civ, + /datum/mil_rank/civ/contractor + ) + min_goals = 2 + max_goals = 7 + +/datum/job/merchant + title = "Merchant" + department = "Civilian" + department_flag = CIV + total_positions = 2 + spawn_positions = 2 + availablity_chance = 30 + supervisors = "the invisible hand of the market" + ideal_character_age = 30 + minimal_player_age = 0 + create_record = 0 + outfit_type = /singleton/hierarchy/outfit/job/torch/merchant + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/alien + ) + allowed_ranks = list( + /datum/mil_rank/civ/civ, + /datum/mil_rank/alien + ) + latejoin_at_spawnpoints = 1 + access = list(access_merchant) + announced = FALSE + min_skill = list( SKILL_FINANCE = SKILL_TRAINED, + SKILL_PILOT = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX) + skill_points = 24 + required_language = null + give_psionic_implant_on_join = FALSE diff --git a/maps/torch_fd/job/research_jobs.dm b/maps/torch_fd/job/research_jobs.dm new file mode 100644 index 0000000000000..c5a8298d43b15 --- /dev/null +++ b/maps/torch_fd/job/research_jobs.dm @@ -0,0 +1,176 @@ +/datum/job/senior_scientist + title = "Senior Researcher" + department = "Science" + department_flag = SCI + + total_positions = 1 + spawn_positions = 1 + supervisors = "the Chief Science Officer" + selection_color = "#633d63" + economic_power = 12 + minimal_player_age = 3 + minimum_character_age = list(SPECIES_HUMAN = 30) + ideal_character_age = 50 + alt_titles = list( + "Research Supervisor") + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/research/senior_scientist + allowed_branches = list( + /datum/mil_branch/expeditionary_corps + ) + allowed_ranks = list( + /datum/mil_rank/ec/o1 + ) + + access = list( + access_tox, access_tox_storage, access_maint_tunnels, access_research, access_mining_office, + access_mining_station, access_xenobiology, access_xenoarch, access_nanotrasen, access_solgov_crew, + access_expedition_shuttle, access_guppy, access_hangar, access_petrov, access_petrov_helm, access_guppy_helm, + access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_control, + access_petrov_maint, access_torch_fax, access_radio_sci, access_radio_exp, access_research_storage + ) + + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_COMPUTER = SKILL_BASIC, + SKILL_FINANCE = SKILL_BASIC, + SKILL_BOTANY = SKILL_BASIC, + SKILL_ANATOMY = SKILL_BASIC, + SKILL_DEVICES = SKILL_TRAINED, + SKILL_SCIENCE = SKILL_TRAINED) + + max_skill = list( SKILL_ANATOMY = SKILL_MAX, + SKILL_DEVICES = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + skill_points = 20 + possible_goals = list(/datum/goal/achievement/notslimefodder) + +/datum/job/scientist + title = "Scientist" + total_positions = 6 + spawn_positions = 6 + supervisors = "the Chief Science Officer" + economic_power = 10 + minimum_character_age = list(SPECIES_HUMAN = 25) + ideal_character_age = 45 + minimal_player_age = 0 + alt_titles = list( + "Xenoarcheologist", + "Anomalist", + "Researcher", + "Xenobiologist", + "Xenobotanist" + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_COMPUTER = SKILL_BASIC, + SKILL_DEVICES = SKILL_BASIC, + SKILL_SCIENCE = SKILL_TRAINED) + + max_skill = list( SKILL_ANATOMY = SKILL_MAX, + SKILL_DEVICES = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/research/scientist + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/solgov, + /datum/mil_branch/expeditionary_corps + ) + allowed_ranks = list( + /datum/mil_rank/ec/o1, + /datum/mil_rank/civ/contractor = /singleton/hierarchy/outfit/job/torch/passenger/research/scientist, + /datum/mil_rank/sol/scientist = /singleton/hierarchy/outfit/job/torch/passenger/research/scientist/solgov + ) + + access = list( + access_tox, access_tox_storage, access_research, access_petrov, access_petrov_helm, + access_mining_office, access_mining_station, access_xenobiology, access_guppy_helm, + access_xenoarch, access_nanotrasen, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_control, access_torch_fax, + access_petrov_maint, access_radio_sci, access_radio_exp, access_research_storage + ) + skill_points = 20 + possible_goals = list(/datum/goal/achievement/notslimefodder) + +/datum/job/scientist_assistant + title = "Research Assistant" + department = "Science" + department_flag = SCI + total_positions = 4 + spawn_positions = 4 + supervisors = "the Chief Science Officer and science personnel" + selection_color = "#633d63" + economic_power = 3 + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 30 + alt_titles = list( + "Testing Assistant", + "Intern", + "Clerk", + "Field Assistant") + + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/research + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/solgov, + /datum/mil_branch/expeditionary_corps + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/civ/contractor = /singleton/hierarchy/outfit/job/torch/passenger/research/assist, + /datum/mil_rank/sol/scientist = /singleton/hierarchy/outfit/job/torch/passenger/research/assist/solgov + ) + max_skill = list( SKILL_ANATOMY = SKILL_MAX, + SKILL_DEVICES = SKILL_MAX, + SKILL_SCIENCE = SKILL_MAX) + + access = list( + access_tox, access_tox_storage, access_research, access_petrov, + access_mining_office, access_mining_station, access_xenobiology, access_guppy_helm, + access_xenoarch, access_nanotrasen, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_control, + access_radio_sci, access_radio_exp, access_research_storage + ) + possible_goals = list(/datum/goal/achievement/notslimefodder) + +/datum/job/research_guard + title = "Research Guard" + department = "Science" + department_flag = SCI + total_positions = 2 + spawn_positions = 2 + supervisors = "the Chief Science Officer" + selection_color = "#473d63" + economic_power = 5 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 26) + outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/research_guard + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/passenger/research_guard/ec + ) + + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5 + ) + min_skill = list(SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_TRAINED + ) + + max_skill = list( SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED) + skill_points = 20 + + access = list( + access_research_security, access_tox, access_tox_storage, access_maint_tunnels, access_research, access_xenobiology, access_xenoarch, access_nanotrasen, access_solgov_crew, + access_expedition_shuttle, access_guppy, access_hangar, access_petrov, access_petrov_helm, access_guppy_helm, + access_petrov_analysis, access_petrov_phoron, access_petrov_toxins, access_petrov_chemistry, access_petrov_maint, access_radio_sci + ) + + software_on_spawn = list(/datum/computer_file/program/camera_monitor) + +/datum/job/research_guard/get_description_blurb() + return "You are a security guard from the Organization of the Expeditionary Corps, which must protect the scientific department and its employees from various threats. Eat donuts, call scientists \"eggheads\"." diff --git a/maps/torch_fd/job/security_jobs.dm b/maps/torch_fd/job/security_jobs.dm new file mode 100644 index 0000000000000..4fdd6fe0bf3f1 --- /dev/null +++ b/maps/torch_fd/job/security_jobs.dm @@ -0,0 +1,132 @@ +/datum/job/warden + title = "Brig Chief" + total_positions = 1 + spawn_positions = 1 + supervisors = "the Chief of Security" + economic_power = 5 + minimal_player_age = 7 + ideal_character_age = 35 + minimum_character_age = list(SPECIES_HUMAN = 27) + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/security/brig_chief + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/security/brig_chief/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/e7, + /datum/mil_rank/fleet/e6, + /datum/mil_rank/fleet/e7, + /datum/mil_rank/fleet/e8, + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_TRAINED, + SKILL_FORENSICS = SKILL_BASIC) + + max_skill = list( SKILL_COMBAT = SKILL_MAX, + SKILL_WEAPONS = SKILL_MAX, + SKILL_FORENSICS = SKILL_MAX) + skill_points = 20 + + access = list( + access_security, access_brig, access_armory, access_forensics_lockers, + access_maint_tunnels, access_external_airlocks, access_emergency_storage, + access_eva, access_sec_doors, access_solgov_crew, access_gun, access_torch_fax, + access_radio_sec + ) + + software_on_spawn = list(/datum/computer_file/program/digitalwarrant, + /datum/computer_file/program/camera_monitor) + +/datum/job/detective + title = "Forensic Technician" + total_positions = 1 + spawn_positions = 1 + supervisors = "the Chief of Security" + economic_power = 5 + minimal_player_age = 7 + minimum_character_age = list(SPECIES_HUMAN = 25) + ideal_character_age = 35 + skill_points = 14 + alt_titles = list( + "Criminal Investigator" + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/security/forensic_tech + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/security/forensic_tech/contractor, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/security/forensic_tech/fleet, + /datum/mil_branch/solgov = /singleton/hierarchy/outfit/job/torch/crew/security/forensic_tech/agent + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e3, + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5, + /datum/mil_rank/civ/contractor, + /datum/mil_rank/sol/agent + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_COMPUTER = SKILL_BASIC, + SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_BASIC, + SKILL_FORENSICS = SKILL_TRAINED) + + max_skill = list( SKILL_COMBAT = SKILL_EXPERIENCED, + SKILL_WEAPONS = SKILL_EXPERIENCED, + SKILL_FORENSICS = SKILL_MAX) + skill_points = 20 + + access = list( + access_security, access_brig, access_forensics_lockers, + access_maint_tunnels, access_emergency_storage, + access_sec_doors, access_solgov_crew, access_morgue, + access_torch_fax, access_network, access_radio_sec + ) + + software_on_spawn = list(/datum/computer_file/program/digitalwarrant, + /datum/computer_file/program/camera_monitor) + +/datum/job/officer + title = "Master at Arms" + total_positions = 4 + spawn_positions = 4 + supervisors = "the Chief of Security" + economic_power = 4 + minimal_player_age = 7 + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 25 + alt_titles = list() // This is a hack. Overriding a list var with null does not actually override it due to the particulars of dm list init. Do not "clean up" without testing. + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/security/maa + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/security/maa/fleet, + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_EVA = SKILL_BASIC, + SKILL_COMBAT = SKILL_BASIC, + SKILL_WEAPONS = SKILL_TRAINED, + SKILL_FORENSICS = SKILL_BASIC) + + max_skill = list( SKILL_COMBAT = SKILL_MAX, + SKILL_WEAPONS = SKILL_MAX, + SKILL_FORENSICS = SKILL_EXPERIENCED) + + access = list( + access_security, access_brig, access_maint_tunnels, + access_external_airlocks, access_emergency_storage, + access_eva, access_sec_doors, access_solgov_crew, + access_radio_sec + ) + + software_on_spawn = list(/datum/computer_file/program/digitalwarrant, + /datum/computer_file/program/camera_monitor) diff --git a/maps/torch_fd/job/service_jobs.dm b/maps/torch_fd/job/service_jobs.dm new file mode 100644 index 0000000000000..4d2ff3fa2fa9e --- /dev/null +++ b/maps/torch_fd/job/service_jobs.dm @@ -0,0 +1,176 @@ +/datum/job/chief_steward + title = "Chief Steward" + department = "Service" + department_flag = SRV + total_positions = 1 + spawn_positions = 1 + minimum_character_age = list(SPECIES_HUMAN = 28) + ideal_character_age = 35 + economic_power = 6 + minimal_player_age = 7 + supervisors = "the Executive Officer" + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/service/chief_steward + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/service/cook, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/service/chief_steward/fleet + ) + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/ec/e7, + /datum/mil_rank/fleet/e7, + /datum/mil_rank/fleet/e6 + ) + + min_skill = list( + SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_COOKING = SKILL_TRAINED, + SKILL_BOTANY = SKILL_BASIC, + SKILL_CHEMISTRY = SKILL_BASIC + ) + access = list( + access_bridge, + access_torch_fax, + access_chief_steward, + access_solgov_crew, + access_radio_comm, + access_radio_serv, + access_emergency_storage, + access_janitor, + access_commissary, + access_hydroponics, + access_kitchen, + access_o_mess + ) + +/datum/job/chaplain + title = "Chaplain" + department = "Service" + department_flag = SRV + total_positions = 1 + spawn_positions = 1 + minimum_character_age = list(SPECIES_HUMAN = 24) + ideal_character_age = 40 + economic_power = 6 + minimal_player_age = 0 + supervisors = "the Executive Officer" + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/service/chaplain + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/service/chaplain/ec, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/service/chaplain/fleet) + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/fleet/o1, + /datum/mil_rank/fleet/o2, + /datum/mil_rank/ec/o1) + min_skill = list(SKILL_BUREAUCRACY = SKILL_BASIC) + + access = list( + access_morgue, access_chapel_office, + access_crematorium, access_solgov_crew, + access_radio_serv + ) + +/datum/job/janitor + title = "Sanitation Technician" + department = "Service" + department_flag = SRV + total_positions = 2 + spawn_positions = 2 + supervisors = "the Chief Steward" + minimum_character_age = list(SPECIES_HUMAN = 20) + ideal_character_age = 20 + alt_titles = list( + "Custodian", + "Janitor") + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/service/janitor + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/service/janitor/ec, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/service/janitor/fleet + ) + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/fleet/e2, + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4 + ) + min_skill = list( SKILL_HAULING = SKILL_BASIC) + + access = list( + access_maint_tunnels, access_emergency_storage, + access_janitor, access_solgov_crew, + access_radio_serv + ) + + +/datum/job/chef + title = "Steward" + department = "Service" + department_flag = SRV + total_positions = 2 + spawn_positions = 2 + minimum_character_age = list(SPECIES_HUMAN = 20) + supervisors = "the Chief Steward" + alt_titles = list( + "Bartender", + "Cook", + "Culinary Specialist" + ) + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/service/cook + allowed_branches = list( + /datum/mil_branch/civilian, + /datum/mil_branch/expeditionary_corps = /singleton/hierarchy/outfit/job/torch/crew/service/cook/ec, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/service/cook/fleet + ) + allowed_ranks = list( + /datum/mil_rank/civ/contractor, + /datum/mil_rank/ec/e3, + /datum/mil_rank/ec/e5, + /datum/mil_rank/fleet/e2, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/fleet/e5 + ) + min_skill = list( + SKILL_BOTANY = SKILL_BASIC, + SKILL_CHEMISTRY = SKILL_BASIC, + SKILL_COOKING = SKILL_TRAINED + ) + access = list( + access_commissary, + access_hydroponics, + access_kitchen, + access_radio_serv, + access_solgov_crew, + access_o_mess + ) + + +/datum/job/crew + title = "Crewman" + department = "Service" + department_flag = SRV + total_positions = 5 + spawn_positions = 5 + supervisors = "the Chief Steward" + minimum_character_age = list(SPECIES_HUMAN = 20) + ideal_character_age = 20 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/service/crewman + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/service/crewman/fleet + ) + allowed_ranks = list( + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e2, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4 + ) + + access = list( + access_maint_tunnels, access_emergency_storage, + access_solgov_crew, access_radio_serv + ) diff --git a/maps/torch_fd/job/supply_jobs.dm b/maps/torch_fd/job/supply_jobs.dm new file mode 100644 index 0000000000000..ce485c564a890 --- /dev/null +++ b/maps/torch_fd/job/supply_jobs.dm @@ -0,0 +1,111 @@ +/datum/job/qm + title = "Deck Chief" + department = "Supply" + department_flag = SUP + total_positions = 1 + spawn_positions = 1 + supervisors = "the Executive Officer" + economic_power = 5 + minimal_player_age = 0 + minimum_character_age = list(SPECIES_HUMAN = 27) + ideal_character_age = 35 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/supply/deckofficer + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/supply/deckofficer/fleet + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e6, + /datum/mil_rank/ec/e7, + /datum/mil_rank/fleet/e7, + /datum/mil_rank/fleet/e8 + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_TRAINED, + SKILL_FINANCE = SKILL_BASIC, + SKILL_HAULING = SKILL_BASIC, + SKILL_EVA = SKILL_BASIC, + SKILL_PILOT = SKILL_BASIC, + SKILL_MECH = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX) + skill_points = 18 + + access = list( + access_maint_tunnels, access_bridge, access_emergency_storage, access_tech_storage, access_cargo, access_guppy_helm, + access_cargo_bot, access_qm, access_mailsorting, access_solgov_crew, access_expedition_shuttle, access_guppy, access_hangar, + access_mining, access_mining_office, access_mining_station, access_commissary, access_teleporter, access_eva, access_torch_fax, + access_radio_sup, access_radio_exp, access_radio_comm + ) + + software_on_spawn = list(/datum/computer_file/program/supply, + /datum/computer_file/program/deck_management, + /datum/computer_file/program/reports) + +/datum/job/cargo_tech + title = "Deck Technician" + department = "Supply" + department_flag = SUP + total_positions = 3 + spawn_positions = 3 + supervisors = "the Deck Chief" + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 24 + outfit_type = /singleton/hierarchy/outfit/job/torch/crew/supply/tech + allowed_branches = list( + /datum/mil_branch/expeditionary_corps, + /datum/mil_branch/fleet = /singleton/hierarchy/outfit/job/torch/crew/supply/tech/fleet, + /datum/mil_branch/civilian = /singleton/hierarchy/outfit/job/torch/crew/supply/contractor + ) + allowed_ranks = list( + /datum/mil_rank/fleet/e2, + /datum/mil_rank/ec/e3, + /datum/mil_rank/fleet/e3, + /datum/mil_rank/fleet/e4, + /datum/mil_rank/civ/contractor + ) + min_skill = list( SKILL_BUREAUCRACY = SKILL_BASIC, + SKILL_FINANCE = SKILL_BASIC, + SKILL_HAULING = SKILL_BASIC, + SKILL_MECH = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX) + + access = list( + access_maint_tunnels, access_emergency_storage, access_cargo, access_guppy_helm, + access_cargo_bot, access_mailsorting, access_solgov_crew, access_expedition_shuttle, + access_guppy, access_hangar, access_commissary, access_radio_sup + ) + + software_on_spawn = list(/datum/computer_file/program/supply, + /datum/computer_file/program/deck_management, + /datum/computer_file/program/reports) + +/datum/job/mining + title = "Prospector" + department = "Supply" + department_flag = SUP + total_positions = 2 + spawn_positions = 2 + supervisors = "the Deck Chief" + economic_power = 7 + minimum_character_age = list(SPECIES_HUMAN = 18) + ideal_character_age = 25 + alt_titles = list( + "Drill Technician", + "Shaft Miner", + "Salvage Technician") + min_skill = list( SKILL_HAULING = SKILL_TRAINED, + SKILL_EVA = SKILL_BASIC) + + max_skill = list( SKILL_PILOT = SKILL_MAX) + + outfit_type = /singleton/hierarchy/outfit/job/torch/passenger/research/prospector + allowed_branches = list(/datum/mil_branch/civilian) + allowed_ranks = list(/datum/mil_rank/civ/contractor) + + access = list( + access_mining, access_mining_office, access_mining_station, + access_expedition_shuttle, access_guppy, access_hangar, + access_guppy_helm, access_solgov_crew, access_eva, + access_radio_exp, access_radio_sup + ) diff --git a/maps/torch_fd/job/torch_jobs.dm b/maps/torch_fd/job/torch_jobs.dm index 622c9c2795863..9363ecc82f3f2 100644 --- a/maps/torch_fd/job/torch_jobs.dm +++ b/maps/torch_fd/job/torch_jobs.dm @@ -28,7 +28,7 @@ /datum/job/senior_doctor, /datum/job/doctor, /datum/job/junior_doctor, /datum/job/chemist, /datum/job/medical_trainee, /datum/job/psychiatrist, /datum/job/qm, /datum/job/cargo_tech, /datum/job/mining, - /datum/job/senior_scientist, /datum/job/scientist, /datum/job/scientist_assistant, + /datum/job/senior_scientist, /datum/job/scientist, /datum/job/scientist_assistant, /datum/job/research_guard, /datum/job/chief_steward, /datum/job/chef, /datum/job/janitor, /datum/job/crew, /datum/job/cyborg, /datum/job/chaplain, diff --git a/maps/torch_fd/torch_ranks.dm b/maps/torch_fd/torch_ranks.dm index 5f5ec332ed6cb..8887bb5f640f4 100644 --- a/maps/torch_fd/torch_ranks.dm +++ b/maps/torch_fd/torch_ranks.dm @@ -207,6 +207,7 @@ /datum/mil_rank/scga/e1, /datum/mil_rank/scga/e2, /datum/mil_rank/scga/e3, + /datum/mil_rank/scga/e4_alt, /datum/mil_rank/scga/e4, /datum/mil_rank/scga/e5, /datum/mil_rank/scga/e6, @@ -232,6 +233,7 @@ spawn_rank_types = list( /datum/mil_rank/scga/e2, /datum/mil_rank/scga/e3, + /datum/mil_rank/scga/e4_alt, /datum/mil_rank/scga/e4, /datum/mil_rank/scga/e5, /datum/mil_rank/scga/e6, diff --git a/mods/_fd/fd_assets/_fd_assets.dme b/mods/_fd/fd_assets/_fd_assets.dme index 4d59022db8254..d24bfe3dfec0f 100644 --- a/mods/_fd/fd_assets/_fd_assets.dme +++ b/mods/_fd/fd_assets/_fd_assets.dme @@ -39,17 +39,14 @@ #include "code/turfs/wall_types.dm" #include "code/weapons/automatic_shotgun.dm" -#include "code/weapons/k342.dm" #include "code/weapons/mech_mounted.dm" #include "code/weapons/rsh21.dm" #include "code/weapons/sledgehammer.dm" -#include "code/chief_steward.dm" #include "code/fd_sofa_override.dm" #include "code/floor_decals.dm" #include "code/fullscreen.dm" #include "code/loadout.dm" -#include "code/research_guard.dm" #include "code/added_branch_outfits.dm" #include "code/added_branches.dm" #include "code/skills.dm" diff --git a/mods/_fd/fd_guns/_fd_guns.dme b/mods/_fd/fd_guns/_fd_guns.dme index 2366365e6cdc5..d01be0550831c 100644 --- a/mods/_fd/fd_guns/_fd_guns.dme +++ b/mods/_fd/fd_guns/_fd_guns.dme @@ -15,6 +15,7 @@ #include "code/guns/pistol.dm" #include "code/guns/shotgun.dm" #include "code/guns/sniper.dm" +#include "code/guns/k342.dm" #undef CALIBER_BOLTER diff --git a/mods/_fd/fd_assets/code/weapons/k342.dm b/mods/_fd/fd_guns/code/guns/k342.dm similarity index 93% rename from mods/_fd/fd_assets/code/weapons/k342.dm rename to mods/_fd/fd_guns/code/guns/k342.dm index ced4bb5336897..81ade4b80c5ab 100644 --- a/mods/_fd/fd_assets/code/weapons/k342.dm +++ b/mods/_fd/fd_guns/code/guns/k342.dm @@ -106,12 +106,12 @@ /obj/item/gun/energy/k342 name = "plasma rifle" desc = "K342 Barrakuda is the latest plasma weapon created by NanoTrasen. It can fire several types of charges: stunning, incendiary and lethal." - icon = 'mods/_fd/fd_assets/icons/obj/k342.dmi' + icon = 'mods/_fd/fd_guns/icons/k342.dmi' w_class = ITEM_SIZE_LARGE item_icons = list( - slot_l_hand_str = 'mods/_fd/fd_assets/icons/onmob/lefthand-guns.dmi', - slot_r_hand_str = 'mods/_fd/fd_assets/icons/onmob/righthand-guns.dmi', - slot_back_str = 'mods/_fd/fd_assets/icons/onmob/back-guns.dmi' + slot_l_hand_str = 'mods/_fd/fd_guns/icons/onmob/lefthand-guns.dmi', + slot_r_hand_str = 'mods/_fd/fd_guns/icons/onmob/righthand-guns.dmi', + slot_back_str = 'mods/_fd/fd_guns/icons/onmob/back-guns.dmi' ) slot_flags = SLOT_BACK|SLOT_BELT icon_state = "barrakuda_off" @@ -145,16 +145,16 @@ if(0.05 to 34) i = "g_0+" if(i) - overlays += image(icon, i) + AddOverlays(image(icon, i)) var/datum/firemode/current_mode = firemodes[sel_mode] - overlays += image(icon, splittext(current_mode.name, " ")[1]) + AddOverlays(image(icon, splittext(current_mode.name, " ")[1])) else icon_state = "[initial(item_state)]_off" /obj/item/gun/energy/k342/sniper name = "plasma sniper rifle" desc = "K480 Skat is the latest heavy plasma weapon created by NanoTrasen for SolGov snipers, capable to fire several types of charges: stunning, incendiary, and lethal bolts. Advanced magnetic constriction technology improves accuracy and firepower." - icon = 'mods/_fd/fd_assets/icons/obj/k480.dmi' + icon = 'mods/_fd/fd_guns/icons/k480.dmi' icon_state = "mantis_off" item_state = "mantis" w_class = ITEM_SIZE_LARGE diff --git a/mods/_fd/fd_assets/icons/obj/k342.dmi b/mods/_fd/fd_guns/icons/k342.dmi similarity index 100% rename from mods/_fd/fd_assets/icons/obj/k342.dmi rename to mods/_fd/fd_guns/icons/k342.dmi diff --git a/mods/_fd/fd_assets/icons/obj/k480.dmi b/mods/_fd/fd_guns/icons/k480.dmi similarity index 100% rename from mods/_fd/fd_assets/icons/obj/k480.dmi rename to mods/_fd/fd_guns/icons/k480.dmi diff --git a/mods/_fd/fd_assets/icons/onmob/back-guns.dmi b/mods/_fd/fd_guns/icons/onmob/back-guns.dmi similarity index 100% rename from mods/_fd/fd_assets/icons/onmob/back-guns.dmi rename to mods/_fd/fd_guns/icons/onmob/back-guns.dmi diff --git a/mods/_fd/fd_assets/icons/onmob/lefthand-guns.dmi b/mods/_fd/fd_guns/icons/onmob/lefthand-guns.dmi similarity index 100% rename from mods/_fd/fd_assets/icons/onmob/lefthand-guns.dmi rename to mods/_fd/fd_guns/icons/onmob/lefthand-guns.dmi diff --git a/mods/_fd/fd_assets/icons/onmob/righthand-guns.dmi b/mods/_fd/fd_guns/icons/onmob/righthand-guns.dmi similarity index 100% rename from mods/_fd/fd_assets/icons/onmob/righthand-guns.dmi rename to mods/_fd/fd_guns/icons/onmob/righthand-guns.dmi