Metroids:

You can perform some xenobiological dissection on Metroids to get a little something... I also made it impossible to push, drag, or grab Metroids while they're feeding on something. Metroids also eat slower, and you can more easily "wrestle" them off by clicking on them.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1793 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
vageyenaman@gmail.com
2011-07-07 01:13:10 +00:00
parent 513b6d0d91
commit 9bd966bf01
12 changed files with 135 additions and 10 deletions

View File

@@ -6,6 +6,11 @@ datum
var/result = null
var/list/required_reagents = new/list()
var/list/required_catalysts = new/list()
// Both of these variables are mostly going to be used with Metroid cores - but if you want to, you can use them for other things
var/atom/required_container = null // the container required for the reaction to happen
var/required_other = 0 // an integer required for the reaction to happen
var/result_amount = 0
proc
@@ -495,6 +500,14 @@ datum
result_amount = 5
/////////////////////////////////////METROID CORE REACTIONS ///////////////////////////////
// TODO
//////////////////////////////////////////FOOD MIXTURES////////////////////////////////////
tofu

View File

@@ -828,7 +828,7 @@
user << "\red [target] is empty."
return
if(!target.is_open_container() && !istype(target,/obj/reagent_dispensers))
if(!target.is_open_container() && !istype(target,/obj/reagent_dispensers) && !istype(target,/obj/item/metroid_core))
user << "\red You cannot directly remove reagents from this object."
return
@@ -845,13 +845,18 @@
return
if(istype(target, /obj/item/weapon/implantcase/chem))
return
if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food))
if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/metroid_core))
user << "\red You cannot directly fill this object."
return
if(target.reagents.total_volume >= target.reagents.maximum_volume)
user << "\red [target] is full."
return
if(istype(target, /obj/item/metroid_core))
var/obj/item/metroid_core/core = target
core.Flush = 30
if(ismob(target) && target != user)
for(var/mob/O in viewers(world.view, user))
O.show_message(text("\red <B>[] is trying to inject []!</B>", user, target), 1)