!#TM1 : S8/999/7/1;Устанавливаем таймер на каждый 1 день.
!?PI;В начале игры.
UN : X?y-1/?y-2;Считываем размер карты.
!!DO11/1/y-1/1 : Py-1/y-2/0;Вызываем цикл, устанавливающий PO-типы объектов.
!?TM1;Каждый 1 день...
!!UN : X?y-1/?y-2;Считываем размер карты.
!!DO11/0/y-2/1 : Py-1/y-2/1;Вызываем цикл, проверяющий карту на новых монстров и работающий с ними.
!?BA0;В начале битвы...
!!BA : P?v11/?v12/?v13;Получаем координаты атакованного.
!?BA1;В конце битвы...
!!POv11/v12/v13 : T0;Сбрасываем PO-тип объекта в этой точке.
;Функции установки PO-объектов и проверки монстров в одной вертикали на всех уровнях карты.
!?FU11;Функция прохода по вертикали карты.
!!DO12/1/x1/1 : Px2/x16/x3;Вызываем цикл, проходящий по вертикали карты.
!?FU12;Функция прохода по уровням в одной и той же координате карты и выбора установки или проверки.
!!DO13/0/x1/1&x3=0 : Px2/x16;Вызываем цикл установки клеток на разных уровнях в одной и той же координате карты.
!!DO14/0/x1/1&x3=1 : Px2/x16;Вызываем цикл проверки клеток на разных уровнях в одной и той же координате карты.
!!FU13;Функция установки клетки карты.
!!TRx1/x2/x16 : E?y1;Проверяем, нет ли объекта на клетке карты.
!!POx1/x2/x16&y1=1 : T0;Если на клетке карты нет объекта, сбрасываем PO-тип объекта.
!!FU&y1=1 : E;Если на клетке карты нет объекта, завершаем функцию.
!!OBx1/x2/x16 : T?y1;Проверяем тип объекта.
!!POx1/x2/x16 : Ty1;Устанавливаем PO-тип объекта.
!!FU14;Функции проверки клетки карты на монстров.
!!POx1/x2/x16 : T?y1;Проверяем PO-тип объекта на клетке карты.
!!FU&y1=54 : E;Если PO-тип объекта - монстр, завершаем функцию.
!!TRx1/x2/x16 : E?y1;Проверяем, нет ли объекта на клетке карты.
!!FU&y1=1 : E;Если на клетке карты нет объекта, завершаем функцию.
!!OBx1/x2/x16 : U?y1;Считываем номер монстра.
!!MA : Ly1/?y2;Считываем уровень монстра.
!!VRy3&y2=0 : S80;Если монстры - 1 уровня, устанавливаем переменную их количества.
!!VRy3&y2=0 : R20;Если монстры - 1 уровня, добавляем к переменной их количества случайное число.
!!VRy3&y2=1 : S70;Если монстры - 2 уровня, устанавливаем переменную их количества.
!!VRy3&y2=1 : R20;Если монстры - 1 уровня, добавляем к переменной их количества случайное число.
!!MOx1/x2/x16&y2=0|y2=1 : Gy3;Устанавливаем количество монстров.
!!POx1/x2/x16 : T54;Устанавливаем PO-тии объекта на клетке карты.
Не гарантирую, что сработает. Может тормозить игру. При постановке или удлении объекта надо установить PO-тип объекта на номер поставленного объекта или сбросить его в 0 с помощью PO : T.