mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-14 09:27:45 +01:00
60d09f31b1
- renames/redescs/etc existing stuff to fit new TCAF lore - lots of 4 years defunct TCFL stuff has been deleted or repathed/renamed - the tcfl peacekeeper ship that was soft-removed has been deleted - the uniforms has also been modified and have had the necessary amount of blue added. essentially i kitbashed the old TCFL uniforms with the new TCAF uniforms i probably missed a lot of tcfl stuff still. --------- Signed-off-by: c#min7 <sadkermit01@gmail.com> Co-authored-by: Kano <89972582+kano-dot@users.noreply.github.com>
182 lines
5.4 KiB
Plaintext
182 lines
5.4 KiB
Plaintext
/datum/ghostspawner/human/admin
|
|
tags = list("Admin")
|
|
|
|
//Add the ability to despawn
|
|
/datum/ghostspawner/human/admin/post_spawn(mob/user)
|
|
add_verb(user.client, /client/proc/despawn)
|
|
return ..()
|
|
|
|
/datum/ghostspawner/human/admin/checkpointsec
|
|
short_name = "checkpointsec"
|
|
name = "Odin Checkpoint Security"
|
|
desc = "Secure the Odin checkpoint. Verify the identity of everyone passing through, perform random searches on \"suspicious\" crew."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinCheckpoint")
|
|
req_perms = null
|
|
req_perms_edit = R_CCIAA
|
|
max_count = 4
|
|
|
|
//Vars related to human mobs
|
|
outfit = /obj/outfit/admin/nt/odinsec
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Odin Security Officer"
|
|
special_role = "Odin Security Officer"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
mob_name_prefix = "Spec. "
|
|
mob_name_pick_message = "Pick a callsign or last-name."
|
|
|
|
/datum/ghostspawner/human/admin/odindoc
|
|
short_name = "odindoc"
|
|
name = "Odin Medical Doctor"
|
|
desc = "Provide medical assistance for those arriving on the Odin."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinDoctor")
|
|
req_perms = null
|
|
req_perms_edit = R_CCIAA
|
|
max_count = 4
|
|
|
|
//Vars related to human mobs
|
|
outfit = /obj/outfit/admin/nt/odindoc
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_TAJARA,SPECIES_UNATHI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Odin Medical Doctor"
|
|
special_role = "Odin Medical Doctor"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
|
|
/datum/ghostspawner/human/admin/odinpharm
|
|
short_name = "odinpharm"
|
|
name = "Odin Pharmacist"
|
|
desc = "Provide medication for the Doctors on the Odin and those in need."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinPharm")
|
|
req_perms = null
|
|
req_perms_edit = R_CCIAA
|
|
max_count = 1
|
|
|
|
outfit = /obj/outfit/admin/nt/odinpharm
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_TAJARA,SPECIES_UNATHI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Odin Pharmacist"
|
|
special_role = "Odin Pharmacist"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
|
|
/datum/ghostspawner/human/admin/odinchef
|
|
short_name = "odinchef"
|
|
name = "Odin Chef"
|
|
desc = "Feed starving crew members on the Odin."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinChef")
|
|
req_perms = null
|
|
req_perms_edit = R_CCIAA
|
|
max_count = 2
|
|
|
|
outfit = /obj/outfit/admin/nt/odinchef
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_TAJARA,SPECIES_UNATHI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Odin Chef"
|
|
special_role = "Odin Chef"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
|
|
/datum/ghostspawner/human/admin/odinbartender
|
|
short_name = "odinbartender"
|
|
name = "Odin Bartender"
|
|
desc = "Ensure enough drinks are available to the crew on the Odin."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinBartender")
|
|
req_perms = null
|
|
req_perms_edit = R_CCIAA
|
|
max_count = 1
|
|
|
|
outfit = /obj/outfit/admin/nt/odinbartender
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_TAJARA,SPECIES_UNATHI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Odin Bartender"
|
|
special_role = "Odin Bartender"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
|
|
/datum/ghostspawner/human/admin/odinjanitor
|
|
short_name = "odinjanitor"
|
|
name = "Odin Sanitation Specialist"
|
|
desc = "You are a expert in your field. A true authority. The crew looks to you when they get into a sticky situation. You are a janitor on the Odin."
|
|
|
|
enabled = FALSE
|
|
spawnpoints = list("OdinJanitor")
|
|
req_perms = null
|
|
max_count = 1
|
|
|
|
outfit = /obj/outfit/admin/nt/odinjanitor
|
|
possible_species = list(SPECIES_HUMAN,SPECIES_SKRELL, SPECIES_SKRELL_AXIORI,SPECIES_TAJARA,SPECIES_UNATHI,SPECIES_IPC)
|
|
allow_appearance_change = APPEARANCE_PLASTICSURGERY
|
|
|
|
assigned_role = "Sanitation Specialist"
|
|
special_role = "Sanitation Specialist"
|
|
respawn_flag = null
|
|
|
|
mob_name = null
|
|
mob_name_prefix = "Spec. "
|
|
mob_name_pick_message = "Pick a callsign or last-name."
|
|
|
|
/client/proc/despawn()
|
|
set name = "Despawn"
|
|
set desc = "Your work is done. Leave this realm."
|
|
set category = "Special Verbs"
|
|
|
|
var/mob/M = mob
|
|
M.mind.special_role = null
|
|
M.ghostize(1)
|
|
remove_verb(src, /client/proc/despawn)
|
|
qdel(M)
|
|
|
|
|
|
|
|
/hook/shuttle_moved/proc/setup_odin_for_shuttle(var/obj/effect/shuttle_landmark/start_location, var/obj/effect/shuttle_landmark/destination)
|
|
if(start_location.landmark_tag != "nav_emergency_start")
|
|
return TRUE
|
|
|
|
if(GLOB.evacuation_controller.evacuation_type == TRANSFER_EMERGENCY)
|
|
if(get_security_level() != "green" )
|
|
var/datum/wifi/sender/door/wifi_sender = new("odin_arrivals_lockdown", SSghostroles)
|
|
wifi_sender.activate("close")
|
|
qdel(wifi_sender)
|
|
|
|
if(prob(80))
|
|
var/datum/ghostspawner/G = SSghostroles.get_spawner("checkpointsec")
|
|
G.enable()
|
|
return TRUE
|
|
else
|
|
if(get_security_level() == "green" && prob(70))
|
|
var/datum/ghostspawner/G = SSghostroles.get_spawner("odinchef")
|
|
G.enable()
|
|
G = SSghostroles.get_spawner("odinbartender")
|
|
G.enable()
|
|
if(get_security_level() == "blue")
|
|
var/datum/wifi/sender/door/wifi_sender = new("odin_arrivals_lockdown", SSghostroles)
|
|
wifi_sender.activate("close")
|
|
qdel(wifi_sender)
|
|
|
|
if(prob(50))
|
|
var/datum/ghostspawner/G = SSghostroles.get_spawner("checkpointsec")
|
|
G.enable()
|
|
return TRUE
|