more artifact tweaks

Signed-off-by: caelaislinn <cael_aislinn@yahoo.com.au>
This commit is contained in:
caelaislinn
2012-06-23 15:18:26 +10:00
parent 66769fec4f
commit b7e22da1d5
2 changed files with 82 additions and 6 deletions

View File

@@ -12,6 +12,11 @@
method = 1 method = 1
inside = pick(150;"", 50;"/obj/item/weapon/crystal", 25;"/obj/item/weapon/talkingcrystal", "/obj/item/weapon/fossil/base") inside = pick(150;"", 50;"/obj/item/weapon/crystal", 25;"/obj/item/weapon/talkingcrystal", "/obj/item/weapon/fossil/base")
/obj/item/weapon/ore/strangerock/bullet_act(var/obj/item/projectile/P)
/obj/item/weapon/ore/strangerock/ex_act(var/severity)
src.visible_message("The [src] crumbles away, leaving some dust and gravel behind.")
/obj/item/weapon/ore/strangerock/attackby(obj/item/weapon/W as obj, mob/user as mob) /obj/item/weapon/ore/strangerock/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W,/obj/item/weapon/weldingtool/)) if(istype(W,/obj/item/weapon/weldingtool/))
if(!src.method) if(!src.method)
@@ -52,6 +57,32 @@
icon = 'mining.dmi' icon = 'mining.dmi'
icon_state = "crystal" icon_state = "crystal"
/obj/item/weapon/crystal/bullet_act(var/obj/item/projectile/P)
if(istype(P,/obj/item/projectile/beam/emitter))
switch(rand(0,3))
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 20
A.xo = 0
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = -20
A.xo = 0
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 0
A.xo = 20
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 0
A.xo = -20
else
..()
/obj/item/weapon/talkingcrystal /obj/item/weapon/talkingcrystal
name = "Crystal" name = "Crystal"
icon = 'mining.dmi' icon = 'mining.dmi'
@@ -59,6 +90,38 @@
var/list/list/words = list() var/list/list/words = list()
var/lastsaid var/lastsaid
/obj/item/weapon/talkingcrystal/New()
spawn(100)
process()
/obj/item/weapon/talkingcrystal/bullet_act(var/obj/item/projectile/P)
if(istype(P,/obj/item/projectile/beam/emitter))
switch(rand(0,3))
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 20
A.xo = 0
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = -20
A.xo = 0
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 0
A.xo = 20
if(0)
var/obj/item/projectile/beam/emitter/A = new /obj/item/projectile/beam/emitter( src.loc )
A.dir = pick(alldirs)
A.yo = 0
A.xo = -20
var/word = pick("pain","hurt","masochism","sadist","rage","repressed","ouch","evil","void","kill","destroy")
SaySomething(word)
else
..()
/obj/item/weapon/talkingcrystal/proc/catchMessage(var/msg, var/mob/source) /obj/item/weapon/talkingcrystal/proc/catchMessage(var/msg, var/mob/source)
var/list/seperate = list() var/list/seperate = list()
if(findtext(msg," ")==0) if(findtext(msg," ")==0)
@@ -69,6 +132,10 @@
msg+=" "*/ msg+=" "*/
seperate = stringsplit(msg, " ") seperate = stringsplit(msg, " ")
var/addressing_crystal = 0
if("crystal" in seperate || "gem" in seperate)
addressing_crystal = 1
for(var/Xa = 1,Xa<seperate.len,Xa++) for(var/Xa = 1,Xa<seperate.len,Xa++)
var/next = Xa + 1 var/next = Xa + 1
if(words["[lowertext(seperate[Xa])]"]) if(words["[lowertext(seperate[Xa])]"])
@@ -82,7 +149,7 @@
for(var/mob/O in viewers(src)) for(var/mob/O in viewers(src))
O.show_message("\blue The crystal hums for bit then stops...", 1) O.show_message("\blue The crystal hums for bit then stops...", 1)
if(!rand(0,5)) if(!rand(0, 5 - addressing_crystal * 3))
spawn(2) SaySomething(pick(seperate)) spawn(2) SaySomething(pick(seperate))
/obj/item/weapon/talkingcrystal/proc/debug() /obj/item/weapon/talkingcrystal/proc/debug()
@@ -136,6 +203,8 @@
/obj/item/weapon/talkingcrystal/process() /obj/item/weapon/talkingcrystal/process()
if(prob(25) && world.timeofday >= lastsaid && words.len >= 1) if(prob(25) && world.timeofday >= lastsaid && words.len >= 1)
SaySomething() SaySomething()
spawn(100)
process()

View File

@@ -21,20 +21,20 @@
icon_state = "anomaly" icon_state = "anomaly"
/obj/structure/noticeboard/anomaly/New() /obj/structure/noticeboard/anomaly/New()
notices = 3 notices = 4
icon_state = "nboard03" icon_state = "nboard04"
//add some memos //add some memos
var/obj/item/weapon/paper/P = new() var/obj/item/weapon/paper/P = new()
P.name = "Memo RE: proper analysis procedure" P.name = "Memo RE: proper analysis procedure"
P.info = "Rose,<br>activate <i>then</i> analyse the anomalies, your results will come so much quicker. Remember to employ basic quasi-elemental forces such as heat, energy, force and various chemical mixes - who knows why those ancient aliens made such obscure activation indices.<br><br>And don't forget your suit this time, I can't afford to have any researchers out of commision for as long as that again!.<br>- Ward" P.info = "Rose,<br>activate <i>then</i> analyse the anomalies, your results will come so much quicker. Remember to employ basic quasi-elemental forces such as heat, energy, force and various chemical mixes - who knows why those ancient aliens made such obscure activation indices.<br><br>And don't forget your suit this time, I can't afford to have any researchers out of commision for as long as that again!.<br>Ward"
P.stamped = list(/obj/item/weapon/stamp/rd) P.stamped = list(/obj/item/weapon/stamp/rd)
P.overlays = list("paper_stamped_rd") P.overlays = list("paper_stamped_rd")
src.contents += P src.contents += P
P = new() P = new()
P.name = "Memo RE: materials gathering" P.name = "Memo RE: materials gathering"
P.info = "Corasang,<br>the hands-on approach to gathering our samples may very well be slow at times, but it's safer than allowing the blundering miners to roll willy-nilly over our dig sites in their mechs, destroying everything in the process. And don't forget the escavation tools on your way out there!<br>- Ward" P.info = "Corasang,<br>the hands-on approach to gathering our samples may very well be slow at times, but it's safer than allowing the blundering miners to roll willy-nilly over our dig sites in their mechs, destroying everything in the process. And don't forget the escavation tools on your way out there!<br>- R.W"
P.stamped = list(/obj/item/weapon/stamp/rd) P.stamped = list(/obj/item/weapon/stamp/rd)
P.overlays = list("paper_stamped_rd") P.overlays = list("paper_stamped_rd")
src.contents += P src.contents += P
@@ -44,4 +44,11 @@
P.info = "Darion-<br><br>I don't care what his rank is, our business is that of science and knowledge - questions of moral application do not come into this. Sure, so there are those who would employ the energy-wave particles my modified device has managed to abscond for their own personal gain, but I can hardly see the practical benefits of some of those things our benefactors left behind. Ward--" P.info = "Darion-<br><br>I don't care what his rank is, our business is that of science and knowledge - questions of moral application do not come into this. Sure, so there are those who would employ the energy-wave particles my modified device has managed to abscond for their own personal gain, but I can hardly see the practical benefits of some of those things our benefactors left behind. Ward--"
P.stamped = list(/obj/item/weapon/stamp/rd) P.stamped = list(/obj/item/weapon/stamp/rd)
P.overlays = list("paper_stamped_rd") P.overlays = list("paper_stamped_rd")
src.contents += P src.contents += P
P = new()
P.name = "READ ME! Before you people destroy any more samples"
P.info = "how many times do i have to tell you people, these xeno-arch samples are del-i-cate, and should be handled so! careful application of a focussed, ceoncentrated heat or some corrosive liquids should clear away the extraneous carbon matter, while application of an energy beam will most decidedly destroy it entirely! W, <b>the one who signs your paychecks</b>"
P.stamped = list(/obj/item/weapon/stamp/rd)
P.overlays = list("paper_stamped_rd")
src.contents += P