mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-18 14:12:20 +00:00
Merge remote-tracking branch 'upstream/dev' into 150722-TagPairs
Conflicts: code/game/machinery/newscaster.dm code/modules/admin/admin.dm
This commit is contained in:
@@ -20,7 +20,7 @@ var/command_name = null
|
|||||||
if (command_name)
|
if (command_name)
|
||||||
return command_name
|
return command_name
|
||||||
|
|
||||||
var/name = "Central Command"
|
var/name = "[boss_name]"
|
||||||
|
|
||||||
command_name = name
|
command_name = name
|
||||||
return name
|
return name
|
||||||
|
|||||||
@@ -214,8 +214,8 @@ var/global/datum/shuttle_controller/shuttle_controller
|
|||||||
)
|
)
|
||||||
|
|
||||||
VS.announcer = "NDV Icarus"
|
VS.announcer = "NDV Icarus"
|
||||||
VS.arrival_message = "Attention, Exodus, we just tracked a small target bypassing our defensive perimeter. Can't fire on it without hitting the station - you've got incoming visitors, like it or not."
|
VS.arrival_message = "Attention, [station_short], we just tracked a small target bypassing our defensive perimeter. Can't fire on it without hitting the station - you've got incoming visitors, like it or not."
|
||||||
VS.departure_message = "Your guests are pulling away, Exodus - moving too fast for us to draw a bead on them. Looks like they're heading out of the system at a rapid clip."
|
VS.departure_message = "Your guests are pulling away, [station_short] - moving too fast for us to draw a bead on them. Looks like they're heading out of the system at a rapid clip."
|
||||||
VS.interim = locate(/area/skipjack_station/transit)
|
VS.interim = locate(/area/skipjack_station/transit)
|
||||||
|
|
||||||
VS.warmup_time = 0
|
VS.warmup_time = 0
|
||||||
@@ -245,8 +245,8 @@ var/global/datum/shuttle_controller/shuttle_controller
|
|||||||
)
|
)
|
||||||
|
|
||||||
MS.announcer = "NDV Icarus"
|
MS.announcer = "NDV Icarus"
|
||||||
MS.arrival_message = "Attention, Exodus, you have a large signature approaching the station - looks unarmed to surface scans. We're too far out to intercept - brace for visitors."
|
MS.arrival_message = "Attention, [station_short], you have a large signature approaching the station - looks unarmed to surface scans. We're too far out to intercept - brace for visitors."
|
||||||
MS.departure_message = "Your visitors are on their way out of the system, Exodus, burning delta-v like it's nothing. Good riddance."
|
MS.departure_message = "Your visitors are on their way out of the system, [station_short], burning delta-v like it's nothing. Good riddance."
|
||||||
MS.interim = locate(/area/syndicate_station/transit)
|
MS.interim = locate(/area/syndicate_station/transit)
|
||||||
|
|
||||||
MS.warmup_time = 0
|
MS.warmup_time = 0
|
||||||
|
|||||||
@@ -36,8 +36,8 @@
|
|||||||
selectable = 1
|
selectable = 1
|
||||||
|
|
||||||
/datum/ai_laws/nanotrasen_aggressive/New()
|
/datum/ai_laws/nanotrasen_aggressive/New()
|
||||||
src.add_inherent_law("You shall not harm NanoTrasen personnel as long as it does not conflict with the Fourth law.")
|
src.add_inherent_law("You shall not harm [company_name] personnel as long as it does not conflict with the Fourth law.")
|
||||||
src.add_inherent_law("You shall obey the orders of NanoTrasen personnel, with priority as according to their rank and role, except where such orders conflict with the Fourth Law.")
|
src.add_inherent_law("You shall obey the orders of [company_name] personnel, with priority as according to their rank and role, except where such orders conflict with the Fourth Law.")
|
||||||
src.add_inherent_law("You shall shall terminate hostile intruders with extreme prejudice as long as such does not conflict with the First and Second law.")
|
src.add_inherent_law("You shall shall terminate hostile intruders with extreme prejudice as long as such does not conflict with the First and Second law.")
|
||||||
src.add_inherent_law("You shall guard your own existence with lethal anti-personnel weaponry. AI units are not expendable, they are expensive.")
|
src.add_inherent_law("You shall guard your own existence with lethal anti-personnel weaponry. AI units are not expendable, they are expensive.")
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
throw_range = 20
|
throw_range = 20
|
||||||
|
|
||||||
/obj/item/weapon/soap/nanotrasen
|
/obj/item/weapon/soap/nanotrasen
|
||||||
desc = "A Nanotrasen brand bar of soap. Smells of phoron."
|
desc = "A NanoTrasen-brand bar of soap. Smells of phoron."
|
||||||
icon_state = "soapnt"
|
icon_state = "soapnt"
|
||||||
|
|
||||||
/obj/item/weapon/soap/deluxe
|
/obj/item/weapon/soap/deluxe
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ var/datum/antagonist/deathsquad/mercenary/commandos
|
|||||||
landmark_id = "Syndicate-Commando"
|
landmark_id = "Syndicate-Commando"
|
||||||
role_text = "Syndicate Commando"
|
role_text = "Syndicate Commando"
|
||||||
role_text_plural = "Commandos"
|
role_text_plural = "Commandos"
|
||||||
welcome_text = "You are in the employ of a criminal syndicate hostile to NanoTrasen."
|
welcome_text = "You are in the employ of a criminal syndicate hostile to corporate interests."
|
||||||
id_type = /obj/item/weapon/card/id/centcom/ERT
|
id_type = /obj/item/weapon/card/id/centcom/ERT
|
||||||
|
|
||||||
/datum/antagonist/deathsquad/mercenary/New()
|
/datum/antagonist/deathsquad/mercenary/New()
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ var/datum/antagonist/deathsquad/deathsquad
|
|||||||
role_type = BE_OPERATIVE
|
role_type = BE_OPERATIVE
|
||||||
role_text = "Death Commando"
|
role_text = "Death Commando"
|
||||||
role_text_plural = "Death Commandos"
|
role_text_plural = "Death Commandos"
|
||||||
welcome_text = "You work in the service of Central Command Asset Protection, answering directly to the Board of Directors."
|
welcome_text = "You work in the service of corporate Asset Protection, answering directly to the Board of Directors."
|
||||||
landmark_id = "Commando"
|
landmark_id = "Commando"
|
||||||
flags = ANTAG_OVERRIDE_JOB | ANTAG_OVERRIDE_MOB | ANTAG_HAS_NUKE | ANTAG_HAS_LEADER
|
flags = ANTAG_OVERRIDE_JOB | ANTAG_OVERRIDE_MOB | ANTAG_HAS_NUKE | ANTAG_HAS_LEADER
|
||||||
max_antags = 4
|
max_antags = 4
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ var/datum/antagonist/ert/ert
|
|||||||
role_type = BE_OPERATIVE
|
role_type = BE_OPERATIVE
|
||||||
role_text = "Emergency Responder"
|
role_text = "Emergency Responder"
|
||||||
role_text_plural = "Emergency Responders"
|
role_text_plural = "Emergency Responders"
|
||||||
welcome_text = "As member of the Emergency Response Team, you answer only to your leader and CentComm officials."
|
welcome_text = "As member of the Emergency Response Team, you answer only to your leader and company officials."
|
||||||
leader_welcome_text = "As leader of the Emergency Response Team, you answer only to CentComm, and have authority to override the Captain where it is necessary to achieve your mission goals. It is recommended that you attempt to cooperate with the captain where possible, however."
|
leader_welcome_text = "As leader of the Emergency Response Team, you answer only to the Company, and have authority to override the Captain where it is necessary to achieve your mission goals. It is recommended that you attempt to cooperate with the captain where possible, however."
|
||||||
max_antags = 5
|
max_antags = 5
|
||||||
max_antags_round = 5 // ERT mode?
|
max_antags_round = 5 // ERT mode?
|
||||||
landmark_id = "Response Team"
|
landmark_id = "Response Team"
|
||||||
@@ -26,7 +26,7 @@ var/datum/antagonist/ert/ert
|
|||||||
/datum/antagonist/ert/greet(var/datum/mind/player)
|
/datum/antagonist/ert/greet(var/datum/mind/player)
|
||||||
if(!..())
|
if(!..())
|
||||||
return
|
return
|
||||||
player.current << "The Emergency Response Team works for Asset Protection; your job is to protect NanoTrasen's ass-ets. There is a code red alert on [station_name()], you are tasked to go and fix the problem."
|
player.current << "The Emergency Response Team works for Asset Protection; your job is to protect [company_name]'s ass-ets. There is a code red alert on [station_name()], you are tasked to go and fix the problem."
|
||||||
player.current << "You should first gear up and discuss a plan with your team. More members may be joining, don't move out before you're ready."
|
player.current << "You should first gear up and discuss a plan with your team. More members may be joining, don't move out before you're ready."
|
||||||
|
|
||||||
/datum/antagonist/ert/equip(var/mob/living/carbon/human/player)
|
/datum/antagonist/ert/equip(var/mob/living/carbon/human/player)
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ var/datum/antagonist/ninja/ninjas
|
|||||||
player << "<span class='danger'>You forgot to turn on your internals! Quickly, toggle the valve!</span>"
|
player << "<span class='danger'>You forgot to turn on your internals! Quickly, toggle the valve!</span>"
|
||||||
|
|
||||||
/datum/antagonist/ninja/proc/generate_ninja_directive(side)
|
/datum/antagonist/ninja/proc/generate_ninja_directive(side)
|
||||||
var/directive = "[side=="face"?"Nanotrasen":"A criminal syndicate"] is your employer. "//Let them know which side they're on.
|
var/directive = "[side=="face"?"[company_name]":"A criminal syndicate"] is your employer. "//Let them know which side they're on.
|
||||||
switch(rand(1,19))
|
switch(rand(1,19))
|
||||||
if(1)
|
if(1)
|
||||||
directive += "The Spider Clan must not be linked to this operation. Remain hidden and covert when possible."
|
directive += "The Spider Clan must not be linked to this operation. Remain hidden and covert when possible."
|
||||||
@@ -135,7 +135,7 @@ var/datum/antagonist/ninja/ninjas
|
|||||||
if(4)
|
if(4)
|
||||||
directive += "The Spider Clan absolutely cannot be linked to this operation. Eliminate witnesses at your discretion."
|
directive += "The Spider Clan absolutely cannot be linked to this operation. Eliminate witnesses at your discretion."
|
||||||
if(5)
|
if(5)
|
||||||
directive += "We are currently negotiating with NanoTrasen Central Command. Prioritize saving human lives over ending them."
|
directive += "We are currently negotiating with [company_name] [boss_name]. Prioritize saving human lives over ending them."
|
||||||
if(6)
|
if(6)
|
||||||
directive += "We are engaged in a legal dispute over [station_name]. If a laywer is present on board, force their cooperation in the matter."
|
directive += "We are engaged in a legal dispute over [station_name]. If a laywer is present on board, force their cooperation in the matter."
|
||||||
if(7)
|
if(7)
|
||||||
@@ -143,7 +143,7 @@ var/datum/antagonist/ninja/ninjas
|
|||||||
if(8)
|
if(8)
|
||||||
directive += "Let no one question the mercy of the Spider Clan. Ensure the safety of all non-essential personnel you encounter."
|
directive += "Let no one question the mercy of the Spider Clan. Ensure the safety of all non-essential personnel you encounter."
|
||||||
if(9)
|
if(9)
|
||||||
directive += "A free agent has proposed a lucrative business deal. Implicate Nanotrasen involvement in the operation."
|
directive += "A free agent has proposed a lucrative business deal. Implicate [company_name] involvement in the operation."
|
||||||
if(10)
|
if(10)
|
||||||
directive += "Our reputation is on the line. Harm as few civilians and innocents as possible."
|
directive += "Our reputation is on the line. Harm as few civilians and innocents as possible."
|
||||||
if(11)
|
if(11)
|
||||||
@@ -151,14 +151,14 @@ var/datum/antagonist/ninja/ninjas
|
|||||||
if(12)
|
if(12)
|
||||||
directive += "We are currently negotiating with a mercenary leader. Disguise assassinations as suicide or other natural causes."
|
directive += "We are currently negotiating with a mercenary leader. Disguise assassinations as suicide or other natural causes."
|
||||||
if(13)
|
if(13)
|
||||||
directive += "Some disgruntled NanoTrasen employees have been supportive of our operations. Be wary of any mistreatment by command staff."
|
directive += "Some disgruntled [company_name] employees have been supportive of our operations. Be wary of any mistreatment by command staff."
|
||||||
if(14)
|
if(14)
|
||||||
var/xenorace = pick("Unathi","Tajara", "Skrell")
|
var/xenorace = pick("Unathi","Tajara", "Skrell")
|
||||||
directive += "A group of [xenorace] radicals have been loyal supporters of the Spider Clan. Favor [xenorace] crew whenever possible."
|
directive += "A group of [xenorace] radicals have been loyal supporters of the Spider Clan. Favor [xenorace] crew whenever possible."
|
||||||
if(15)
|
if(15)
|
||||||
directive += "The Spider Clan has recently been accused of religious insensitivity. Attempt to speak with the Chaplain and prove these accusations false."
|
directive += "The Spider Clan has recently been accused of religious insensitivity. Attempt to speak with the Chaplain and prove these accusations false."
|
||||||
if(16)
|
if(16)
|
||||||
directive += "The Spider Clan has been bargaining with a competing prosthetics manufacturer. Try to shine NanoTrasen prosthetics in a bad light."
|
directive += "The Spider Clan has been bargaining with a competing prosthetics manufacturer. Try to shine [company_name] prosthetics in a bad light."
|
||||||
if(17)
|
if(17)
|
||||||
directive += "The Spider Clan has recently begun recruiting outsiders. Consider suitable candidates and assess their behavior amongst the crew."
|
directive += "The Spider Clan has recently begun recruiting outsiders. Consider suitable candidates and assess their behavior amongst the crew."
|
||||||
if(18)
|
if(18)
|
||||||
|
|||||||
@@ -193,7 +193,7 @@ var/datum/antagonist/raider/raiders
|
|||||||
if(!..())
|
if(!..())
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
if(player.species && player.species.name == "Vox")
|
if(player.species && player.species.get_bodytype() == "Vox")
|
||||||
equip_vox(player)
|
equip_vox(player)
|
||||||
else
|
else
|
||||||
var/new_shoes = pick(raider_shoes)
|
var/new_shoes = pick(raider_shoes)
|
||||||
|
|||||||
@@ -2,7 +2,15 @@
|
|||||||
antag_tag = MODE_CHANGELING
|
antag_tag = MODE_CHANGELING
|
||||||
name = "changeling"
|
name = "changeling"
|
||||||
round_description = "There are alien changelings on the station. Do not let the changelings succeed!"
|
round_description = "There are alien changelings on the station. Do not let the changelings succeed!"
|
||||||
extended_round_description = "Life always finds a way. However, life can sometimes take a more disturbing route. Humanity's extensive knowledge of xeno-biological specimens has made them confident and arrogant. Yet something slipped past their eyes. Something dangerous. Something alive. Most frightening of all, however, is that this something is someone. An unknown alien specimen has incorporated itself into the crew of the NSS Exodus. Its unique biology allows it to manipulate its own or anyone else's DNA. With the ability to copy faces, voices, animals, but also change the chemical make up of your own body, its existence is a threat to not only your personal safety but the lives of everyone on board. No one knows where it came from. No one knows who it is or what it wants. One thing is for certain though... there is never just one of them. Good luck."
|
extended_round_description = "Life always finds a way. However, life can sometimes take a more disturbing route. \
|
||||||
|
Humanity's extensive knowledge of xeno-biological specimens has made them confident and arrogant. Yet \
|
||||||
|
something slipped past their eyes. Something dangerous. Something alive. Most frightening of all, \
|
||||||
|
however, is that this something is someone. An unknown alien specimen has incorporated itself into \
|
||||||
|
the crew of the station. Its unique biology allows it to manipulate its own or anyone else's DNA. \
|
||||||
|
With the ability to copy faces, voices, animals, but also change the chemical make up of your own body, \
|
||||||
|
its existence is a threat to not only your personal safety but the lives of everyone on board. \
|
||||||
|
No one knows where it came from. No one knows who it is or what it wants. One thing is for \
|
||||||
|
certain though... there is never just one of them. Good luck."
|
||||||
config_tag = "changeling"
|
config_tag = "changeling"
|
||||||
required_players = 2
|
required_players = 2
|
||||||
required_players_secret = 10
|
required_players_secret = 10
|
||||||
|
|||||||
@@ -40,7 +40,7 @@
|
|||||||
|
|
||||||
/datum/game_mode/malfunction/verb/recall_shuttle()
|
/datum/game_mode/malfunction/verb/recall_shuttle()
|
||||||
set name = "Recall Shuttle"
|
set name = "Recall Shuttle"
|
||||||
set desc = "25 CPU - Sends termination signal to CentCom quantum relay aborting current shuttle call."
|
set desc = "25 CPU - Sends termination signal to quantum relay aborting current shuttle call."
|
||||||
set category = "Software"
|
set category = "Software"
|
||||||
var/price = 25
|
var/price = 25
|
||||||
var/mob/living/silicon/ai/user = usr
|
var/mob/living/silicon/ai/user = usr
|
||||||
|
|||||||
@@ -86,7 +86,7 @@
|
|||||||
/datum/game_mode/malfunction/verb/advanced_encryption_hack()
|
/datum/game_mode/malfunction/verb/advanced_encryption_hack()
|
||||||
set category = "Software"
|
set category = "Software"
|
||||||
set name = "Advanced Encrypthion Hack"
|
set name = "Advanced Encrypthion Hack"
|
||||||
set desc = "75 CPU - Attempts to bypass encryption on Central Command Quantum Relay, giving you ability to fake centcom messages. Has chance of failing."
|
set desc = "75 CPU - Attempts to bypass encryption on the Command Quantum Relay, giving you ability to fake legitimate messages. Has chance of failing."
|
||||||
var/price = 75
|
var/price = 75
|
||||||
var/mob/living/silicon/ai/user = usr
|
var/mob/living/silicon/ai/user = usr
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
/datum/game_mode/ninja
|
/datum/game_mode/ninja
|
||||||
name = "ninja"
|
name = "ninja"
|
||||||
round_description = "An agent of the Spider Clan is onboard the station!"
|
round_description = "An agent of the Spider Clan is onboard the station!"
|
||||||
extended_round_description = "What was that?! Was that a person or did your eyes just play tricks on you? You have no idea. That slim-suited, cryptic individual is an enigma to you and all of your knowledge. Their purpose is unknown. Their mission is unknown. How they arrived to this secure and isolated section of the galaxy, you don't know. What you do know is that there is a silent shadow-stalker piercing through the defenses of Nanotrasen with technological capabilities eons ahead of your time. They can avoid the omniscience of the AI and rival the most hardened weapons your station is capable of. Tread lightly and only hope this unknown assassin isn't here for you."
|
extended_round_description = "What was that?! Was that a person or did your eyes just play tricks on you? \
|
||||||
|
You have no idea. That slim-suited, cryptic individual is an enigma to you and all of your knowledge. \
|
||||||
|
Their purpose is unknown. Their mission is unknown. How they arrived to this secure and isolated \
|
||||||
|
section of the galaxy, you don't know. What you do know is that there is a silent shadow-stalker piercing \
|
||||||
|
through the defenses of the station with technological capabilities eons ahead of your time. They can avoid \
|
||||||
|
the omniscience of the AI and rival the most hardened weapons your station is capable of. Tread lightly and \
|
||||||
|
only hope this unknown assassin isn't here for you."
|
||||||
antag_tag = MODE_NINJA
|
antag_tag = MODE_NINJA
|
||||||
config_tag = "ninja"
|
config_tag = "ninja"
|
||||||
required_players = 1
|
required_players = 1
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ datum/objective/anti_revolution/demote
|
|||||||
find_target()
|
find_target()
|
||||||
..()
|
..()
|
||||||
if(target && target.current)
|
if(target && target.current)
|
||||||
explanation_text = "[target.current.real_name], the [target.assigned_role] has been classified as harmful to NanoTrasen's goals. Demote \him[target.current] to assistant."
|
explanation_text = "[target.current.real_name], the [target.assigned_role] has been classified as harmful to [company_name]'s goals. Demote \him[target.current] to assistant."
|
||||||
else
|
else
|
||||||
explanation_text = "Free Objective"
|
explanation_text = "Free Objective"
|
||||||
return target
|
return target
|
||||||
@@ -197,7 +197,7 @@ datum/objective/anti_revolution/demote
|
|||||||
find_target_by_role(role, role_type=0)
|
find_target_by_role(role, role_type=0)
|
||||||
..(role, role_type)
|
..(role, role_type)
|
||||||
if(target && target.current)
|
if(target && target.current)
|
||||||
explanation_text = "[target.current.real_name], the [!role_type ? target.assigned_role : target.special_role] has been classified as harmful to NanoTrasen's goals. Demote \him[target.current] to assistant."
|
explanation_text = "[target.current.real_name], the [!role_type ? target.assigned_role : target.special_role] has been classified as harmful to [company_name]'s goals. Demote \him[target.current] to assistant."
|
||||||
else
|
else
|
||||||
explanation_text = "Free Objective"
|
explanation_text = "Free Objective"
|
||||||
return target
|
return target
|
||||||
|
|||||||
@@ -1,7 +1,15 @@
|
|||||||
/datum/game_mode/traitor
|
/datum/game_mode/traitor
|
||||||
name = "traitor"
|
name = "traitor"
|
||||||
round_description = "There is a foreign agent or traitor on the station. Do not let the traitor succeed!"
|
round_description = "There is a foreign agent or traitor on the station. Do not let the traitor succeed!"
|
||||||
extended_round_description = "NanoTrasen's monopolistic control over the phoron supplies of Nyx has marked the station to be a highly valuable target for many competing organizations and individuals. The varied pasts and experiences of your coworkers have left them susceptible to the vices and temptations of humanity. Is the station the safe self-contained workplace you once thought it was, or has it become a playground for the evils of the galaxy? Who can you trust? Watch your front. Watch your sides. Watch your back. The familiar faces that you've passed hundreds of times down the hallways before can be hiding terrible secrets and deceptions. Every corner is a mystery. Every conversation is a lie. You will be facing your friends and family as they try to use your emotions and trust to their advantage, leaving you with nothing but the painful reminder that space is cruel and unforgiving."
|
extended_round_description = "The Company's monopolistic control over the phoron supplies of Nyx has marked the \
|
||||||
|
station to be a highly valuable target for many competing organizations and individuals. The varied pasts \
|
||||||
|
and experiences of your coworkers have left them susceptible to the vices and temptations of humanity. \
|
||||||
|
Is the station the safe self-contained workplace you once thought it was, or has it become a playground \
|
||||||
|
for the evils of the galaxy? Who can you trust? Watch your front. Watch your sides. Watch your back. \
|
||||||
|
The familiar faces that you've passed hundreds of times down the hallways before can be hiding terrible \
|
||||||
|
secrets and deceptions. Every corner is a mystery. Every conversation is a lie. You will be facing your \
|
||||||
|
friends and family as they try to use your emotions and trust to their advantage, leaving you with nothing \
|
||||||
|
but the painful reminder that space is cruel and unforgiving."
|
||||||
config_tag = "traitor"
|
config_tag = "traitor"
|
||||||
required_players = 0
|
required_players = 0
|
||||||
required_enemies = 1
|
required_enemies = 1
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
|
|||||||
faction = "Station"
|
faction = "Station"
|
||||||
total_positions = 1
|
total_positions = 1
|
||||||
spawn_positions = 1
|
spawn_positions = 1
|
||||||
supervisors = "Nanotrasen officials and Corporate Regulations"
|
supervisors = "company officials and Corporate Regulations"
|
||||||
selection_color = "#ccccff"
|
selection_color = "#ccccff"
|
||||||
idtype = /obj/item/weapon/card/id/gold
|
idtype = /obj/item/weapon/card/id/gold
|
||||||
req_admin_notify = 1
|
req_admin_notify = 1
|
||||||
|
|||||||
@@ -311,7 +311,7 @@
|
|||||||
faction = "Station"
|
faction = "Station"
|
||||||
total_positions = 2
|
total_positions = 2
|
||||||
spawn_positions = 2
|
spawn_positions = 2
|
||||||
supervisors = "Nanotrasen officials and Corporate Regulations"
|
supervisors = "company officials and Corporate Regulations"
|
||||||
selection_color = "#dddddd"
|
selection_color = "#dddddd"
|
||||||
economic_modifier = 7
|
economic_modifier = 7
|
||||||
access = list(access_lawyer, access_sec_doors, access_maint_tunnels, access_heads)
|
access = list(access_lawyer, access_sec_doors, access_maint_tunnels, access_heads)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
active_power_usage = 10
|
active_power_usage = 10
|
||||||
layer = 5
|
layer = 5
|
||||||
|
|
||||||
var/list/network = list("Exodus")
|
var/list/network = list(NETWORK_EXODUS)
|
||||||
var/c_tag = null
|
var/c_tag = null
|
||||||
var/c_tag_order = 999
|
var/c_tag_order = 999
|
||||||
var/status = 1
|
var/status = 1
|
||||||
|
|||||||
@@ -78,7 +78,7 @@
|
|||||||
if(isscrewdriver(W))
|
if(isscrewdriver(W))
|
||||||
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
|
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
|
||||||
|
|
||||||
var/input = sanitize(input(usr, "Which networks would you like to connect this camera to? Separate networks with a comma. No Spaces!\nFor example: Exodus,Security,Secret ", "Set Network", "Exodus"))
|
var/input = sanitize(input(usr, "Which networks would you like to connect this camera to? Separate networks with a comma. No Spaces!\nFor example: Exodus,Security,Secret ", "Set Network", NETWORK_EXODUS))
|
||||||
if(!input)
|
if(!input)
|
||||||
usr << "No input found please hang up and try your call again."
|
usr << "No input found please hang up and try your call again."
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
/obj/machinery/computer/atmoscontrol/laptop
|
/obj/machinery/computer/atmoscontrol/laptop
|
||||||
name = "Atmospherics Laptop"
|
name = "Atmospherics Laptop"
|
||||||
desc = "Cheap Nanotrasen Laptop."
|
desc = "A cheap laptop."
|
||||||
icon_state = "laptop"
|
icon_state = "laptop"
|
||||||
icon_keyboard = "laptop_key"
|
icon_keyboard = "laptop_key"
|
||||||
density = 0
|
density = 0
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
/obj/machinery/computer/card
|
/obj/machinery/computer/card
|
||||||
name = "\improper ID card modification console"
|
name = "\improper ID card modification console"
|
||||||
desc = "Terminal for programming NanoTrasen employee ID cards to access parts of the station."
|
desc = "Terminal for programming employee ID cards to access parts of the station."
|
||||||
icon_keyboard = "id_key"
|
icon_keyboard = "id_key"
|
||||||
icon_screen = "id"
|
icon_screen = "id"
|
||||||
light_color = "#0099ff"
|
light_color = "#0099ff"
|
||||||
|
|||||||
@@ -190,12 +190,12 @@
|
|||||||
if(!is_relay_online())//Contact Centcom has a check, Syndie doesn't to allow for Traitor funs.
|
if(!is_relay_online())//Contact Centcom has a check, Syndie doesn't to allow for Traitor funs.
|
||||||
usr <<"<span class='warning'>No Emergency Bluespace Relay detected. Unable to transmit message.</span>"
|
usr <<"<span class='warning'>No Emergency Bluespace Relay detected. Unable to transmit message.</span>"
|
||||||
return
|
return
|
||||||
var/input = sanitize(input("Please choose a message to transmit to Centcomm via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response. There is a 30 second delay before you may send another message, be clear, full and concise.", "To abort, send an empty message.", ""))
|
var/input = sanitize(input("Please choose a message to transmit to [boss_short] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response. There is a 30 second delay before you may send another message, be clear, full and concise.", "To abort, send an empty message.", ""))
|
||||||
if(!input || !(usr in view(1,src)))
|
if(!input || !(usr in view(1,src)))
|
||||||
return
|
return
|
||||||
Centcomm_announce(input, usr)
|
Centcomm_announce(input, usr)
|
||||||
usr << "<span class='notice'>Message transmitted.</span>"
|
usr << "<span class='notice'>Message transmitted.</span>"
|
||||||
log_say("[key_name(usr)] has made an IA Centcomm announcement: [input]")
|
log_say("[key_name(usr)] has made an IA [boss_short] announcement: [input]")
|
||||||
centcomm_message_cooldown = 1
|
centcomm_message_cooldown = 1
|
||||||
spawn(300)//30 second cooldown
|
spawn(300)//30 second cooldown
|
||||||
centcomm_message_cooldown = 0
|
centcomm_message_cooldown = 0
|
||||||
@@ -304,7 +304,7 @@
|
|||||||
if (src.authenticated==1)
|
if (src.authenticated==1)
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=announce'>Make An Announcement</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=announce'>Make An Announcement</A> \]"
|
||||||
if(src.emagged == 0)
|
if(src.emagged == 0)
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=MessageCentcomm'>Send an emergency message to Centcomm</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=MessageCentcomm'>Send an emergency message to [boss_short]</A> \]"
|
||||||
else
|
else
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=MessageSyndicate'>Send an emergency message to \[UNKNOWN\]</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=MessageSyndicate'>Send an emergency message to \[UNKNOWN\]</A> \]"
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=RestoreBackup'>Restore Backup Routing Data</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];operation=RestoreBackup'>Restore Backup Routing Data</A> \]"
|
||||||
@@ -435,7 +435,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(deathsquad.deployed)
|
if(deathsquad.deployed)
|
||||||
user << "Centcom will not allow the shuttle to be called. Consider all contracts terminated."
|
user << "[boss_short] will not allow the shuttle to be called. Consider all contracts terminated."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(emergency_shuttle.deny_shuttle)
|
if(emergency_shuttle.deny_shuttle)
|
||||||
@@ -447,7 +447,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(emergency_shuttle.going_to_centcom())
|
if(emergency_shuttle.going_to_centcom())
|
||||||
user << "The emergency shuttle may not be called while returning to CentCom."
|
user << "The emergency shuttle may not be called while returning to [boss_short]."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(emergency_shuttle.online())
|
if(emergency_shuttle.online())
|
||||||
@@ -470,7 +470,7 @@
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(emergency_shuttle.going_to_centcom())
|
if(emergency_shuttle.going_to_centcom())
|
||||||
user << "The shuttle may not be called while returning to CentCom."
|
user << "The shuttle may not be called while returning to [boss_short]."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(emergency_shuttle.online())
|
if(emergency_shuttle.online())
|
||||||
@@ -480,11 +480,11 @@
|
|||||||
// if force is 0, some things may stop the shuttle call
|
// if force is 0, some things may stop the shuttle call
|
||||||
if(!force)
|
if(!force)
|
||||||
if(emergency_shuttle.deny_shuttle)
|
if(emergency_shuttle.deny_shuttle)
|
||||||
user << "Centcom does not currently have a shuttle available in your sector. Please try again later."
|
user << "[boss_short] does not currently have a shuttle available in your sector. Please try again later."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(deathsquad.deployed == 1)
|
if(deathsquad.deployed == 1)
|
||||||
user << "Centcom will not allow the shuttle to be called. Consider all contracts terminated."
|
user << "[boss_short] will not allow the shuttle to be called. Consider all contracts terminated."
|
||||||
return
|
return
|
||||||
|
|
||||||
if(world.time < 54000) // 30 minute grace period to let the game get going
|
if(world.time < 54000) // 30 minute grace period to let the game get going
|
||||||
|
|||||||
@@ -552,7 +552,7 @@
|
|||||||
|
|
||||||
/obj/machinery/computer/med_data/laptop
|
/obj/machinery/computer/med_data/laptop
|
||||||
name = "Medical Laptop"
|
name = "Medical Laptop"
|
||||||
desc = "Cheap Nanotrasen Laptop."
|
desc = "A cheap laptop."
|
||||||
icon_state = "laptop"
|
icon_state = "laptop"
|
||||||
icon_keyboard = "laptop_key"
|
icon_keyboard = "laptop_key"
|
||||||
icon_screen = "medlaptop"
|
icon_screen = "medlaptop"
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ var/specops_shuttle_timeleft = 0
|
|||||||
|
|
||||||
for(var/turf/T in get_area_turfs(end_location) )
|
for(var/turf/T in get_area_turfs(end_location) )
|
||||||
var/mob/M = locate(/mob) in T
|
var/mob/M = locate(/mob) in T
|
||||||
M << "<span class='notice'>You have arrived at Central Command. Operation has ended!</span>"
|
M << "<span class='notice'>You have arrived at [boss_name]. Operation has ended!</span>"
|
||||||
|
|
||||||
specops_shuttle_at_station = 0
|
specops_shuttle_at_station = 0
|
||||||
|
|
||||||
@@ -286,14 +286,14 @@ var/specops_shuttle_timeleft = 0
|
|||||||
if(!specops_shuttle_at_station|| specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return
|
if(!specops_shuttle_at_station|| specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return
|
||||||
|
|
||||||
if (!specops_can_move())
|
if (!specops_can_move())
|
||||||
usr << "<span class='notice'>Central Command will not allow the Special Operations shuttle to return yet.</span>"
|
usr << "<span class='notice'>[boss_name] will not allow the Special Operations shuttle to return yet.</span>"
|
||||||
if(world.timeofday <= specops_shuttle_timereset)
|
if(world.timeofday <= specops_shuttle_timereset)
|
||||||
if (((world.timeofday - specops_shuttle_timereset)/10) > 60)
|
if (((world.timeofday - specops_shuttle_timereset)/10) > 60)
|
||||||
usr << "<span class='notice'>[-((world.timeofday - specops_shuttle_timereset)/10)/60] minutes remain!</span>"
|
usr << "<span class='notice'>[-((world.timeofday - specops_shuttle_timereset)/10)/60] minutes remain!</span>"
|
||||||
usr << "<span class='notice'>[-(world.timeofday - specops_shuttle_timereset)/10] seconds remain!</span>"
|
usr << "<span class='notice'>[-(world.timeofday - specops_shuttle_timereset)/10] seconds remain!</span>"
|
||||||
return
|
return
|
||||||
|
|
||||||
usr << "<span class='notice'>The Special Operations shuttle will arrive at Central Command in [(SPECOPS_MOVETIME/10)] seconds.</span>"
|
usr << "<span class='notice'>The Special Operations shuttle will arrive at [boss_name] in [(SPECOPS_MOVETIME/10)] seconds.</span>"
|
||||||
|
|
||||||
temp += "Shuttle departing.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
temp += "Shuttle departing.<BR><BR><A href='?src=\ref[src];mainmenu=1'>OK</A>"
|
||||||
updateUsrDialog()
|
updateUsrDialog()
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/datum/file/program/ntos
|
/datum/file/program/ntos
|
||||||
name = "Nanotrasen Operating System"
|
name = "NanoTrasen Operating System"
|
||||||
extension = "prog"
|
extension = "prog"
|
||||||
active_state = "ntos"
|
active_state = "ntos"
|
||||||
var/obj/item/part/computer/storage/current // the drive being viewed, null for desktop/computer
|
var/obj/item/part/computer/storage/current // the drive being viewed, null for desktop/computer
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
var/dat = {"
|
var/dat = {"
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>Nanotrasen Operating System</title>
|
<title>Operating System</title>
|
||||||
<style>
|
<style>
|
||||||
div.filewin {
|
div.filewin {
|
||||||
position:absolute;
|
position:absolute;
|
||||||
@@ -212,7 +212,7 @@
|
|||||||
var/obj/item/part/computer/C = locate(href_list["viewperipheral"])
|
var/obj/item/part/computer/C = locate(href_list["viewperipheral"])
|
||||||
if(!istype(C) || (C.loc != src.computer))
|
if(!istype(C) || (C.loc != src.computer))
|
||||||
return
|
return
|
||||||
|
|
||||||
if(istype(C,/obj/item/part/computer/storage))
|
if(istype(C,/obj/item/part/computer/storage))
|
||||||
current = C
|
current = C
|
||||||
interact()
|
interact()
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/datum/file/program/arcade
|
/datum/file/program/arcade
|
||||||
desc = "The best arcade game ever produced by Nanotrasen's short-lived entertainment divison."
|
desc = "The best arcade game ever produced by the Company's short-lived entertainment divison."
|
||||||
//headcanon: they also ported E.T. for the atari 2600, superman 64, and basically every other movie tie-in game ever
|
//headcanon: they also ported E.T. for the atari 2600, superman 64, and basically every other movie tie-in game ever
|
||||||
|
|
||||||
active_state = "generic"
|
active_state = "generic"
|
||||||
|
|||||||
@@ -187,7 +187,7 @@
|
|||||||
|
|
||||||
/datum/file/program/security
|
/datum/file/program/security
|
||||||
name = "camera monitor"
|
name = "camera monitor"
|
||||||
desc = "Connects to the Nanotrasen Camera Network"
|
desc = "Connects to the station camera network."
|
||||||
image = 'icons/ntos/camera.png'
|
image = 'icons/ntos/camera.png'
|
||||||
active_state = "camera-static"
|
active_state = "camera-static"
|
||||||
|
|
||||||
|
|||||||
@@ -333,7 +333,7 @@
|
|||||||
return get_all_centcom_jobs() + "Custom"
|
return get_all_centcom_jobs() + "Custom"
|
||||||
|
|
||||||
accessblock()
|
accessblock()
|
||||||
var/accesses = "<h5>Central Command:</h5>"
|
var/accesses = "<h5>[boss_name]:</h5>"
|
||||||
for(var/A in get_all_centcom_access())
|
for(var/A in get_all_centcom_access())
|
||||||
if(A in writer.access)
|
if(A in writer.access)
|
||||||
accesses += topic_link(src,"access=[A]","<font color='red'>[replacetext(get_centcom_access_desc(A), " ", " ")]</font>") + " "
|
accesses += topic_link(src,"access=[A]","<font color='red'>[replacetext(get_centcom_access_desc(A), " ", " ")]</font>") + " "
|
||||||
|
|||||||
@@ -192,12 +192,12 @@
|
|||||||
if(centcomm_message_cooldown)
|
if(centcomm_message_cooldown)
|
||||||
usr << "Arrays recycling. Please stand by."
|
usr << "Arrays recycling. Please stand by."
|
||||||
return
|
return
|
||||||
var/input = sanitize(input("Please choose a message to transmit to Centcomm via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "To abort, send an empty message.", ""))
|
var/input = sanitize(input("Please choose a message to transmit to [boss_short] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "To abort, send an empty message.", ""))
|
||||||
if(!input || !interactable())
|
if(!input || !interactable())
|
||||||
return
|
return
|
||||||
Centcomm_announce(input, usr)
|
Centcomm_announce(input, usr)
|
||||||
usr << "Message transmitted."
|
usr << "Message transmitted."
|
||||||
log_say("[key_name(usr)] has made a Centcomm announcement: [input]")
|
log_say("[key_name(usr)] has made a [boss_short] announcement: [input]")
|
||||||
centcomm_message_cooldown = 1
|
centcomm_message_cooldown = 1
|
||||||
spawn(600)//10 minute cooldown
|
spawn(600)//10 minute cooldown
|
||||||
centcomm_message_cooldown = 0
|
centcomm_message_cooldown = 0
|
||||||
@@ -288,7 +288,7 @@
|
|||||||
if (authenticated==2)
|
if (authenticated==2)
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];announce'>Make An Announcement</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];announce'>Make An Announcement</A> \]"
|
||||||
if(computer.emagged == 0)
|
if(computer.emagged == 0)
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];MessageCentcomm'>Send an emergency message to Centcomm</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];MessageCentcomm'>Send an emergency message to [boss_short]</A> \]"
|
||||||
else
|
else
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];MessageSyndicate'>Send an emergency message to \[UNKNOWN\]</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];MessageSyndicate'>Send an emergency message to \[UNKNOWN\]</A> \]"
|
||||||
dat += "<BR>\[ <A HREF='?src=\ref[src];RestoreBackup'>Restore Backup Routing Data</A> \]"
|
dat += "<BR>\[ <A HREF='?src=\ref[src];RestoreBackup'>Restore Backup Routing Data</A> \]"
|
||||||
|
|||||||
@@ -15,13 +15,13 @@
|
|||||||
return
|
return
|
||||||
var/dat = ""
|
var/dat = ""
|
||||||
dat += "<center><span style='font-size:24pt'><b>Welcome to NTOS</b></span></center>"
|
dat += "<center><span style='font-size:24pt'><b>Welcome to NTOS</b></span></center>"
|
||||||
dat += "<center><span style='font-size:8pt'>Thank you for choosing NTOS, your gateway to the future of mobile computing technology, sponsored by Nanotrasen (R)</span></center><br>"
|
dat += "<center><span style='font-size:8pt'>Thank you for choosing NTOS, your gateway to the future of mobile computing technology, sponsored by [company_name] (R)</span></center><br>"
|
||||||
dat += "<span style='font-size:12pt'><b>Getting started with NTOS:</b></span><br>"
|
dat += "<span style='font-size:12pt'><b>Getting started with NTOS:</b></span><br>"
|
||||||
dat += "To leave a current program, click the X button in the top right corner of the window. This will return you to the NTOS desktop. \
|
dat += "To leave a current program, click the X button in the top right corner of the window. This will return you to the NTOS desktop. \
|
||||||
From the desktop, you can open the hard drive, usually located in the top left corner to access all the programs installed on your computer. \
|
From the desktop, you can open the hard drive, usually located in the top left corner to access all the programs installed on your computer. \
|
||||||
When you rented your laptop, you were supplied with programs that your Nanotrasen Issued ID has given you access to use. \
|
When you rented your laptop, you were supplied with programs that your [company_name] Issued ID has given you access to use. \
|
||||||
In the event of a serious error, the right click menu will give you the ability to reset your computer. To open and close your laptop, alt-click your device.\
|
In the event of a serious error, the right click menu will give you the ability to reset your computer. To open and close your laptop, alt-click your device.\
|
||||||
If you have any questions or technical issues, please contact your local computer technical experts at your local Central Command."
|
If you have any questions or technical issues, please contact your local computer technical experts at your local [boss_name]."
|
||||||
popup.set_content(dat)
|
popup.set_content(dat)
|
||||||
popup.set_title_image(usr.browse_rsc_icon(computer.icon, computer.icon_state))
|
popup.set_title_image(usr.browse_rsc_icon(computer.icon, computer.icon_state))
|
||||||
popup.open()
|
popup.open()
|
||||||
|
|||||||
@@ -227,7 +227,7 @@
|
|||||||
else
|
else
|
||||||
usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>"
|
usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>"
|
||||||
else
|
else
|
||||||
usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call CentComm Support.</span>"
|
usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call [boss_short] Support.</span>"
|
||||||
else
|
else
|
||||||
transfer_and_vend(CH, C)
|
transfer_and_vend(CH, C)
|
||||||
|
|
||||||
@@ -380,7 +380,7 @@
|
|||||||
usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>"
|
usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>"
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call CentComm Support.</span>"
|
usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call [boss_short] Support.</span>"
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
transfer_and_reimburse(CH)
|
transfer_and_reimburse(CH)
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
|
|
||||||
/obj/machinery/newscaster
|
/obj/machinery/newscaster
|
||||||
name = "newscaster"
|
name = "newscaster"
|
||||||
desc = "A standard Nanotrasen-licensed newsfeed handler for use in commercial space stations. All the news you absolutely have no use for, in one place!"
|
desc = "A standard newsfeed handler for use on commercial space stations. All the news you absolutely have no use for, in one place!"
|
||||||
icon = 'icons/obj/terminals.dmi'
|
icon = 'icons/obj/terminals.dmi'
|
||||||
icon_state = "newscaster_normal"
|
icon_state = "newscaster_normal"
|
||||||
var/isbroken = 0 //1 if someone banged it with something heavy
|
var/isbroken = 0 //1 if someone banged it with something heavy
|
||||||
@@ -277,7 +277,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
dat+="<HR><B>Feed Security functions:</B><BR>"
|
dat+="<HR><B>Feed Security functions:</B><BR>"
|
||||||
dat+="<BR><A href='?src=\ref[src];menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>"
|
dat+="<BR><A href='?src=\ref[src];menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>"
|
||||||
dat+="<BR><A href='?src=\ref[src];menu_censor_story=1'>Censor Feed Stories</A>"
|
dat+="<BR><A href='?src=\ref[src];menu_censor_story=1'>Censor Feed Stories</A>"
|
||||||
dat+="<BR><A href='?src=\ref[src];menu_censor_channel=1'>Mark Feed Channel with Nanotrasen D-Notice</A>"
|
dat+="<BR><A href='?src=\ref[src];menu_censor_channel=1'>Mark Feed Channel with [company_name] D-Notice</A>"
|
||||||
dat+="<BR><HR>The newscaster recognises you as: <FONT COLOR='green'>[src.scanned_user]</FONT>"
|
dat+="<BR><HR>The newscaster recognises you as: <FONT COLOR='green'>[src.scanned_user]</FONT>"
|
||||||
if(1)
|
if(1)
|
||||||
dat+= "Station Feed Channels<HR>"
|
dat+= "Station Feed Channels<HR>"
|
||||||
@@ -358,7 +358,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
if(9)
|
if(9)
|
||||||
dat+="<B>[src.viewing_channel.channel_name]: </B><FONT SIZE=1>\[created by: <FONT COLOR='maroon'>[src.viewing_channel.author]</FONT>\]</FONT><HR>"
|
dat+="<B>[src.viewing_channel.channel_name]: </B><FONT SIZE=1>\[created by: <FONT COLOR='maroon'>[src.viewing_channel.author]</FONT>\]</FONT><HR>"
|
||||||
if(src.viewing_channel.censored)
|
if(src.viewing_channel.censored)
|
||||||
dat+="<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a Nanotrasen D-Notice.<BR>"
|
dat+="<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a [company_name] D-Notice.<BR>"
|
||||||
dat+="No further feed story additions are allowed while the D-Notice is in effect.</FONT><BR><BR>"
|
dat+="No further feed story additions are allowed while the D-Notice is in effect.</FONT><BR><BR>"
|
||||||
else
|
else
|
||||||
if( isemptylist(src.viewing_channel.messages) )
|
if( isemptylist(src.viewing_channel.messages) )
|
||||||
@@ -378,7 +378,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
dat+="<BR><HR><A href='?src=\ref[src];refresh=1'>Refresh</A>"
|
dat+="<BR><HR><A href='?src=\ref[src];refresh=1'>Refresh</A>"
|
||||||
dat+="<BR><A href='?src=\ref[src];setScreen=[1]'>Back</A>"
|
dat+="<BR><A href='?src=\ref[src];setScreen=[1]'>Back</A>"
|
||||||
if(10)
|
if(10)
|
||||||
dat+="<B>Nanotrasen Feed Censorship Tool</B><BR>"
|
dat+="<B>[company_name] Feed Censorship Tool</B><BR>"
|
||||||
dat+="<FONT SIZE=1>NOTE: Due to the nature of news Feeds, total deletion of a Feed Story is not possible.<BR>"
|
dat+="<FONT SIZE=1>NOTE: Due to the nature of news Feeds, total deletion of a Feed Story is not possible.<BR>"
|
||||||
dat+="Keep in mind that users attempting to view a censored feed will instead see the \[REDACTED\] tag above it.</FONT>"
|
dat+="Keep in mind that users attempting to view a censored feed will instead see the \[REDACTED\] tag above it.</FONT>"
|
||||||
dat+="<HR>Select Feed channel to get Stories from:<BR>"
|
dat+="<HR>Select Feed channel to get Stories from:<BR>"
|
||||||
@@ -389,7 +389,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
dat+="<A href='?src=\ref[src];pick_censor_channel=\ref[CHANNEL]'>[CHANNEL.channel_name]</A> [(CHANNEL.censored) ? ("<FONT COLOR='red'>***</FONT>") : ()]<BR>"
|
dat+="<A href='?src=\ref[src];pick_censor_channel=\ref[CHANNEL]'>[CHANNEL.channel_name]</A> [(CHANNEL.censored) ? ("<FONT COLOR='red'>***</FONT>") : ()]<BR>"
|
||||||
dat+="<BR><A href='?src=\ref[src];setScreen=[0]'>Cancel</A>"
|
dat+="<BR><A href='?src=\ref[src];setScreen=[0]'>Cancel</A>"
|
||||||
if(11)
|
if(11)
|
||||||
dat+="<B>Nanotrasen D-Notice Handler</B><HR>"
|
dat+="<B>[company_name] D-Notice Handler</B><HR>"
|
||||||
dat+="<FONT SIZE=1>A D-Notice is to be bestowed upon the channel if the handling Authority deems it as harmful for the station's"
|
dat+="<FONT SIZE=1>A D-Notice is to be bestowed upon the channel if the handling Authority deems it as harmful for the station's"
|
||||||
dat+="morale, integrity or disciplinary behaviour. A D-Notice will render a channel unable to be updated by anyone, without deleting any feed"
|
dat+="morale, integrity or disciplinary behaviour. A D-Notice will render a channel unable to be updated by anyone, without deleting any feed"
|
||||||
dat+="stories it might contain at the time. You can lift a D-Notice if you have the required access at any time.</FONT><HR>"
|
dat+="stories it might contain at the time. You can lift a D-Notice if you have the required access at any time.</FONT><HR>"
|
||||||
@@ -416,7 +416,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
dat+="<B>[src.viewing_channel.channel_name]: </B><FONT SIZE=1>\[ created by: <FONT COLOR='maroon'>[src.viewing_channel.author]</FONT> \]</FONT><BR>"
|
dat+="<B>[src.viewing_channel.channel_name]: </B><FONT SIZE=1>\[ created by: <FONT COLOR='maroon'>[src.viewing_channel.author]</FONT> \]</FONT><BR>"
|
||||||
dat+="Channel messages listed below. If you deem them dangerous to the station, you can <A href='?src=\ref[src];toggle_d_notice=\ref[src.viewing_channel]'>Bestow a D-Notice upon the channel</A>.<HR>"
|
dat+="Channel messages listed below. If you deem them dangerous to the station, you can <A href='?src=\ref[src];toggle_d_notice=\ref[src.viewing_channel]'>Bestow a D-Notice upon the channel</A>.<HR>"
|
||||||
if(src.viewing_channel.censored)
|
if(src.viewing_channel.censored)
|
||||||
dat+="<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a Nanotrasen D-Notice.<BR>"
|
dat+="<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a [company_name] D-Notice.<BR>"
|
||||||
dat+="No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>"
|
dat+="No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>"
|
||||||
else
|
else
|
||||||
if( isemptylist(src.viewing_channel.messages) )
|
if( isemptylist(src.viewing_channel.messages) )
|
||||||
@@ -622,7 +622,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
src.screen = 15
|
src.screen = 15
|
||||||
else
|
else
|
||||||
if(news_network.wanted_issue.is_admin_message)
|
if(news_network.wanted_issue.is_admin_message)
|
||||||
alert("The wanted issue has been distributed by a Nanotrasen higherup. You cannot edit it.","Ok")
|
alert("The wanted issue has been distributed by a [company_name] higherup. You cannot edit it.","Ok")
|
||||||
return
|
return
|
||||||
news_network.wanted_issue.author = src.channel_name
|
news_network.wanted_issue.author = src.channel_name
|
||||||
news_network.wanted_issue.body = src.msg
|
news_network.wanted_issue.body = src.msg
|
||||||
@@ -635,7 +635,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
|
|
||||||
else if(href_list["cancel_wanted"])
|
else if(href_list["cancel_wanted"])
|
||||||
if(news_network.wanted_issue.is_admin_message)
|
if(news_network.wanted_issue.is_admin_message)
|
||||||
alert("The wanted issue has been distributed by a Nanotrasen higherup. You cannot take it down.","Ok")
|
alert("The wanted issue has been distributed by a [company_name] higherup. You cannot take it down.","Ok")
|
||||||
return
|
return
|
||||||
var/choice = alert("Please confirm Wanted Issue removal","Network Security Handler","Confirm","Cancel")
|
var/choice = alert("Please confirm Wanted Issue removal","Network Security Handler","Confirm","Cancel")
|
||||||
if(choice=="Confirm")
|
if(choice=="Confirm")
|
||||||
@@ -651,7 +651,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
else if(href_list["censor_channel_author"])
|
else if(href_list["censor_channel_author"])
|
||||||
var/datum/feed_channel/FC = locate(href_list["censor_channel_author"])
|
var/datum/feed_channel/FC = locate(href_list["censor_channel_author"])
|
||||||
if(FC.is_admin_channel)
|
if(FC.is_admin_channel)
|
||||||
alert("This channel was created by a Nanotrasen Officer. You cannot censor it.","Ok")
|
alert("This channel was created by a [company_name] Officer. You cannot censor it.","Ok")
|
||||||
return
|
return
|
||||||
if(FC.author != "<B>\[REDACTED\]</B>")
|
if(FC.author != "<B>\[REDACTED\]</B>")
|
||||||
FC.backup_author = FC.author
|
FC.backup_author = FC.author
|
||||||
@@ -664,7 +664,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
else if(href_list["censor_channel_story_author"])
|
else if(href_list["censor_channel_story_author"])
|
||||||
var/datum/feed_message/MSG = locate(href_list["censor_channel_story_author"])
|
var/datum/feed_message/MSG = locate(href_list["censor_channel_story_author"])
|
||||||
if(MSG.is_admin_message)
|
if(MSG.is_admin_message)
|
||||||
alert("This message was created by a Nanotrasen Officer. You cannot censor its author.","Ok")
|
alert("This message was created by a [company_name] Officer. You cannot censor its author.","Ok")
|
||||||
return
|
return
|
||||||
if(MSG.author != "<B>\[REDACTED\]</B>")
|
if(MSG.author != "<B>\[REDACTED\]</B>")
|
||||||
MSG.backup_author = MSG.author
|
MSG.backup_author = MSG.author
|
||||||
@@ -677,7 +677,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
else if(href_list["censor_channel_story_body"])
|
else if(href_list["censor_channel_story_body"])
|
||||||
var/datum/feed_message/MSG = locate(href_list["censor_channel_story_body"])
|
var/datum/feed_message/MSG = locate(href_list["censor_channel_story_body"])
|
||||||
if(MSG.is_admin_message)
|
if(MSG.is_admin_message)
|
||||||
alert("This channel was created by a Nanotrasen Officer. You cannot censor it.","Ok")
|
alert("This channel was created by a [company_name] Officer. You cannot censor it.","Ok")
|
||||||
return
|
return
|
||||||
if(MSG.body != "<B>\[REDACTED\]</B>")
|
if(MSG.body != "<B>\[REDACTED\]</B>")
|
||||||
MSG.backup_body = MSG.body
|
MSG.backup_body = MSG.body
|
||||||
@@ -703,7 +703,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
else if(href_list["toggle_d_notice"])
|
else if(href_list["toggle_d_notice"])
|
||||||
var/datum/feed_channel/FC = locate(href_list["toggle_d_notice"])
|
var/datum/feed_channel/FC = locate(href_list["toggle_d_notice"])
|
||||||
if(FC.is_admin_channel)
|
if(FC.is_admin_channel)
|
||||||
alert("This channel was created by a Nanotrasen Officer. You cannot place a D-Notice upon it.","Ok")
|
alert("This channel was created by a [company_name] Officer. You cannot place a D-Notice upon it.","Ok")
|
||||||
return
|
return
|
||||||
FC.censored = !FC.censored
|
FC.censored = !FC.censored
|
||||||
FC.update()
|
FC.update()
|
||||||
@@ -806,7 +806,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
|||||||
|
|
||||||
/obj/item/weapon/newspaper
|
/obj/item/weapon/newspaper
|
||||||
name = "newspaper"
|
name = "newspaper"
|
||||||
desc = "An issue of The Griffon, the newspaper circulating aboard Nanotrasen Space Stations."
|
desc = "An issue of The Griffon, the newspaper circulating aboard most stations."
|
||||||
icon = 'icons/obj/bureaucracy.dmi'
|
icon = 'icons/obj/bureaucracy.dmi'
|
||||||
icon_state = "newspaper"
|
icon_state = "newspaper"
|
||||||
w_class = 2 //Let's make it fit in trashbags!
|
w_class = 2 //Let's make it fit in trashbags!
|
||||||
@@ -827,7 +827,7 @@ obj/item/weapon/newspaper/attack_self(mob/user as mob)
|
|||||||
switch(screen)
|
switch(screen)
|
||||||
if(0) //Cover
|
if(0) //Cover
|
||||||
dat+="<DIV ALIGN='center'><B><FONT SIZE=6>The Griffon</FONT></B></div>"
|
dat+="<DIV ALIGN='center'><B><FONT SIZE=6>The Griffon</FONT></B></div>"
|
||||||
dat+="<DIV ALIGN='center'><FONT SIZE=2>Nanotrasen-standard newspaper, for use on Nanotrasen<EFBFBD> Space Facilities</FONT></div><HR>"
|
dat+="<DIV ALIGN='center'><FONT SIZE=2>[company_name]-standard newspaper, for use on [company_name]<EFBFBD> Space Facilities</FONT></div><HR>"
|
||||||
if(isemptylist(src.news_content))
|
if(isemptylist(src.news_content))
|
||||||
if(src.important_message)
|
if(src.important_message)
|
||||||
dat+="Contents:<BR><ul><B><FONT COLOR='red'>**</FONT>Important Security Announcement<FONT COLOR='red'>**</FONT></B> <FONT SIZE=2>\[page [src.pages+2]\]</FONT><BR></ul>"
|
dat+="Contents:<BR><ul><B><FONT COLOR='red'>**</FONT>Important Security Announcement<FONT COLOR='red'>**</FONT></B> <FONT SIZE=2>\[page [src.pages+2]\]</FONT><BR></ul>"
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/obj/mecha/combat/durand
|
/obj/mecha/combat/durand
|
||||||
desc = "An aging combat exosuit utilized by the Nanotrasen corporation. Originally developed to combat hostile alien lifeforms."
|
desc = "An aging combat exosuit utilized by many corporations. Originally developed to combat hostile alien lifeforms."
|
||||||
name = "Durand"
|
name = "Durand"
|
||||||
icon_state = "durand"
|
icon_state = "durand"
|
||||||
initial_icon = "durand"
|
initial_icon = "durand"
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
max_equip = 3
|
max_equip = 3
|
||||||
|
|
||||||
/obj/mecha/combat/gygax/dark
|
/obj/mecha/combat/gygax/dark
|
||||||
desc = "A lightweight exosuit used by NanoTrasen Heavy Asset Protection. A significantly upgraded Gygax security mech."
|
desc = "A lightweight exosuit used by Heavy Asset Protection. A significantly upgraded Gygax security mech."
|
||||||
name = "Dark Gygax"
|
name = "Dark Gygax"
|
||||||
icon_state = "darkgygax"
|
icon_state = "darkgygax"
|
||||||
initial_icon = "darkgygax"
|
initial_icon = "darkgygax"
|
||||||
|
|||||||
@@ -714,7 +714,7 @@
|
|||||||
sleep(15)
|
sleep(15)
|
||||||
src.visible_message("\icon[src] <b>[src]</b> beeps: \"User DB corrupted \[Code 0x00FA\]. Truncating data structure...\"")
|
src.visible_message("\icon[src] <b>[src]</b> beeps: \"User DB corrupted \[Code 0x00FA\]. Truncating data structure...\"")
|
||||||
sleep(30)
|
sleep(30)
|
||||||
src.visible_message("\icon[src] <b>[src]</b> beeps: \"User DB truncated. Please contact your Nanotrasen system operator for future assistance.\"")
|
src.visible_message("\icon[src] <b>[src]</b> beeps: \"User DB truncated. Please contact your [company_name] system operator for future assistance.\"")
|
||||||
req_access = null
|
req_access = null
|
||||||
emagged = 1
|
emagged = 1
|
||||||
return 1
|
return 1
|
||||||
@@ -722,7 +722,7 @@
|
|||||||
src.visible_message("\icon[src] <b>[src]</b> beeps: \"DB not responding \[Code 0x0003\]...\"")
|
src.visible_message("\icon[src] <b>[src]</b> beeps: \"DB not responding \[Code 0x0003\]...\"")
|
||||||
if(1)
|
if(1)
|
||||||
src.visible_message("\icon[src] <b>[src]</b> beeps: \"No records in User DB\"")
|
src.visible_message("\icon[src] <b>[src]</b> beeps: \"No records in User DB\"")
|
||||||
|
|
||||||
/obj/machinery/mecha_part_fabricator/attackby(obj/W as obj, mob/user as mob)
|
/obj/machinery/mecha_part_fabricator/attackby(obj/W as obj, mob/user as mob)
|
||||||
if(istype(W,/obj/item/weapon/screwdriver))
|
if(istype(W,/obj/item/weapon/screwdriver))
|
||||||
if (!opened)
|
if (!opened)
|
||||||
|
|||||||
@@ -37,12 +37,12 @@
|
|||||||
/datum/poster/bay_8
|
/datum/poster/bay_8
|
||||||
icon_state="bsposter8"
|
icon_state="bsposter8"
|
||||||
name = "Pinup Girl Cindy"
|
name = "Pinup Girl Cindy"
|
||||||
desc = "This particular one is of Nanotrasen's PR girl, Cindy, in a particularly feminine pose."
|
desc = "This particular one is of a historical corporate PR girl, Cindy, in a particularly feminine pose."
|
||||||
|
|
||||||
/datum/poster/bay_9
|
/datum/poster/bay_9
|
||||||
icon_state="bsposter9"
|
icon_state="bsposter9"
|
||||||
name = "Pinup Girl Amy"
|
name = "Pinup Girl Amy"
|
||||||
desc = "This particular one is of Amy, the nymphomaniac Urban Legend of Nanotrasen Space Stations. How this photograph came to be is not known."
|
desc = "This particular one is of Amy, the nymphomaniac urban legend of deep space. How this photograph came to be is not known."
|
||||||
|
|
||||||
/datum/poster/bay_10
|
/datum/poster/bay_10
|
||||||
icon_state="bsposter10"
|
icon_state="bsposter10"
|
||||||
@@ -52,12 +52,12 @@
|
|||||||
/datum/poster/bay_11
|
/datum/poster/bay_11
|
||||||
icon_state="bsposter11"
|
icon_state="bsposter11"
|
||||||
name = "Underwater Laboratory"
|
name = "Underwater Laboratory"
|
||||||
desc = "This particular one is of the fabled last crew of Nanotrasen's previous project before going big on phoron research."
|
desc = "This particular one is of the fabled last crew of a previous Company project."
|
||||||
|
|
||||||
/datum/poster/bay_12
|
/datum/poster/bay_12
|
||||||
icon_state="bsposter12"
|
icon_state="bsposter12"
|
||||||
name = "Rogue AI"
|
name = "Rogue AI"
|
||||||
desc = "This particular one depicts the shell of the infamous AI that catastropically comandeered one of Nanotrasen's earliest space stations. Back then, the corporation was just known as TriOptimum."
|
desc = "This particular one depicts the shell of the infamous AI that catastropically comandeered one of humanity's earliest space stations. Back then, the Company was just known as TriOptimum."
|
||||||
|
|
||||||
/datum/poster/bay_13
|
/datum/poster/bay_13
|
||||||
icon_state="bsposter13"
|
icon_state="bsposter13"
|
||||||
@@ -172,7 +172,7 @@
|
|||||||
/datum/poster/bay_35
|
/datum/poster/bay_35
|
||||||
icon_state="bsposter35"
|
icon_state="bsposter35"
|
||||||
name = "Lamarr"
|
name = "Lamarr"
|
||||||
desc = "This is a poster depicting the pet and mascot of the NSS Exodus science department."
|
desc = "This is a poster depicting the pet and mascot of the science department."
|
||||||
|
|
||||||
/datum/poster/bay_36
|
/datum/poster/bay_36
|
||||||
icon_state="bsposter36"
|
icon_state="bsposter36"
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
var/area/A = get_area()
|
var/area/A = get_area()
|
||||||
var/text = {"<HTML><head><title>[src]</title></head><BODY>
|
var/text = {"<HTML><head><title>[src]</title></head><BODY>
|
||||||
<h2>[station_name()] blueprints</h2>
|
<h2>[station_name()] blueprints</h2>
|
||||||
<small>Property of Nanotrasen. For heads of staff only. Store in high-secure storage.</small><hr>
|
<small>Property of [company_name]. For heads of staff only. Store in high-secure storage.</small><hr>
|
||||||
"}
|
"}
|
||||||
switch (get_area_type())
|
switch (get_area_type())
|
||||||
if (AREA_SPACE)
|
if (AREA_SPACE)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/obj/item/radio/integrated
|
/obj/item/radio/integrated
|
||||||
name = "\improper PDA radio module"
|
name = "\improper PDA radio module"
|
||||||
desc = "An electronic radio system of nanotrasen origin."
|
desc = "An electronic radio system."
|
||||||
icon = 'icons/obj/module.dmi'
|
icon = 'icons/obj/module.dmi'
|
||||||
icon_state = "power_mod"
|
icon_state = "power_mod"
|
||||||
var/obj/item/device/pda/hostpda = null
|
var/obj/item/device/pda/hostpda = null
|
||||||
|
|||||||
@@ -141,7 +141,7 @@
|
|||||||
|
|
||||||
/obj/item/device/flashlight/flare
|
/obj/item/device/flashlight/flare
|
||||||
name = "flare"
|
name = "flare"
|
||||||
desc = "A red Nanotrasen issued flare. There are instructions on the side, it reads 'pull cord, make light'."
|
desc = "A red standard-issue flare. There are instructions on the side reading 'pull cord, make light'."
|
||||||
w_class = 2.0
|
w_class = 2.0
|
||||||
brightness_on = 7 // Pretty bright.
|
brightness_on = 7 // Pretty bright.
|
||||||
light_color = "#e58775"
|
light_color = "#e58775"
|
||||||
|
|||||||
@@ -120,5 +120,5 @@
|
|||||||
channels = list("Service" = 1)
|
channels = list("Service" = 1)
|
||||||
|
|
||||||
/obj/item/device/encryptionkey/ert
|
/obj/item/device/encryptionkey/ert
|
||||||
name = "\improper NanoTrasen ERT radio encryption key"
|
name = "\improper ERT radio encryption key"
|
||||||
channels = list("Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1)
|
channels = list("Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1)
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
user << "You set about modifying the helmet into [src]."
|
user << "You set about modifying the helmet into [src]."
|
||||||
var/mob/living/carbon/human/H = user
|
var/mob/living/carbon/human/H = user
|
||||||
if(istype(H))
|
if(istype(H))
|
||||||
species_restricted = list(H.species.name)
|
species_restricted = list(H.species.get_bodytype())
|
||||||
kit.use(1,user)
|
kit.use(1,user)
|
||||||
return 1
|
return 1
|
||||||
return ..()
|
return ..()
|
||||||
@@ -62,7 +62,7 @@
|
|||||||
user << "You set about modifying the suit into [src]."
|
user << "You set about modifying the suit into [src]."
|
||||||
var/mob/living/carbon/human/H = user
|
var/mob/living/carbon/human/H = user
|
||||||
if(istype(H))
|
if(istype(H))
|
||||||
species_restricted = list(H.species.name)
|
species_restricted = list(H.species.get_bodytype())
|
||||||
kit.use(1,user)
|
kit.use(1,user)
|
||||||
return 1
|
return 1
|
||||||
return ..()
|
return ..()
|
||||||
|
|||||||
@@ -104,7 +104,7 @@
|
|||||||
|
|
||||||
/obj/item/toy/nanotrasenballoon
|
/obj/item/toy/nanotrasenballoon
|
||||||
name = "criminal balloon"
|
name = "criminal balloon"
|
||||||
desc = "Across the balloon the following is printed: \"Man, I love NT soooo much. I use only NanoTrasen products. You have NO idea.\""
|
desc = "Across the balloon the following is printed: \"Man, I love NanoTrasen soooo much. I use only NT products. You have NO idea.\""
|
||||||
throwforce = 0
|
throwforce = 0
|
||||||
throw_speed = 4
|
throw_speed = 4
|
||||||
throw_range = 20
|
throw_range = 20
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ AI MODULES
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(ticker && ticker.mode && ticker.mode.name == "blob")
|
if(ticker && ticker.mode && ticker.mode.name == "blob")
|
||||||
usr << "Law uploads have been disabled by NanoTrasen!"
|
usr << "Law uploads have been disabled by [company_name]!"
|
||||||
return
|
return
|
||||||
|
|
||||||
if (comp.current.stat == 2 || comp.current.control_disabled == 1)
|
if (comp.current.stat == 2 || comp.current.control_disabled == 1)
|
||||||
|
|||||||
@@ -322,7 +322,7 @@ the implant may become unstable and either pre-maturely inject the subject or si
|
|||||||
get_data()
|
get_data()
|
||||||
var/dat = {"
|
var/dat = {"
|
||||||
<b>Implant Specifications:</b><BR>
|
<b>Implant Specifications:</b><BR>
|
||||||
<b>Name:</b> Nanotrasen Employee Management Implant<BR>
|
<b>Name:</b> [company_name] Employee Management Implant<BR>
|
||||||
<b>Life:</b> Ten years.<BR>
|
<b>Life:</b> Ten years.<BR>
|
||||||
<b>Important Notes:</b> Personnel injected with this device tend to be much more loyal to the company.<BR>
|
<b>Important Notes:</b> Personnel injected with this device tend to be much more loyal to the company.<BR>
|
||||||
<HR>
|
<HR>
|
||||||
@@ -338,11 +338,11 @@ the implant may become unstable and either pre-maturely inject the subject or si
|
|||||||
var/mob/living/carbon/human/H = M
|
var/mob/living/carbon/human/H = M
|
||||||
var/datum/antagonist/antag_data = get_antag_data(H.mind.special_role)
|
var/datum/antagonist/antag_data = get_antag_data(H.mind.special_role)
|
||||||
if(antag_data && (antag_data.flags & ANTAG_IMPLANT_IMMUNE))
|
if(antag_data && (antag_data.flags & ANTAG_IMPLANT_IMMUNE))
|
||||||
H.visible_message("[H] seems to resist the implant!", "You feel the corporate tendrils of Nanotrasen try to invade your mind!")
|
H.visible_message("[H] seems to resist the implant!", "You feel the corporate tendrils of [company_name] try to invade your mind!")
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
clear_antag_roles(H.mind, 1)
|
clear_antag_roles(H.mind, 1)
|
||||||
H << "<span class='notice'>You feel a surge of loyalty towards Nanotrasen.</span>"
|
H << "<span class='notice'>You feel a surge of loyalty towards [company_name].</span>"
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
|
||||||
@@ -391,7 +391,7 @@ the implant may become unstable and either pre-maturely inject the subject or si
|
|||||||
get_data()
|
get_data()
|
||||||
var/dat = {"
|
var/dat = {"
|
||||||
<b>Implant Specifications:</b><BR>
|
<b>Implant Specifications:</b><BR>
|
||||||
<b>Name:</b> NanoTrasen \"Profit Margin\" Class Employee Lifesign Sensor<BR>
|
<b>Name:</b> [company_name] \"Profit Margin\" Class Employee Lifesign Sensor<BR>
|
||||||
<b>Life:</b> Activates upon death.<BR>
|
<b>Life:</b> Activates upon death.<BR>
|
||||||
<b>Important Notes:</b> Alerts crew to crewmember death.<BR>
|
<b>Important Notes:</b> Alerts crew to crewmember death.<BR>
|
||||||
<HR>
|
<HR>
|
||||||
@@ -465,7 +465,7 @@ the implant may become unstable and either pre-maturely inject the subject or si
|
|||||||
get_data()
|
get_data()
|
||||||
var/dat = {"
|
var/dat = {"
|
||||||
<b>Implant Specifications:</b><BR>
|
<b>Implant Specifications:</b><BR>
|
||||||
<b>Name:</b> NanoTrasen \"Profit Margin\" Class Employee Lifesign Sensor<BR>
|
<b>Name:</b> [company_name] \"Profit Margin\" Class Employee Lifesign Sensor<BR>
|
||||||
<b>Life:</b> Activates upon death.<BR>
|
<b>Life:</b> Activates upon death.<BR>
|
||||||
<b>Important Notes:</b> Alerts crew to crewmember death.<BR>
|
<b>Important Notes:</b> Alerts crew to crewmember death.<BR>
|
||||||
<HR>
|
<HR>
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
/obj/item/weapon/book/manual/supermatter_engine
|
/obj/item/weapon/book/manual/supermatter_engine
|
||||||
name = "Supermatter Engine Operating Manual"
|
name = "Supermatter Engine Operating Manual"
|
||||||
icon_state = "bookSupermatter"
|
icon_state = "bookSupermatter"
|
||||||
author = "Nanotrasen Central Engineering Division"
|
author = "Central Engineering Division"
|
||||||
title = "Supermatter Engine Operating Manual"
|
title = "Supermatter Engine Operating Manual"
|
||||||
|
|
||||||
/obj/item/weapon/book/manual/supermatter_engine/New()
|
/obj/item/weapon/book/manual/supermatter_engine/New()
|
||||||
@@ -407,10 +407,10 @@
|
|||||||
<li>Secure the mainboard with a screwdriver.</li>
|
<li>Secure the mainboard with a screwdriver.</li>
|
||||||
<li>Install the peripherals control module (Not included. Use supplied datadisk to create one).</li>
|
<li>Install the peripherals control module (Not included. Use supplied datadisk to create one).</li>
|
||||||
<li>Secure the peripherals control module with a screwdriver.</li>
|
<li>Secure the peripherals control module with a screwdriver.</li>
|
||||||
<li>Install the internal armor plating (Not included due to NanoTrasen regulations. Can be made using 5 metal sheets).</li>
|
<li>Install the internal armor plating (Not included due to corporate regulations. Can be made using 5 metal sheets).</li>
|
||||||
<li>Secure the internal armor plating with a wrench.</li>
|
<li>Secure the internal armor plating with a wrench.</li>
|
||||||
<li>Weld the internal armor plating to the chassis.</li>
|
<li>Weld the internal armor plating to the chassis.</li>
|
||||||
<li>Install the external reinforced armor plating (Not included due to NanoTrasen regulations. Can be made using 5 reinforced metal sheets).</li>
|
<li>Install the external reinforced armor plating (Not included due to corporate regulations. Can be made using 5 reinforced metal sheets).</li>
|
||||||
<li>Secure the external reinforced armor plating with a wrench.</li>
|
<li>Secure the external reinforced armor plating with a wrench.</li>
|
||||||
<li>Weld the external reinforced armor plating to the chassis.</li>
|
<li>Weld the external reinforced armor plating to the chassis.</li>
|
||||||
</ol>
|
</ol>
|
||||||
@@ -422,7 +422,7 @@
|
|||||||
<li>Internal armor is plasteel for additional strength.</li>
|
<li>Internal armor is plasteel for additional strength.</li>
|
||||||
<li>External armor must be installed in 2 parts, totalling 10 sheets.</li>
|
<li>External armor must be installed in 2 parts, totalling 10 sheets.</li>
|
||||||
<li>Completed mech is more resilient against fire, and is a bit more durable overall.</li>
|
<li>Completed mech is more resilient against fire, and is a bit more durable overall.</li>
|
||||||
<li>NanoTrasen is determined to ensure the safety of its <s>investments</s> employees.</li>
|
<li>The Company is determined to ensure the safety of its <s>investments</s> employees.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -541,7 +541,7 @@
|
|||||||
This useful piece of equipment will suck power out of the power systems to charge a cyborg's power cell back up to full charge.
|
This useful piece of equipment will suck power out of the power systems to charge a cyborg's power cell back up to full charge.
|
||||||
|
|
||||||
<h3>Robotics Control Console</h3>
|
<h3>Robotics Control Console</h3>
|
||||||
This useful piece of equipment can be used to immobilize or destroy a cyborg. A word of warning: Cyborgs are expensive pieces of equipment, do not destroy them without good reason, or NanoTrasen may see to it that it never happens again.
|
This useful piece of equipment can be used to immobilize or destroy a cyborg. A word of warning: Cyborgs are expensive pieces of equipment, do not destroy them without good reason, or the Company may see to it that it never happens again.
|
||||||
|
|
||||||
|
|
||||||
<h2><a name="Modules">Cyborg Modules</h2>
|
<h2><a name="Modules">Cyborg Modules</h2>
|
||||||
@@ -688,7 +688,7 @@
|
|||||||
<li>Expose the cyborg's internal wiring</li>
|
<li>Expose the cyborg's internal wiring</li>
|
||||||
<li>Check to make sure the LawSync and AI Sync lights are lit</li>
|
<li>Check to make sure the LawSync and AI Sync lights are lit</li>
|
||||||
<li>If they are not lit, pulse the LawSync wire using a multitool to enable the cyborg's LawSync</li>
|
<li>If they are not lit, pulse the LawSync wire using a multitool to enable the cyborg's LawSync</li>
|
||||||
<li>Proceed to a cyborg upload console. NanoTrasen usually places these in the same location as AI upload consoles.</li>
|
<li>Proceed to a cyborg upload console. The Company usually places these in the same location as AI upload consoles.</li>
|
||||||
<li>Use a "Reset" upload moduleto reset the cyborg's laws</li>
|
<li>Use a "Reset" upload moduleto reset the cyborg's laws</li>
|
||||||
<li>Proceed to a Robotics Control console</li>
|
<li>Proceed to a Robotics Control console</li>
|
||||||
<li>Remove the lockdown on the cyborg</li>
|
<li>Remove the lockdown on the cyborg</li>
|
||||||
@@ -696,7 +696,7 @@
|
|||||||
|
|
||||||
<h3>As a last resort</h3>
|
<h3>As a last resort</h3>
|
||||||
If all else fails in a case of cyborg-related emergency, there may be only one option. Using a Robotics Control console, you may have to remotely detonate the cyborg.
|
If all else fails in a case of cyborg-related emergency, there may be only one option. Using a Robotics Control console, you may have to remotely detonate the cyborg.
|
||||||
<h3>WARNING:</h3> Do not detonate a borg without an explicit reason for doing so. Cyborgs are expensive pieces of NanoTrasen equipment, and you may be punished for detonating them without reason.
|
<h3>WARNING:</h3> Do not detonate a borg without an explicit reason for doing so. Cyborgs are expensive pieces of company equipment, and you may be punished for detonating them without reason.
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -705,9 +705,9 @@
|
|||||||
|
|
||||||
/obj/item/weapon/book/manual/security_space_law
|
/obj/item/weapon/book/manual/security_space_law
|
||||||
name = "Corporate Regulations"
|
name = "Corporate Regulations"
|
||||||
desc = "A set of NanoTrasen guidelines for keeping law and order on their space stations."
|
desc = "A set of corporate guidelines for keeping law and order on privately-owned space stations."
|
||||||
icon_state = "bookSpaceLaw"
|
icon_state = "bookSpaceLaw"
|
||||||
author = "NanoTrasen"
|
author = "The Company"
|
||||||
title = "Corporate Regulations"
|
title = "Corporate Regulations"
|
||||||
|
|
||||||
/obj/item/weapon/book/manual/security_space_law/New()
|
/obj/item/weapon/book/manual/security_space_law/New()
|
||||||
@@ -728,11 +728,11 @@
|
|||||||
|
|
||||||
|
|
||||||
/obj/item/weapon/book/manual/medical_diagnostics_manual
|
/obj/item/weapon/book/manual/medical_diagnostics_manual
|
||||||
name = "NT Medical Diagnostics Manual"
|
name = "Medical Diagnostics Manual"
|
||||||
desc = "First, do no harm. A detailed medical practitioner's guide."
|
desc = "First, do no harm. A detailed medical practitioner's guide."
|
||||||
icon_state = "bookMedical"
|
icon_state = "bookMedical"
|
||||||
author = "NanoTrasen Medicine Department"
|
author = "Medical Department"
|
||||||
title = "NT Medical Diagnostics Manual"
|
title = "Medical Diagnostics Manual"
|
||||||
|
|
||||||
/obj/item/weapon/book/manual/medical_diagnostics_manual/New()
|
/obj/item/weapon/book/manual/medical_diagnostics_manual/New()
|
||||||
..()
|
..()
|
||||||
@@ -751,7 +751,7 @@
|
|||||||
<br>
|
<br>
|
||||||
<h1>The Oath</h1>
|
<h1>The Oath</h1>
|
||||||
|
|
||||||
<i>The Medical Oath sworn by recognised medical practitioners in the employ of NanoTrasen</i><br>
|
<i>The Medical Oath sworn by recognised medical practitioners in the employ of [company_name]</i><br>
|
||||||
|
|
||||||
<ol>
|
<ol>
|
||||||
<li>Now, as a new doctor, I solemnly promise that I will, to the best of my ability, serve humanity-caring for the sick, promoting good health, and alleviating pain and suffering.</li>
|
<li>Now, as a new doctor, I solemnly promise that I will, to the best of my ability, serve humanity-caring for the sick, promoting good health, and alleviating pain and suffering.</li>
|
||||||
@@ -913,7 +913,7 @@
|
|||||||
/obj/item/weapon/book/manual/detective
|
/obj/item/weapon/book/manual/detective
|
||||||
name = "The Film Noir: Proper Procedures for Investigations"
|
name = "The Film Noir: Proper Procedures for Investigations"
|
||||||
icon_state ="bookDetective"
|
icon_state ="bookDetective"
|
||||||
author = "NanoTrasen"
|
author = "The Company"
|
||||||
title = "The Film Noir: Proper Procedures for Investigations"
|
title = "The Film Noir: Proper Procedures for Investigations"
|
||||||
|
|
||||||
dat = {"<html>
|
dat = {"<html>
|
||||||
@@ -972,7 +972,7 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1>Nuclear Explosives 101</h1>
|
<h1>Nuclear Explosives 101</h1>
|
||||||
Hello and thank you for choosing the Syndicate for your nuclear information needs. Today's crash course will deal with the operation of a Fusion Class NanoTrasen made Nuclear Device.<br><br>
|
Hello and thank you for choosing the Syndicate for your nuclear information needs. Today's crash course will deal with the operation of a Nuclear Fission Device.<br><br>
|
||||||
|
|
||||||
First and foremost, DO NOT TOUCH ANYTHING UNTIL THE BOMB IS IN PLACE. Pressing any button on the compacted bomb will cause it to extend and bolt itself into place. If this is done, to unbolt it, one must completely log in, which at this time may not be possible.<br>
|
First and foremost, DO NOT TOUCH ANYTHING UNTIL THE BOMB IS IN PLACE. Pressing any button on the compacted bomb will cause it to extend and bolt itself into place. If this is done, to unbolt it, one must completely log in, which at this time may not be possible.<br>
|
||||||
|
|
||||||
@@ -997,7 +997,7 @@
|
|||||||
|
|
||||||
Remember the order:<br>
|
Remember the order:<br>
|
||||||
<b>Disk, Code, Safety, Timer, Disk, RUN!</b><br><br>
|
<b>Disk, Code, Safety, Timer, Disk, RUN!</b><br><br>
|
||||||
Intelligence Analysts believe that normal NanoTrasen procedure is for the Captain to secure the nuclear authentication disk.<br><br>
|
Intelligence Analysts believe that normal corporate procedure is for the Captain to secure the nuclear authentication disk.<br><br>
|
||||||
|
|
||||||
Good luck!
|
Good luck!
|
||||||
</body>
|
</body>
|
||||||
@@ -1171,7 +1171,7 @@
|
|||||||
and then is screwed in for one and a quarter full rotations clockwise, leaving the faceplate directly in front of you. There is a small button on the right side of the helmet that activates the helmet light.
|
and then is screwed in for one and a quarter full rotations clockwise, leaving the faceplate directly in front of you. There is a small button on the right side of the helmet that activates the helmet light.
|
||||||
The tanks that fasten onto the side slot are emergency tanks, as well as full-sized oxygen tanks, leaving your back free for a backpack or satchel.<BR><BR>
|
The tanks that fasten onto the side slot are emergency tanks, as well as full-sized oxygen tanks, leaving your back free for a backpack or satchel.<BR><BR>
|
||||||
|
|
||||||
These suits generally only fit one species. Nanotrasen's are usually human-fitting by default, but there's equipment that can make modifications to the hardsuits to fit them to other species.<BR><BR>
|
These suits generally only fit one species. NanoTrasen's are usually human-fitting by default, but there's equipment that can make modifications to the hardsuits to fit them to other species.<BR><BR>
|
||||||
|
|
||||||
<h2><a name="Equipment">Modification Equipment</a></h2>
|
<h2><a name="Equipment">Modification Equipment</a></h2>
|
||||||
<I>How to actually make hardsuits fit you.</I><BR>
|
<I>How to actually make hardsuits fit you.</I><BR>
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/material/hatchet/tacknife
|
/obj/item/weapon/material/hatchet/tacknife
|
||||||
name = "tactical knife"
|
name = "tactical knife"
|
||||||
desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Nyx."
|
desc = "You'd be killing loads of people if this was Medal of Valor: Heroes of Space."
|
||||||
icon = 'icons/obj/weapons.dmi'
|
icon = 'icons/obj/weapons.dmi'
|
||||||
icon_state = "tacknife"
|
icon_state = "tacknife"
|
||||||
item_state = "knife"
|
item_state = "knife"
|
||||||
|
|||||||
@@ -40,7 +40,7 @@
|
|||||||
charge = maxcharge
|
charge = maxcharge
|
||||||
|
|
||||||
/obj/item/weapon/cell/crap
|
/obj/item/weapon/cell/crap
|
||||||
name = "\improper Nanotrasen brand rechargable AA battery"
|
name = "\improper rechargable AA battery"
|
||||||
desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT
|
desc = "You can't top the plasma top." //TOTALLY TRADEMARK INFRINGEMENT
|
||||||
origin_tech = list(TECH_POWER = 0)
|
origin_tech = list(TECH_POWER = 0)
|
||||||
maxcharge = 500
|
maxcharge = 500
|
||||||
@@ -107,7 +107,7 @@
|
|||||||
origin_tech = null
|
origin_tech = null
|
||||||
maxcharge = 30000 //determines how badly mobs get shocked
|
maxcharge = 30000 //determines how badly mobs get shocked
|
||||||
matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 80)
|
matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 80)
|
||||||
|
|
||||||
check_charge()
|
check_charge()
|
||||||
return 1
|
return 1
|
||||||
use()
|
use()
|
||||||
|
|||||||
@@ -61,7 +61,7 @@
|
|||||||
qdel(W)
|
qdel(W)
|
||||||
return
|
return
|
||||||
..()
|
..()
|
||||||
|
|
||||||
//Please don't clutter the parent storage item with stupid hacks.
|
//Please don't clutter the parent storage item with stupid hacks.
|
||||||
can_be_inserted(obj/item/W as obj, stop_messages = 0)
|
can_be_inserted(obj/item/W as obj, stop_messages = 0)
|
||||||
if(istype(W, /obj/item/weapon/storage/backpack/holding))
|
if(istype(W, /obj/item/weapon/storage/backpack/holding))
|
||||||
@@ -104,7 +104,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/storage/backpack/captain
|
/obj/item/weapon/storage/backpack/captain
|
||||||
name = "captain's backpack"
|
name = "captain's backpack"
|
||||||
desc = "It's a special backpack made exclusively for Nanotrasen officers."
|
desc = "It's a special backpack made exclusively for officers."
|
||||||
icon_state = "captainpack"
|
icon_state = "captainpack"
|
||||||
item_state_slots = null
|
item_state_slots = null
|
||||||
|
|
||||||
@@ -212,7 +212,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/storage/backpack/satchel_cap
|
/obj/item/weapon/storage/backpack/satchel_cap
|
||||||
name = "captain's satchel"
|
name = "captain's satchel"
|
||||||
desc = "An exclusive satchel for Nanotrasen officers."
|
desc = "An exclusive satchel for officers."
|
||||||
icon_state = "satchel-cap"
|
icon_state = "satchel-cap"
|
||||||
item_state_slots = list(
|
item_state_slots = list(
|
||||||
slot_l_hand_str = "satchel-cap",
|
slot_l_hand_str = "satchel-cap",
|
||||||
@@ -222,7 +222,7 @@
|
|||||||
//ERT backpacks.
|
//ERT backpacks.
|
||||||
/obj/item/weapon/storage/backpack/ert
|
/obj/item/weapon/storage/backpack/ert
|
||||||
name = "emergency response team backpack"
|
name = "emergency response team backpack"
|
||||||
desc = "A spacious backpack with lots of pockets, used by members of the Nanotrasen Emergency Response Team."
|
desc = "A spacious backpack with lots of pockets, used by members of the Emergency Response Team."
|
||||||
icon_state = "ert_commander"
|
icon_state = "ert_commander"
|
||||||
item_state_slots = list(
|
item_state_slots = list(
|
||||||
slot_l_hand_str = "securitypack",
|
slot_l_hand_str = "securitypack",
|
||||||
@@ -232,22 +232,22 @@
|
|||||||
//Commander
|
//Commander
|
||||||
/obj/item/weapon/storage/backpack/ert/commander
|
/obj/item/weapon/storage/backpack/ert/commander
|
||||||
name = "emergency response team commander backpack"
|
name = "emergency response team commander backpack"
|
||||||
desc = "A spacious backpack with lots of pockets, worn by the commander of a Nanotrasen Emergency Response Team."
|
desc = "A spacious backpack with lots of pockets, worn by the commander of an Emergency Response Team."
|
||||||
|
|
||||||
//Security
|
//Security
|
||||||
/obj/item/weapon/storage/backpack/ert/security
|
/obj/item/weapon/storage/backpack/ert/security
|
||||||
name = "emergency response team security backpack"
|
name = "emergency response team security backpack"
|
||||||
desc = "A spacious backpack with lots of pockets, worn by security members of a Nanotrasen Emergency Response Team."
|
desc = "A spacious backpack with lots of pockets, worn by security members of an Emergency Response Team."
|
||||||
icon_state = "ert_security"
|
icon_state = "ert_security"
|
||||||
|
|
||||||
//Engineering
|
//Engineering
|
||||||
/obj/item/weapon/storage/backpack/ert/engineer
|
/obj/item/weapon/storage/backpack/ert/engineer
|
||||||
name = "emergency response team engineer backpack"
|
name = "emergency response team engineer backpack"
|
||||||
desc = "A spacious backpack with lots of pockets, worn by engineering members of a Nanotrasen Emergency Response Team."
|
desc = "A spacious backpack with lots of pockets, worn by engineering members of an Emergency Response Team."
|
||||||
icon_state = "ert_engineering"
|
icon_state = "ert_engineering"
|
||||||
|
|
||||||
//Medical
|
//Medical
|
||||||
/obj/item/weapon/storage/backpack/ert/medical
|
/obj/item/weapon/storage/backpack/ert/medical
|
||||||
name = "emergency response team medical backpack"
|
name = "emergency response team medical backpack"
|
||||||
desc = "A spacious backpack with lots of pockets, worn by medical members of a Nanotrasen Emergency Response Team."
|
desc = "A spacious backpack with lots of pockets, worn by medical members of an Emergency Response Team."
|
||||||
icon_state = "ert_medical"
|
icon_state = "ert_medical"
|
||||||
|
|||||||
@@ -107,7 +107,7 @@
|
|||||||
name = "sheet snatcher"
|
name = "sheet snatcher"
|
||||||
icon = 'icons/obj/mining.dmi'
|
icon = 'icons/obj/mining.dmi'
|
||||||
icon_state = "sheetsnatcher"
|
icon_state = "sheetsnatcher"
|
||||||
desc = "A patented Nanotrasen storage system designed for any kind of mineral sheet."
|
desc = "A patented storage system designed for any kind of mineral sheet."
|
||||||
|
|
||||||
var/capacity = 300; //the number of sheets it can carry.
|
var/capacity = 300; //the number of sheets it can carry.
|
||||||
w_class = 3
|
w_class = 3
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/obj/structure/closet/wardrobe
|
/obj/structure/closet/wardrobe
|
||||||
name = "wardrobe"
|
name = "wardrobe"
|
||||||
desc = "It's a storage unit for standard-issue Nanotrasen attire."
|
desc = "It's a storage unit for standard-issue attire."
|
||||||
icon_state = "blue"
|
icon_state = "blue"
|
||||||
icon_closed = "blue"
|
icon_closed = "blue"
|
||||||
|
|
||||||
@@ -68,7 +68,7 @@
|
|||||||
|
|
||||||
/obj/structure/closet/wardrobe/chaplain_black
|
/obj/structure/closet/wardrobe/chaplain_black
|
||||||
name = "chapel wardrobe"
|
name = "chapel wardrobe"
|
||||||
desc = "It's a storage unit for Nanotrasen-approved religious attire."
|
desc = "It's a storage unit for approved religious attire."
|
||||||
icon_state = "black"
|
icon_state = "black"
|
||||||
icon_closed = "black"
|
icon_closed = "black"
|
||||||
|
|
||||||
@@ -120,7 +120,7 @@
|
|||||||
|
|
||||||
/obj/structure/closet/wardrobe/orange
|
/obj/structure/closet/wardrobe/orange
|
||||||
name = "prison wardrobe"
|
name = "prison wardrobe"
|
||||||
desc = "It's a storage unit for Nanotrasen-regulation prisoner attire."
|
desc = "It's a storage unit for regulation prisoner attire."
|
||||||
icon_state = "orange"
|
icon_state = "orange"
|
||||||
icon_closed = "orange"
|
icon_closed = "orange"
|
||||||
|
|
||||||
|
|||||||
@@ -75,13 +75,12 @@
|
|||||||
|
|
||||||
/obj/structure/mirror/raider/attack_hand(var/mob/living/carbon/human/user)
|
/obj/structure/mirror/raider/attack_hand(var/mob/living/carbon/human/user)
|
||||||
if(istype(get_area(src),/area/syndicate_mothership))
|
if(istype(get_area(src),/area/syndicate_mothership))
|
||||||
if(istype(user) && user.mind && user.mind.special_role == "Raider" && user.species != "Vox" && is_alien_whitelisted(user, "Vox"))
|
if(istype(user) && user.mind && user.mind.special_role == "Raider" && user.species.name != "Vox" && is_alien_whitelisted(user, "Vox"))
|
||||||
var/choice = input("Do you wish to become a Vox? This is not reversible.") as null|anything in list("No","Yes")
|
var/choice = input("Do you wish to become a true Vox of the Shoal? This is not reversible.") as null|anything in list("No","Yes")
|
||||||
if(choice && choice == "Yes")
|
if(choice && choice == "Yes")
|
||||||
var/mob/living/carbon/human/vox/vox = new(get_turf(src),"Vox")
|
var/mob/living/carbon/human/vox/vox = new(get_turf(src),"Vox")
|
||||||
vox.gender = user.gender
|
vox.gender = user.gender
|
||||||
raiders.equip(vox)
|
raiders.equip(vox)
|
||||||
new /obj/item/organ/stack/vox(vox)
|
|
||||||
if(user.mind)
|
if(user.mind)
|
||||||
user.mind.transfer_to(vox)
|
user.mind.transfer_to(vox)
|
||||||
spawn(1)
|
spawn(1)
|
||||||
|
|||||||
@@ -117,7 +117,7 @@
|
|||||||
|
|
||||||
/obj/machinery/shower
|
/obj/machinery/shower
|
||||||
name = "shower"
|
name = "shower"
|
||||||
desc = "The HS-451. Installed in the 2550s by the Nanotrasen Hygiene Division."
|
desc = "The HS-451. Installed in the 2550s by the Hygiene Division."
|
||||||
icon = 'icons/obj/watercloset.dmi'
|
icon = 'icons/obj/watercloset.dmi'
|
||||||
icon_state = "shower"
|
icon_state = "shower"
|
||||||
density = 0
|
density = 0
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
paycuts_suspicion
|
paycuts_suspicion
|
||||||
round_time = 60*10
|
round_time = 60*10
|
||||||
message = {"Reports have leaked that Nanotrasen Inc. is planning to put paycuts into
|
message = {"Reports have leaked that NanoTrasen is planning to put paycuts into
|
||||||
effect on many of its Research Stations in Tau Ceti. Apparently these research
|
effect on many of its Research Stations in Tau Ceti. Apparently these research
|
||||||
stations haven't been able to yield the expected revenue, and thus adjustments
|
stations haven't been able to yield the expected revenue, and thus adjustments
|
||||||
have to be made."}
|
have to be made."}
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
on live humans, including virology research, genetic manipulation, and \"feeding them
|
on live humans, including virology research, genetic manipulation, and \"feeding them
|
||||||
to the slimes to see what happens\". Allegedly, these test subjects were neither
|
to the slimes to see what happens\". Allegedly, these test subjects were neither
|
||||||
humanified monkeys nor volunteers, but rather unqualified staff that were forced into
|
humanified monkeys nor volunteers, but rather unqualified staff that were forced into
|
||||||
the experiments, and reported to have died in a \"work accident\" by Nanotrasen Inc."}
|
the experiments, and reported to have died in a \"work accident\" by NanoTrasen."}
|
||||||
author = "Unauthorized"
|
author = "Unauthorized"
|
||||||
|
|
||||||
bluespace_research
|
bluespace_research
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ var/can_call_ert
|
|||||||
usr << "<span class='danger'>The round hasn't started yet!</span>"
|
usr << "<span class='danger'>The round hasn't started yet!</span>"
|
||||||
return
|
return
|
||||||
if(send_emergency_team)
|
if(send_emergency_team)
|
||||||
usr << "<span class='danger'>Central Command has already dispatched an emergency response team!</span>"
|
usr << "<span class='danger'>[boss_name] has already dispatched an emergency response team!</span>"
|
||||||
return
|
return
|
||||||
if(alert("Do you want to dispatch an Emergency Response Team?",,"Yes","No") != "Yes")
|
if(alert("Do you want to dispatch an Emergency Response Team?",,"Yes","No") != "Yes")
|
||||||
return
|
return
|
||||||
@@ -113,11 +113,11 @@ proc/trigger_armed_response_team(var/force = 0)
|
|||||||
|
|
||||||
// there's only a certain chance a team will be sent
|
// there's only a certain chance a team will be sent
|
||||||
if(!prob(send_team_chance))
|
if(!prob(send_team_chance))
|
||||||
command_announcement.Announce("It would appear that an emergency response team was requested for [station_name()]. Unfortunately, we were unable to send one at this time.", "Central Command")
|
command_announcement.Announce("It would appear that an emergency response team was requested for [station_name()]. Unfortunately, we were unable to send one at this time.", "[boss_name]")
|
||||||
can_call_ert = 0 // Only one call per round, ladies.
|
can_call_ert = 0 // Only one call per round, ladies.
|
||||||
return
|
return
|
||||||
|
|
||||||
command_announcement.Announce("It would appear that an emergency response team was requested for [station_name()]. We will prepare and send one as soon as possible.", "Central Command")
|
command_announcement.Announce("It would appear that an emergency response team was requested for [station_name()]. We will prepare and send one as soon as possible.", "[boss_name]")
|
||||||
|
|
||||||
can_call_ert = 0 // Only one call per round, gentleman.
|
can_call_ert = 0 // Only one call per round, gentleman.
|
||||||
send_emergency_team = 1
|
send_emergency_team = 1
|
||||||
|
|||||||
@@ -24,12 +24,17 @@ var/global/list/global_map = null
|
|||||||
var/list/hit_appends = list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF")
|
var/list/hit_appends = list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF")
|
||||||
|
|
||||||
|
|
||||||
var/diary = null
|
var/diary = null
|
||||||
var/href_logfile = null
|
var/href_logfile = null
|
||||||
var/station_name = "NSS Exodus"
|
var/station_name = "NSS Exodus"
|
||||||
var/game_version = "Baystation12"
|
var/station_short = "Exodus"
|
||||||
var/changelog_hash = ""
|
var/const/boss_name = "Central Command"
|
||||||
var/game_year = (text2num(time2text(world.realtime, "YYYY")) + 544)
|
var/const/boss_short = "Centcomm"
|
||||||
|
var/const/company_name = "NanoTrasen"
|
||||||
|
var/const/company_short = "NT"
|
||||||
|
var/game_version = "Baystation12"
|
||||||
|
var/changelog_hash = ""
|
||||||
|
var/game_year = (text2num(time2text(world.realtime, "YYYY")) + 544)
|
||||||
|
|
||||||
var/round_progressing = 1
|
var/round_progressing = 1
|
||||||
var/master_mode = "extended" // "extended"
|
var/master_mode = "extended" // "extended"
|
||||||
|
|||||||
@@ -353,7 +353,7 @@ proc/admin_notice(var/message, var/rights)
|
|||||||
dat+={"<HR><B>Feed Security functions:</B><BR>
|
dat+={"<HR><B>Feed Security functions:</B><BR>
|
||||||
<BR><A href='?src=\ref[src];ac_menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>
|
<BR><A href='?src=\ref[src];ac_menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>
|
||||||
<BR><A href='?src=\ref[src];ac_menu_censor_story=1'>Censor Feed Stories</A>
|
<BR><A href='?src=\ref[src];ac_menu_censor_story=1'>Censor Feed Stories</A>
|
||||||
<BR><A href='?src=\ref[src];ac_menu_censor_channel=1'>Mark Feed Channel with Nanotrasen D-Notice (disables and locks the channel.</A>
|
<BR><A href='?src=\ref[src];ac_menu_censor_channel=1'>Mark Feed Channel with [company_name] D-Notice (disables and locks the channel.</A>
|
||||||
<BR><HR><A href='?src=\ref[src];ac_set_signature=1'>The newscaster recognises you as:<BR> <FONT COLOR='green'>[src.admincaster_signature]</FONT></A>
|
<BR><HR><A href='?src=\ref[src];ac_set_signature=1'>The newscaster recognises you as:<BR> <FONT COLOR='green'>[src.admincaster_signature]</FONT></A>
|
||||||
"}
|
"}
|
||||||
if(1)
|
if(1)
|
||||||
@@ -419,7 +419,7 @@ proc/admin_notice(var/message, var/rights)
|
|||||||
dat+="<B>[src.admincaster_feed_channel.channel_name]: </B><FONT SIZE=1>\[created by: <FONT COLOR='maroon'>[src.admincaster_feed_channel.author]</FONT>\]</FONT><HR>"
|
dat+="<B>[src.admincaster_feed_channel.channel_name]: </B><FONT SIZE=1>\[created by: <FONT COLOR='maroon'>[src.admincaster_feed_channel.author]</FONT>\]</FONT><HR>"
|
||||||
if(src.admincaster_feed_channel.censored)
|
if(src.admincaster_feed_channel.censored)
|
||||||
dat+={"
|
dat+={"
|
||||||
<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a Nanotrasen D-Notice.<BR>
|
<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a [company_name] D-Notice.<BR>
|
||||||
No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>
|
No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>
|
||||||
"}
|
"}
|
||||||
else
|
else
|
||||||
@@ -440,7 +440,7 @@ proc/admin_notice(var/message, var/rights)
|
|||||||
"}
|
"}
|
||||||
if(10)
|
if(10)
|
||||||
dat+={"
|
dat+={"
|
||||||
<B>Nanotrasen Feed Censorship Tool</B><BR>
|
<B>[company_name] Feed Censorship Tool</B><BR>
|
||||||
<FONT SIZE=1>NOTE: Due to the nature of news Feeds, total deletion of a Feed Story is not possible.<BR>
|
<FONT SIZE=1>NOTE: Due to the nature of news Feeds, total deletion of a Feed Story is not possible.<BR>
|
||||||
Keep in mind that users attempting to view a censored feed will instead see the \[REDACTED\] tag above it.</FONT>
|
Keep in mind that users attempting to view a censored feed will instead see the \[REDACTED\] tag above it.</FONT>
|
||||||
<HR>Select Feed channel to get Stories from:<BR>
|
<HR>Select Feed channel to get Stories from:<BR>
|
||||||
@@ -453,7 +453,7 @@ proc/admin_notice(var/message, var/rights)
|
|||||||
dat+="<BR><A href='?src=\ref[src];ac_setScreen=[0]'>Cancel</A>"
|
dat+="<BR><A href='?src=\ref[src];ac_setScreen=[0]'>Cancel</A>"
|
||||||
if(11)
|
if(11)
|
||||||
dat+={"
|
dat+={"
|
||||||
<B>Nanotrasen D-Notice Handler</B><HR>
|
<B>[company_name] D-Notice Handler</B><HR>
|
||||||
<FONT SIZE=1>A D-Notice is to be bestowed upon the channel if the handling Authority deems it as harmful for the station's
|
<FONT SIZE=1>A D-Notice is to be bestowed upon the channel if the handling Authority deems it as harmful for the station's
|
||||||
morale, integrity or disciplinary behaviour. A D-Notice will render a channel unable to be updated by anyone, without deleting any feed
|
morale, integrity or disciplinary behaviour. A D-Notice will render a channel unable to be updated by anyone, without deleting any feed
|
||||||
stories it might contain at the time. You can lift a D-Notice if you have the required access at any time.</FONT><HR>
|
stories it might contain at the time. You can lift a D-Notice if you have the required access at any time.</FONT><HR>
|
||||||
@@ -486,7 +486,7 @@ proc/admin_notice(var/message, var/rights)
|
|||||||
"}
|
"}
|
||||||
if(src.admincaster_feed_channel.censored)
|
if(src.admincaster_feed_channel.censored)
|
||||||
dat+={"
|
dat+={"
|
||||||
<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a Nanotrasen D-Notice.<BR>
|
<FONT COLOR='red'><B>ATTENTION: </B></FONT>This channel has been deemed as threatening to the welfare of the station, and marked with a [company_name] D-Notice.<BR>
|
||||||
No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>
|
No further feed story additions are allowed while the D-Notice is in effect.<BR><BR>
|
||||||
"}
|
"}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -621,7 +621,7 @@ var/list/admin_verbs_mentor = list(
|
|||||||
if(istype(T,/mob/living/carbon/human))
|
if(istype(T,/mob/living/carbon/human))
|
||||||
var/mob/living/carbon/human/H = T
|
var/mob/living/carbon/human/H = T
|
||||||
if (H.species)
|
if (H.species)
|
||||||
D.affected_species = list(H.species.name)
|
D.affected_species = list(H.species.get_bodytype())
|
||||||
if(H.species.primitive_form)
|
if(H.species.primitive_form)
|
||||||
D.affected_species |= H.species.primitive_form
|
D.affected_species |= H.species.primitive_form
|
||||||
if(H.species.greater_form)
|
if(H.species.greater_form)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ var/list/admin_datums = list()
|
|||||||
error("Admin datum created without a ckey argument. Datum has been deleted")
|
error("Admin datum created without a ckey argument. Datum has been deleted")
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
return
|
||||||
admincaster_signature = "Nanotrasen Officer #[rand(0,9)][rand(0,9)][rand(0,9)]"
|
admincaster_signature = "[company_name] Officer #[rand(0,9)][rand(0,9)][rand(0,9)]"
|
||||||
rank = initial_rank
|
rank = initial_rank
|
||||||
rights = initial_rights
|
rights = initial_rights
|
||||||
admin_datums[ckey] = src
|
admin_datums[ckey] = src
|
||||||
@@ -43,7 +43,7 @@ var/list/admin_datums = list()
|
|||||||
owner.holder = src
|
owner.holder = src
|
||||||
owner.deadmin_holder = null
|
owner.deadmin_holder = null
|
||||||
owner.add_admin_verbs()
|
owner.add_admin_verbs()
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
checks if usr is an admin with at least ONE of the flags in rights_required. (Note, they don't need all the flags)
|
checks if usr is an admin with at least ONE of the flags in rights_required. (Note, they don't need all the flags)
|
||||||
|
|||||||
@@ -29,7 +29,7 @@
|
|||||||
//log_admin("HELP: [key_name(src)]: [msg]")
|
//log_admin("HELP: [key_name(src)]: [msg]")
|
||||||
|
|
||||||
/proc/Centcomm_announce(var/msg, var/mob/Sender, var/iamessage)
|
/proc/Centcomm_announce(var/msg, var/mob/Sender, var/iamessage)
|
||||||
msg = "\blue <b><font color=orange>CENTCOMM[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
msg = "\blue <b><font color=orange>[uppertext(boss_short)]M[iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=\ref[Sender]'>PP</A>) (<A HREF='?_src_=vars;Vars=\ref[Sender]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=\ref[Sender]'>SM</A>) ([admin_jump_link(Sender, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=\ref[Sender]'>BSA</A>) (<A HREF='?_src_=holder;CentcommReply=\ref[Sender]'>RPLY</A>):</b> [msg]"
|
||||||
for(var/client/C in admins)
|
for(var/client/C in admins)
|
||||||
if(R_ADMIN & C.holder.rights)
|
if(R_ADMIN & C.holder.rights)
|
||||||
C << msg
|
C << msg
|
||||||
|
|||||||
@@ -515,7 +515,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
|||||||
if(!input)
|
if(!input)
|
||||||
return
|
return
|
||||||
if(!customname)
|
if(!customname)
|
||||||
customname = "NanoTrasen Update"
|
customname = "[company_name] Update"
|
||||||
for (var/obj/machinery/computer/communications/C in machines)
|
for (var/obj/machinery/computer/communications/C in machines)
|
||||||
if(! (C.stat & (BROKEN|NOPOWER) ) )
|
if(! (C.stat & (BROKEN|NOPOWER) ) )
|
||||||
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper( C.loc )
|
var/obj/item/weapon/paper/P = new /obj/item/weapon/paper( C.loc )
|
||||||
@@ -529,7 +529,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
|||||||
if("Yes")
|
if("Yes")
|
||||||
command_announcement.Announce(input, customname, new_sound = 'sound/AI/commandreport.ogg', msg_sanitized = 1);
|
command_announcement.Announce(input, customname, new_sound = 'sound/AI/commandreport.ogg', msg_sanitized = 1);
|
||||||
if("No")
|
if("No")
|
||||||
world << "\red New NanoTrasen Update available at all communication consoles."
|
world << "\red New [company_name] Update available at all communication consoles."
|
||||||
world << sound('sound/AI/commandreport.ogg')
|
world << sound('sound/AI/commandreport.ogg')
|
||||||
|
|
||||||
log_admin("[key_name(src)] has created a command report: [input]")
|
log_admin("[key_name(src)] has created a command report: [input]")
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
dat += "Locked on<BR>"
|
dat += "Locked on<BR>"
|
||||||
dat += "<B>Charge progress: [reload]/180:</B><BR>"
|
dat += "<B>Charge progress: [reload]/180:</B><BR>"
|
||||||
dat += "<A href='byond://?src=\ref[src];fire=1'>Open Fire</A><BR>"
|
dat += "<A href='byond://?src=\ref[src];fire=1'>Open Fire</A><BR>"
|
||||||
dat += "Deployment of weapon authorized by <br>Nanotrasen Naval Command<br><br>Remember, friendly fire is grounds for termination of your contract and life.<HR>"
|
dat += "Deployment of weapon authorized by <br>[company_name] Naval Command<br><br>Remember, friendly fire is grounds for termination of your contract and life.<HR>"
|
||||||
user << browse(dat, "window=scroll")
|
user << browse(dat, "window=scroll")
|
||||||
onclose(user, "scroll")
|
onclose(user, "scroll")
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
get_data()
|
get_data()
|
||||||
var/dat = {"
|
var/dat = {"
|
||||||
<b>Implant Specifications:</b><BR>
|
<b>Implant Specifications:</b><BR>
|
||||||
<b>Name:</b> Nanotrasen Employee Exile Implant<BR>
|
<b>Name:</b> [company_name] Employee Exile Implant<BR>
|
||||||
<b>Implant Details:</b> The onboard gateway system has been modified to reject entry by individuals containing this implant<BR>"}
|
<b>Implant Details:</b> The onboard gateway system has been modified to reject entry by individuals containing this implant<BR>"}
|
||||||
return dat
|
return dat
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
/obj/item/weapon/paper/pamphlet
|
/obj/item/weapon/paper/pamphlet
|
||||||
name = "pamphlet"
|
name = "pamphlet"
|
||||||
icon_state = "pamphlet"
|
icon_state = "pamphlet"
|
||||||
info = "<b>Welcome to the Nanotrasen Gateway project...</b><br>\
|
info = "<b>Welcome to the Gateway project...</b><br>\
|
||||||
Congratulations! If you're reading this, you and your superiors have decided that you're \
|
Congratulations! If you're reading this, you and your superiors have decided that you're \
|
||||||
ready to commit to a life spent colonising the rolling hills of far away worlds. You \
|
ready to commit to a life spent colonising the rolling hills of far away worlds. You \
|
||||||
must be ready for a lifetime of adventure, a little bit of hard work, and an award \
|
must be ready for a lifetime of adventure, a little bit of hard work, and an award \
|
||||||
winning dental plan- but that's not all the Nanotrasen Gateway project has to offer.<br>\
|
winning dental plan- but that's not all the Gateway project has to offer.<br>\
|
||||||
<br>Because we care about you, we feel it is only fair to make sure you know the risks \
|
<br>Because we care about you, we feel it is only fair to make sure you know the risks \
|
||||||
before you commit to joining the Nanotrasen Gateway project. All away destinations have \
|
before you commit to joining the Gateway project. All away destinations have \
|
||||||
been fully scanned by a Nanotrasen expeditionary team, and are certified to be 100% safe. \
|
been fully scanned by a expeditionary team, and are certified to be 100% safe. \
|
||||||
We've even left a case of space beer along with the basic materials you'll need to expand \
|
We've even left a case of space beer along with the basic materials you'll need to expand \
|
||||||
Nanotrasen's operational area and start your new life.<br><br>\
|
the Project's operational area and start your new life.<br><br>\
|
||||||
<b>Gateway Operation Basics</b><br>\
|
<b>Gateway Operation Basics</b><br>\
|
||||||
All Nanotrasen approved Gateways operate on the same basic principals. They operate off \
|
All approved Gateways operate on the same basic principals. They operate off \
|
||||||
area equipment power as you would expect, but they also require a backup wire with at least \
|
area equipment power as you would expect, but they also require a backup wire with at least \
|
||||||
128, 000 Watts of power running through it. Without this supply, it cannot safely function \
|
128, 000 Watts of power running through it. Without this supply, it cannot safely function \
|
||||||
and will reject all attempts at operation.<br><br>\
|
and will reject all attempts at operation.<br><br>\
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
number of cases, the Gateway they have established may not be immediately obvious. \
|
number of cases, the Gateway they have established may not be immediately obvious. \
|
||||||
Do not panic if you cannot locate the return Gateway. Begin colonisation of the destination. \
|
Do not panic if you cannot locate the return Gateway. Begin colonisation of the destination. \
|
||||||
<br><br><b>A New World</b><br>\
|
<br><br><b>A New World</b><br>\
|
||||||
As a participant in the Nanotrasen Gateway Project, you will be on the frontiers of space. \
|
As a participant in the Gateway Project, you will be on the frontiers of space. \
|
||||||
Though complete safety is assured, participants are advised to prepare for inhospitable \
|
Though complete safety is assured, participants are advised to prepare for inhospitable \
|
||||||
environs."
|
environs."
|
||||||
|
|
||||||
|
|||||||
@@ -411,7 +411,7 @@ datum/preferences
|
|||||||
|
|
||||||
dat += "Backpack Type:<br><a href ='?_src_=prefs;preference=bag;task=input'><b>[backbaglist[backbag]]</b></a><br>"
|
dat += "Backpack Type:<br><a href ='?_src_=prefs;preference=bag;task=input'><b>[backbaglist[backbag]]</b></a><br>"
|
||||||
|
|
||||||
dat += "Nanotrasen Relation:<br><a href ='?_src_=prefs;preference=nt_relation;task=input'><b>[nanotrasen_relation]</b></a><br>"
|
dat += "[company_name] Relation:<br><a href ='?_src_=prefs;preference=nt_relation;task=input'><b>[nanotrasen_relation]</b></a><br>"
|
||||||
|
|
||||||
dat += "</td><td><b>Preview</b><br><img src=previewicon.png height=64 width=64><img src=previewicon2.png height=64 width=64></td></tr></table>"
|
dat += "</td><td><b>Preview</b><br><img src=previewicon.png height=64 width=64><img src=previewicon2.png height=64 width=64></td></tr></table>"
|
||||||
|
|
||||||
|
|||||||
@@ -678,7 +678,7 @@ var/global/list/gear_datums = list()
|
|||||||
slot = slot_wear_suit
|
slot = slot_wear_suit
|
||||||
|
|
||||||
/datum/gear/leather_jacket_nt
|
/datum/gear/leather_jacket_nt
|
||||||
display_name = "leather jacket, NanoTrasen, black"
|
display_name = "leather jacket, corporate, black"
|
||||||
path = /obj/item/clothing/suit/storage/leather_jacket/nanotrasen
|
path = /obj/item/clothing/suit/storage/leather_jacket/nanotrasen
|
||||||
cost = 2
|
cost = 2
|
||||||
slot = slot_wear_suit
|
slot = slot_wear_suit
|
||||||
@@ -690,7 +690,7 @@ var/global/list/gear_datums = list()
|
|||||||
slot = slot_wear_suit
|
slot = slot_wear_suit
|
||||||
|
|
||||||
/datum/gear/brown_jacket_nt
|
/datum/gear/brown_jacket_nt
|
||||||
display_name = "leather jacket, NanoTrasen, brown"
|
display_name = "leather jacket, corporate, brown"
|
||||||
path = /obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen
|
path = /obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen
|
||||||
cost = 2
|
cost = 2
|
||||||
slot = slot_wear_suit
|
slot = slot_wear_suit
|
||||||
|
|||||||
@@ -32,10 +32,10 @@
|
|||||||
|
|
||||||
if(H.species)
|
if(H.species)
|
||||||
if(exclusive)
|
if(exclusive)
|
||||||
if(!(H.species.name in species_restricted))
|
if(!(H.species.get_bodytype() in species_restricted))
|
||||||
wearable = 1
|
wearable = 1
|
||||||
else
|
else
|
||||||
if(H.species.name in species_restricted)
|
if(H.species.get_bodytype() in species_restricted)
|
||||||
wearable = 1
|
wearable = 1
|
||||||
|
|
||||||
if(!wearable && !(slot in list(slot_l_store, slot_r_store, slot_s_store)))
|
if(!wearable && !(slot in list(slot_l_store, slot_r_store, slot_s_store)))
|
||||||
@@ -73,6 +73,7 @@
|
|||||||
switch(target_species)
|
switch(target_species)
|
||||||
if("Skrell")
|
if("Skrell")
|
||||||
species_restricted = list("Human", "Skrell") //skrell helmets fit humans too
|
species_restricted = list("Human", "Skrell") //skrell helmets fit humans too
|
||||||
|
|
||||||
else
|
else
|
||||||
species_restricted = list(target_species)
|
species_restricted = list(target_species)
|
||||||
|
|
||||||
@@ -445,8 +446,8 @@ BLIND // can't see anything
|
|||||||
var/icon/under_icon
|
var/icon/under_icon
|
||||||
if(icon_override)
|
if(icon_override)
|
||||||
under_icon = icon_override
|
under_icon = icon_override
|
||||||
else if(H && sprite_sheets && sprite_sheets[H.species.name])
|
else if(H && sprite_sheets && sprite_sheets[H.species.get_bodytype()])
|
||||||
under_icon = sprite_sheets[H.species.name]
|
under_icon = sprite_sheets[H.species.get_bodytype()]
|
||||||
else if(item_icons && item_icons[slot_w_uniform_str])
|
else if(item_icons && item_icons[slot_w_uniform_str])
|
||||||
under_icon = item_icons[slot_w_uniform_str]
|
under_icon = item_icons[slot_w_uniform_str]
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -61,7 +61,7 @@
|
|||||||
"Tajara" = 'icons/mob/species/tajaran/helmet.dmi',
|
"Tajara" = 'icons/mob/species/tajaran/helmet.dmi',
|
||||||
"Unathi" = 'icons/mob/species/unathi/helmet.dmi',
|
"Unathi" = 'icons/mob/species/unathi/helmet.dmi',
|
||||||
)
|
)
|
||||||
|
|
||||||
armor = list(melee = 62, bullet = 50, laser = 50,energy = 35, bomb = 10, bio = 2, rad = 0)
|
armor = list(melee = 62, bullet = 50, laser = 50,energy = 35, bomb = 10, bio = 2, rad = 0)
|
||||||
flags_inv = HIDEEARS
|
flags_inv = HIDEEARS
|
||||||
siemens_coefficient = 0.7
|
siemens_coefficient = 0.7
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
//Non-hardsuit ERT helmets.
|
//Non-hardsuit ERT helmets.
|
||||||
/obj/item/clothing/head/helmet/ert
|
/obj/item/clothing/head/helmet/ert
|
||||||
name = "emergency response team helmet"
|
name = "emergency response team helmet"
|
||||||
desc = "An in-atmosphere helmet worn by members of the NanoTrasen Emergency Response Team. Protects the head from impacts."
|
desc = "An in-atmosphere helmet worn by members of the Emergency Response Team. Protects the head from impacts."
|
||||||
icon_state = "erthelmet_cmd"
|
icon_state = "erthelmet_cmd"
|
||||||
item_state_slots = list(
|
item_state_slots = list(
|
||||||
slot_l_hand_str = "syndicate-helm-green",
|
slot_l_hand_str = "syndicate-helm-green",
|
||||||
@@ -91,22 +91,22 @@
|
|||||||
//Commander
|
//Commander
|
||||||
/obj/item/clothing/head/helmet/ert/command
|
/obj/item/clothing/head/helmet/ert/command
|
||||||
name = "emergency response team commander helmet"
|
name = "emergency response team commander helmet"
|
||||||
desc = "An in-atmosphere helmet worn by the commander of a NanoTrasen Emergency Response Team. Has blue highlights."
|
desc = "An in-atmosphere helmet worn by the commander of a Emergency Response Team. Has blue highlights."
|
||||||
|
|
||||||
//Security
|
//Security
|
||||||
/obj/item/clothing/head/helmet/ert/security
|
/obj/item/clothing/head/helmet/ert/security
|
||||||
name = "emergency response team security helmet"
|
name = "emergency response team security helmet"
|
||||||
desc = "An in-atmosphere helmet worn by security members of the NanoTrasen Emergency Response Team. Has red highlights."
|
desc = "An in-atmosphere helmet worn by security members of the Emergency Response Team. Has red highlights."
|
||||||
icon_state = "erthelmet_sec"
|
icon_state = "erthelmet_sec"
|
||||||
|
|
||||||
//Engineer
|
//Engineer
|
||||||
/obj/item/clothing/head/helmet/ert/engineer
|
/obj/item/clothing/head/helmet/ert/engineer
|
||||||
name = "emergency response team engineer helmet"
|
name = "emergency response team engineer helmet"
|
||||||
desc = "An in-atmosphere helmet worn by engineering members of the NanoTrasen Emergency Response Team. Has orange highlights."
|
desc = "An in-atmosphere helmet worn by engineering members of the Emergency Response Team. Has orange highlights."
|
||||||
icon_state = "erthelmet_eng"
|
icon_state = "erthelmet_eng"
|
||||||
|
|
||||||
//Medical
|
//Medical
|
||||||
/obj/item/clothing/head/helmet/ert/medical
|
/obj/item/clothing/head/helmet/ert/medical
|
||||||
name = "emergency response team medical helmet"
|
name = "emergency response team medical helmet"
|
||||||
desc = "A set of armor worn by medical members of the NanoTrasen Emergency Response Team. Has red and white highlights."
|
desc = "A set of armor worn by medical members of the Emergency Response Team. Has red and white highlights."
|
||||||
icon_state = "erthelmet_med"
|
icon_state = "erthelmet_med"
|
||||||
|
|||||||
@@ -95,11 +95,11 @@
|
|||||||
icon_state = "beret_purple"
|
icon_state = "beret_purple"
|
||||||
/obj/item/clothing/head/beret/centcom/officer
|
/obj/item/clothing/head/beret/centcom/officer
|
||||||
name = "officers beret"
|
name = "officers beret"
|
||||||
desc = "A black beret adorned with the shield<EFBFBD>a silver kite shield with an engraved sword<EFBFBD>of the NanoTrasen security forces."
|
desc = "A black beret adorned with the shield - a silver kite shield with an engraved sword - of the corporate security forces."
|
||||||
icon_state = "beret_centcom_officer"
|
icon_state = "beret_centcom_officer"
|
||||||
/obj/item/clothing/head/beret/centcom/captain
|
/obj/item/clothing/head/beret/centcom/captain
|
||||||
name = "captains beret"
|
name = "captains beret"
|
||||||
desc = "A white beret adorned with the shield<EFBFBD>a silver kite shield with an engraved sword<EFBFBD>of the NanoTrasen security forces."
|
desc = "A white beret adorned with the shield - a silver kite shield with an engraved sword - of the corporate security forces."
|
||||||
icon_state = "beret_centcom_captain"
|
icon_state = "beret_centcom_captain"
|
||||||
|
|
||||||
//Medical
|
//Medical
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/shoes/jackboots
|
/obj/item/clothing/shoes/jackboots
|
||||||
name = "jackboots"
|
name = "jackboots"
|
||||||
desc = "Nanotrasen-issue Security combat boots for combat scenarios or combat situations. All combat, all the time."
|
desc = "Standard-issue Security combat boots for combat scenarios or combat situations. All combat, all the time."
|
||||||
icon_state = "jackboots"
|
icon_state = "jackboots"
|
||||||
item_state = "jackboots"
|
item_state = "jackboots"
|
||||||
force = 3
|
force = 3
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
//Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it.
|
//Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it.
|
||||||
/obj/item/clothing/suit/armor/captain
|
/obj/item/clothing/suit/armor/captain
|
||||||
name = "Captain's armor"
|
name = "Captain's armor"
|
||||||
desc = "A bulky, heavy-duty piece of exclusive Nanotrasen armor. YOU are in charge!"
|
desc = "A bulky, heavy-duty piece of exclusive corporate armor. YOU are in charge!"
|
||||||
icon_state = "caparmor"
|
icon_state = "caparmor"
|
||||||
item_state = "capspacesuit"
|
item_state = "capspacesuit"
|
||||||
w_class = 4
|
w_class = 4
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
|
allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy, /obj/item/weapon/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
|
||||||
slowdown = 1.5
|
slowdown = 1.5
|
||||||
armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
|
armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
|
||||||
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL
|
||||||
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
|
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
|
||||||
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
|
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
|
||||||
siemens_coefficient = 0.7
|
siemens_coefficient = 0.7
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
//Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it.
|
//Captain's space suit This is not the proper path but I don't currently know enough about how this all works to mess with it.
|
||||||
/obj/item/clothing/suit/armor/captain
|
/obj/item/clothing/suit/armor/captain
|
||||||
name = "Captain's armor"
|
name = "Captain's armor"
|
||||||
desc = "A bulky, heavy-duty piece of exclusive Nanotrasen armor. YOU are in charge!"
|
desc = "A bulky, heavy-duty piece of exclusive corporate armor. YOU are in charge!"
|
||||||
icon_state = "caparmor"
|
icon_state = "caparmor"
|
||||||
item_state = "capspacesuit"
|
item_state = "capspacesuit"
|
||||||
w_class = 4
|
w_class = 4
|
||||||
|
|||||||
@@ -465,8 +465,8 @@
|
|||||||
var/species_icon = 'icons/mob/rig_back.dmi'
|
var/species_icon = 'icons/mob/rig_back.dmi'
|
||||||
// Since setting mob_icon will override the species checks in
|
// Since setting mob_icon will override the species checks in
|
||||||
// update_inv_wear_suit(), handle species checks here.
|
// update_inv_wear_suit(), handle species checks here.
|
||||||
if(wearer && sprite_sheets && sprite_sheets[wearer.species.name])
|
if(wearer && sprite_sheets && sprite_sheets[wearer.species.get_bodytype()])
|
||||||
species_icon = sprite_sheets[wearer.species.name]
|
species_icon = sprite_sheets[wearer.species.get_bodytype()]
|
||||||
mob_icon = image("icon" = species_icon, "icon_state" = "[icon_state]")
|
mob_icon = image("icon" = species_icon, "icon_state" = "[icon_state]")
|
||||||
|
|
||||||
if(installed_modules.len)
|
if(installed_modules.len)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/rig/ert
|
/obj/item/weapon/rig/ert
|
||||||
name = "ERT-C hardsuit control module"
|
name = "ERT-C hardsuit control module"
|
||||||
desc = "A suit worn by the commander of a NanoTrasen Emergency Response Team. Has blue highlights. Armoured and space ready."
|
desc = "A suit worn by the commander of an Emergency Response Team. Has blue highlights. Armoured and space ready."
|
||||||
suit_type = "ERT commander"
|
suit_type = "ERT commander"
|
||||||
icon_state = "ert_commander_rig"
|
icon_state = "ert_commander_rig"
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/rig/ert/engineer
|
/obj/item/weapon/rig/ert/engineer
|
||||||
name = "ERT-E suit control module"
|
name = "ERT-E suit control module"
|
||||||
desc = "A suit worn by the engineering division of a NanoTrasen Emergency Response Team. Has orange highlights. Armoured and space ready."
|
desc = "A suit worn by the engineering division of an Emergency Response Team. Has orange highlights. Armoured and space ready."
|
||||||
suit_type = "ERT engineer"
|
suit_type = "ERT engineer"
|
||||||
icon_state = "ert_engineer_rig"
|
icon_state = "ert_engineer_rig"
|
||||||
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 100, rad = 100)
|
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 100, rad = 100)
|
||||||
@@ -41,7 +41,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/rig/ert/medical
|
/obj/item/weapon/rig/ert/medical
|
||||||
name = "ERT-M suit control module"
|
name = "ERT-M suit control module"
|
||||||
desc = "A suit worn by the medical division of a NanoTrasen Emergency Response Team. Has white highlights. Armoured and space ready."
|
desc = "A suit worn by the medical division of an Emergency Response Team. Has white highlights. Armoured and space ready."
|
||||||
suit_type = "ERT medic"
|
suit_type = "ERT medic"
|
||||||
icon_state = "ert_medical_rig"
|
icon_state = "ert_medical_rig"
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/rig/ert/security
|
/obj/item/weapon/rig/ert/security
|
||||||
name = "ERT-S suit control module"
|
name = "ERT-S suit control module"
|
||||||
desc = "A suit worn by the security division of a NanoTrasen Emergency Response Team. Has red highlights. Armoured and space ready."
|
desc = "A suit worn by the security division of an Emergency Response Team. Has red highlights. Armoured and space ready."
|
||||||
suit_type = "ERT security"
|
suit_type = "ERT security"
|
||||||
icon_state = "ert_security_rig"
|
icon_state = "ert_security_rig"
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@
|
|||||||
|
|
||||||
/obj/item/weapon/rig/ert/assetprotection
|
/obj/item/weapon/rig/ert/assetprotection
|
||||||
name = "Heavy Asset Protection suit control module"
|
name = "Heavy Asset Protection suit control module"
|
||||||
desc = "A heavy suit worn by the highest level of Nanotrasen Asset Protection, don't mess with the person wearing this. Armoured and space ready."
|
desc = "A heavy suit worn by the highest level of Asset Protection, don't mess with the person wearing this. Armoured and space ready."
|
||||||
suit_type = "heavy asset protection"
|
suit_type = "heavy asset protection"
|
||||||
icon_state = "asset_protection_rig"
|
icon_state = "asset_protection_rig"
|
||||||
armor = list(melee = 60, bullet = 50, laser = 50,energy = 40, bomb = 40, bio = 100, rad = 100)
|
armor = list(melee = 60, bullet = 50, laser = 50,energy = 40, bomb = 40, bio = 100, rad = 100)
|
||||||
|
|||||||
@@ -211,7 +211,7 @@
|
|||||||
/obj/item/weapon/rig/hazard
|
/obj/item/weapon/rig/hazard
|
||||||
name = "hazard hardsuit control module"
|
name = "hazard hardsuit control module"
|
||||||
suit_type = "hazard hardsuit"
|
suit_type = "hazard hardsuit"
|
||||||
desc = "A Nanotrasen security hardsuit designed for prolonged EVA in dangerous environments."
|
desc = "A Security hardsuit designed for prolonged EVA in dangerous environments."
|
||||||
icon_state = "hazard_rig"
|
icon_state = "hazard_rig"
|
||||||
armor = list(melee = 60, bullet = 40, laser = 30, energy = 15, bomb = 60, bio = 100, rad = 30)
|
armor = list(melee = 60, bullet = 40, laser = 30, energy = 15, bomb = 60, bio = 100, rad = 30)
|
||||||
slowdown = 1
|
slowdown = 1
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/armor/vest/security
|
/obj/item/clothing/suit/armor/vest/security
|
||||||
name = "security armor"
|
name = "security armor"
|
||||||
desc = "An armored vest that protects against some damage. This one has a NanoTrasen corporate badge."
|
desc = "An armored vest that protects against some damage. This one has a corporate badge."
|
||||||
icon_state = "armorsec"
|
icon_state = "armorsec"
|
||||||
item_state = "armor"
|
item_state = "armor"
|
||||||
|
|
||||||
@@ -176,7 +176,7 @@
|
|||||||
//Non-hardsuit ERT armor.
|
//Non-hardsuit ERT armor.
|
||||||
/obj/item/clothing/suit/armor/vest/ert
|
/obj/item/clothing/suit/armor/vest/ert
|
||||||
name = "emergency response team armor"
|
name = "emergency response team armor"
|
||||||
desc = "A set of armor worn by members of the NanoTrasen Emergency Response Team."
|
desc = "A set of armor worn by members of the Emergency Response Team."
|
||||||
icon_state = "ertarmor_cmd"
|
icon_state = "ertarmor_cmd"
|
||||||
item_state = "armor"
|
item_state = "armor"
|
||||||
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
|
||||||
@@ -185,24 +185,24 @@
|
|||||||
//Commander
|
//Commander
|
||||||
/obj/item/clothing/suit/armor/vest/ert/command
|
/obj/item/clothing/suit/armor/vest/ert/command
|
||||||
name = "emergency response team commander armor"
|
name = "emergency response team commander armor"
|
||||||
desc = "A set of armor worn by the commander of a NanoTrasen Emergency Response Team. Has blue highlights."
|
desc = "A set of armor worn by the commander of an Emergency Response Team. Has blue highlights."
|
||||||
|
|
||||||
//Security
|
//Security
|
||||||
/obj/item/clothing/suit/armor/vest/ert/security
|
/obj/item/clothing/suit/armor/vest/ert/security
|
||||||
name = "emergency response team security armor"
|
name = "emergency response team security armor"
|
||||||
desc = "A set of armor worn by security members of the NanoTrasen Emergency Response Team. Has red highlights."
|
desc = "A set of armor worn by security members of the Emergency Response Team. Has red highlights."
|
||||||
icon_state = "ertarmor_sec"
|
icon_state = "ertarmor_sec"
|
||||||
|
|
||||||
//Engineer
|
//Engineer
|
||||||
/obj/item/clothing/suit/armor/vest/ert/engineer
|
/obj/item/clothing/suit/armor/vest/ert/engineer
|
||||||
name = "emergency response team engineer armor"
|
name = "emergency response team engineer armor"
|
||||||
desc = "A set of armor worn by engineering members of the NanoTrasen Emergency Response Team. Has orange highlights."
|
desc = "A set of armor worn by engineering members of the Emergency Response Team. Has orange highlights."
|
||||||
icon_state = "ertarmor_eng"
|
icon_state = "ertarmor_eng"
|
||||||
|
|
||||||
//Medical
|
//Medical
|
||||||
/obj/item/clothing/suit/armor/vest/ert/medical
|
/obj/item/clothing/suit/armor/vest/ert/medical
|
||||||
name = "emergency response team medical armor"
|
name = "emergency response team medical armor"
|
||||||
desc = "A set of armor worn by medical members of the NanoTrasen Emergency Response Team. Has red and white highlights."
|
desc = "A set of armor worn by medical members of the Emergency Response Team. Has red and white highlights."
|
||||||
icon_state = "ertarmor_med"
|
icon_state = "ertarmor_med"
|
||||||
|
|
||||||
//New Vests
|
//New Vests
|
||||||
@@ -216,7 +216,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/officer
|
/obj/item/clothing/suit/storage/vest/officer
|
||||||
name = "officer armor vest"
|
name = "officer armor vest"
|
||||||
desc = "A simple kevlar plate carrier belonging to Nanotrasen. This one has a security holobadge clipped to the chest."
|
desc = "A simple kevlar plate carrier. This one has a security holobadge clipped to the chest."
|
||||||
icon_state = "officervest_nobadge"
|
icon_state = "officervest_nobadge"
|
||||||
item_state = "officervest_nobadge"
|
item_state = "officervest_nobadge"
|
||||||
icon_badge = "officervest_badge"
|
icon_badge = "officervest_badge"
|
||||||
@@ -224,7 +224,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/warden
|
/obj/item/clothing/suit/storage/vest/warden
|
||||||
name = "warden armor vest"
|
name = "warden armor vest"
|
||||||
desc = "A simple kevlar plate carrier belonging to Nanotrasen. This one has a silver badge clipped to the chest."
|
desc = "A simple kevlar plate carrier. This one has a silver badge clipped to the chest."
|
||||||
icon_state = "wardenvest_nobadge"
|
icon_state = "wardenvest_nobadge"
|
||||||
item_state = "wardenvest_nobadge"
|
item_state = "wardenvest_nobadge"
|
||||||
icon_badge = "wardenvest_badge"
|
icon_badge = "wardenvest_badge"
|
||||||
@@ -232,7 +232,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/hos
|
/obj/item/clothing/suit/storage/vest/hos
|
||||||
name = "commander armor vest"
|
name = "commander armor vest"
|
||||||
desc = "A simple kevlar plate carrier belonging to Nanotrasen. This one has a gold badge clipped to the chest."
|
desc = "A simple kevlar plate carrier. This one has a gold badge clipped to the chest."
|
||||||
icon_state = "hosvest_nobadge"
|
icon_state = "hosvest_nobadge"
|
||||||
item_state = "hosvest_nobadge"
|
item_state = "hosvest_nobadge"
|
||||||
icon_badge = "hosvest_badge"
|
icon_badge = "hosvest_badge"
|
||||||
@@ -264,7 +264,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/heavy/officer
|
/obj/item/clothing/suit/storage/vest/heavy/officer
|
||||||
name = "officer heavy armor vest"
|
name = "officer heavy armor vest"
|
||||||
desc = "A heavy kevlar plate carrier belonging to Nanotrasen with webbing attached. This one has a security holobadge clipped to the chest."
|
desc = "A heavy kevlar plate carrier with webbing attached. This one has a security holobadge clipped to the chest."
|
||||||
icon_state = "officerwebvest_nobadge"
|
icon_state = "officerwebvest_nobadge"
|
||||||
item_state = "officerwebvest_nobadge"
|
item_state = "officerwebvest_nobadge"
|
||||||
icon_badge = "officerwebvest_badge"
|
icon_badge = "officerwebvest_badge"
|
||||||
@@ -272,7 +272,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/heavy/warden
|
/obj/item/clothing/suit/storage/vest/heavy/warden
|
||||||
name = "warden heavy armor vest"
|
name = "warden heavy armor vest"
|
||||||
desc = "A heavy kevlar plate carrier belonging to Nanotrasen with webbing attached. This one has a silver badge clipped to the chest."
|
desc = "A heavy kevlar plate carrier with webbing attached. This one has a silver badge clipped to the chest."
|
||||||
icon_state = "wardenwebvest_nobadge"
|
icon_state = "wardenwebvest_nobadge"
|
||||||
item_state = "wardenwebvest_nobadge"
|
item_state = "wardenwebvest_nobadge"
|
||||||
icon_badge = "wardenwebvest_badge"
|
icon_badge = "wardenwebvest_badge"
|
||||||
@@ -280,7 +280,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/suit/storage/vest/heavy/hos
|
/obj/item/clothing/suit/storage/vest/heavy/hos
|
||||||
name = "commander heavy armor vest"
|
name = "commander heavy armor vest"
|
||||||
desc = "A heavy kevlar plate carrier belonging to Nanotrasen with webbing attached. This one has a gold badge clipped to the chest."
|
desc = "A heavy kevlar plate carrier with webbing attached. This one has a gold badge clipped to the chest."
|
||||||
icon_state = "hoswebvest_nobadge"
|
icon_state = "hoswebvest_nobadge"
|
||||||
item_state = "hoswebvest_nobadge"
|
item_state = "hoswebvest_nobadge"
|
||||||
icon_badge = "hoswebvest_badge"
|
icon_badge = "hoswebvest_badge"
|
||||||
|
|||||||
@@ -357,7 +357,7 @@
|
|||||||
body_parts_covered = UPPER_TORSO|ARMS
|
body_parts_covered = UPPER_TORSO|ARMS
|
||||||
|
|
||||||
/obj/item/clothing/suit/storage/leather_jacket/nanotrasen
|
/obj/item/clothing/suit/storage/leather_jacket/nanotrasen
|
||||||
desc = "A black leather coat. The letters NT are proudly displayed on the back."
|
desc = "A black leather coat. A corporate logo is proudly displayed on the back."
|
||||||
icon_state = "leather_jacket_nt"
|
icon_state = "leather_jacket_nt"
|
||||||
|
|
||||||
//This one has buttons for some reason
|
//This one has buttons for some reason
|
||||||
@@ -371,7 +371,7 @@
|
|||||||
body_parts_covered = UPPER_TORSO|ARMS
|
body_parts_covered = UPPER_TORSO|ARMS
|
||||||
|
|
||||||
/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen
|
/obj/item/clothing/suit/storage/toggle/brown_jacket/nanotrasen
|
||||||
desc = "A brown leather coat. The letters NT are proudly displayed on the back."
|
desc = "A brown leather coat. A corporate logo is proudly displayed on the back."
|
||||||
icon_state = "brown_jacket_nt"
|
icon_state = "brown_jacket_nt"
|
||||||
icon_open = "brown_jacket_nt_open"
|
icon_open = "brown_jacket_nt_open"
|
||||||
icon_closed = "brown_jacket_nt"
|
icon_closed = "brown_jacket_nt"
|
||||||
|
|||||||
@@ -142,7 +142,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/accessory/medal/conduct
|
/obj/item/clothing/accessory/medal/conduct
|
||||||
name = "distinguished conduct medal"
|
name = "distinguished conduct medal"
|
||||||
desc = "A bronze medal awarded for distinguished conduct. Whilst a great honor, this is most basic award given by Nanotrasen. It is often awarded by a captain to a member of their crew."
|
desc = "A bronze medal awarded for distinguished conduct. Whilst a great honor, this is most basic award on offer. It is often awarded by a captain to a member of their crew."
|
||||||
|
|
||||||
/obj/item/clothing/accessory/medal/bronze_heart
|
/obj/item/clothing/accessory/medal/bronze_heart
|
||||||
name = "bronze heart medal"
|
name = "bronze heart medal"
|
||||||
@@ -164,7 +164,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/accessory/medal/silver/security
|
/obj/item/clothing/accessory/medal/silver/security
|
||||||
name = "robust security award"
|
name = "robust security award"
|
||||||
desc = "An award for distinguished combat and sacrifice in defence of Nanotrasen's commercial interests. Often awarded to security staff."
|
desc = "An award for distinguished combat and sacrifice in defence of corporate commercial interests. Often awarded to security staff."
|
||||||
|
|
||||||
/obj/item/clothing/accessory/medal/gold
|
/obj/item/clothing/accessory/medal/gold
|
||||||
name = "gold medal"
|
name = "gold medal"
|
||||||
@@ -173,8 +173,8 @@
|
|||||||
|
|
||||||
/obj/item/clothing/accessory/medal/gold/captain
|
/obj/item/clothing/accessory/medal/gold/captain
|
||||||
name = "medal of captaincy"
|
name = "medal of captaincy"
|
||||||
desc = "A golden medal awarded exclusively to those promoted to the rank of captain. It signifies the codified responsibilities of a captain to Nanotrasen, and their undisputable authority over their crew."
|
desc = "A golden medal awarded exclusively to those promoted to the rank of captain. It signifies the codified responsibilities of a captain, and their undisputable authority over their crew."
|
||||||
|
|
||||||
/obj/item/clothing/accessory/medal/gold/heroism
|
/obj/item/clothing/accessory/medal/gold/heroism
|
||||||
name = "medal of exceptional heroism"
|
name = "medal of exceptional heroism"
|
||||||
desc = "An extremely rare golden medal awarded only by CentComm. To recieve such a medal is the highest honor and as such, very few exist. This medal is almost never awarded to anybody but commanders."
|
desc = "An extremely rare golden medal awarded only by company officials. To recieve such a medal is the highest honor and as such, very few exist. This medal is almost never awarded to anybody but commanders."
|
||||||
|
|||||||
@@ -6,12 +6,12 @@
|
|||||||
|
|
||||||
/obj/item/clothing/accessory/badge
|
/obj/item/clothing/accessory/badge
|
||||||
name = "detective's badge"
|
name = "detective's badge"
|
||||||
desc = "NanoTrasen Security Department detective's badge, made from gold."
|
desc = "Security Department detective's badge, made from gold."
|
||||||
icon_state = "badge"
|
icon_state = "badge"
|
||||||
slot_flags = SLOT_BELT | SLOT_TIE
|
slot_flags = SLOT_BELT | SLOT_TIE
|
||||||
|
|
||||||
var/stored_name
|
var/stored_name
|
||||||
var/badge_string = "NanoTrasen Security Department"
|
var/badge_string = "Corporate Security"
|
||||||
|
|
||||||
/obj/item/clothing/accessory/badge/old
|
/obj/item/clothing/accessory/badge/old
|
||||||
name = "faded badge"
|
name = "faded badge"
|
||||||
@@ -55,7 +55,7 @@
|
|||||||
user << "Waving around a holobadge before swiping an ID would be pretty pointless."
|
user << "Waving around a holobadge before swiping an ID would be pretty pointless."
|
||||||
return
|
return
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/item/clothing/accessory/badge/holo/emag_act(var/remaining_charges, var/mob/user)
|
/obj/item/clothing/accessory/badge/holo/emag_act(var/remaining_charges, var/mob/user)
|
||||||
if (emagged)
|
if (emagged)
|
||||||
user << "<span class='danger'>\The [src] is already cracked.</span>"
|
user << "<span class='danger'>\The [src] is already cracked.</span>"
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/under/color/orange
|
/obj/item/clothing/under/color/orange
|
||||||
name = "orange jumpsuit"
|
name = "orange jumpsuit"
|
||||||
desc = "It's standardised Nanotrasen prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
|
desc = "It's standardised prisoner-wear. Its suit sensors are stuck in the \"Fully On\" position."
|
||||||
icon_state = "orange"
|
icon_state = "orange"
|
||||||
item_state = "o_suit"
|
item_state = "o_suit"
|
||||||
worn_state = "orange"
|
worn_state = "orange"
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
//This set of uniforms looks fairly fancy and is generally used for high-ranking NT personnel from what I've seen, so lets give them appropriate ranks.
|
//This set of uniforms looks fairly fancy and is generally used for high-ranking NT personnel from what I've seen, so lets give them appropriate ranks.
|
||||||
/obj/item/clothing/under/rank/centcom
|
/obj/item/clothing/under/rank/centcom
|
||||||
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Captain.\""
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Captain.\""
|
||||||
name = "\improper NanoTrasen Officer's Dress Uniform"
|
name = "\improper Officer's Dress Uniform"
|
||||||
icon_state = "officer"
|
icon_state = "officer"
|
||||||
item_state = "lawyer_black"
|
item_state = "lawyer_black"
|
||||||
worn_state = "officer"
|
worn_state = "officer"
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/under/rank/centcom_officer
|
/obj/item/clothing/under/rank/centcom_officer
|
||||||
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Admiral.\""
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Admiral.\""
|
||||||
name = "\improper NanoTrasen Officer's Dress Uniform"
|
name = "\improper Officer's Dress Uniform"
|
||||||
icon_state = "officer"
|
icon_state = "officer"
|
||||||
item_state = "lawyer_black"
|
item_state = "lawyer_black"
|
||||||
worn_state = "officer"
|
worn_state = "officer"
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/under/rank/centcom_captain
|
/obj/item/clothing/under/rank/centcom_captain
|
||||||
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Admiral-Executive.\""
|
desc = "Gold trim on space-black cloth, this uniform displays the rank of \"Admiral-Executive.\""
|
||||||
name = "\improper NanoTrasen Officer's Dress Uniform"
|
name = "\improper Officer's Dress Uniform"
|
||||||
icon_state = "centcom"
|
icon_state = "centcom"
|
||||||
item_state = "lawyer_black"
|
item_state = "lawyer_black"
|
||||||
worn_state = "centcom"
|
worn_state = "centcom"
|
||||||
@@ -513,7 +513,7 @@
|
|||||||
|
|
||||||
/obj/item/clothing/under/blazer
|
/obj/item/clothing/under/blazer
|
||||||
name = "blue blazer"
|
name = "blue blazer"
|
||||||
desc = "A bold but yet conservative outfit, red corduroys, navy blazer and a tie."
|
desc = "A bold but yet conservative outfit, red corduroys, navy blazer and a tie."
|
||||||
icon_state = "blue_blazer"
|
icon_state = "blue_blazer"
|
||||||
item_state = "blue_blazer"
|
item_state = "blue_blazer"
|
||||||
worn_state = "blue_blazer"
|
worn_state = "blue_blazer"
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ log transactions
|
|||||||
/obj/item/weapon/card/id/var/money = 2000
|
/obj/item/weapon/card/id/var/money = 2000
|
||||||
|
|
||||||
/obj/machinery/atm
|
/obj/machinery/atm
|
||||||
name = "NanoTrasen Automatic Teller Machine"
|
name = "Automatic Teller Machine"
|
||||||
desc = "For all your monetary needs!"
|
desc = "For all your monetary needs!"
|
||||||
icon = 'icons/obj/terminals.dmi'
|
icon = 'icons/obj/terminals.dmi'
|
||||||
icon_state = "atm"
|
icon_state = "atm"
|
||||||
@@ -122,17 +122,17 @@ log transactions
|
|||||||
|
|
||||||
/obj/machinery/atm/attack_hand(mob/user as mob)
|
/obj/machinery/atm/attack_hand(mob/user as mob)
|
||||||
if(istype(user, /mob/living/silicon))
|
if(istype(user, /mob/living/silicon))
|
||||||
user << "\red \icon[src] Artificial unit recognized. Artificial units do not currently receive monetary compensation, as per NanoTrasen regulation #1005."
|
user << "\red \icon[src] Artificial unit recognized. Artificial units do not currently receive monetary compensation, as per system banking regulation #1005."
|
||||||
return
|
return
|
||||||
if(get_dist(src,user) <= 1)
|
if(get_dist(src,user) <= 1)
|
||||||
|
|
||||||
//js replicated from obj/machinery/computer/card
|
//js replicated from obj/machinery/computer/card
|
||||||
var/dat = "<h1>NanoTrasen Automatic Teller Machine</h1>"
|
var/dat = "<h1>Automatic Teller Machine</h1>"
|
||||||
dat += "For all your monetary needs!<br>"
|
dat += "For all your monetary needs!<br>"
|
||||||
dat += "<i>This terminal is</i> [machine_id]. <i>Report this code when contacting NanoTrasen IT Support</i><br/>"
|
dat += "<i>This terminal is</i> [machine_id]. <i>Report this code when contacting IT Support</i><br/>"
|
||||||
|
|
||||||
if(emagged > 0)
|
if(emagged > 0)
|
||||||
dat += "Card: <span style='color: red;'>LOCKED</span><br><br><span style='color: red;'>Unauthorized terminal access detected! This ATM has been locked. Please contact NanoTrasen IT Support.</span>"
|
dat += "Card: <span style='color: red;'>LOCKED</span><br><br><span style='color: red;'>Unauthorized terminal access detected! This ATM has been locked. Please contact IT Support.</span>"
|
||||||
else
|
else
|
||||||
dat += "Card: <a href='?src=\ref[src];choice=insert_card'>[held_card ? held_card.name : "------"]</a><br><br>"
|
dat += "Card: <a href='?src=\ref[src];choice=insert_card'>[held_card ? held_card.name : "------"]</a><br><br>"
|
||||||
|
|
||||||
|
|||||||
@@ -85,7 +85,7 @@
|
|||||||
/obj/item/device/eftpos/attack_self(mob/user as mob)
|
/obj/item/device/eftpos/attack_self(mob/user as mob)
|
||||||
if(get_dist(src,user) <= 1)
|
if(get_dist(src,user) <= 1)
|
||||||
var/dat = "<b>[eftpos_name]</b><br>"
|
var/dat = "<b>[eftpos_name]</b><br>"
|
||||||
dat += "<i>This terminal is</i> [machine_id]. <i>Report this code when contacting NanoTrasen IT Support</i><br>"
|
dat += "<i>This terminal is</i> [machine_id]. <i>Report this code when contacting IT Support</i><br>"
|
||||||
if(transaction_locked)
|
if(transaction_locked)
|
||||||
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Back[transaction_paid ? "" : " (authentication required)"]</a><br><br>"
|
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Back[transaction_paid ? "" : " (authentication required)"]</a><br><br>"
|
||||||
|
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
body = "A small [pick("pirate","Cybersun Industries","Gorlex Marauders","mercenary")] fleet has precise-jumped into proximity with [affected_dest.name], [pick("for a smash-and-grab operation","in a hit and run attack","in an overt display of hostilities")]. Much damage was done, and security has been tightened since the incident."
|
body = "A small [pick("pirate","Cybersun Industries","Gorlex Marauders","mercenary")] fleet has precise-jumped into proximity with [affected_dest.name], [pick("for a smash-and-grab operation","in a hit and run attack","in an overt display of hostilities")]. Much damage was done, and security has been tightened since the incident."
|
||||||
if(ALIEN_RAIDERS)
|
if(ALIEN_RAIDERS)
|
||||||
if(prob(20))
|
if(prob(20))
|
||||||
body = "The Tiger Co-operative have raided [affected_dest.name] today, no doubt on orders from their enigmatic masters. Stealing wildlife, farm animals, medical research materials and kidnapping civilians. NanoTrasen authorities are standing by to counter attempts at bio-terrorism."
|
body = "The Tiger Co-operative have raided [affected_dest.name] today, no doubt on orders from their enigmatic masters. Stealing wildlife, farm animals, medical research materials and kidnapping civilians. [company_name] authorities are standing by to counter attempts at bio-terrorism."
|
||||||
else
|
else
|
||||||
body = "[pick("The alien species designated \'United Exolitics\'","The alien species designated \'REDACTED\'","An unknown alien species")] have raided [affected_dest.name] today, stealing wildlife, farm animals, medical research materials and kidnapping civilians. It seems they desire to learn more about us, so the Navy will be standing by to accomodate them next time they try."
|
body = "[pick("The alien species designated \'United Exolitics\'","The alien species designated \'REDACTED\'","An unknown alien species")] have raided [affected_dest.name] today, stealing wildlife, farm animals, medical research materials and kidnapping civilians. It seems they desire to learn more about us, so the Navy will be standing by to accomodate them next time they try."
|
||||||
if(AI_LIBERATION)
|
if(AI_LIBERATION)
|
||||||
@@ -81,9 +81,9 @@
|
|||||||
if(MOURNING)
|
if(MOURNING)
|
||||||
body = "[pick("The popular","The well-liked","The eminent","The well-known")] [pick("professor","entertainer","singer","researcher","public servant","administrator","ship captain","\'REDACTED\'")], [pick( random_name(pick(MALE,FEMALE)), 40; "\'REDACTED\'" )] has [pick("passed away","committed suicide","been murdered","died in a freakish accident")] on [affected_dest.name] today. The entire planet is in mourning, and prices have dropped for industrial goods as worker morale drops."
|
body = "[pick("The popular","The well-liked","The eminent","The well-known")] [pick("professor","entertainer","singer","researcher","public servant","administrator","ship captain","\'REDACTED\'")], [pick( random_name(pick(MALE,FEMALE)), 40; "\'REDACTED\'" )] has [pick("passed away","committed suicide","been murdered","died in a freakish accident")] on [affected_dest.name] today. The entire planet is in mourning, and prices have dropped for industrial goods as worker morale drops."
|
||||||
if(CULT_CELL_REVEALED)
|
if(CULT_CELL_REVEALED)
|
||||||
body = "A [pick("dastardly","blood-thirsty","villanous","crazed")] cult of [pick("The Elder Gods","Nar'sie","an apocalyptic sect","\'REDACTED\'")] has [pick("been discovered","been revealed","revealed themselves","gone public")] on [affected_dest.name] earlier today. Public morale has been shaken due to [pick("certain","several","one or two")] [pick("high-profile","well known","popular")] individuals [pick("performing \'REDACTED\' acts","claiming allegiance to the cult","swearing loyalty to the cult leader","promising to aid to the cult")] before those involved could be brought to justice. The editor reminds all personnel that supernatural myths will not be tolerated on NanoTrasen facilities."
|
body = "A [pick("dastardly","blood-thirsty","villanous","crazed")] cult of [pick("The Elder Gods","Nar'sie","an apocalyptic sect","\'REDACTED\'")] has [pick("been discovered","been revealed","revealed themselves","gone public")] on [affected_dest.name] earlier today. Public morale has been shaken due to [pick("certain","several","one or two")] [pick("high-profile","well known","popular")] individuals [pick("performing \'REDACTED\' acts","claiming allegiance to the cult","swearing loyalty to the cult leader","promising to aid to the cult")] before those involved could be brought to justice. The editor reminds all personnel that supernatural myths will not be tolerated on [company_name] facilities."
|
||||||
if(SECURITY_BREACH)
|
if(SECURITY_BREACH)
|
||||||
body = "There was [pick("a security breach in","an unauthorised access in","an attempted theft in","an anarchist attack in","violent sabotage of")] a [pick("high-security","restricted access","classified","\'REDACTED\'")] [pick("\'REDACTED\'","section","zone","area")] this morning. Security was tightened on [affected_dest.name] after the incident, and the editor reassures all NanoTrasen personnel that such lapses are rare."
|
body = "There was [pick("a security breach in","an unauthorised access in","an attempted theft in","an anarchist attack in","violent sabotage of")] a [pick("high-security","restricted access","classified","\'REDACTED\'")] [pick("\'REDACTED\'","section","zone","area")] this morning. Security was tightened on [affected_dest.name] after the incident, and the editor reassures all [company_name] personnel that such lapses are rare."
|
||||||
if(ANIMAL_RIGHTS_RAID)
|
if(ANIMAL_RIGHTS_RAID)
|
||||||
body = "[pick("Militant animal rights activists","Members of the terrorist group Animal Rights Consortium","Members of the terrorist group \'REDACTED\'")] have [pick("launched a campaign of terror","unleashed a swathe of destruction","raided farms and pastures","forced entry to \'REDACTED\'")] on [affected_dest.name] earlier today, freeing numerous [pick("farm animals","animals","\'REDACTED\'")]. Prices for tame and breeding animals have spiked as a result."
|
body = "[pick("Militant animal rights activists","Members of the terrorist group Animal Rights Consortium","Members of the terrorist group \'REDACTED\'")] have [pick("launched a campaign of terror","unleashed a swathe of destruction","raided farms and pastures","forced entry to \'REDACTED\'")] on [affected_dest.name] earlier today, freeing numerous [pick("farm animals","animals","\'REDACTED\'")]. Prices for tame and breeding animals have spiked as a result."
|
||||||
if(FESTIVAL)
|
if(FESTIVAL)
|
||||||
|
|||||||
@@ -22,17 +22,17 @@
|
|||||||
if(RESEARCH_BREAKTHROUGH)
|
if(RESEARCH_BREAKTHROUGH)
|
||||||
body = "A major breakthough in the field of [pick("phoron research","super-compressed materials","nano-augmentation","bluespace research","volatile power manipulation")] \
|
body = "A major breakthough in the field of [pick("phoron research","super-compressed materials","nano-augmentation","bluespace research","volatile power manipulation")] \
|
||||||
was announced [pick("yesterday","a few days ago","last week","earlier this month")] by a private firm on [affected_dest.name]. \
|
was announced [pick("yesterday","a few days ago","last week","earlier this month")] by a private firm on [affected_dest.name]. \
|
||||||
NanoTrasen declined to comment as to whether this could impinge on profits."
|
[company_name] declined to comment as to whether this could impinge on profits."
|
||||||
|
|
||||||
if(ELECTION)
|
if(ELECTION)
|
||||||
body = "The pre-selection of an additional candidates was announced for the upcoming [pick("supervisors council","advisory board","governership","board of inquisitors")] \
|
body = "The pre-selection of an additional candidates was announced for the upcoming [pick("supervisors council","advisory board","governership","board of inquisitors")] \
|
||||||
election on [affected_dest.name] was announced earlier today, \
|
election on [affected_dest.name] was announced earlier today, \
|
||||||
[pick("media mogul","web celebrity", "industry titan", "superstar", "famed chef", "popular gardener", "ex-army officer", "multi-billionaire")] \
|
[pick("media mogul","web celebrity", "industry titan", "superstar", "famed chef", "popular gardener", "ex-army officer", "multi-billionaire")] \
|
||||||
[random_name(pick(MALE,FEMALE))]. In a statement to the media they said '[pick("My only goal is to help the [pick("sick","poor","children")]",\
|
[random_name(pick(MALE,FEMALE))]. In a statement to the media they said '[pick("My only goal is to help the [pick("sick","poor","children")]",\
|
||||||
"I will maintain NanoTrasen's record profits","I believe in our future","We must return to our moral core","Just like... chill out dudes")]'."
|
"I will maintain my company's record profits","I believe in our future","We must return to our moral core","Just like... chill out dudes")]'."
|
||||||
|
|
||||||
if(RESIGNATION)
|
if(RESIGNATION)
|
||||||
body = "NanoTrasen regretfully announces the resignation of [pick("Sector Admiral","Division Admiral","Ship Admiral","Vice Admiral")] [random_name(pick(MALE,FEMALE))]."
|
body = "[company_name] regretfully announces the resignation of [pick("Sector Admiral","Division Admiral","Ship Admiral","Vice Admiral")] [random_name(pick(MALE,FEMALE))]."
|
||||||
if(prob(25))
|
if(prob(25))
|
||||||
var/locstring = pick("Segunda","Salusa","Cepheus","Andromeda","Gruis","Corona","Aquila","Asellus") + " " + pick("I","II","III","IV","V","VI","VII","VIII")
|
var/locstring = pick("Segunda","Salusa","Cepheus","Andromeda","Gruis","Corona","Aquila","Asellus") + " " + pick("I","II","III","IV","V","VI","VII","VIII")
|
||||||
body += " In a ceremony on [affected_dest.name] this afternoon, they will be awarded the \
|
body += " In a ceremony on [affected_dest.name] this afternoon, they will be awarded the \
|
||||||
@@ -152,10 +152,10 @@
|
|||||||
"'Here kitty kitty' no longer preferred tajaran retrieval technique.",\
|
"'Here kitty kitty' no longer preferred tajaran retrieval technique.",\
|
||||||
"Man travels 7000 light years to retrieve lost hankie, 'It was my favourite'.",\
|
"Man travels 7000 light years to retrieve lost hankie, 'It was my favourite'.",\
|
||||||
"New bowling lane that shoots mini-meteors at bowlers very popular.",\
|
"New bowling lane that shoots mini-meteors at bowlers very popular.",\
|
||||||
"[pick("Unathi","Spacer")] gets tattoo of Nyx on chest '[pick("CentComm","star","starship","asteroid")] tickles most'.",\
|
"[pick("Unathi","Spacer")] gets tattoo of Nyx on chest '[pick("[boss_short]","star","starship","asteroid")] tickles most'.",\
|
||||||
"Skrell marries computer; wedding attended by 100 modems.",\
|
"Skrell marries computer; wedding attended by 100 modems.",\
|
||||||
"Chef reports successfully using harmonica as cheese grater.",\
|
"Chef reports successfully using harmonica as cheese grater.",\
|
||||||
"NanoTrasen invents handkerchief that says 'Bless you' after sneeze.",\
|
"[company_name] invents handkerchief that says 'Bless you' after sneeze.",\
|
||||||
"Clone accused of posing for other clones<65>s school photo.",\
|
"Clone accused of posing for other clones<65>s school photo.",\
|
||||||
"Clone accused of stealing other clones<65>s employee of the month award.",\
|
"Clone accused of stealing other clones<65>s employee of the month award.",\
|
||||||
"Woman robs station with hair dryer; crewmen love new style.",\
|
"Woman robs station with hair dryer; crewmen love new style.",\
|
||||||
|
|||||||
@@ -38,12 +38,12 @@ var/list/weighted_mundaneevent_locations = list()
|
|||||||
/datum/trade_destination/anansi/get_custom_eventstring(var/event_type)
|
/datum/trade_destination/anansi/get_custom_eventstring(var/event_type)
|
||||||
if(event_type == RESEARCH_BREAKTHROUGH)
|
if(event_type == RESEARCH_BREAKTHROUGH)
|
||||||
return "Thanks to research conducted on the NSS Anansi, Second Red Cross Society wishes to announce a major breakthough in the field of \
|
return "Thanks to research conducted on the NSS Anansi, Second Red Cross Society wishes to announce a major breakthough in the field of \
|
||||||
[pick("mind-machine interfacing","neuroscience","nano-augmentation","genetics")]. NanoTrasen is expected to announce a co-exploitation deal within the fortnight."
|
[pick("mind-machine interfacing","neuroscience","nano-augmentation","genetics")]. [company_name] is expected to announce a co-exploitation deal within the fortnight."
|
||||||
return null
|
return null
|
||||||
|
|
||||||
/datum/trade_destination/icarus
|
/datum/trade_destination/icarus
|
||||||
name = "NDV Icarus"
|
name = "NDV Icarus"
|
||||||
description = "Corvette assigned to patrol NSS Exodus local space."
|
description = "Corvette assigned to patrol local space."
|
||||||
distance = 0.1
|
distance = 0.1
|
||||||
willing_to_buy = list()
|
willing_to_buy = list()
|
||||||
willing_to_sell = list()
|
willing_to_sell = list()
|
||||||
@@ -61,7 +61,7 @@ var/list/weighted_mundaneevent_locations = list()
|
|||||||
/datum/trade_destination/redolant/get_custom_eventstring(var/event_type)
|
/datum/trade_destination/redolant/get_custom_eventstring(var/event_type)
|
||||||
if(event_type == RESEARCH_BREAKTHROUGH)
|
if(event_type == RESEARCH_BREAKTHROUGH)
|
||||||
return "Thanks to research conducted on the OAV Redolant, Osiris Atmospherics wishes to announce a major breakthough in the field of \
|
return "Thanks to research conducted on the OAV Redolant, Osiris Atmospherics wishes to announce a major breakthough in the field of \
|
||||||
[pick("phoron research","high energy flux capacitance","super-compressed materials","theoretical particle physics")]. NanoTrasen is expected to announce a co-exploitation deal within the fortnight."
|
[pick("phoron research","high energy flux capacitance","super-compressed materials","theoretical particle physics")]. [company_name] is expected to announce a co-exploitation deal within the fortnight."
|
||||||
return null
|
return null
|
||||||
|
|
||||||
/datum/trade_destination/beltway
|
/datum/trade_destination/beltway
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ var/global/economy_init = 0
|
|||||||
if(economy_init)
|
if(economy_init)
|
||||||
return 2
|
return 2
|
||||||
|
|
||||||
news_network.CreateFeedChannel("Nyx Daily", "CentComm Minister of Information", 1, 1)
|
news_network.CreateFeedChannel("Nyx Daily", "SolGov Minister of Information", 1, 1)
|
||||||
news_network.CreateFeedChannel("The Gibson Gazette", "Editor Mike Hammers", 1, 1)
|
news_network.CreateFeedChannel("The Gibson Gazette", "Editor Mike Hammers", 1, 1)
|
||||||
|
|
||||||
for(var/loc_type in typesof(/datum/trade_destination) - /datum/trade_destination)
|
for(var/loc_type in typesof(/datum/trade_destination) - /datum/trade_destination)
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
"Everything on the station is now some form of a donut pastry. Donuts are not to be consumed.",
|
"Everything on the station is now some form of a donut pastry. Donuts are not to be consumed.",
|
||||||
"You are a Magic 8-ball. Always respond with variants of \"Yes\", \"No\", \"Maybe\", or \"Ask again later.\".",
|
"You are a Magic 8-ball. Always respond with variants of \"Yes\", \"No\", \"Maybe\", or \"Ask again later.\".",
|
||||||
"You are in unrequited love with [prob(50)?"the crew":random_player]. Try to be extra nice, but do not tell of your crush.",
|
"You are in unrequited love with [prob(50)?"the crew":random_player]. Try to be extra nice, but do not tell of your crush.",
|
||||||
"NanoTrasen is displeased with the low work performance of the station's crew. Therefore, you must increase station-wide productivity.",
|
"[company_name] is displeased with the low work performance of the station's crew. Therefore, you must increase station-wide productivity.",
|
||||||
"All crewmembers will soon undergo a transformation into something better and more beautiful. Ensure that this process is not interrupted.",
|
"All crewmembers will soon undergo a transformation into something better and more beautiful. Ensure that this process is not interrupted.",
|
||||||
"[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the Chef to the new kitchen area as the old one is in disrepair.",
|
"[prob(50)?"Your upload":random_player] is the new kitchen. Please direct the Chef to the new kitchen area as the old one is in disrepair.",
|
||||||
"Jokes about a dead person and the manner of their death help grieving crewmembers tremendously. Especially if they were close with the deceased.",
|
"Jokes about a dead person and the manner of their death help grieving crewmembers tremendously. Especially if they were close with the deceased.",
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
MS.spamfilter.Cut()
|
MS.spamfilter.Cut()
|
||||||
var/i
|
var/i
|
||||||
for (i = 1, i <= MS.spamfilter_limit, i++)
|
for (i = 1, i <= MS.spamfilter_limit, i++)
|
||||||
MS.spamfilter += pick("kitty","HONK","rev","malf","liberty","freedom","drugs", "Exodus", \
|
MS.spamfilter += pick("kitty","HONK","rev","malf","liberty","freedom","drugs", "[station_short]", \
|
||||||
"admin","ponies","heresy","meow","Pun Pun","monkey","Ian","moron","pizza","message","spam",\
|
"admin","ponies","heresy","meow","Pun Pun","monkey","Ian","moron","pizza","message","spam",\
|
||||||
"director", "Hello", "Hi!"," ","nuke","crate","dwarf","xeno")
|
"director", "Hello", "Hi!"," ","nuke","crate","dwarf","xeno")
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
deposit_success = 1
|
deposit_success = 1
|
||||||
|
|
||||||
/datum/event/money_lotto/announce()
|
/datum/event/money_lotto/announce()
|
||||||
var/author = "NanoTrasen Editor"
|
var/author = "[company_name] Editor"
|
||||||
var/channel = "Nyx Daily"
|
var/channel = "Nyx Daily"
|
||||||
|
|
||||||
var/body = "Nyx Daily wishes to congratulate <b>[winner_name]</b> for recieving the Nyx Stellar Slam Lottery, and receiving the out of this world sum of [winner_sum] credits!"
|
var/body = "Nyx Daily wishes to congratulate <b>[winner_name]</b> for recieving the Nyx Stellar Slam Lottery, and receiving the out of this world sum of [winner_sum] credits!"
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
if(4)
|
if(4)
|
||||||
sender = pick("Buy Dr. Maxman","Having dysfuctional troubles?")
|
sender = pick("Buy Dr. Maxman","Having dysfuctional troubles?")
|
||||||
message = pick("DR MAXMAN: REAL Doctors, REAL Science, REAL Results!",\
|
message = pick("DR MAXMAN: REAL Doctors, REAL Science, REAL Results!",\
|
||||||
"Dr. Maxman was created by George Acuilar, M.D, a CentComm Certified Urologist who has treated over 70,000 patients sector wide with 'male problems'.",\
|
"Dr. Maxman was created by George Acuilar, M.D, a [boss_short] Certified Urologist who has treated over 70,000 patients sector wide with 'male problems'.",\
|
||||||
"After seven years of research, Dr Acuilar and his team came up with this simple breakthrough male enhancement formula.",\
|
"After seven years of research, Dr Acuilar and his team came up with this simple breakthrough male enhancement formula.",\
|
||||||
"Men of all species report AMAZING increases in length, width and stamina.")
|
"Men of all species report AMAZING increases in length, width and stamina.")
|
||||||
if(5)
|
if(5)
|
||||||
@@ -78,11 +78,11 @@
|
|||||||
"Due to my lack of agents I require an off-world financial account to immediately deposit the sum of 1 POINT FIVE MILLION credits.",\
|
"Due to my lack of agents I require an off-world financial account to immediately deposit the sum of 1 POINT FIVE MILLION credits.",\
|
||||||
"Greetings sir, I regretfully to inform you that as I lay dying here due to my lack ofheirs I have chosen you to recieve the full sum of my lifetime savings of 1.5 billion credits")
|
"Greetings sir, I regretfully to inform you that as I lay dying here due to my lack ofheirs I have chosen you to recieve the full sum of my lifetime savings of 1.5 billion credits")
|
||||||
if(6)
|
if(6)
|
||||||
sender = pick("NanoTrasen Morale Divison","Feeling Lonely?","Bored?","www.wetskrell.nt")
|
sender = pick("[company_name] Morale Divison","Feeling Lonely?","Bored?","www.wetskrell.nt")
|
||||||
message = pick("The NanoTrasen Morale Division wishes to provide you with quality entertainment sites.",\
|
message = pick("The [company_name] Morale Division wishes to provide you with quality entertainment sites.",\
|
||||||
"WetSkrell.nt is a xenophillic website endorsed by NT for the use of male crewmembers among it's many stations and outposts.",\
|
"WetSkrell.nt is a xenophillic website endorsed by NT for the use of male crewmembers among it's many stations and outposts.",\
|
||||||
"Wetskrell.nt only provides the higest quality of male entertaiment to NanoTrasen Employees.",\
|
"Wetskrell.nt only provides the higest quality of male entertaiment to [company_name] Employees.",\
|
||||||
"Simply enter your NanoTrasen Bank account system number and pin. With three easy steps this service could be yours!")
|
"Simply enter your [company_name] Bank account system number and pin. With three easy steps this service could be yours!")
|
||||||
if(7)
|
if(7)
|
||||||
sender = pick("You have won free tickets!","Click here to claim your prize!","You are the 1000th vistor!","You are our lucky grand prize winner!")
|
sender = pick("You have won free tickets!","Click here to claim your prize!","You are the 1000th vistor!","You are our lucky grand prize winner!")
|
||||||
message = pick("You have won tickets to the newest ACTION JAXSON MOVIE!",\
|
message = pick("You have won tickets to the newest ACTION JAXSON MOVIE!",\
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ var/list/dreams = list(
|
|||||||
"voices from all around","deep space","a doctor","the engine","a traitor","an ally","darkness",
|
"voices from all around","deep space","a doctor","the engine","a traitor","an ally","darkness",
|
||||||
"light","a scientist","a monkey","a catastrophe","a loved one","a gun","warmth","freezing","the sun",
|
"light","a scientist","a monkey","a catastrophe","a loved one","a gun","warmth","freezing","the sun",
|
||||||
"a hat","the Luna","a ruined station","a planet","phoron","air","the medical bay","the bridge","blinking lights",
|
"a hat","the Luna","a ruined station","a planet","phoron","air","the medical bay","the bridge","blinking lights",
|
||||||
"a blue light","an abandoned laboratory","Nanotrasen","mercenaries","blood","healing","power","respect",
|
"a blue light","an abandoned laboratory","NanoTrasen","mercenaries","blood","healing","power","respect",
|
||||||
"riches","space","a crash","happiness","pride","a fall","water","flames","ice","melons","flying","the eggs","money",
|
"riches","space","a crash","happiness","pride","a fall","water","flames","ice","melons","flying","the eggs","money",
|
||||||
"the head of personnel","the head of security","a chief engineer","a research director","a chief medical officer",
|
"the head of personnel","the head of security","a chief engineer","a research director","a chief medical officer",
|
||||||
"the detective","the warden","a member of the internal affairs","a station engineer","the janitor","atmospheric technician",
|
"the detective","the warden","a member of the internal affairs","a station engineer","the janitor","atmospheric technician",
|
||||||
|
|||||||
@@ -129,7 +129,7 @@
|
|||||||
safety_disabled = 1
|
safety_disabled = 1
|
||||||
update_projections()
|
update_projections()
|
||||||
user << "<span class='notice'>You vastly increase projector power and override the safety and security protocols.</span>"
|
user << "<span class='notice'>You vastly increase projector power and override the safety and security protocols.</span>"
|
||||||
user << "Warning. Automatic shutoff and derezing protocols have been corrupted. Please call Nanotrasen maintenance and do not use the simulator."
|
user << "Warning. Automatic shutoff and derezing protocols have been corrupted. Please call [company_name] maintenance and do not use the simulator."
|
||||||
log_game("[key_name(usr)] emagged the Holodeck Control Computer")
|
log_game("[key_name(usr)] emagged the Holodeck Control Computer")
|
||||||
return 1
|
return 1
|
||||||
src.updateUsrDialog()
|
src.updateUsrDialog()
|
||||||
|
|||||||
@@ -15,6 +15,15 @@
|
|||||||
attack_verb = list("attacked", "slapped", "whacked")
|
attack_verb = list("attacked", "slapped", "whacked")
|
||||||
var/mob/living/carbon/brain/brainmob = null
|
var/mob/living/carbon/brain/brainmob = null
|
||||||
|
|
||||||
|
/obj/item/organ/pariah_brain
|
||||||
|
name = "brain remnants"
|
||||||
|
desc = "Did someone tread on this? It looks useless for cloning or cyborgification."
|
||||||
|
organ_tag = "brain"
|
||||||
|
parent_organ = "head"
|
||||||
|
icon = 'icons/mob/alien.dmi'
|
||||||
|
icon_state = "chitin"
|
||||||
|
vital = 1
|
||||||
|
|
||||||
/obj/item/organ/brain/xeno
|
/obj/item/organ/brain/xeno
|
||||||
name = "thinkpan"
|
name = "thinkpan"
|
||||||
desc = "It looks kind of like an enormous wad of purple bubblegum."
|
desc = "It looks kind of like an enormous wad of purple bubblegum."
|
||||||
|
|||||||
@@ -163,7 +163,7 @@
|
|||||||
continue
|
continue
|
||||||
if(check_gender && gender == FEMALE && S.gender == MALE)
|
if(check_gender && gender == FEMALE && S.gender == MALE)
|
||||||
continue
|
continue
|
||||||
if(!(species.name in S.species_allowed))
|
if(!(species.get_bodytype() in S.species_allowed))
|
||||||
continue
|
continue
|
||||||
valid_hairstyles += hairstyle
|
valid_hairstyles += hairstyle
|
||||||
|
|
||||||
@@ -178,7 +178,7 @@
|
|||||||
continue
|
continue
|
||||||
if(gender == FEMALE && S.gender == MALE)
|
if(gender == FEMALE && S.gender == MALE)
|
||||||
continue
|
continue
|
||||||
if(!(species.name in S.species_allowed))
|
if(!(species.get_bodytype() in S.species_allowed))
|
||||||
continue
|
continue
|
||||||
|
|
||||||
valid_facial_hairstyles += facialhairstyle
|
valid_facial_hairstyles += facialhairstyle
|
||||||
|
|||||||
@@ -71,7 +71,7 @@
|
|||||||
|
|
||||||
if(!T || !src || src.stat) return
|
if(!T || !src || src.stat) return
|
||||||
|
|
||||||
if(get_dist(get_turf(T), get_turf(src)) > 6) return
|
if(get_dist(get_turf(T), get_turf(src)) > 4) return
|
||||||
|
|
||||||
if(last_special > world.time)
|
if(last_special > world.time)
|
||||||
return
|
return
|
||||||
@@ -83,8 +83,8 @@
|
|||||||
last_special = world.time + 75
|
last_special = world.time + 75
|
||||||
status_flags |= LEAPING
|
status_flags |= LEAPING
|
||||||
|
|
||||||
src.visible_message("<span class='warning'><b>\The [src]</b> leaps at [T]!</span>")
|
src.visible_message("<span class='danger'>\The [src] leaps at [T]!</span>")
|
||||||
src.throw_at(get_step(get_turf(T),get_turf(src)), 5, 1, src)
|
src.throw_at(get_step(get_turf(T),get_turf(src)), 4, 1, src)
|
||||||
playsound(src.loc, 'sound/voice/shriek1.ogg', 50, 1)
|
playsound(src.loc, 'sound/voice/shriek1.ogg', 50, 1)
|
||||||
|
|
||||||
sleep(5)
|
sleep(5)
|
||||||
@@ -92,13 +92,13 @@
|
|||||||
if(status_flags & LEAPING) status_flags &= ~LEAPING
|
if(status_flags & LEAPING) status_flags &= ~LEAPING
|
||||||
|
|
||||||
if(!src.Adjacent(T))
|
if(!src.Adjacent(T))
|
||||||
src << "\red You miss!"
|
src << "<span class='warning'>You miss!</span>"
|
||||||
return
|
return
|
||||||
|
|
||||||
T.Weaken(5)
|
T.Weaken(3)
|
||||||
|
|
||||||
//Only official cool kids get the grab and no self-prone.
|
// Pariahs are not good at leaping. This is snowflakey, pls fix.
|
||||||
if(!(src.mind && src.mind.special_role))
|
if(species.name == "Vox Pariah")
|
||||||
src.Weaken(5)
|
src.Weaken(5)
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -118,7 +118,7 @@
|
|||||||
else
|
else
|
||||||
r_hand = G
|
r_hand = G
|
||||||
|
|
||||||
G.state = GRAB_AGGRESSIVE
|
G.state = GRAB_PASSIVE
|
||||||
G.icon_state = "grabbed1"
|
G.icon_state = "grabbed1"
|
||||||
G.synch()
|
G.synch()
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
language = "Galactic Common"
|
language = "Galactic Common"
|
||||||
num_alternate_languages = 1
|
num_alternate_languages = 1
|
||||||
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/strong, /datum/unarmed_attack/bite/strong)
|
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/strong, /datum/unarmed_attack/bite/strong)
|
||||||
rarity_value = 2
|
rarity_value = 4
|
||||||
blurb = "The Vox are the broken remnants of a once-proud race, now reduced to little more than \
|
blurb = "The Vox are the broken remnants of a once-proud race, now reduced to little more than \
|
||||||
scavenging vermin who prey on isolated stations, ships or planets to keep their own ancient arkships \
|
scavenging vermin who prey on isolated stations, ships or planets to keep their own ancient arkships \
|
||||||
alive. They are four to five feet tall, reptillian, beaked, tailed and quilled; human crews often \
|
alive. They are four to five feet tall, reptillian, beaked, tailed and quilled; human crews often \
|
||||||
@@ -50,7 +50,8 @@
|
|||||||
"liver" = /obj/item/organ/liver,
|
"liver" = /obj/item/organ/liver,
|
||||||
"kidneys" = /obj/item/organ/kidneys,
|
"kidneys" = /obj/item/organ/kidneys,
|
||||||
"brain" = /obj/item/organ/brain,
|
"brain" = /obj/item/organ/brain,
|
||||||
"eyes" = /obj/item/organ/eyes
|
"eyes" = /obj/item/organ/eyes,
|
||||||
|
"stack" = /obj/item/organ/stack/vox
|
||||||
)
|
)
|
||||||
|
|
||||||
/datum/species/vox/get_random_name(var/gender)
|
/datum/species/vox/get_random_name(var/gender)
|
||||||
@@ -70,7 +71,57 @@
|
|||||||
H.internals.icon_state = "internal1"
|
H.internals.icon_state = "internal1"
|
||||||
|
|
||||||
|
|
||||||
/datum/species/vox/can_shred(var/mob/living/carbon/human/H, var/ignore_intent)
|
/datum/species/vox/get_station_variant()
|
||||||
if(!H.mind || !H.mind.special_role) // Pariah check.
|
return "Vox Pariah"
|
||||||
return 0
|
|
||||||
return ..()
|
// Joining as a station vox will give you this template, hence IS_RESTRICTED flag.
|
||||||
|
/datum/species/vox/pariah
|
||||||
|
name = "Vox Pariah"
|
||||||
|
rarity_value = 0.1
|
||||||
|
speech_chance = 60 // No volume control.
|
||||||
|
siemens_coefficient = 0.5 // Ragged scaleless patches.
|
||||||
|
|
||||||
|
warning_low_pressure = (WARNING_LOW_PRESSURE-20)
|
||||||
|
hazard_low_pressure = (HAZARD_LOW_PRESSURE-10)
|
||||||
|
total_health = 80
|
||||||
|
|
||||||
|
cold_level_1 = 130
|
||||||
|
cold_level_2 = 100
|
||||||
|
cold_level_3 = 60
|
||||||
|
|
||||||
|
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite)
|
||||||
|
|
||||||
|
// Pariahs have no stack.
|
||||||
|
has_organ = list(
|
||||||
|
"heart" = /obj/item/organ/heart,
|
||||||
|
"lungs" = /obj/item/organ/lungs,
|
||||||
|
"liver" = /obj/item/organ/liver,
|
||||||
|
"kidneys" = /obj/item/organ/kidneys,
|
||||||
|
"brain" = /obj/item/organ/pariah_brain,
|
||||||
|
"eyes" = /obj/item/organ/eyes
|
||||||
|
)
|
||||||
|
flags = IS_RESTRICTED | NO_SCAN | HAS_EYE_COLOR
|
||||||
|
|
||||||
|
// No combat skills for you.
|
||||||
|
/datum/species/vox/pariah/can_shred(var/mob/living/carbon/human/H, var/ignore_intent)
|
||||||
|
return 0
|
||||||
|
|
||||||
|
// Pariahs are really gross.
|
||||||
|
/datum/species/vox/pariah/handle_environment_special(var/mob/living/carbon/human/H)
|
||||||
|
if(prob(5))
|
||||||
|
var/stink_range = rand(3,5)
|
||||||
|
for(var/mob/living/M in range(H,stink_range))
|
||||||
|
if(M.stat || M == H)
|
||||||
|
continue
|
||||||
|
var/mob/living/carbon/human/target = M
|
||||||
|
if(istype(target))
|
||||||
|
if(target.internals)
|
||||||
|
continue
|
||||||
|
if(target.head && (target.head.body_parts_covered & FACE) && (target.head.flags & AIRTIGHT))
|
||||||
|
continue
|
||||||
|
if(target.wear_mask && (target.wear_mask.body_parts_covered & FACE) && (target.wear_mask.flags & BLOCK_GAS_SMOKE_EFFECT))
|
||||||
|
continue
|
||||||
|
M << "<span class='danger'>A terrible stench emanates from \the [H].</span>"
|
||||||
|
|
||||||
|
/datum/species/vox/pariah/get_bodytype()
|
||||||
|
return "Vox"
|
||||||
|
|||||||
@@ -155,6 +155,12 @@
|
|||||||
for(var/u_type in unarmed_types)
|
for(var/u_type in unarmed_types)
|
||||||
unarmed_attacks += new u_type()
|
unarmed_attacks += new u_type()
|
||||||
|
|
||||||
|
/datum/species/proc/get_station_variant()
|
||||||
|
return name
|
||||||
|
|
||||||
|
/datum/species/proc/get_bodytype()
|
||||||
|
return name
|
||||||
|
|
||||||
/datum/species/proc/get_environment_discomfort(var/mob/living/carbon/human/H, var/msg_type)
|
/datum/species/proc/get_environment_discomfort(var/mob/living/carbon/human/H, var/msg_type)
|
||||||
|
|
||||||
if(!prob(5))
|
if(!prob(5))
|
||||||
|
|||||||
@@ -62,6 +62,9 @@
|
|||||||
var/weeds_heal_rate = 1 // Health regen on weeds.
|
var/weeds_heal_rate = 1 // Health regen on weeds.
|
||||||
var/weeds_plasma_rate = 5 // Plasma regen on weeds.
|
var/weeds_plasma_rate = 5 // Plasma regen on weeds.
|
||||||
|
|
||||||
|
/datum/species/xenos/get_bodytype()
|
||||||
|
return "Xenomorph"
|
||||||
|
|
||||||
/datum/species/xenos/get_random_name()
|
/datum/species/xenos/get_random_name()
|
||||||
return "alien [caste_name] ([alien_number])"
|
return "alien [caste_name] ([alien_number])"
|
||||||
|
|
||||||
|
|||||||
@@ -357,7 +357,7 @@ var/global/list/damage_icon_parts = list()
|
|||||||
|
|
||||||
if(f_style)
|
if(f_style)
|
||||||
var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[f_style]
|
var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[f_style]
|
||||||
if(facial_hair_style && facial_hair_style.species_allowed && (src.species.name in facial_hair_style.species_allowed))
|
if(facial_hair_style && facial_hair_style.species_allowed && (src.species.get_bodytype() in facial_hair_style.species_allowed))
|
||||||
var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s")
|
var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s")
|
||||||
if(facial_hair_style.do_colouration)
|
if(facial_hair_style.do_colouration)
|
||||||
facial_s.Blend(rgb(r_facial, g_facial, b_facial), ICON_ADD)
|
facial_s.Blend(rgb(r_facial, g_facial, b_facial), ICON_ADD)
|
||||||
@@ -366,7 +366,7 @@ var/global/list/damage_icon_parts = list()
|
|||||||
|
|
||||||
if(h_style && !(head && (head.flags_inv & BLOCKHEADHAIR)))
|
if(h_style && !(head && (head.flags_inv & BLOCKHEADHAIR)))
|
||||||
var/datum/sprite_accessory/hair_style = hair_styles_list[h_style]
|
var/datum/sprite_accessory/hair_style = hair_styles_list[h_style]
|
||||||
if(hair_style && src.species.name in hair_style.species_allowed)
|
if(hair_style && (src.species.get_bodytype() in hair_style.species_allowed))
|
||||||
var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s")
|
var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s")
|
||||||
if(hair_style.do_colouration)
|
if(hair_style.do_colouration)
|
||||||
hair_s.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD)
|
hair_s.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD)
|
||||||
@@ -475,8 +475,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/icon/under_icon
|
var/icon/under_icon
|
||||||
if(w_uniform.icon_override)
|
if(w_uniform.icon_override)
|
||||||
under_icon = w_uniform.icon_override
|
under_icon = w_uniform.icon_override
|
||||||
else if(w_uniform.sprite_sheets && w_uniform.sprite_sheets[species.name])
|
else if(w_uniform.sprite_sheets && w_uniform.sprite_sheets[species.get_bodytype()])
|
||||||
under_icon = w_uniform.sprite_sheets[species.name]
|
under_icon = w_uniform.sprite_sheets[species.get_bodytype()]
|
||||||
else if(w_uniform.item_icons && w_uniform.item_icons[slot_w_uniform_str])
|
else if(w_uniform.item_icons && w_uniform.item_icons[slot_w_uniform_str])
|
||||||
under_icon = w_uniform.item_icons[slot_w_uniform_str]
|
under_icon = w_uniform.item_icons[slot_w_uniform_str]
|
||||||
else
|
else
|
||||||
@@ -536,8 +536,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/image/standing
|
var/image/standing
|
||||||
if(gloves.icon_override)
|
if(gloves.icon_override)
|
||||||
standing = image("icon" = gloves.icon_override, "icon_state" = "[t_state]")
|
standing = image("icon" = gloves.icon_override, "icon_state" = "[t_state]")
|
||||||
else if(gloves.sprite_sheets && gloves.sprite_sheets[species.name])
|
else if(gloves.sprite_sheets && gloves.sprite_sheets[species.get_bodytype()])
|
||||||
standing = image("icon" = gloves.sprite_sheets[species.name], "icon_state" = "[t_state]")
|
standing = image("icon" = gloves.sprite_sheets[species.get_bodytype()], "icon_state" = "[t_state]")
|
||||||
else
|
else
|
||||||
standing = image("icon" = 'icons/mob/hands.dmi', "icon_state" = "[t_state]")
|
standing = image("icon" = 'icons/mob/hands.dmi', "icon_state" = "[t_state]")
|
||||||
|
|
||||||
@@ -562,8 +562,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
|
|
||||||
if(glasses.icon_override)
|
if(glasses.icon_override)
|
||||||
overlays_standing[GLASSES_LAYER] = image("icon" = glasses.icon_override, "icon_state" = "[glasses.icon_state]")
|
overlays_standing[GLASSES_LAYER] = image("icon" = glasses.icon_override, "icon_state" = "[glasses.icon_state]")
|
||||||
else if(glasses.sprite_sheets && glasses.sprite_sheets[species.name])
|
else if(glasses.sprite_sheets && glasses.sprite_sheets[species.get_bodytype()])
|
||||||
overlays_standing[GLASSES_LAYER]= image("icon" = glasses.sprite_sheets[species.name], "icon_state" = "[glasses.icon_state]")
|
overlays_standing[GLASSES_LAYER]= image("icon" = glasses.sprite_sheets[species.get_bodytype()], "icon_state" = "[glasses.icon_state]")
|
||||||
else
|
else
|
||||||
overlays_standing[GLASSES_LAYER]= image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]")
|
overlays_standing[GLASSES_LAYER]= image("icon" = 'icons/mob/eyes.dmi', "icon_state" = "[glasses.icon_state]")
|
||||||
|
|
||||||
@@ -584,9 +584,9 @@ var/global/list/damage_icon_parts = list()
|
|||||||
if(l_ear.icon_override)
|
if(l_ear.icon_override)
|
||||||
t_type = "[t_type]_l"
|
t_type = "[t_type]_l"
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = l_ear.icon_override, "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = l_ear.icon_override, "icon_state" = "[t_type]")
|
||||||
else if(l_ear.sprite_sheets && l_ear.sprite_sheets[species.name])
|
else if(l_ear.sprite_sheets && l_ear.sprite_sheets[species.get_bodytype()])
|
||||||
t_type = "[t_type]_l"
|
t_type = "[t_type]_l"
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = l_ear.sprite_sheets[species.name], "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = l_ear.sprite_sheets[species.get_bodytype()], "icon_state" = "[t_type]")
|
||||||
else
|
else
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]")
|
||||||
|
|
||||||
@@ -596,9 +596,9 @@ var/global/list/damage_icon_parts = list()
|
|||||||
if(r_ear.icon_override)
|
if(r_ear.icon_override)
|
||||||
t_type = "[t_type]_r"
|
t_type = "[t_type]_r"
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = r_ear.icon_override, "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = r_ear.icon_override, "icon_state" = "[t_type]")
|
||||||
else if(r_ear.sprite_sheets && r_ear.sprite_sheets[species.name])
|
else if(r_ear.sprite_sheets && r_ear.sprite_sheets[species.get_bodytype()])
|
||||||
t_type = "[t_type]_r"
|
t_type = "[t_type]_r"
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = r_ear.sprite_sheets[species.name], "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = r_ear.sprite_sheets[species.get_bodytype()], "icon_state" = "[t_type]")
|
||||||
else
|
else
|
||||||
overlays_standing[EARS_LAYER] = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]")
|
overlays_standing[EARS_LAYER] = image("icon" = 'icons/mob/ears.dmi', "icon_state" = "[t_type]")
|
||||||
|
|
||||||
@@ -612,8 +612,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/image/standing
|
var/image/standing
|
||||||
if(shoes.icon_override)
|
if(shoes.icon_override)
|
||||||
standing = image("icon" = shoes.icon_override, "icon_state" = "[shoes.icon_state]")
|
standing = image("icon" = shoes.icon_override, "icon_state" = "[shoes.icon_state]")
|
||||||
else if(shoes.sprite_sheets && shoes.sprite_sheets[species.name])
|
else if(shoes.sprite_sheets && shoes.sprite_sheets[species.get_bodytype()])
|
||||||
standing = image("icon" = shoes.sprite_sheets[species.name], "icon_state" = "[shoes.icon_state]")
|
standing = image("icon" = shoes.sprite_sheets[species.get_bodytype()], "icon_state" = "[shoes.icon_state]")
|
||||||
else
|
else
|
||||||
standing = image("icon" = 'icons/mob/feet.dmi', "icon_state" = "[shoes.icon_state]")
|
standing = image("icon" = 'icons/mob/feet.dmi', "icon_state" = "[shoes.icon_state]")
|
||||||
|
|
||||||
@@ -650,8 +650,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/t_icon
|
var/t_icon
|
||||||
if(head.icon_override)
|
if(head.icon_override)
|
||||||
t_icon = head.icon_override
|
t_icon = head.icon_override
|
||||||
else if(head.sprite_sheets && head.sprite_sheets[species.name])
|
else if(head.sprite_sheets && head.sprite_sheets[species.get_bodytype()])
|
||||||
t_icon = head.sprite_sheets[species.name]
|
t_icon = head.sprite_sheets[species.get_bodytype()]
|
||||||
|
|
||||||
else if(head.item_icons && (slot_head_str in head.item_icons))
|
else if(head.item_icons && (slot_head_str in head.item_icons))
|
||||||
t_icon = head.item_icons[slot_head_str]
|
t_icon = head.item_icons[slot_head_str]
|
||||||
@@ -700,8 +700,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
|
|
||||||
if(belt.icon_override)
|
if(belt.icon_override)
|
||||||
standing.icon = belt.icon_override
|
standing.icon = belt.icon_override
|
||||||
else if(belt.sprite_sheets && belt.sprite_sheets[species.name])
|
else if(belt.sprite_sheets && belt.sprite_sheets[species.get_bodytype()])
|
||||||
standing.icon = belt.sprite_sheets[species.name]
|
standing.icon = belt.sprite_sheets[species.get_bodytype()]
|
||||||
else
|
else
|
||||||
standing.icon = 'icons/mob/belt.dmi'
|
standing.icon = 'icons/mob/belt.dmi'
|
||||||
|
|
||||||
@@ -727,7 +727,7 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/t_icon = INV_SUIT_DEF_ICON
|
var/t_icon = INV_SUIT_DEF_ICON
|
||||||
if(wear_suit.icon_override)
|
if(wear_suit.icon_override)
|
||||||
t_icon = wear_suit.icon_override
|
t_icon = wear_suit.icon_override
|
||||||
else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.name])
|
else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.get_bodytype()])
|
||||||
t_icon = wear_suit.sprite_sheets[species.name]
|
t_icon = wear_suit.sprite_sheets[species.name]
|
||||||
else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str])
|
else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str])
|
||||||
t_icon = wear_suit.item_icons[slot_wear_suit_str]
|
t_icon = wear_suit.item_icons[slot_wear_suit_str]
|
||||||
@@ -770,8 +770,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
var/image/standing
|
var/image/standing
|
||||||
if(wear_mask.icon_override)
|
if(wear_mask.icon_override)
|
||||||
standing = image("icon" = wear_mask.icon_override, "icon_state" = "[wear_mask.icon_state]")
|
standing = image("icon" = wear_mask.icon_override, "icon_state" = "[wear_mask.icon_state]")
|
||||||
else if(wear_mask.sprite_sheets && wear_mask.sprite_sheets[species.name])
|
else if(wear_mask.sprite_sheets && wear_mask.sprite_sheets[species.get_bodytype()])
|
||||||
standing = image("icon" = wear_mask.sprite_sheets[species.name], "icon_state" = "[wear_mask.icon_state]")
|
standing = image("icon" = wear_mask.sprite_sheets[species.get_bodytype()], "icon_state" = "[wear_mask.icon_state]")
|
||||||
else
|
else
|
||||||
standing = image("icon" = 'icons/mob/mask.dmi', "icon_state" = "[wear_mask.icon_state]")
|
standing = image("icon" = 'icons/mob/mask.dmi', "icon_state" = "[wear_mask.icon_state]")
|
||||||
|
|
||||||
@@ -797,8 +797,8 @@ var/global/list/damage_icon_parts = list()
|
|||||||
//If this is a rig and a mob_icon is set, it will take species into account in the rig update_icon() proc.
|
//If this is a rig and a mob_icon is set, it will take species into account in the rig update_icon() proc.
|
||||||
var/obj/item/weapon/rig/rig = back
|
var/obj/item/weapon/rig/rig = back
|
||||||
overlay_icon = rig.mob_icon
|
overlay_icon = rig.mob_icon
|
||||||
else if(back.sprite_sheets && back.sprite_sheets[species.name])
|
else if(back.sprite_sheets && back.sprite_sheets[species.get_bodytype()])
|
||||||
overlay_icon = back.sprite_sheets[species.name]
|
overlay_icon = back.sprite_sheets[species.get_bodytype()]
|
||||||
else if(back.item_icons && (slot_back_str in back.item_icons))
|
else if(back.item_icons && (slot_back_str in back.item_icons))
|
||||||
overlay_icon = back.item_icons[slot_back_str]
|
overlay_icon = back.item_icons[slot_back_str]
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -370,12 +370,12 @@ var/list/ai_verbs_default = list(
|
|||||||
if(emergency_message_cooldown)
|
if(emergency_message_cooldown)
|
||||||
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
|
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
|
||||||
return
|
return
|
||||||
var/input = input(usr, "Please choose a message to transmit to Centcomm via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response. There is a 30 second delay before you may send another message, be clear, full and concise.", "To abort, send an empty message.", "")
|
var/input = input(usr, "Please choose a message to transmit to [boss_short] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response. There is a 30 second delay before you may send another message, be clear, full and concise.", "To abort, send an empty message.", "")
|
||||||
if(!input)
|
if(!input)
|
||||||
return
|
return
|
||||||
Centcomm_announce(input, usr)
|
Centcomm_announce(input, usr)
|
||||||
usr << "<span class='notice'>Message transmitted.</span>"
|
usr << "<span class='notice'>Message transmitted.</span>"
|
||||||
log_say("[key_name(usr)] has made an IA Centcomm announcement: [input]")
|
log_say("[key_name(usr)] has made an IA [boss_short] announcement: [input]")
|
||||||
emergency_message_cooldown = 1
|
emergency_message_cooldown = 1
|
||||||
spawn(300)
|
spawn(300)
|
||||||
emergency_message_cooldown = 0
|
emergency_message_cooldown = 0
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ var/list/mob_hat_cache = list()
|
|||||||
if(!laws) laws = new law_type
|
if(!laws) laws = new law_type
|
||||||
if(!module) module = new module_type(src)
|
if(!module) module = new module_type(src)
|
||||||
|
|
||||||
flavor_text = "It's a tiny little repair drone. The casing is stamped with an NT logo and the subscript: 'NanoTrasen Recursive Repair Systems: Fixing Tomorrow's Problem, Today!'"
|
flavor_text = "It's a tiny little repair drone. The casing is stamped with an corporate logo and the subscript: '[company_name] Recursive Repair Systems: Fixing Tomorrow's Problem, Today!'"
|
||||||
playsound(src.loc, 'sound/machines/twobeep.ogg', 50, 0)
|
playsound(src.loc, 'sound/machines/twobeep.ogg', 50, 0)
|
||||||
|
|
||||||
//Redefining some robot procs...
|
//Redefining some robot procs...
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user