Jack_of_shadowsOrnsteinDragonslayer, код настолько неверен, что даже непонятно с какой стороны объяснить. Начать надо с того, что игра в ошибке прямо указывает в какой функции она произошла и какая переменная ей не понравилась. В приведённом коде их нет, это значит что ошибка произошла в другой части боевого скрипта. По остальному рекомендую посмотреть мануал Новика, особенно про боевые хуки.
Ну, я с комбатскриптами на Вы, потому просто взял и скопировал всё выше, добавив просто определители существ. А мануал был бы полезен, но где найти его? Гугл молчит, на форуме человека с ником Novik нету (вроде так пишется, да? только это нашёл в гугле). В общих мануалах геройских нет. Буду признателен, если покажете на всеобщее обозрение.