You can now carry diona nymphs around

This commit is contained in:
ZomgPonies
2014-01-03 22:13:45 -05:00
parent eb44938358
commit ba9c675ba2
6 changed files with 53 additions and 1 deletions
@@ -2,6 +2,38 @@
Tiny babby plant critter plus procs.
*/
//Helper object for picking dionaea up.
/obj/item/weapon/diona_holder
name = "diona nymph"
desc = "It's a tiny plant critter."
icon = 'icons/obj/objects.dmi'
icon_state = "nymph"
slot_flags = SLOT_HEAD
origin_tech = "magnets=3;biotech=5"
/obj/item/weapon/diona_holder/New()
..()
processing_objects.Add(src)
/obj/item/weapon/diona_holder/Del()
processing_objects.Remove(src)
..()
/obj/item/weapon/diona_holder/process()
if(!loc) return
if(!istype(loc,/mob/living))
for(var/mob/M in contents)
M.loc = get_turf(src)
del(src)
/obj/item/weapon/diona_holder/attackby(obj/item/weapon/W as obj, mob/user as mob)
for(var/mob/M in src.contents)
M.attackby(W,user)
//Mob defines.
/mob/living/carbon/monkey/diona
name = "diona nymph"
voice_name = "diona nymph"
@@ -19,6 +51,20 @@
add_language("Rootspeak")
verbs -= /mob/living/carbon/monkey/verb/ventcrawl
/mob/living/carbon/monkey/diona/attack_hand(mob/living/carbon/human/M as mob)
//Let people pick the little buggers up.
if(M.a_intent == "help")
var/obj/item/weapon/diona_holder/D = new(loc)
src.loc = D
D.name = loc.name
D.attack_hand(M)
M << "You scoop up [src]."
src << "[M] scoops you up."
return
..()
//Verbs after this point.
/mob/living/carbon/monkey/diona/verb/dionaventcrawl()
set name = "Crawl through Vent"
@@ -81,6 +127,12 @@
src.visible_message("\red [src] begins to shift and quiver, and erupts in a shower of shed bark and twigs!","\red You begin to shift and quiver, then erupt in a shower of shed bark and twigs, attaining your adult form!")
var/mob/living/carbon/human/adult = new(loc)
adult.set_species("Diona")
if(istype(loc,/obj/item/weapon/diona_holder/))
var/obj/item/weapon/diona_holder/L = loc
src.loc = L.loc
del(L)
for(var/datum/language/L in languages)
adult.add_language(L.name)
adult.regenerate_icons()
@@ -19,7 +19,7 @@
if(loc)
environment = loc.return_air()
if (stat != DEAD) //still breathing
if (stat != DEAD && !istype(src,/mob/living/carbon/monkey/diona)) //still breathing
//First, resolve location and get a breath
if(air_master.current_cycle%4==2)
//Only try to take a breath every 4 seconds, unless suffocating