Diona 'split' command, plus bugfix

This commit is contained in:
GinjaNinja32
2015-04-21 01:40:38 +01:00
parent fc9c00bb5b
commit a440b228c9
3 changed files with 43 additions and 2 deletions

View File

@@ -319,7 +319,7 @@ In most cases it makes more sense to use apply_damage() instead! And make sure t
This function restores the subjects blood to max.
*/
/mob/living/carbon/human/proc/restore_blood()
if(!species.flags & NO_BLOOD)
if(!(species.flags & NO_BLOOD))
var/blood_volume = vessel.get_reagent_amount("blood")
vessel.add_reagent("blood",560.0-blood_volume)

View File

@@ -218,4 +218,41 @@
log_say("PsychicWhisper: [key_name(src)]->[M.key] : [msg]")
M << "\green You hear a strange, alien voice in your head... \italic [msg]"
src << "\green You said: \"[msg]\" to [M]"
return
return
/mob/living/carbon/human/proc/diona_split_nymph()
set name = "Split"
set desc = "Split your humanoid form into its constituent nymphs."
set category = "Abilities"
var/turf/T = get_turf(src)
var/mob/living/carbon/alien/diona/S = new(T)
S.set_dir(dir)
if(mind)
mind.transfer_to(S)
message_admins("\The [src] has split into nymphs; player now controls [key_name_admin(S)]")
log_admin("\The [src] has split into nymphs; player now controls [key_name(S)]")
var/nymphs = 1
for(var/mob/living/carbon/alien/diona/D in src)
nymphs++
D.loc = T
D.set_dir(pick(NORTH, SOUTH, EAST, WEST))
if(nymphs < 5)
for(var/i in nymphs to 4)
var/mob/M = new /mob/living/carbon/alien/diona(T)
M.set_dir(pick(NORTH, SOUTH, EAST, WEST))
for(var/obj/item/W in src)
drop_from_inventory(W)
visible_message("<span class='warning'>\The [src] quivers slightly, then splits apart with a wet slithering noise.</span>")
del(src)

View File

@@ -168,6 +168,10 @@
"r_foot" = list("path" = /obj/item/organ/external/diona/foot/right)
)
inherent_verbs = list(
/mob/living/carbon/human/proc/diona_split_nymph
)
warning_low_pressure = 50
hazard_low_pressure = -1