в ловушку не сложно...
один из вариантов:
в нпц делаем провеку если он попал по координатам ловушки то он самоуничтожается. это без скрипта.

вариант посложнее:
каждому нпц присваиваем личную переменную с жизнями, номер которой равен номеру события нпц.
в нпц прописываем проверку - если значение переменной <= 0 то нпц мёртв.
для ловушки делаем событие: сканируем тайл ловушки на ID события. вычитаем из переменной номер которой соответствует номеру ID некоторое количество единиц...
всех враждебных нпц создаём подряд чтобы номера их событий были выше определённого номера.
в собаке делаем скан ID событий на соседних тайлах. если ID равен или больше того номера с которого начинаются враждебные нпц - анимация кусания а из переменной равной номеру ID вычитаем какое то число...

а вообще такое наверное проще скриптом сделать.