Respawn stuff tuning

This commit is contained in:
ZomgPonies
2014-01-02 01:19:26 -05:00
parent 4412cfe166
commit 05aadc5dd8
2 changed files with 18 additions and 13 deletions
+9 -9
View File
@@ -926,16 +926,16 @@ mob/verb/yank_out_object()
/mob/verb/respawn()
set name = "Respawn as Mindless"
set name = "Respawn as NPC"
set category = "OOC"
if((usr in respawnable_list) && (stat==2 || istype(usr,/mob/dead/observer)))
var/list/creatures = list("Mouse")
for(var/mob/living/simple_animal/S in living_mob_list)
if(safe_animal_respawn(S.type))
if(!S.key)
creatures += S
var/picked = input("Please select a creature to respawn as", "Respawn as Mindless Creature") as null|anything in creatures
for(var/mob/living/L in living_mob_list)
if(safe_respawn(L.type))
if(!L.key)
creatures += L
var/picked = input("Please select an NPC to respawn as", "Respawn as NPC") as null|anything in creatures
switch(picked)
if("Mouse")
respawnable_list -= usr
@@ -943,10 +943,10 @@ mob/verb/yank_out_object()
spawn(5)
respawnable_list += usr
else
var/mob/living/simple_animal/picked_animal = picked
if(istype(picked_animal) && !picked_animal.key)
var/mob/living/NPC = picked
if(istype(NPC) && !NPC.key)
respawnable_list -= usr
picked_animal.key = key
NPC.key = key
spawn(5)
respawnable_list += usr
else
+9 -4
View File
@@ -382,12 +382,12 @@
return 0
/mob/proc/safe_animal_respawn(var/MP)
/mob/proc/safe_respawn(var/MP)
//Bad mobs! - Remember to add a comment explaining what's wrong with the mob
if(!MP)
return 0 //Sanity, this should never happen.
//Good mobs!
//Animals!
if(ispath(MP, /mob/living/simple_animal/cat))
return 1
if(ispath(MP, /mob/living/simple_animal/corgi))
@@ -402,12 +402,17 @@
return 1
if(ispath(MP, /mob/living/simple_animal/pony))
return 1
//Antag Creatures!
if(ispath(MP, /mob/living/simple_animal/hostile/carp))
return 1
if(ispath(MP, /mob/living/simple_animal/hostile/bear))
return 1
if(ispath(MP, /mob/living/simple_animal/hostile/giant_spider))
return 1
if(ispath(MP, /mob/living/simple_animal/borer))
return 1
if(ispath(MP, /mob/living/carbon/alien))
return 1
//Not in here? Must be untested!
return 0