etoprostoya
Posts: 1809
|
(22.03.2010 18:32)Bes Wrote: Quote:Было бы замечательно, если бы возможность проверить запреты на строительство здания в городе также была реализована.
Размечтался, да?
Хм.. не помню,здесь это работает или нет?
Quote:New command CD:B Syntax: B0/town/struct/ENdis - global enable/disable structure
Details: B0/#1/#2/$; Enable/disable #2 structure to build in any towns of #1 type. $ - flag (0=disabled, 1=enabled).
Тут ведь только установка, а не проверка? Добавлено:
Это вопрос скорее не к Bes'у, а к команде ВоГа и ТЕ.
(This post was last modified: 22.03.2010 18:42 by etoprostoya.)
|
|
22.03.2010 18:41 |
|
Berserker
Posts: 16657
|
Bes, зачем тебе дефрагментация? Она автоматом при щелчке на кнопку прокрутки влево. Удаление арта корректное есть в коде Феникса. А алгоритмов дефрагментации основных два:
1) До тех пор, пока поиск пустого слота не вернёт ошибку определяем размер сплошного блока за пустым местом (не слотом!) и переносим его влево к сплошному ряду.
2) Проходимся в цикле по всем слотам, при этом Left указывает на текущую левую границу сплошного ряда артефактов, а i - на индекс слота (0..63). Если очередной слот не пустой, то A[Left]:=A[i]; A[i]:=-1; Left++; Иными словами, если слот не пустой, то массив артов в индексе Left получает значение арта массива в индексе i. А слот, на который указывает i обнуляется (или -1 забивается, что вернее).
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
|
|
22.03.2010 19:48 |
|
gamecreator
Posts: 7107
|
|
22.03.2010 20:35 |
|
Bes
Posts: 5422
|
Спасибо за советы.
1. Удаление арта корректное в коде ФМ конечно есть, но вот в чём проблема - там удаляет первый попавшийся такой арт в рюкзаке, что весьма неподходяще в случе когда нам надо удалить второй такой же арт дальше по цепочке.. в итоге у нас не закроется "прогал" в середине рюкзака, а появится ещё один но только ранее (в уже отдефрагментированной части)
2. Я благодарен за столь продуманные алгоритмы, но, к сожалению, не имея знаний в программировании, мне весьма размыто представляется что стоит за словами "блок", "ряд" и что подразумевается под "перенос блока". Хотя бы приведите маленький пример адаптированный под "парадигмы ЕРМ", ну скажем на таком примере: в рюкзаке 2 артa..
[ -1][ -1][ 12][ 45][ -1]
|
|
23.03.2010 12:34 |
|
gamecreator
Posts: 7107
|
|
23.03.2010 19:27 |
|
Harvester
Posts: 20
|
У меня не совсем корректно работает код:
Code:
!#HE152:X6/138/139/143;
!#UN:G2/152/1/245G2/152/2/245G2/152/3/245;
Должно быть:
Специальность — апгрейд крестьян и хальфлингов до воров. Картинка специальности — изображение вора, и соответствующий текст.
Получается только картинка. Описание старое. Апгрейд не работает.
Как можно добиться желаемого?
|
|
12.04.2010 13:00 |
|
Bes
Posts: 5422
|
заметка по UN:G2/$/2/#;
Здесь надо в третьем параметре указывать номер z-переменной с описанием, а не номер картинки
P.S.: а что такое UN:G2/$/1/# ???
(This post was last modified: 13.04.2010 13:10 by Bes.)
|
|
13.04.2010 13:07 |
|
Harvester
Posts: 20
|
(13.04.2010 13:07)Bes Wrote: заметка по UN:G2/$/2/#;
Здесь надо в третьем параметре указывать номер z-переменной с описанием, а не номер картинки
Я думал, описание стандартное генерируется. Или здесь нужно сначала обьявить переменную, присвоить ей текст, а потом использовать?
(13.04.2010 13:07)Bes Wrote: P.S.: а что такое UN:G2/$/1/# ???
Это замена картинки специализации. Вроде работает.
У меня подозрение, что просто конфликтует с встроенными скриптами вогификации, и в итоге получается первоначальное значение
|
|
13.04.2010 17:09 |
|
Bes
Posts: 5422
|
(13.04.2010 17:09)Harvester Wrote: Я думал, описание стандартное генерируется. Или здесь нужно сначала обьявить переменную, присвоить ей текст, а потом использовать?
Я не про то..
Вот, вы пишите..
Quote:У меня не совсем корректно работает код:
Код:
!#UN:G2/152/2/245;
А теперь смотрим справку:
Quote:G2/#1/#2/#3;
#3- is z-variable index (0 to restore) if #2=2
А вы там используете, видимо, номер картинки 245..
Назначте свою, неиспользуемую в стандартных скриптах, z-переменную (к примеру, z850)..
P.S.: насчёт вашего позозрения - а вы назначьте смену спецухи не через инструкции, а, например в теле триггера !?PI
|
|
13.04.2010 22:39 |
|
Harvester
Posts: 20
|
(13.04.2010 22:39)Bes Wrote: ...
Назначте свою, неиспользуемую в стандартных скриптах, z-переменную (к примеру, z850)..
Заработало, правда, ради этого пришлось отключить вогификацию. Хотелось чтобы были доступны все опции вогификации, только с некоторыми изменениями. Может кто что уже придумал?
(13.04.2010 22:39)Bes Wrote: ...
P.S.: насчёт вашего позозрения - а вы назначьте смену спецухи не через инструкции, а, например в теле триггера !?PI
Не могу сообразить, как его использовать
(16.04.2010 19:44)etoprostoya Wrote: Может фильтрует в "Спам? Или это так форум работает
Форум как-будто услышал мои слова. Сразу посыпались сообщения.
(This post was last modified: 19.04.2010 14:27 by Harvester.)
|
|
19.04.2010 14:26 |
|
DracoLich
Posts: 251
|
!?PI;
!!HE152:X6/138/139/143;
!!UN:G2/152/1/245 G2/152/2/245 G2/152/3/245; -???
что за параметр 1
2 это текст
3 это картинка
|
|
20.04.2010 08:49 |
|
Harvester
Posts: 20
|
DracoLich, спасибо, проверю.
Я то пытался записать команду в одну строчку
|
|
20.04.2010 10:23 |
|
DracoLich
Posts: 251
|
ну, если имеешь в виду именно команды (т.е. UN:G2/152/1/245G2/152/2/245G2/152/3/245; то это ничего страшного. Парсер позволяет даже конструкции нечитабельного вида !!UNG2/152/1/245G2/152/2/245G2/152/3/245). А вот мешать ресиверы друг с другом естесственно не надо
|
|
20.04.2010 13:04 |
|
Harvester
Posts: 20
|
(20.04.2010 08:49)DracoLich Wrote: !?PI;
!!HE152:X6/138/139/143;
!!UN:G2/152/1/245 G2/152/2/245 G2/152/3/245; -???
...
Работает, но ограничено, вот код:
Code:
!?PI;
!!VRz850:S^Sir Roland can upgrade peasants to rogues^;
!!UN:G2/152/1/245G2/152/2/z850G2/152/3/245;
!!HE152:X6/138/139/143;
В начале игры запускается вогификация. Новый текст не появляется.
Апгрейд работает, но после второй битвы пропадает.
Думаю, может исходные скрипты править, но дело это неблагодарное
|
|
21.04.2010 13:28 |
|