mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 02:16:05 +00:00
-Chemical implants can now hold 50 units instead of 10.
-Made mutagen a catalyst instead of an ingredient. Fixes Issue 1100. -Spellbook and Teleport Scroll doesn't show up for other players now. -Added a syndicate intercom in the wizard's den. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5072 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -44,7 +44,6 @@
|
|||||||
onclose(user, "radio")
|
onclose(user, "radio")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
/obj/item/weapon/spellbook/Topic(href, href_list)
|
/obj/item/weapon/spellbook/Topic(href, href_list)
|
||||||
..()
|
..()
|
||||||
if (usr.stat || usr.restrained())
|
if (usr.stat || usr.restrained())
|
||||||
@@ -52,7 +51,7 @@
|
|||||||
var/mob/living/carbon/human/H = usr
|
var/mob/living/carbon/human/H = usr
|
||||||
if (!( istype(H, /mob/living/carbon/human)))
|
if (!( istype(H, /mob/living/carbon/human)))
|
||||||
return 1
|
return 1
|
||||||
if ((usr.contents.Find(src) || (in_range(src,usr) && istype(src.loc, /turf))))
|
if ( src.loc == usr || (in_range(src,usr) && istype(src.loc, /turf)))
|
||||||
usr.set_machine(src)
|
usr.set_machine(src)
|
||||||
if(href_list["spell_choice"])
|
if(href_list["spell_choice"])
|
||||||
if(src.uses >= 1 && src.max_uses >=1 && text2num(href_list["spell_choice"]) < 18)
|
if(src.uses >= 1 && src.max_uses >=1 && text2num(href_list["spell_choice"]) < 18)
|
||||||
@@ -156,10 +155,6 @@
|
|||||||
else
|
else
|
||||||
if (href_list["temp"])
|
if (href_list["temp"])
|
||||||
src.temp = null
|
src.temp = null
|
||||||
if (istype(src.loc, /mob))
|
attack_self(H)
|
||||||
attack_self(src.loc)
|
|
||||||
else
|
|
||||||
for(var/mob/M in viewers(1, src))
|
|
||||||
if (M.client)
|
|
||||||
src.attack_self(M)
|
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -387,42 +387,6 @@
|
|||||||
|
|
||||||
smoke.start()
|
smoke.start()
|
||||||
|
|
||||||
/mob/proc/teleportscroll()
|
|
||||||
if(usr.stat)
|
|
||||||
usr << "Not when you are incapacitated."
|
|
||||||
return
|
|
||||||
var/A
|
|
||||||
|
|
||||||
A = input("Area to jump to", "BOOYEA", A) in teleportlocs
|
|
||||||
var/area/thearea = teleportlocs[A]
|
|
||||||
|
|
||||||
var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread()
|
|
||||||
smoke.set_up(5, 0, usr.loc)
|
|
||||||
smoke.attach(usr)
|
|
||||||
smoke.start()
|
|
||||||
var/list/L = list()
|
|
||||||
for(var/turf/T in get_area_turfs(thearea.type))
|
|
||||||
if(!T.density)
|
|
||||||
var/clear = 1
|
|
||||||
for(var/obj/O in T)
|
|
||||||
if(O.density)
|
|
||||||
clear = 0
|
|
||||||
break
|
|
||||||
if(clear)
|
|
||||||
L+=T
|
|
||||||
|
|
||||||
if(!L.len)
|
|
||||||
usr <<"The spell matrix was unable to locate a suitable teleport destination for an unknown reason. Sorry."
|
|
||||||
return
|
|
||||||
|
|
||||||
var/attempt = 0
|
|
||||||
var/success = 0
|
|
||||||
while(!success)
|
|
||||||
success = Move(pick(L))
|
|
||||||
if(attempt > 20) break //Failsafe
|
|
||||||
if(!success)
|
|
||||||
usr.loc = pick(L)
|
|
||||||
smoke.start()
|
|
||||||
|
|
||||||
//JAUNT
|
//JAUNT
|
||||||
|
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ will suffer from an increased appetite.</B><BR>
|
|||||||
<b>Function:</b> Contains a small capsule that can contain various chemicals. Upon receiving a specially encoded signal<BR>
|
<b>Function:</b> Contains a small capsule that can contain various chemicals. Upon receiving a specially encoded signal<BR>
|
||||||
the implant releases the chemicals directly into the blood stream.<BR>
|
the implant releases the chemicals directly into the blood stream.<BR>
|
||||||
<b>Special Features:</b>
|
<b>Special Features:</b>
|
||||||
<i>Micro-Capsule</i>- Can be loaded with any sort of chemical agent via the common syringe and can hold 15 units.<BR>
|
<i>Micro-Capsule</i>- Can be loaded with any sort of chemical agent via the common syringe and can hold 50 units.<BR>
|
||||||
Can only be loaded while still in its original case.<BR>
|
Can only be loaded while still in its original case.<BR>
|
||||||
<b>Integrity:</b> Implant will last so long as the subject is alive. However, if the subject suffers from malnutrition,<BR>
|
<b>Integrity:</b> Implant will last so long as the subject is alive. However, if the subject suffers from malnutrition,<BR>
|
||||||
the implant may become unstable and either pre-maturely inject the subject or simply break."}
|
the implant may become unstable and either pre-maturely inject the subject or simply break."}
|
||||||
@@ -123,14 +123,14 @@ the implant may become unstable and either pre-maturely inject the subject or si
|
|||||||
|
|
||||||
New()
|
New()
|
||||||
..()
|
..()
|
||||||
var/datum/reagents/R = new/datum/reagents(10)
|
var/datum/reagents/R = new/datum/reagents(50)
|
||||||
reagents = R
|
reagents = R
|
||||||
R.my_atom = src
|
R.my_atom = src
|
||||||
|
|
||||||
|
|
||||||
trigger(emote, source as mob)
|
trigger(emote, source as mob)
|
||||||
if(emote == "deathgasp")
|
if(emote == "deathgasp")
|
||||||
src.activate(10)
|
src.activate(50)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
else if(istype(I, /obj/item/weapon/reagent_containers/syringe))
|
else if(istype(I, /obj/item/weapon/reagent_containers/syringe))
|
||||||
if(!src.imp) return
|
if(!src.imp) return
|
||||||
if(!src.imp.allow_reagents) return
|
if(!src.imp.allow_reagents) return
|
||||||
if(src.imp.reagents.total_volume >= 10)
|
if(src.imp.reagents.total_volume >= src.imp.reagents.maximum_volume)
|
||||||
user << "\red [src] is full."
|
user << "\red [src] is full."
|
||||||
else
|
else
|
||||||
spawn(5)
|
spawn(5)
|
||||||
|
|||||||
@@ -30,16 +30,51 @@
|
|||||||
var/mob/living/carbon/human/H = usr
|
var/mob/living/carbon/human/H = usr
|
||||||
if (!( istype(H, /mob/living/carbon/human)))
|
if (!( istype(H, /mob/living/carbon/human)))
|
||||||
return 1
|
return 1
|
||||||
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))))
|
if ((usr == src.loc || (in_range(src, usr) && istype(src.loc, /turf))))
|
||||||
usr.set_machine(src)
|
usr.set_machine(src)
|
||||||
if (href_list["spell_teleport"])
|
if (href_list["spell_teleport"])
|
||||||
if (src.uses >= 1)
|
if (src.uses >= 1)
|
||||||
src.uses -= 1
|
teleportscroll(H)
|
||||||
usr.teleportscroll()
|
attack_self(H)
|
||||||
if (istype(src.loc, /mob))
|
return
|
||||||
attack_self(src.loc)
|
|
||||||
else
|
/obj/item/weapon/teleportation_scroll/proc/teleportscroll(var/mob/user)
|
||||||
for(var/mob/M in viewers(1, src))
|
|
||||||
if (M.client)
|
var/A
|
||||||
src.attack_self(M)
|
|
||||||
return
|
A = input(user, "Area to jump to", "BOOYEA", A) in teleportlocs
|
||||||
|
var/area/thearea = teleportlocs[A]
|
||||||
|
|
||||||
|
if (user.stat || user.restrained())
|
||||||
|
return
|
||||||
|
if(!((user == loc || (in_range(src, user) && istype(src.loc, /turf)))))
|
||||||
|
return
|
||||||
|
|
||||||
|
var/datum/effect/effect/system/harmless_smoke_spread/smoke = new /datum/effect/effect/system/harmless_smoke_spread()
|
||||||
|
smoke.set_up(5, 0, user.loc)
|
||||||
|
smoke.attach(user)
|
||||||
|
smoke.start()
|
||||||
|
var/list/L = list()
|
||||||
|
for(var/turf/T in get_area_turfs(thearea.type))
|
||||||
|
if(!T.density)
|
||||||
|
var/clear = 1
|
||||||
|
for(var/obj/O in T)
|
||||||
|
if(O.density)
|
||||||
|
clear = 0
|
||||||
|
break
|
||||||
|
if(clear)
|
||||||
|
L+=T
|
||||||
|
|
||||||
|
if(!L.len)
|
||||||
|
user <<"The spell matrix was unable to locate a suitable teleport destination for an unknown reason. Sorry."
|
||||||
|
return
|
||||||
|
|
||||||
|
var/attempt = 0
|
||||||
|
var/success = 0
|
||||||
|
while(!success)
|
||||||
|
success = user.Move(pick(L))
|
||||||
|
if(attempt > 20) break //Failsafe
|
||||||
|
if(!success)
|
||||||
|
user.loc = pick(L)
|
||||||
|
smoke.start()
|
||||||
|
src.uses -= 1
|
||||||
@@ -459,8 +459,8 @@ datum
|
|||||||
name = "Mix Virus"
|
name = "Mix Virus"
|
||||||
id = "mixvirus"
|
id = "mixvirus"
|
||||||
result = "blood"
|
result = "blood"
|
||||||
required_reagents = list("blood" = 1, "virusfood" = 5)
|
required_reagents = list("virusfood" = 5)
|
||||||
result_amount = 1
|
required_catalysts = list("blood")
|
||||||
var/level = 2
|
var/level = 2
|
||||||
|
|
||||||
on_reaction(var/datum/reagents/holder, var/created_volume)
|
on_reaction(var/datum/reagents/holder, var/created_volume)
|
||||||
@@ -471,20 +471,19 @@ datum
|
|||||||
if(D)
|
if(D)
|
||||||
D.Evolve(level - rand(0, 1))
|
D.Evolve(level - rand(0, 1))
|
||||||
|
|
||||||
holder.del_reagent(id)
|
|
||||||
|
|
||||||
mix_virus_2
|
mix_virus_2
|
||||||
|
|
||||||
name = "Mix Virus 2"
|
name = "Mix Virus 2"
|
||||||
id = "mixvirus2"
|
id = "mixvirus2"
|
||||||
required_reagents = list("blood" = 1, "mutagen" = 5)
|
required_reagents = list("mutagen" = 5)
|
||||||
level = 4
|
level = 4
|
||||||
|
|
||||||
rem_virus
|
rem_virus
|
||||||
|
|
||||||
name = "Devolve Virus"
|
name = "Devolve Virus"
|
||||||
id = "remvirus"
|
id = "remvirus"
|
||||||
required_reagents = list("blood" = 1, "synaptizine" = 5)
|
required_reagents = list("synaptizine" = 5)
|
||||||
|
|
||||||
on_reaction(var/datum/reagents/holder, var/created_volume)
|
on_reaction(var/datum/reagents/holder, var/created_volume)
|
||||||
|
|
||||||
@@ -493,7 +492,6 @@ datum
|
|||||||
var/datum/disease/advance/D = locate(/datum/disease/advance) in B.data["viruses"]
|
var/datum/disease/advance/D = locate(/datum/disease/advance) in B.data["viruses"]
|
||||||
if(D)
|
if(D)
|
||||||
D.Devolve()
|
D.Devolve()
|
||||||
holder.del_reagent(id)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -48,6 +48,14 @@ Stuff which is in development and not yet visible to players or just code relate
|
|||||||
should be listed in the changelog upon commit tho. Thanks. -->
|
should be listed in the changelog upon commit tho. Thanks. -->
|
||||||
|
|
||||||
<!-- To take advantage of the pretty new format (well it was new when I wrote this anyway), open the "add-to-changelog.html" file in any browser and add the stuff and then generate the html code and paste it here -->
|
<!-- To take advantage of the pretty new format (well it was new when I wrote this anyway), open the "add-to-changelog.html" file in any browser and add the stuff and then generate the html code and paste it here -->
|
||||||
|
<div class="commit sansserif">
|
||||||
|
<h2 class="date">15 November 2012</h2>
|
||||||
|
<h3 class="author">Giacom updated:</h3>
|
||||||
|
<ul class="changes bgimages16">
|
||||||
|
<li class="tweak">Chemical implants can now hold 50 units instead of 10 units.</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="commit sansserif">
|
<div class="commit sansserif">
|
||||||
<h2 class="date">13 November 2012</h2>
|
<h2 class="date">13 November 2012</h2>
|
||||||
<h3 class="author">Giacom updated:</h3>
|
<h3 class="author">Giacom updated:</h3>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user