diff --git a/code/datums/shuttle_controller.dm b/code/datums/shuttle_controller.dm
index 8d63e3a3b0..13ce86b9f7 100644
--- a/code/datums/shuttle_controller.dm
+++ b/code/datums/shuttle_controller.dm
@@ -36,9 +36,8 @@ datum/shuttle_controller
if(direction == 1)
var/timeleft = timeleft()
if(timeleft >= 600)
- world << "\blue Shuttle is at Centcom. Unable to recall."
return
- world << "\blue Alert: The shuttle is going back!"
+ captain_announce("The emergency shuttle has been recalled.")
world << sound('shuttlerecalled.ogg')
setdirection(-1)
online = 1
@@ -171,7 +170,7 @@ datum/shuttle_controller
start_location.move_contents_to(end_location)
settimeleft(SHUTTLELEAVETIME)
- world << "The Emergency Shuttle has docked with the station! You have [timeleft()/60] minutes to board the Emergency Shuttle."
+ captain_announce("The Emergency Shuttle has docked with the station. You have [timeleft()/60] minutes to board the Emergency Shuttle.")
world << sound('shuttledock.ogg')
return 1
@@ -216,7 +215,7 @@ datum/shuttle_controller
end_location = locate(/area/shuttle/escape_pod5/transit)
start_location.move_contents_to(end_location, null, EAST)
- world << "The Emergency Shuttle has left the station! [timeleft()/60] minutes until the shuttle docks at Central Command."
+ captain_announce("The Emergency Shuttle has left the station. Estimate [timeleft()/60] minutes until the shuttle docks at Central Command.")
// Some aesthetic turbulance shaking
for(var/mob/M in end_location)
diff --git a/code/defines/procs/captain_announce.dm b/code/defines/procs/captain_announce.dm
index 4ca0595937..9b91705ea5 100644
--- a/code/defines/procs/captain_announce.dm
+++ b/code/defines/procs/captain_announce.dm
@@ -1,6 +1,5 @@
/proc/captain_announce(var/text)
- world << "
Captain Announces
"
-
+ world << "Priority Announcement
"
world << "[html_encode(text)]"
world << "
"
diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm
index ac99ed5b35..30e99f8101 100644
--- a/code/game/machinery/computer/communications.dm
+++ b/code/game/machinery/computer/communications.dm
@@ -295,9 +295,9 @@
if (src.authenticated==2)
dat += "
\[ Make An Announcement \]"
if(src.emagged == 0)
- dat += "
\[ Send an emergancy message to Centcomm \]"
+ dat += "
\[ Send an emergency message to Centcomm \]"
else
- dat += "
\[ Send an emergancy message to \[UNKNOWN\] \]"
+ dat += "
\[ Send an emergency message to \[UNKNOWN\] \]"
dat += "
\[ Restore Backup Routing Data \]"
dat += "
\[ Change alert level \]"
@@ -440,11 +440,15 @@
return
if(world.time < 6000) // Ten minute grace period to let the game get going without lolmetagaming. -- TLE
- user << "The emergency shuttle is refueling. Please wait another [(6000-world.time)/10] seconds before trying again."
+ user << "The emergency shuttle is refueling. Please wait another [round((6000-world.time)/600)] minutes before trying again."
return
if(emergency_shuttle.direction == -1)
- user << "Shuttle may not be called while returning to CentCom."
+ user << "The emergency shuttle may not be called while returning to CentCom."
+ return
+
+ if(emergency_shuttle.online)
+ user << "The emergency shuttle is already on its way."
return
if(ticker.mode.name == "revolution" || ticker.mode.name == "AI malfunction" || ticker.mode.name == "sandbox")
@@ -458,7 +462,7 @@
emergency_shuttle.incall()
log_game("[key_name(user)] has called the shuttle.")
message_admins("[key_name_admin(user)] has called the shuttle.", 1)
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
world << sound('shuttlecalled.ogg')
return
@@ -470,10 +474,10 @@
if((ticker.mode.name == "blob")||(ticker.mode.name == "meteor"))
return
- emergency_shuttle.recall()
- log_game("[key_name(user)] has uncalled the shuttle.")
- message_admins("[key_name_admin(user)] has uncalled the shuttle.", 1)
-
+ if(emergency_shuttle.direction != -1 && emergency_shuttle.online) //check that shuttle isn't already heading to centcomm
+ emergency_shuttle.recall()
+ log_game("[key_name(user)] has recalled the shuttle.")
+ message_admins("[key_name_admin(user)] has recalled the shuttle.", 1)
return
/obj/machinery/computer/communications/proc/post_status(var/command, var/data1, var/data2)
@@ -517,7 +521,7 @@
emergency_shuttle.incall(2)
log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.")
message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1)
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
world << sound('shuttlecalled.ogg')
..()
@@ -542,7 +546,7 @@
emergency_shuttle.incall(2)
log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.")
message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1)
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
world << sound('shuttlecalled.ogg')
..()
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/paint.dm b/code/game/objects/items/weapons/paint.dm
index 5de9a90a0b..f634eda9a9 100644
--- a/code/game/objects/items/weapons/paint.dm
+++ b/code/game/objects/items/weapons/paint.dm
@@ -7,7 +7,7 @@ var/global/list/cached_icons = list()
desc = "Used to recolor floors and walls. Can not be removed by the janitor."
icon = 'items.dmi'
icon_state = "paint_neutral"
- var/color = "#FFFFFF"
+ var/color = "FFFFFF"
item_state = "paintcan"
w_class = 3.0
diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm
index fa4ce9d0ac..f0998d2769 100644
--- a/code/modules/admin/admin.dm
+++ b/code/modules/admin/admin.dm
@@ -31,7 +31,7 @@ var/global/BSACooldown = 0
if ((!( ticker ) || emergency_shuttle.location))
return
emergency_shuttle.incall()
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
log_admin("[key_name(usr)] called the Emergency Shuttle")
message_admins("\blue [key_name_admin(usr)] called the Emergency Shuttle to the station", 1)
@@ -41,12 +41,11 @@ var/global/BSACooldown = 0
switch(emergency_shuttle.direction)
if(-1)
emergency_shuttle.incall()
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
log_admin("[key_name(usr)] called the Emergency Shuttle")
message_admins("\blue [key_name_admin(usr)] called the Emergency Shuttle to the station", 1)
if(1)
emergency_shuttle.recall()
- world << "\blue Alert: The shuttle is going back!"
log_admin("[key_name(usr)] sent the Emergency Shuttle back")
message_admins("\blue [key_name_admin(usr)] sent the Emergency Shuttle back", 1)
@@ -59,6 +58,7 @@ var/global/BSACooldown = 0
if (src.rank in list("Badmin", "Game Admin", "Game Master"))
emergency_shuttle.settimeleft( input("Enter new shuttle duration (seconds):","Edit Shuttle Timeleft", emergency_shuttle.timeleft() ) as num )
log_admin("[key_name(usr)] edited the Emergency Shuttle's timeleft to [emergency_shuttle.timeleft()]")
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
message_admins("\blue [key_name_admin(usr)] edited the Emergency Shuttle's timeleft to [emergency_shuttle.timeleft()]", 1)
href_list["secretsadmin"] = "check_antagonist"
else
diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm
index 9336eac7fe..b223f57866 100644
--- a/code/modules/admin/verbs/randomverbs.dm
+++ b/code/modules/admin/verbs/randomverbs.dm
@@ -824,7 +824,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
return
emergency_shuttle.incall()
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
world << sound('shuttlecalled.ogg')
return
diff --git a/code/modules/admin/verbs/striketeam.dm b/code/modules/admin/verbs/striketeam.dm
index c7bb82ad7b..51b62ba17f 100644
--- a/code/modules/admin/verbs/striketeam.dm
+++ b/code/modules/admin/verbs/striketeam.dm
@@ -37,7 +37,6 @@ var/global/sent_strike_team = 0
if (emergency_shuttle.direction == 1 && emergency_shuttle.online == 1)
emergency_shuttle.recall()
- world << "\blue Alert: The shuttle is going back!"
var/commando_number = commandos_possible //for selecting a leader
var/leader_selected = 0 //when the leader is chosen. The last person spawned.
diff --git a/code/modules/admin/verbs/striketeam_syndicate.dm b/code/modules/admin/verbs/striketeam_syndicate.dm
index bd711b28ab..8c601b3024 100644
--- a/code/modules/admin/verbs/striketeam_syndicate.dm
+++ b/code/modules/admin/verbs/striketeam_syndicate.dm
@@ -37,7 +37,6 @@ var/global/sent_syndicate_strike_team = 0
if (emergency_shuttle.direction == 1 && emergency_shuttle.online == 1)
emergency_shuttle.recall()
- world << "\blue Alert: The shuttle is going back!"
var/syndicate_commando_number = syndicate_commandos_possible //for selecting a leader
var/syndicate_leader_selected = 0 //when the leader is chosen. The last person spawned.
diff --git a/code/modules/mob/living/carbon/human/poop.dm b/code/modules/mob/living/carbon/human/poop.dm
new file mode 100644
index 0000000000..f28721207e
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/poop.dm
@@ -0,0 +1 @@
+//APRIL FOOLS!! :3
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm
index ce640fc219..79c4a7783c 100644
--- a/code/modules/mob/living/silicon/ai/death.dm
+++ b/code/modules/mob/living/silicon/ai/death.dm
@@ -34,7 +34,7 @@
emergency_shuttle.incall(2)
log_game("All the AIs, comm consoles and boards are destroyed. Shuttle called.")
message_admins("All the AIs, comm consoles and boards are destroyed. Shuttle called.", 1)
- world << "\blue Alert: The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes."
+ captain_announce("The emergency shuttle has been called. It will arrive in [round(emergency_shuttle.timeleft()/60)] minutes.")
world << sound('shuttlecalled.ogg')
if(explosive)
diff --git a/code/modules/mob/simple_animal/cat.dm b/code/modules/mob/simple_animal/cat.dm
index d962fab1e2..1c0fa79e66 100644
--- a/code/modules/mob/simple_animal/cat.dm
+++ b/code/modules/mob/simple_animal/cat.dm
@@ -12,6 +12,7 @@
emote_see = list("shakes its head", "shivers")
speak_chance = 1
turns_per_move = 5
+ see_in_dark = 6
meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat
response_help = "pets the"
response_disarm = "gently pushes aside the"
diff --git a/code/modules/mob/simple_animal/corgi.dm b/code/modules/mob/simple_animal/corgi.dm
index 1a21cfd261..1cd1d7d411 100644
--- a/code/modules/mob/simple_animal/corgi.dm
+++ b/code/modules/mob/simple_animal/corgi.dm
@@ -18,6 +18,7 @@
response_help = "pets the"
response_disarm = "gently pushes aside the"
response_harm = "kicks the"
+ see_in_dark = 5
var/obj/item/inventory_head
var/obj/item/inventory_back