mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-29 15:08:34 +01:00
Finished rune 12. Added very simple and fairly useless rune 13 per Barh's request.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@277 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -7,6 +7,7 @@ var/wordblood = null
|
||||
var/wordjoin = null
|
||||
var/wordtech = null
|
||||
var/worddestr = null
|
||||
var/runedec = 0
|
||||
|
||||
/proc/runerandom() //randomizes word meaning
|
||||
var/list/runewords=list("ire","ego","nahlizet","certum","veri","jatkaa","mgar","balaq")
|
||||
@@ -105,7 +106,7 @@ var/worddestr = null
|
||||
if(word1 == wordhell && word2 == wordjoin && word3 == wordself)
|
||||
return tearreality()
|
||||
if(word1 == worddestr && word2 == wordsee && word3 == wordtech)
|
||||
return emp()
|
||||
return emp(src.loc,1)
|
||||
if(word1 == wordtravel && word2 == wordblood && word3 == wordself)
|
||||
return drain()
|
||||
if(word1 == wordsee && word2 == wordhell && word3 == wordjoin)
|
||||
@@ -197,10 +198,10 @@ var/worddestr = null
|
||||
var/C = 0
|
||||
for(var/obj/rune/N in world)
|
||||
C++
|
||||
if (C>=26) //including the useless rune at the secret room, shouldn't count against the limit of 25 runes - Urist
|
||||
if (C>=26+runedec) //including the useless rune at the secret room, shouldn't count against the limit of 25 runes - Urist
|
||||
switch(alert("The cloth of reality can't take that much of a strain. By creating another rune, you risk locally tearing reality apart, which would prove fatal to you. Do you still wish to scribe the rune?",,"Yes","No"))
|
||||
if("Yes")
|
||||
if(prob(C*5-105)) //including the useless rune at the secret room, shouldn't count against the limit - Urist
|
||||
if(prob(C*5-105-runedec*5)) //including the useless rune at the secret room, shouldn't count against the limit - Urist
|
||||
usr.emote("scream")
|
||||
user << "\red A tear momentarily appears in reality. Before it closes, you catch a glimpse of that which lies beyond. That proves to be too much for your mind."
|
||||
usr.gib(1)
|
||||
@@ -356,18 +357,16 @@ var/worddestr = null
|
||||
var/imbue = null
|
||||
|
||||
attack_self(mob/user as mob)
|
||||
usr.bruteloss+=20
|
||||
switch(imbue)
|
||||
if("newtome")
|
||||
call(/obj/rune/proc/tomesummon)()
|
||||
return
|
||||
if("emp")
|
||||
call(/obj/rune/proc/emp)()
|
||||
return
|
||||
call(/obj/rune/proc/emp)(usr.loc,4)
|
||||
if("conceal")
|
||||
call(/obj/rune/proc/obscure)(2)
|
||||
del(src)
|
||||
return
|
||||
if(imbue)
|
||||
call(/obj/rune/proc/teleport)(imbue)
|
||||
if("ire", "ego", "nahlizet", "certum", "veri", "jatkaa", "balaq", "mgar")
|
||||
call(/obj/rune/proc/teleport)(imbue)
|
||||
if(src)
|
||||
del(src)
|
||||
return
|
||||
return
|
||||
@@ -11,7 +11,10 @@
|
||||
allrunesloc.len = index
|
||||
allrunesloc[index] = R.loc
|
||||
if(allrunesloc && index != 0)
|
||||
usr.say("Sas'so c'arta forbici!")
|
||||
if(istype(src,/obj/rune))
|
||||
usr.say("Sas'so c'arta forbici!")
|
||||
else
|
||||
usr.whisper("Sas'so c'arta forbici!")
|
||||
for (var/mob/V in viewers(src))
|
||||
V.show_message("\red [usr] disappears in a flash of red light!", 3, "\red You hear a sickening crunch and sloshing of viscera.", 2)
|
||||
usr.loc = allrunesloc[rand(1,index)]
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/rune/proc/manifest()
|
||||
if(usr.loc==src.loc)
|
||||
for(var/mob/dead/observer/O in src.loc)
|
||||
usr.say("Gal'h'rfikk harfrandid mud'gib!") //H'drak v'loso, mir'kanas verbot
|
||||
usr.say("Gal'h'rfikk harfrandid mud'gib!")
|
||||
var/mob/living/carbon/human/dummy/D = new /mob/living/carbon/human/dummy(src.loc)
|
||||
for (var/mob/V in viewers(D))
|
||||
V.show_message("\red A shape forms in the center of the rune. A shape of... a man.", 3, "", 2)
|
||||
@@ -15,7 +15,10 @@
|
||||
del(O)
|
||||
for(,usr.loc==src.loc)
|
||||
sleep(30)
|
||||
usr.bruteloss++
|
||||
if(usr.health>-100)
|
||||
usr.bruteloss++
|
||||
else
|
||||
break
|
||||
D.gib(1)
|
||||
for (var/mob/V in viewers(D))
|
||||
V.show_message("\red [D] explodes in a pile of gore.", 3, "\red \b SPLORCH", 2)
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
T.imbue = "[R.word3]"
|
||||
del(R)
|
||||
del(src)
|
||||
usr.say("H'drak v'loso, mir'kanas verbot!")
|
||||
return
|
||||
if(R.word1==wordsee && R.word2==wordblood && R.word3==wordhell)
|
||||
for(var/obj/item/weapon/paper/P in src.loc)
|
||||
@@ -23,6 +24,7 @@
|
||||
T.imbue = "newtome"
|
||||
del(R)
|
||||
del(src)
|
||||
usr.say("H'drak v'loso, mir'kanas verbot!")
|
||||
return
|
||||
if(R.word1==worddestr && R.word2==wordsee && R.word3==wordtech)
|
||||
for(var/obj/item/weapon/paper/P in src.loc)
|
||||
@@ -34,6 +36,7 @@
|
||||
T.imbue = "emp"
|
||||
del(R)
|
||||
del(src)
|
||||
usr.say("H'drak v'loso, mir'kanas verbot!")
|
||||
return
|
||||
if(R.word1==wordblood && R.word2==wordsee && R.word3==worddestr)
|
||||
for(var/obj/item/weapon/paper/P in src.loc)
|
||||
@@ -45,5 +48,6 @@
|
||||
T.imbue = "conceal"
|
||||
del(R)
|
||||
del(src)
|
||||
usr.say("H'drak v'loso, mir'kanas verbot!")
|
||||
return
|
||||
return fizzle()
|
||||
@@ -0,0 +1,10 @@
|
||||
/obj/rune/proc/mend()
|
||||
usr.say("Uhrast ka'hfa heldsagen ver'lot!")
|
||||
usr.bruteloss+=200
|
||||
runedec+=5
|
||||
for (var/mob/V in viewers(usr))
|
||||
V.show_message("\red [usr] keels over dead, his blood glowing blue as it escapes his body and dissipates into thin air.", 3, "", 2)
|
||||
for(,usr.health<-100)
|
||||
sleep(600)
|
||||
runedec=0
|
||||
return
|
||||
@@ -1,7 +1,13 @@
|
||||
/obj/rune/proc/tomesummon()
|
||||
usr.say("N'ath reth sh'yro eth d'raggathnor!")
|
||||
if(istype(src,/obj/rune))
|
||||
usr.say("N'ath reth sh'yro eth d'raggathnor!")
|
||||
else
|
||||
usr.whisper("N'ath reth sh'yro eth d'raggathnor!")
|
||||
for (var/mob/V in viewers(src))
|
||||
V.show_message("\red There's a flash of red light. The [src] disappears, and in its place a book lies", 3, "\red You hear a pop and smell ozone.", 2)
|
||||
new /obj/item/weapon/tome(src.loc)
|
||||
V.show_message("\red There's a flash of red light. The rune disappears, and in its place a book lies", 3, "\red You hear a pop and smell ozone.", 2)
|
||||
if(istype(src,/obj/rune))
|
||||
new /obj/item/weapon/tome(src.loc)
|
||||
else
|
||||
new /obj/item/weapon/tome(usr.loc)
|
||||
del(src)
|
||||
return
|
||||
@@ -1,7 +1,10 @@
|
||||
/obj/rune/proc/emp()
|
||||
usr.say("Ta'gh fara'qha fel d'amar det!")
|
||||
playsound(src.loc, 'Welder2.ogg', 25, 1)
|
||||
var/turf/T = get_turf(src)
|
||||
/obj/rune/proc/emp(var/U,var/range_red) //range_red - var which determines by which number to reduce the default emp range, U is the source loc, needed because of talisman emps which are held in hand at the moment of using and that apparently messes things up -- Urist
|
||||
if(istype(src,/obj/rune))
|
||||
usr.say("Ta'gh fara'qha fel d'amar det!")
|
||||
else
|
||||
usr.whisper("Ta'gh fara'qha fel d'amar det!")
|
||||
playsound(U, 'Welder2.ogg', 25, 1)
|
||||
var/turf/T = get_turf(U)
|
||||
if(T)
|
||||
T.hotspot_expose(700,125)
|
||||
|
||||
@@ -16,7 +19,7 @@
|
||||
spawn(20)
|
||||
del(pulse)
|
||||
|
||||
for(var/obj/item/weapon/W in range(world.view-1, T))
|
||||
for(var/obj/item/weapon/W in range(world.view-range_red, T))
|
||||
|
||||
if (istype(W, /obj/item/assembly/m_i_ptank) || istype(W, /obj/item/assembly/r_i_ptank) || istype(W, /obj/item/assembly/t_i_ptank))
|
||||
|
||||
@@ -32,7 +35,7 @@
|
||||
fuckthis:ignite()
|
||||
|
||||
|
||||
for(var/mob/living/M in viewers(world.view-1, T))
|
||||
for(var/mob/living/M in viewers(world.view-range_red, T))
|
||||
|
||||
if(!istype(M, /mob/living)) continue
|
||||
|
||||
@@ -103,7 +106,7 @@
|
||||
M << "\red <B>BZZZT</B>"
|
||||
|
||||
|
||||
for(var/obj/machinery/A in range(world.view-1, T))
|
||||
for(var/obj/machinery/A in range(world.view-range_red, T))
|
||||
A.use_power(7500)
|
||||
|
||||
var/obj/overlay/pulse2 = new/obj/overlay ( A.loc )
|
||||
|
||||
@@ -5,7 +5,10 @@
|
||||
R.visibility=0
|
||||
S=1
|
||||
if(S)
|
||||
usr.say("Kla'atu barada nikt'o!")
|
||||
if(istype(src,/obj/rune))
|
||||
usr.say("Kla'atu barada nikt'o!")
|
||||
else
|
||||
usr.whisper("Kla'atu barada nikt'o!")
|
||||
return
|
||||
if(istype(src,/obj/rune))
|
||||
return fizzle()
|
||||
|
||||
Reference in New Issue
Block a user