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: 16788 
	
		
	 | 
	
		
			
			 
			
				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: 5453 
	
		
	 | 
	
		
			
			 
			
				Спасибо за советы. 
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: 5453 
	
		
	 | 
	
		
			
			 
			
				заметка по 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: 5453 
	
		
	 | 
	
		
			
			 
			
				 (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 | 
	
		
	 |