Skip to content

Commit

Permalink
it's mostly ready i think
Browse files Browse the repository at this point in the history
  • Loading branch information
Matt Atlas committed Aug 24, 2024
1 parent f408902 commit a0e3f38
Show file tree
Hide file tree
Showing 18 changed files with 351 additions and 98 deletions.
3 changes: 2 additions & 1 deletion aurorastation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -533,7 +533,8 @@
#include "code\datums\repositories\unique.dm"
#include "code\datums\scenarios\roles.dm"
#include "code\datums\scenarios\scenario.dm"
#include "code\datums\scenarios\noncanon\zenghu_clone_facility.dm"
#include "code\datums\scenarios\noncanon\zenghu_clone_facility\zenghu_clone_facility.dm"
#include "code\datums\scenarios\noncanon\zenghu_clone_facility\zenghu_clone_facility_outfits.dm"
#include "code\datums\state_machine\state.dm"
#include "code\datums\state_machine\transition.dm"
#include "code\datums\tips\tips.dm"
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/machinery.dm
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@
#define NETWORK_INTREPID "Intrepid"
#define NETWORK_CANARY "Canary"
#define NETWORK_NEWS "News"
#define NETWORK_CRYO_OUTPOST "Desert Oasis Planet Outpost"


// Those networks can only be accessed by pre-existing terminals. AIs and new terminals can't use them.
Expand Down
1 change: 1 addition & 0 deletions code/controllers/subsystems/processing/odyssey.dm
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,7 @@ SUBSYSTEM_DEF(odyssey)

var/outfit_type = text2path(params["outfit_type"])
if(ispath(outfit_type, /obj/outfit))
player.delete_inventory(TRUE)
player.preEquipOutfit(outfit_type, FALSE)
player.equipOutfit(outfit_type, FALSE)
return TRUE
Expand Down
41 changes: 0 additions & 41 deletions code/datums/scenarios/noncanon/zenghu_clone_facility.dm

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/singleton/scenario/cryo_outpost
name = "Zeng-Hu Facility #187-D"
desc = "A Zeng-Hu Facility has gone dark as of one week ago. The megacorporation has dispatched the Horizon, the closest ship, \
to investigate, find out the reason, and secure it once again if needed."
scenario_site_id = "cryo_outpost"

horizon_announcement_title = "SCC Central Command Outpost"
horizon_announcement_message = "Greetings, SCCV Horizon. There's been some proprietary zeng-hu tech reported missing from nearby corporate facilities, \
ecently tracked down to a planet, Juliett-Enderly, located in your current sector. You are the closest to this planet, and should investigate and \
recover any stolen tech, if any is found. Approach with caution, but heavy resistance is not expected, as monitored ship traffic is light around here."

min_player_amount = 0
min_actor_amount = 0 //should be 4 todomatt

roles = list(
/singleton/role/cryo_outpost,
/singleton/role/cryo_outpost/mercenary,
/singleton/role/cryo_outpost/mercenary/medic,
/singleton/role/cryo_outpost/mercenary/engineer,
/singleton/role/cryo_outpost/director,
/singleton/role/cryo_outpost/scientist,
/singleton/role/cryo_outpost/engineer
)
default_outfit = /obj/outfit/admin/generic/cryo_outpost_crew

base_area = /area/cryo_outpost

/singleton/role/cryo_outpost
name = "Mercenary Team Lead"
desc = "You are the leader of a mercenary detachment found in the cloning outpost. Your team could have been an independent mercenary company contracted \
to take this secret Zeng-Hu base, or you could've just found it yourselves. You are equipped with a Heavy Sol Marine's gear."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/mercenary/leader

/singleton/role/cryo_outpost/mercenary
name = "Mercenary"
desc = "You are part of a mercenary detachment that has occupied this cloning outpost - either because you were contracted by someone, or because you simply \
found this place. Some of these Zeng-Hu secrets could sell for a pretty penny... Your creativity's the limit! You are equipped with \
a Mercenary Freelancer's gear."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/mercenary

/singleton/role/cryo_outpost/mercenary/medic
name = "Mercenary Combat Medic"
desc = "You are part of a mercenary detachment that has occupied this cloning outpost - either because you were contracted by someone, or because you simply \
found this place. You, unlike others, are mainly worried with keeping everyone alive. You are equipped with \
a Mercenary Freelancer Medic's gear."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/mercenary/medic

/singleton/role/cryo_outpost/mercenary/engineer
name = "Mercenary Combat Engineer"
desc = "You are part of a mercenary detachment that has occupied this cloning outpost - either because you were contracted by someone, or because you simply \
found this place. You, unlike others, are mainly worried with keeping the power up and building fortifications. You are equipped with \
a Mercenary Freelancer Engineer's gear."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/mercenary/engineer

/singleton/role/cryo_outpost/director
name = "Outpost Director"
desc = "You are the director of this outpost. You were tasked with leading experimental top-secret research on cloning. Things seem to have gone bad, however, \
and it's up to you to figure out what to do next. One thing is clear - you hold a trove of information that any corporation or mercenary would be \
thrilled to get out of you. Will you stay loyal to Zeng-Hu, or will you sell your information out for safety?"
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/clone_facility_director

/singleton/role/cryo_outpost/scientist
name = "Zeng-Hu Facility Scientist"
desc = "You are a Zeng-Hu scentist that once worked on top-secret cloning technologies in this outpost. Zeng-Hu wants you to carry some of these cloning \
secrets to the grave, but your wishes don't need to align with them, if your safety was at risk... You are equipped with a Zeng-Hu scientist's gear."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/scientist

/singleton/role/cryo_outpost/engineer
name = "Facility Engineer"
desc = "You are an engineer in charge of keeping the outpost functioning. Luckily, your utility to someone else might be what saves your skin \
this time around..."
outfit = /obj/outfit/admin/generic/cryo_outpost_crew/engineer
Original file line number Diff line number Diff line change
@@ -0,0 +1,204 @@
/obj/outfit/admin/generic/cryo_outpost_crew/mercenary
name = "Clone Facility Mercenary"

uniform = /obj/item/clothing/under/syndicate
shoes = /obj/item/clothing/shoes/combat
gloves = /obj/item/clothing/gloves/swat/ert
belt = /obj/item/storage/belt/military
back = /obj/item/storage/backpack/satchel
l_hand = /obj/item/clothing/suit/space/void/freelancer
r_hand = /obj/item/clothing/head/helmet/space/void/freelancer
accessory = /obj/item/clothing/accessory/holster/thigh
accessory_contents = list(/obj/item/gun/projectile/colt)
id = /obj/item/card/id/syndicate
glasses = /obj/item/clothing/glasses/sunglasses/aviator
l_pocket = /obj/item/tank/emergency_oxygen/double

l_ear = /obj/item/device/radio/headset/distress

backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/gun/projectile/automatic/tommygun = 1,
/obj/item/storage/belt/utility/full = 1,
/obj/item/clothing/gloves/yellow = 1,
)

belt_contents = list(
/obj/item/ammo_magazine/submachinedrum = 1,
/obj/item/ammo_magazine/submachinemag = 1,
/obj/item/ammo_magazine/c45m = 2,
/obj/item/handcuffs/ziptie = 1,
/obj/item/shield/energy = 1,
/obj/item/material/knife/trench = 1
)

/obj/outfit/admin/generic/cryo_outpost_crew/mercenary/medic
name = "Clone Facility Mercenary Medic"

glasses = /obj/item/clothing/glasses/hud/health/aviator
belt = /obj/item/storage/belt/medical/paramedic/combat
gloves = /obj/item/clothing/gloves/latex

backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/gun/projectile/automatic/tommygun = 1,
/obj/item/ammo_magazine/submachinemag = 2,
/obj/item/ammo_magazine/c45m = 1,
/obj/item/storage/firstaid/combat = 1,
/obj/item/storage/firstaid/adv = 1,
/obj/item/device/healthanalyzer = 1,
/obj/item/reagent_containers/hypospray/autoinjector/coagzolug = 1
)

belt_contents = list(
/obj/item/reagent_containers/hypospray/cmo = 1,
/obj/item/reagent_containers/glass/bottle/inaprovaline = 1,
/obj/item/reagent_containers/glass/bottle/antitoxin = 1,
/obj/item/reagent_containers/glass/bottle/dexalin_plus = 1,
/obj/item/reagent_containers/glass/bottle/butazoline = 1,
/obj/item/reagent_containers/glass/bottle/dermaline = 1,
/obj/item/reagent_containers/glass/bottle/perconol = 1,
/obj/item/reagent_containers/glass/bottle/thetamycin = 1,
/obj/item/material/knife/trench = 1
)

/obj/outfit/admin/generic/cryo_outpost_crew/mercenary/engineer
name = "Clone Facility Mercenary Engineer"

belt = /obj/item/storage/belt/military
back = /obj/item/storage/backpack/duffel
gloves = /obj/item/clothing/gloves/yellow
accessory = /obj/item/clothing/accessory/storage/brown_vest
accessory_contents = list(
/obj/item/plastique = 5
)

backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/clothing/glasses/welding/superior = 1,
/obj/item/gun/projectile/shotgun/pump/combat/sol = 1,
/obj/item/storage/box/shotgunshells = 1,
/obj/item/landmine/frag = 1,
/obj/item/landmine/emp = 1,
/obj/item/storage/belt/utility/very_full = 1,
/obj/item/gun/projectile/colt = 1
)

belt_contents = list(
/obj/item/material/knife/trench = 1,
/obj/item/ammo_magazine/c45m = 2,
/obj/item/handcuffs/ziptie = 1,
/obj/item/shield/energy = 1,
/obj/item/device/flashlight/flare = 1,
)

/obj/outfit/admin/generic/cryo_outpost_crew/mercenary/leader
name = "Clone Facility Mercenary Leader"

l_hand = /obj/item/gun/projectile/automatic/rifle/shorty
r_hand = null
back = /obj/item/rig/merc/distress
suit_store = null
suit = null
head = null
mask = /obj/item/clothing/mask/smokable/cigarette/cigar/cohiba
glasses = /obj/item/clothing/glasses/sunglasses/aviator
accessory = /obj/item/clothing/accessory/holster/thigh
accessory_contents = list(/obj/item/gun/projectile/revolver = 1)

backpack_contents = list()

belt_contents = list(
/obj/item/ammo_magazine/c762 = 2,
/obj/item/handcuffs/ziptie = 1,
/obj/item/shield/energy = 1,
/obj/item/ammo_magazine/a357 = 2,
/obj/item/material/knife/trench = 1
)

/obj/outfit/admin/generic/cryo_outpost_crew/clone_facility_director
name = "Clone Facility Director"

uniform = /obj/item/clothing/under/rank/scientist/zeng
suit = /obj/item/clothing/suit/storage/toggle/longcoat/zeng
id = /obj/item/card/id/zeng_hu
shoes = /obj/item/clothing/shoes/sneakers/medsci/zeng

backpack_faction = /obj/item/storage/backpack/zeng
satchel_faction = /obj/item/storage/backpack/satchel/zeng
dufflebag_faction = /obj/item/storage/backpack/duffel/zeng
messengerbag_faction = /obj/item/storage/backpack/messenger/zeng

backpack_contents = list(
/obj/item/storage/box/survival = 1,
/obj/item/gun/projectile/pistol = 1,
/obj/item/ammo_magazine/mc9mm = 1,
/obj/item/clothing/glasses/welding/superior = 1
)

/obj/outfit/admin/generic/cryo_outpost_crew/scientist
name = "Clone Facility Scientist"

uniform = /obj/item/clothing/under/rank/scientist/zeng
suit = /obj/item/clothing/suit/storage/toggle/labcoat/zeng/alt
id = /obj/item/card/id/zeng_hu
shoes = /obj/item/clothing/shoes/sneakers/medsci/zeng

backpack_faction = /obj/item/storage/backpack/zeng
satchel_faction = /obj/item/storage/backpack/satchel/zeng
dufflebag_faction = /obj/item/storage/backpack/duffel/zeng
messengerbag_faction = /obj/item/storage/backpack/messenger/zeng

/obj/outfit/admin/generic/cryo_outpost_crew/engineer
name = "Clone Facility Engineer"

uniform = list(
/obj/item/clothing/under/color/black,
/obj/item/clothing/under/color/brown,
/obj/item/clothing/under/color/lightbrown,
/obj/item/clothing/under/color/darkblue,
/obj/item/clothing/under/service_overalls,
/obj/item/clothing/under/overalls,
)
suit = list(
/obj/item/clothing/suit/storage/hooded/wintercoat,
/obj/item/clothing/suit/storage/hooded/wintercoat/hoodie/random,
/obj/item/clothing/suit/storage/toggle/leather_jacket/flight,
/obj/item/clothing/suit/storage/toggle/leather_jacket/military/tan,
/obj/item/clothing/suit/storage/toggle/highvis,
/obj/item/clothing/suit/storage/toggle/highvis,
/obj/item/clothing/suit/storage/toggle/highvis_alt,
/obj/item/clothing/suit/storage/toggle/track,
/obj/item/clothing/suit/storage/hazardvest,
/obj/item/clothing/suit/storage/hazardvest/green,
/obj/item/clothing/suit/storage/hazardvest/red,
/obj/item/clothing/suit/storage/hazardvest/white,
)
belt = list(
/obj/item/storage/belt/utility/full,
/obj/item/storage/belt/utility/very_full,
/obj/item/storage/belt/utility/atmostech,
)
head = list(
/obj/item/clothing/head/hardhat,
/obj/item/clothing/head/hardhat/orange,
/obj/item/clothing/head/hardhat/red,
/obj/item/clothing/head/hardhat/green,
)
glasses = null
gloves = list(
/obj/item/clothing/gloves/brown,
/obj/item/clothing/gloves/black_leather,
/obj/item/clothing/gloves/yellow,
)
shoes = list(
/obj/item/clothing/shoes/jackboots,
/obj/item/clothing/shoes/workboots,
/obj/item/clothing/shoes/workboots/dark,
)
species_gloves = list(
SPECIES_UNATHI = /obj/item/clothing/gloves/yellow/specialu,
SPECIES_TAJARA = /obj/item/clothing/gloves/yellow/specialt,
SPECIES_TAJARA_MSAI = /obj/item/clothing/gloves/yellow/specialt,
SPECIES_TAJARA_ZHAN = /obj/item/clothing/gloves/yellow/specialt,
)
3 changes: 1 addition & 2 deletions code/game/antagonist/outsider/actor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ GLOBAL_DATUM(actors, /datum/antagonist/actor)
qdel(I)

if(SSodyssey?.scenario)
//TODO: full actor outfit mechanics, role selection
player.preEquipOutfit(SSodyssey.scenario.default_outfit, FALSE)
player.equipOutfit(SSodyssey.scenario.default_outfit, FALSE)

Expand All @@ -50,7 +49,7 @@ GLOBAL_DATUM(actors, /datum/antagonist/actor)

/mob/living/carbon/human/proc/odyssey_panel()
set name = "Odyssey Panel"
set category = "OOC"
set category = "Actor"

if(!ishuman(usr))
return
Expand Down
4 changes: 2 additions & 2 deletions code/modules/admin/admin_verbs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -633,10 +633,10 @@ var/list/admin_verbs_cciaa = list(
return

/client/proc/odyssey_panel()
set name = "Odyssey Panel"
set name = "View Odyssey Panel"
set category = "Admin"

SSodyssey.ui_interact(src)
SSodyssey.ui_interact(mob)
feedback_add_details("admin_verb","ODP")

/client/proc/jobbans()
Expand Down
1 change: 1 addition & 0 deletions code/modules/mapping/map_template.dm
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@
if (base_turf_for_zs)
SSatlas.current_map.base_turf_by_z[num2text(z_index)] = base_turf_for_zs
SSatlas.current_map.player_levels |= z_index
GLOB.map_templates["[z_index]"] = src

smooth_zlevel(world.maxz)
resort_all_areas()
Expand Down
2 changes: 1 addition & 1 deletion code/modules/mob/abstract/storyteller/storyteller.dm
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@

/mob/abstract/storyteller/verb/odyssey_panel()
set name = "Odyssey Panel"
set category = "OOC"
set category = "Storyteller"

SSodyssey.ui_interact(src)

Expand Down
Loading

0 comments on commit a0e3f38

Please sign in to comment.