Hotfixes for March 3, 2017 (#260)

* fixes sterile mask box

* fixes admin map templates

https://github.com/tgstation/tgstation/pull/24581

* syndicate beacon refactor

https://github.com/tgstation/tgstation/pull/24612

* singularity tracking

https://github.com/tgstation/tgstation/pull/24609

* puddle description

https://github.com/tgstation/tgstation/pull/24601

* aux base landing fix

https://github.com/tgstation/tgstation/pull/24594

* comms console cooldown

https://github.com/tgstation/tgstation/pull/24579

* cult fixes + pronouns

https://github.com/tgstation/tgstation/pull/24590

* minebots now check for pressure

https://github.com/tgstation/tgstation/pull/24604

* fixes a very annoying spawn

https://github.com/tgstation/tgstation/pull/24588

* fixes false positive AI cheat check

https://github.com/tgstation/tgstation/pull/24558
mso is bae

* Fixes abductor surgery designs

https://github.com/tgstation/tgstation/pull/24593

* Allows transit space shuttle repairs

https://github.com/tgstation/tgstation/pull/24582

* fixes indentation error
This commit is contained in:
TalkingCactus
2017-03-03 15:15:42 -05:00
committed by GitHub
parent 8abcb9859b
commit 97327d2beb
18 changed files with 79 additions and 59 deletions
@@ -62,7 +62,7 @@
T.ratvar_act(1)
var/dir_to_step_in = pick(cardinal)
if(!prey)
for(var/obj/singularity/narsie/N in poi_list)
for(var/obj/singularity/narsie/N in singularities)
if(N.z == z)
prey = N
break
+1 -1
View File
@@ -34,7 +34,7 @@
user << "<span class='warning'>An overwhelming sense of nausea overpowers you!</span>"
user.Dizzy(120)
else
user << "<span class='cultlarge'>\"One of Ratvar's toys is trying to play with things [user.gender == FEMALE ? "s" : ""]he shouldn't. Cute.\"</span>"
user << "<span class='cultlarge'>\"One of Ratvar's toys is trying to play with things [user.p_they()] shouldn't. Cute.\"</span>"
user << "<span class='userdanger'>A horrible force yanks at your arm!</span>"
user.emote("scream")
user.apply_damage(30, BRUTE, pick("l_arm", "r_arm"))
@@ -22,6 +22,7 @@
/obj/structure/destructible/cult/attack_animal(mob/living/simple_animal/M)
if(istype(M, /mob/living/simple_animal/hostile/construct/builder))
if(obj_integrity < max_integrity)
M.changeNext_move(CLICK_CD_MELEE)
obj_integrity = min(max_integrity, obj_integrity + 5)
Beam(M, icon_state="sendbeam", time=4)
M.visible_message("<span class='danger'>[M] repairs \the <b>[src]</b>.</span>", \
+12 -7
View File
@@ -35,6 +35,11 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
var/stat_msg1
var/stat_msg2
/obj/machinery/computer/communications/proc/checkCCcooldown()
var/obj/item/weapon/circuitboard/computer/communications/CM = circuit
if(CM.lastTimeUsed + 600 > world.time)
return FALSE
return TRUE
/obj/machinery/computer/communications/New()
shuttle_caller_list += src
@@ -264,11 +269,11 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
// OMG CENTCOM LETTERHEAD
if("MessageCentcomm")
if(src.authenticated==2)
if(CM.lastTimeUsed + 600 > world.time)
if(!checkCCcooldown())
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
return
var/input = stripped_input(usr, "Please choose a message to transmit to Centcom via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to Centcomm.", "")
if(!input || !(usr in view(1,src)))
if(!input || !(usr in view(1,src)) || !checkCCcooldown())
return
playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
Centcomm_announce(input, usr)
@@ -280,12 +285,12 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
// OMG SYNDICATE ...LETTERHEAD
if("MessageSyndicate")
if((src.authenticated==2) && (src.emagged))
if(CM.lastTimeUsed + 600 > world.time)
if(!checkCCcooldown())
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0)
return
var/input = stripped_input(usr, "Please choose a message to transmit to \[ABNORMAL ROUTING COORDINATES\] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to /??????/.", "")
if(!input || !(usr in view(1,src)))
if(!input || !(usr in view(1,src)) || !checkCCcooldown())
return
playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
Syndicate_announce(input, usr)
@@ -301,11 +306,11 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if("nukerequest") //When there's no other way
if(src.authenticated==2)
if(CM.lastTimeUsed + 600 > world.time)
if(!checkCCcooldown())
usr << "<span class='warning'>Arrays recycling. Please stand by.</span>"
return
var/input = stripped_input(usr, "Please enter the reason for requesting the nuclear self-destruct codes. Misuse of the nuclear request system will not be tolerated under any circumstances. Transmission does not guarantee a response.", "Self Destruct Code Request.","")
if(!input || !(usr in view(1,src)))
if(!input || !(usr in view(1,src)) || !checkCCcooldown())
return
Nuke_request(input, usr)
usr << "<span class='notice'>Request sent.</span>"
@@ -687,4 +692,4 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
/obj/machinery/computer/communications/proc/overrideCooldown()
var/obj/item/weapon/circuitboard/computer/communications/CM = circuit
CM.lastTimeUsed = 0
CM.lastTimeUsed = 0
+16 -9
View File
@@ -11,6 +11,8 @@
density = 1
layer = BELOW_MOB_LAYER //so people can't hide it and it's REALLY OBVIOUS
stat = 0
verb_say = "states"
var/cooldown = 0
var/active = 0
var/icontype = "beacon"
@@ -20,18 +22,17 @@
if(surplus() < 1500)
if(user) user << "<span class='notice'>The connected wire doesn't have enough current.</span>"
return
for(var/obj/singularity/singulo in world)
for(var/obj/singularity/singulo in singularities)
if(singulo.z == z)
singulo.target = src
icon_state = "[icontype]1"
active = 1
machines |= src
if(user)
user << "<span class='notice'>You activate the beacon.</span>"
/obj/machinery/power/singularity_beacon/proc/Deactivate(mob/user = null)
for(var/obj/singularity/singulo in world)
for(var/obj/singularity/singulo in singularities)
if(singulo.target == src)
singulo.target = null
icon_state = "[icontype]0"
@@ -81,12 +82,18 @@
//stealth direct power usage
/obj/machinery/power/singularity_beacon/process()
if(!active)
return PROCESS_KILL
return
if(surplus() > 1500)
add_load(1500)
if(cooldown <= world.time)
cooldown = world.time + 100
for(var/obj/singularity/singulo in singularities)
if(singulo.z == z)
say("The [singulo] is now [get_dist(src,singulo)] standard lengths away to the [dir2text(get_dir(src,singulo))]")
else
if(surplus() > 1500)
add_load(1500)
else
Deactivate()
Deactivate()
say("Insufficient charge detected - powering down")
/obj/machinery/power/singularity_beacon/syndicate
@@ -120,4 +127,4 @@
/obj/item/device/sbeacondrop/powersink
desc = "A label on it reads: <i>Warning: Activating this device will send a power draining device to your location</i>."
droptype = /obj/item/device/powersink
origin_tech = "bluespace=4;syndicate=5"
origin_tech = "bluespace=4;syndicate=5"
+1 -4
View File
@@ -156,10 +156,7 @@
//BubbleWrap END
if (src && usr.machine==src) //do not reopen closed window
spawn( 0 )
src.interact(usr)
return
return
addtimer(CALLBACK(src, /atom/.proc/interact, usr), 0)
/obj/item/stack/proc/building_checks(datum/stack_recipe/R, multiplier)
if (src.get_amount() < R.req_amount*multiplier)
@@ -147,7 +147,7 @@
/obj/item/weapon/storage/box/masks
name = "box of sterile masks"
desc = "This box contains sterile medical masks."
icon_state = "sterile"
illustration = "sterile"
/obj/item/weapon/storage/box/masks/New()
..()
@@ -520,6 +520,7 @@
/obj/structure/sink/puddle //splishy splashy ^_^
name = "puddle"
desc = "A puddle used for washing one's hands and face."
icon_state = "puddle"
/obj/structure/sink/puddle/attack_hand(mob/M)
+4 -2
View File
@@ -18,7 +18,7 @@
/turf/open/space/Initialize()
icon_state = SPACE_ICON_STATE
air = space_gas
if(initialized)
stack_trace("Warning: [src]([type]) initialized multiple times!")
initialized = TRUE
@@ -60,9 +60,11 @@
/turf/open/space/attack_paw(mob/user)
return src.attack_hand(user)
/turf/open/space/attackby(obj/item/C, mob/user, params)
/turf/open/space/attackby(obj/item/C, mob/user, area_restriction)
..()
if(istype(C, /obj/item/stack/rods))
if(area_restriction && !istype(get_area(src), area_restriction))
return
var/obj/item/stack/rods/R = C
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
var/obj/structure/lattice/catwalk/W = locate(/obj/structure/lattice/catwalk, src)
+3 -3
View File
@@ -57,9 +57,9 @@
AM.loc = T
AM.newtonian_move(dir)
//Overwrite because we dont want people building rods in space.
/turf/open/space/transit/attackby()
return
//Overwrite because we dont want people building rods
/turf/open/space/transit/attackby(obj/item/C, mob/user)
..(C, user, /area/shuttle)
/turf/open/space/transit/Initialize()
..()