Mousetrap, mouse and spawning fixes (#1497)

Adjusts mousetraps a bit. So they'll be triggered by all mobs instead of only humans, and trigger when walked on. Also nerfs the instastun that comes from stepping on them without shoes, because that's pretty broken against giant monsters like vaurca breeders. applies halloss instead based on mob size. Smaller things get hurt more.

Fixes #1445 
Fixes #1449 
Fixes #1450
This commit is contained in:
NanakoAC
2017-01-11 20:40:30 +00:00
committed by skull132
parent 3cf94c66fc
commit 64df4907df
12 changed files with 107 additions and 53 deletions
+3 -3
View File
@@ -21,7 +21,7 @@ var/list/ghost_traps
/datum/ghosttrap
var/object = "positronic brain"
var/minutes_since_death = 0 // If non-zero the ghost must have been dead for this many minutes to be allowed to spawn
var/respawn_check = 0//Which respawning test we check against
var/list/ban_checks = list("AI","Cyborg")
var/pref_check = BE_SYNTH
var/ghost_trap_message = "They are occupying a positronic brain now."
@@ -37,7 +37,7 @@ var/list/ghost_traps
// Check for bans, proper atom types, etc.
/datum/ghosttrap/proc/assess_candidate(var/mob/dead/observer/candidate, var/mob/target)
if(!candidate.MayRespawn(1, minutes_since_death))
if(!candidate.MayRespawn(1, respawn_check))
return 0
if(islist(ban_checks))
for(var/bantype in ban_checks)
@@ -174,7 +174,7 @@ var/list/ghost_traps
list_as_special_role = FALSE
/datum/ghosttrap/drone/New()
minutes_since_death = DRONE_SPAWN_DELAY
respawn_check = MINISYNTH
..()
datum/ghosttrap/drone/assess_candidate(var/mob/dead/observer/candidate, var/mob/target)