Merge with dev-freeze.

This commit is contained in:
Zuhayr
2015-06-21 20:45:47 +09:30
62 changed files with 706 additions and 600 deletions
+1 -1
View File
@@ -1164,7 +1164,7 @@ proc/admin_notice(var/message, var/rights)
out += "<b>Core antag id:</b> <a href='?src=\ref[ticker.mode];debug_antag=[ticker.mode.antag_tag]'>[ticker.mode.antag_tag]</a>.</br>"
if(ticker.mode.round_autoantag)
out += "<b>Autotraitor <a href='?src=\ref[ticker.mode];toggle=autotraitor'>enabled</a></b> ([ticker.mode.antag_prob]% spawn chance)"
out += "<b>Autotraitor <a href='?src=\ref[ticker.mode];toggle=autotraitor'>enabled</a></b> ([ticker.mode.get_antag_prob()]% spawn chance)"
if(ticker.mode.antag_scaling_coeff)
out += " (scaling with <a href='?src=\ref[ticker.mode];set=antag_scaling'>[ticker.mode.antag_scaling_coeff]</a>)"
out += "<br/>"
+4 -36
View File
@@ -410,43 +410,11 @@
dat += "Launching now..."
dat += "<a href='?src=\ref[src];delay_round_end=1'>[ticker.delay_end ? "End Round Normally" : "Delay Round End"]</a><br>"
//todo
dat += "<hr>"
for(var/antag_type in all_antag_types)
var/datum/antagonist/A = all_antag_types[antag_type]
dat += A.get_check_antag_output(src)
dat += "</body></html>"
usr << browse(dat, "window=roundstatus;size=400x500")
else
alert("The game hasn't started yet!")
/proc/check_role_table(name, list/members, admins, show_objectives=1)
var/txt = "<br><table cellspacing=5><tr><td><b>[name]</b></td><td></td></tr>"
for(var/datum/mind/M in members)
txt += check_role_table_row(M.current, admins, show_objectives)
txt += "</table>"
return txt
/proc/check_role_table_row(mob/M, admins=src, show_objectives)
if (!istype(M))
return "<tr><td><i>Not found!</i></td></tr>"
var/txt = {"
<tr>
<td>
<a href='?src=\ref[admins];adminplayeropts=\ref[M]'>[M.real_name]</a>
[M.client ? "" : " <i>(logged out)</i>"]
[M.is_dead() ? " <b><font color='red'>(DEAD)</font></b>" : ""]
</td>
<td>
<a href='?src=\ref[usr];priv_msg=\ref[M]'>PM</a>
</td>
"}
if (show_objectives)
txt += {"
<td>
<a href='?src=\ref[admins];traitor=\ref[M]'>Show Objective</a>
</td>
"}
txt += "</tr>"
return txt
+3 -3
View File
@@ -1734,13 +1734,13 @@
feedback_add_details("admin_secrets_fun_used","Aliens")
log_admin("[key_name(usr)] spawned an alien infestation", 1)
message_admins("\blue [key_name_admin(usr)] attempted an alien infestation", 1)
xenomorphs.random_spawn()
xenomorphs.attempt_random_spawn()
if("borers")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","Borers")
log_admin("[key_name(usr)] spawned a cortical borer infestation.", 1)
message_admins("\blue [key_name_admin(usr)] spawned a cortical borer infestation.", 1)
borers.random_spawn()
borers.attempt_random_spawn()
if("power")
feedback_inc("admin_secrets_fun_used",1)
@@ -2046,7 +2046,7 @@
if("aliens")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","AL")
if(xenomorphs.random_spawn())
if(xenomorphs.attempt_random_spawn())
message_admins("[key_name_admin(usr)] has spawned aliens", 1)
if("spiders")
feedback_inc("admin_secrets_fun_used",1)
+1
View File
@@ -119,6 +119,7 @@
item_state = "paper"
throwforce = 1
w_class = 1.0
slot_flags = SLOT_EARS
throw_speed = 3
throw_range = 5
+1 -1
View File
@@ -10,4 +10,4 @@
valid_types |= antag
if(valid_types.len)
var/datum/antagonist/antag = pick(valid_types)
antag.random_spawn()
antag.attempt_random_spawn()
+1
View File
@@ -8,6 +8,7 @@
force = 0.0
throwforce = 0.0
w_class = 1.0
slot_flags = SLOT_EARS
var/string_attached
var/sides = 2
@@ -14,7 +14,7 @@ var/const/MAX_ACTIVE_TIME = 400
icon = 'icons/mob/alien.dmi'
icon_state = "facehugger"
item_state = "facehugger"
w_class = 1 //note: can be picked up by aliens unlike most other items of w_class below 4
w_class = 3 //note: can be picked up by aliens unlike most other items of w_class below 4
flags = MASKCOVERSMOUTH | MASKCOVERSEYES | AIRTIGHT
body_parts_covered = FACE|EYES
throw_range = 5
@@ -253,12 +253,13 @@
lawupdate = 0
src << "<b>Systems rebooted</b>. Loading base pattern maintenance protocol... <b>loaded</b>."
full_law_reset()
src << "<br><b>You are a maintenance drone, a tiny-brained robotic repair machine</b>."
welcome_drone()
/mob/living/silicon/robot/drone/proc/welcome_drone()
src << "<b>You are a maintenance drone, a tiny-brained robotic repair machine</b>."
src << "You have no individual will, no personality, and no drives or urges other than your laws."
src << "Use <b>:d</b> to talk to other drones and <b>say</b> to speak silently to your nearby fellows."
src << "Remember, you are <b>lawed against interference with the crew</b>. Also remember, <b>you DO NOT take orders from the AI.</b>"
src << "<b>Don't invade their worksites, don't steal their resources, don't tell them about the changeling in the toilets.</b>"
src << "<b>If a crewmember has noticed you, <i>you are probably breaking your third law</i></b>."
src << "Use <b>:d</b> to talk to other drones and <b>say</b> to speak silently to your nearby fellows."
/mob/living/silicon/robot/drone/start_pulling(var/atom/movable/AM)
@@ -289,6 +290,12 @@
can_pull_size = 5
can_pull_mobs = 1
/mob/living/silicon/robot/drone/construction/welcome_drone()
src << "<b>You are a construction drone, an autonomous engineering and fabrication system.</b>."
src << "You are assigned to a Sol Central construction project. The name is irrelevant. Your task is to complete construction and subsystem integration as soon as possible."
src << "Use <b>:d</b> to talk to other drones and <b>say</b> to speak silently to your nearby fellows."
src << "<b>You do not follow orders from anyone; not the AI, not humans, and not other synthetics.</b>."
/mob/living/silicon/robot/drone/construction/init()
..()
flavor_text = "It's a bulky construction drone stamped with a Sol Central glyph."
@@ -7,7 +7,7 @@
icon_state = "soulstone"
item_state = "electronic"
desc = "A fragment of the legendary treasure known simply as the 'Soul Stone'. The shard still flickers with a fraction of the full artefacts power."
w_class = 1.0
w_class = 2
slot_flags = SLOT_BELT
origin_tech = list(TECH_BLUESPACE = 4, TECH_MATERIAL = 4)
var/imprinted = "empty"
+1 -1
View File
@@ -5,7 +5,7 @@
icon_state = "paper"
item_state = "paper"
throwforce = 0
w_class = 1.0
w_class = 2
throw_range = 2
throw_speed = 1
layer = 4
+1 -1
View File
@@ -4,7 +4,7 @@
icon = 'icons/obj/ammo.dmi'
icon_state = "s-casing"
flags = CONDUCT
slot_flags = SLOT_BELT
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 1
w_class = 1
var/caliber = "" //Which kind of guns it can be loaded into
@@ -6,7 +6,7 @@
var/icon_flight = "syringe-cartridge-flight" //so it doesn't look so weird when shot
matter = list(DEFAULT_WALL_MATERIAL = 125, "glass" = 375)
flags = CONDUCT
slot_flags = SLOT_BELT
slot_flags = SLOT_BELT | SLOT_EARS
throwforce = 3
force = 3
w_class = 1
@@ -9,6 +9,7 @@
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(1,2,3,4,5)
w_class = 1
slot_flags = SLOT_EARS
volume = 5
afterattack(var/obj/target, var/mob/user, var/flag)
@@ -9,6 +9,7 @@
item_state = "pill"
possible_transfer_amounts = null
w_class = 1
slot_flags = SLOT_EARS
volume = 60
New()
@@ -16,6 +16,7 @@
possible_transfer_amounts = null
volume = 15
w_class = 1
slot_flags = SLOT_EARS
sharp = 1
var/mode = SYRINGE_DRAW
var/image/filling //holds a reference to the current filling overlay
+4
View File
@@ -23,6 +23,10 @@
docking_controller_offsite = locate(docking_controller_tag_offsite)
if(!istype(docking_controller_offsite))
world << "<span class='danger'>warning: shuttle with docking tag [docking_controller_offsite] could not find it's controller!</span>"
if (!location)
docking_controller = docking_controller_station
else
docking_controller = docking_controller_offsite
/datum/shuttle/ferry/multidock/move(var/area/origin,var/area/destination)
..(origin, destination)
+1 -1
View File
@@ -5,7 +5,7 @@
icon_state ="spellbook"
throw_speed = 1
throw_range = 5
w_class = 1.0
w_class = 2
var/uses = 5
var/temp = null
var/max_uses = 5