ghosts/observers can possess mice at will

This commit is contained in:
Cael_Aislinn
2012-08-04 03:57:16 +10:00
parent 2f634cc081
commit 08f47799e1
2 changed files with 40 additions and 0 deletions

View File

@@ -153,6 +153,38 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
verbs += /mob/proc/ghost
del(src)
/mob/dead/observer/proc/become_mouse()
set category = "Ghost"
set name = "Become mouse"
//locate an empty mouse
if(client && client.holder && client.holder.state == 2)
var/rank = client.holder.rank
client.clear_admin_verbs()
client.holder.state = 1
client.update_admins(rank)
var/list/eligible_targets = new()
for(var/mob/living/simple_animal/mouse/M in world)
if(!M.ckey)
eligible_targets.Add(M)
var/mob/living/simple_animal/mouse/target_mouse
if(master_controller.game_ticker.spawn_vermin)
if(eligible_targets.len)
//grab a random existing one
target_mouse = pick(eligible_targets)
else
//make a new mouse
target_mouse = new(pick(master_controller.game_ticker.vermin_spawn_turfs))
if(target_mouse)
client.mob = target_mouse
verbs += /mob/proc/ghost
target_mouse.real_name = src.name + " (as mouse)"
else
client << "\red Unable to become a mouse!"
del(src)
/mob/dead/observer/proc/dead_tele()
set category = "Ghost"
set name = "Teleport"