Files
Bubberstation/code/modules/mob_spawn/ghost_roles/space_roles.dm
SkyratBot 487322c317 [MIRROR] Nukies Rework Part....2.1? Kinda?: Gives Battlecruiser operatives the Ansem pistol, as well as some internals in their currently empty bag. [MDB IGNORE] (#14974)
* Nukies Rework Part....2.1? Kinda?: Gives Battlecruiser operatives the Ansem pistol, as well as some internals in their currently empty bag. (#68419)

* Gives Battlecruiser operatives the Ansem pistol, as well as populate their bags with some internals.

* Box variable

* Nukies Rework Part....2.1? Kinda?: Gives Battlecruiser operatives the Ansem pistol, as well as some internals in their currently empty bag.

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2022-07-19 02:15:53 +01:00

238 lines
12 KiB
Plaintext

//Ancient cryogenic sleepers. Players become NT crewmen from a hundred year old space station, now on the verge of collapse.
/obj/effect/mob_spawn/ghost_role/human/oldsec
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a security uniform underneath the built up ice. The machine is attempting to wake up its occupant."
prompt_name = "a security officer"
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "sleeper"
mob_species = /datum/species/human
you_are_text = "You are a security officer working for Nanotrasen, stationed onboard a state of the art research station."
flavour_text = "You vaguely recall rushing into a cryogenics pod due to an oncoming radiation storm. \
The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod."
important_text = "Work as a team with your fellow survivors and do not abandon them."
outfit = /datum/outfit/oldsec
spawner_job_path = /datum/job/ancient_crew
/obj/effect/mob_spawn/ghost_role/human/oldsec/Destroy()
new/obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/datum/outfit/oldsec
name = "Ancient Security"
uniform = /obj/item/clothing/under/rank/security/officer
shoes = /obj/item/clothing/shoes/jackboots
id = /obj/item/card/id/away/old/sec
r_pocket = /obj/item/restraints/handcuffs
l_pocket = /obj/item/assembly/flash/handheld
/obj/effect/mob_spawn/ghost_role/human/oldeng
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise an engineering uniform underneath the built up ice. The machine is attempting to wake up its occupant."
prompt_name = "an engineer"
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "sleeper"
mob_species = /datum/species/human
you_are_text = "You are an engineer working for Nanotrasen, stationed onboard a state of the art research station."
flavour_text = "You vaguely recall rushing into a cryogenics pod due to an oncoming radiation storm. The last thing \
you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod."
important_text = "Work as a team with your fellow survivors and do not abandon them."
outfit = /datum/outfit/oldeng
spawner_job_path = /datum/job/ancient_crew
/obj/effect/mob_spawn/ghost_role/human/oldeng/Destroy()
new/obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/datum/outfit/oldeng
name = "Ancient Engineer"
uniform = /obj/item/clothing/under/rank/engineering/engineer
shoes = /obj/item/clothing/shoes/workboots
id = /obj/item/card/id/away/old/eng
gloves = /obj/item/clothing/gloves/color/fyellow/old
l_pocket = /obj/item/tank/internals/emergency_oxygen
/datum/outfit/oldeng/mod
name = "Ancient Engineer (MODsuit)"
suit_store = /obj/item/tank/internals/oxygen
back = /obj/item/mod/control/pre_equipped/prototype
mask = /obj/item/clothing/mask/breath
internals_slot = ITEM_SLOT_SUITSTORE
/obj/effect/mob_spawn/ghost_role/human/oldsci
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a science uniform underneath the built up ice. The machine is attempting to wake up its occupant."
prompt_name = "a scientist"
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "sleeper"
mob_species = /datum/species/human
you_are_text = "You are a scientist working for Nanotrasen, stationed onboard a state of the art research station."
flavour_text = "You vaguely recall rushing into a cryogenics pod due to an oncoming radiation storm. \
The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod."
important_text = "Work as a team with your fellow survivors and do not abandon them."
outfit = /datum/outfit/oldsci
spawner_job_path = /datum/job/ancient_crew
/obj/effect/mob_spawn/ghost_role/human/oldsci/Destroy()
new/obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/datum/outfit/oldsci
name = "Ancient Scientist"
uniform = /obj/item/clothing/under/rank/rnd/scientist
shoes = /obj/item/clothing/shoes/laceup
id = /obj/item/card/id/away/old/sci
l_pocket = /obj/item/stack/medical/bruise_pack
///asteroid comms agent
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/comms/space
you_are_text = "You are a syndicate agent, assigned to a small listening post station situated near your hated enemy's top secret research facility: Space Station 13."
flavour_text = "Monitor enemy activity as best you can, and try to keep a low profile. Monitor enemy activity as best you can, and try to keep a low profile. Use the communication equipment to provide support to any field agents, and sow disinformation to throw Nanotrasen off your trail. Do not let the base fall into enemy hands!"
important_text = "DO NOT abandon the base."
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/comms/space/Initialize(mapload)
. = ..()
if(prob(85)) //only has a 15% chance of existing, otherwise it'll just be a NPC syndie.
new /mob/living/simple_animal/hostile/syndicate/ranged(get_turf(src))
return INITIALIZE_HINT_QDEL
///battlecruiser stuff
/obj/effect/mob_spawn/ghost_role/human/syndicate/battlecruiser
name = "Syndicate Battlecruiser Ship Operative"
you_are_text = "You are a crewmember aboard the syndicate flagship: the SBC Starfury."
flavour_text = "Your job is to follow your captain's orders, maintain the ship, and keep the power flowing."
important_text = "The armory is not a candy store, and your role is not to assault the station directly, leave that work to the assault operatives."
prompt_name = "a battlecruiser crewmember"
outfit = /datum/outfit/syndicate_empty/battlecruiser
spawner_job_path = /datum/job/battlecruiser_crew
uses = 4
/// The antag team to apply the player to
var/datum/team/antag_team
/// The antag datum to give to the player spawned
var/antag_datum_to_give = /datum/antagonist/battlecruiser
/obj/effect/mob_spawn/ghost_role/human/syndicate/battlecruiser/special(mob/living/spawned_mob, mob/possesser)
. = ..()
if(!spawned_mob.mind)
spawned_mob.mind_initialize()
var/datum/mind/mob_mind = spawned_mob.mind
mob_mind.add_antag_datum(antag_datum_to_give, antag_team)
/datum/team/battlecruiser
name = "Battlecruiser Crew"
member_name = "crewmember"
/// The central objective of this battlecruiser
var/core_objective = /datum/objective/nuclear
/// The assigned nuke of this team
var/obj/machinery/nuclearbomb/nuke
/datum/team/battlecruiser/proc/update_objectives()
if(core_objective)
var/datum/objective/objective = new core_objective()
objective.team = src
objectives += objective
/datum/antagonist/battlecruiser
name = "Battlecruiser Crewmember"
show_to_ghosts = TRUE
roundend_category = "battlecruiser syndicate operatives"
suicide_cry = "FOR THE SYNDICATE!!!"
antag_hud_name = "battlecruiser_crew"
job_rank = ROLE_BATTLECRUISER_CREW
var/datum/team/battlecruiser/battlecruiser_team
/datum/antagonist/battlecruiser/get_team()
return battlecruiser_team
/datum/antagonist/battlecruiser/greet()
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/ops.ogg',100,0, use_reverb = FALSE)
to_chat(owner, span_big("You are a [name]!"))
owner.announce_objectives()
/datum/antagonist/battlecruiser/ally
name = "Battlecruiser Ally"
show_to_ghosts = FALSE
/datum/antagonist/battlecruiser/captain
name = "Battlecruiser Captain"
antag_hud_name = "battlecruiser_lead"
job_rank = ROLE_BATTLECRUISER_CAPTAIN
/datum/antagonist/battlecruiser/create_team(datum/team/battlecruiser/team)
if(!team)
return
if(!istype(team))
stack_trace("Wrong team type passed to [type] initialization.")
battlecruiser_team = team
/datum/antagonist/battlecruiser/apply_innate_effects(mob/living/mob_override)
add_team_hud(mob_override || owner.current, /datum/antagonist/battlecruiser)
/datum/antagonist/battlecruiser/on_gain()
if(battlecruiser_team)
objectives |= battlecruiser_team.objectives
if(battlecruiser_team.nuke)
var/obj/machinery/nuclearbomb/nuke = battlecruiser_team.nuke
antag_memory += "<B>[nuke] Code</B>: [nuke.r_code]<br>"
owner.add_memory(MEMORY_NUKECODE, list(DETAIL_NUKE_CODE = nuke.r_code, DETAIL_PROTAGONIST = owner.current), story_value = STORY_VALUE_AMAZING, memory_flags = MEMORY_FLAG_NOLOCATION | MEMORY_FLAG_NOMOOD | MEMORY_FLAG_NOPERSISTENCE)
to_chat(owner, "The nuclear authorization code is: <B>[nuke.r_code]</B>")
return ..()
/datum/outfit/syndicate_empty/battlecruiser
name = "Syndicate Battlecruiser Ship Operative"
l_pocket = /obj/item/gun/ballistic/automatic/pistol/clandestine
r_pocket = /obj/item/knife/combat/survival
box = /obj/item/storage/box/survival/syndie
belt = /obj/item/storage/belt/military/assault
/obj/effect/mob_spawn/ghost_role/human/syndicate/battlecruiser/assault
name = "Syndicate Battlecruiser Assault Operative"
you_are_text = "You are an assault operative aboard the syndicate flagship: the SBC Starfury."
flavour_text = "Your job is to follow your captain's orders, keep intruders out of the ship, and assault Space Station 13. There is an armory, multiple assault ships, and beam cannons to attack the station with."
important_text = "Work as a team with your fellow operatives and work out a plan of attack. If you are overwhelmed, escape back to your ship!"
prompt_name = "a battlecruiser operative"
outfit = /datum/outfit/syndicate_empty/battlecruiser/assault
uses = 8
/datum/outfit/syndicate_empty/battlecruiser/assault
name = "Syndicate Battlecruiser Assault Operative"
uniform = /obj/item/clothing/under/syndicate/combat
l_pocket = /obj/item/uplink/nuclear
r_pocket = /obj/item/modular_computer/tablet/nukeops
belt = /obj/item/storage/belt/military
suit = /obj/item/clothing/suit/armor/vest
suit_store = /obj/item/gun/ballistic/automatic/pistol/clandestine
back = /obj/item/storage/backpack
mask = /obj/item/clothing/mask/gas/syndicate
/obj/effect/mob_spawn/ghost_role/human/syndicate/battlecruiser/captain
name = "Syndicate Battlecruiser Captain"
you_are_text = "You are the captain aboard the syndicate flagship: the SBC Starfury."
flavour_text = "Your job is to oversee your crew, defend the ship, and destroy Space Station 13. The ship has an armory, multiple ships, beam cannons, and multiple crewmembers to accomplish this goal."
important_text = "As the captain, this whole operation falls on your shoulders. Help your assault operatives detonate a nuke on the station."
prompt_name = "a battlecruiser captain"
outfit = /datum/outfit/syndicate_empty/battlecruiser/assault/captain
spawner_job_path = /datum/job/battlecruiser_captain
antag_datum_to_give = /datum/antagonist/battlecruiser/captain
uses = 1
/datum/outfit/syndicate_empty/battlecruiser/assault/captain
name = "Syndicate Battlecruiser Captain"
l_pocket = /obj/item/melee/energy/sword/saber/red
r_pocket = /obj/item/melee/baton/telescopic
suit = /obj/item/clothing/suit/armor/vest/capcarapace/syndicate
suit_store = /obj/item/gun/ballistic/revolver/mateba
back = /obj/item/storage/backpack/satchel/leather
head = /obj/item/clothing/head/hos/syndicate
mask = /obj/item/clothing/mask/cigarette/cigar/havana
ears = /obj/item/radio/headset/syndicate/alt/leader
glasses = /obj/item/clothing/glasses/thermal/eyepatch
id = /obj/item/card/id/advanced/black/syndicate_command/captain_id
id_trim = /datum/id_trim/battlecruiser/captain