Merge pull request #1387 from caelaislinn/master

additional anomaly tweaks / fixes
This commit is contained in:
Albert Iordache
2012-06-24 08:58:04 -07:00
4 changed files with 49 additions and 30 deletions
@@ -702,6 +702,8 @@ datum
reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)
if(!istype(M, /mob/living))
return
if(M.acid_act(src))
return
if(method == TOUCH)
if(istype(M, /mob/living/carbon/human))
if(M:wear_mask)
@@ -734,6 +736,8 @@ datum
M.take_organ_damage(min(15, volume * 2))
reaction_obj(var/obj/O, var/volume)
if(O.acid_act(src))
return
if(istype(O, /obj/effect/blob))
var/obj/effect/blob/B = O
if(B.weakness == "acid")
@@ -772,6 +776,9 @@ datum
reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)
if(!istype(M, /mob/living))
return //wooo more runtime fixin
//cael - added the option for things splashed with acid to handle it themselves (for xenoarch)
if(M.acid_act(src))
return
if(method == TOUCH)
if(istype(M, /mob/living/carbon/human))
if(M:wear_mask)
@@ -815,6 +822,8 @@ datum
M.take_organ_damage(min(15, volume * 4))
reaction_obj(var/obj/O, var/volume)
if(O.acid_act(src))
return
if(istype(O, /obj/effect/blob))
var/obj/effect/blob/B = O
if(B.weakness == "acid")
+2 -2
View File
@@ -248,10 +248,10 @@
src.visible_message(message, message)
use_power(500)
else if (findarti > 1)
var/message = "<b>[src]</b> states, \"Cannot analyse. Too many artifacts on pad.\""
var/message = "<b>[src]</b> states, \"Cannot analyse. Error isolating energy signature.\""
src.visible_message(message, message)
else
var/message = "<b>[src]</b> states, \"Cannot analyse. No artifact found.\""
var/message = "<b>[src]</b> states, \"Cannot analyse. No noteworthy energy signature isolated.\""
src.visible_message(message, message)
if(href_list["upload"] && cur_id != "")
+29 -18
View File
@@ -31,24 +31,31 @@
else
for(var/mob/M in viewers(world.view, user))
M.show_message("\blue A few sparks fly off the rock, but otherwise nothing else happens.",1)
else if(istype(W, /obj/item/weapon/reagent_containers/))
var/obj/item/weapon/reagent_containers/R = W
if(R.reagents.has_reagent("pacid", 1))
if(src.method)
if(inside)
var/obj/A = new src.inside(get_turf(src))
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The rock fizzes away revealing a [A.name].",1)
else
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The rock fizzes away into nothing.",1)
del src
else
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The acid splashes harmlessly off the rock, nothing else interesting happens.",1)
/obj/item/weapon/ore/strangerock/acid_act(var/datum/reagent/R)
if(src.method)
if(inside)
var/obj/A = new src.inside(get_turf(src))
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The rock fizzes away revealing a [A.name].",1)
else
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The rock fizzes away into nothing.",1)
del src
else
for(var/mob/M in viewers(world.view, get_turf(src)))
M.show_message("\blue The acid splashes harmlessly off the rock, nothing else interesting happens.",1)
return 1
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//this should probably be elsewhere, but oh well
/atom/proc/acid_act(var/datum/reagent/R)
return 0
/*/obj/proc/acid_act(var/datum/reagent/R)
return 0
/mob/proc/acid_act(var/datum/reagent/R)
return 0*/
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@@ -124,7 +131,11 @@
/obj/item/weapon/talkingcrystal/proc/catchMessage(var/msg, var/mob/source)
var/list/seperate = list()
if(findtext(msg," ")==0)
if(findtext(msg,"(("))
return
else if(findtext(msg,"))"))
return
else if(findtext(msg," ")==0)
return
else
/*var/l = lentext(msg)
@@ -167,7 +178,7 @@
if(!word)
text = "[pick(words)]"
else
text = word
text = pick(stringsplit(word))
if(lentext(text)==1)
text=uppertext(text)
else
@@ -207,7 +218,7 @@
listening|=M
for(var/mob/M in listening)
M << "<b>The crystal</b> says, \"[msg]\""
M << "<b>The crystal</b> reverberates, \blue\"[msg]\""
lastsaid = world.timeofday + rand(300,800)
/obj/item/weapon/talkingcrystal/process()
+9 -10
View File
@@ -94,20 +94,19 @@
var/mundane = 0
for(var/obj/O in get_turf(owned_pad))
mundane++
break
if(!istype(O, /obj/machinery/artifact))
mundane++
break
for(var/mob/O in get_turf(owned_pad))
mundane++
break
if(!istype(O, /obj/machinery/artifact))
mundane++
break
if(articount > 1)
var/message = "<b>[src]</b> states, \"Cannot harvest. Too many artifacts on pad.\""
src.visible_message(message, message)
else if(mundane)
var/message = "<b>[src]</b> states, \"No noteworthy energy signatures detected.\""
if(articount > 1 || mundane)
var/message = "<b>[src]</b> states, \"Cannot harvest. Error isolating energy signature.\""
src.visible_message(message, message)
else if(!articount)
var/message = "<b>[src]</b> states, \"Cannot harvest. No artifact found.\""
var/message = "<b>[src]</b> states, \"Cannot harvest. No noteworthy energy signature isolated.\""
src.visible_message(message, message)
else if (cur_artifact.being_used)
var/message = "<b>[src]</b> states, \"Cannot harvest. Too much interferance from energy scan.\""