Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
			
			 
			
				ElfbI, не обещаю, но если получится на этой неделе, то в обновление может войти команда для установки описаний монстрам без привязки к глобальным переменным. 
 
1. Да, безопаснее всего использовать y+ переменные. y- — глобальные. Одни триггеры их сохраняют и восстанавливают, другие — нет. 
2. Переменные вида v9000, если используются только одним скриптом и в одних целях, то не беда. Если же используются временные (v1..v10, v600..) переменные или одна и та же переменная в разных событиях для разных целей, то может быть беда: 
 
2а) v1 используется как результат любых SN:E команд 
2б) Событие OnKeyPressed (77003, afair) может возникать в любом диалоге, даже в IF:M. Код вида: 
 
!!VRv600:S100; 
!!IF:M^%V600^; 
!!IF&v600=100:M^OK^; 
 
не сработает, если есть триггер где-то: 
!?FU(OnKeyPressed); 
!!SN:X?v600; 
 
и окошко закрыто нажатием ENTER. 
 
2в) Событие !?TL возникает каждую секунду и может изменять глобальные общие переменные 
2г) Событие !?MP генерируется любым вызовом !!MP:P 
2д) Глобальные переменные с фиксированными индексами могут быть использованы авторами других скриптов. SN:W с уникальным префиксом снижает вероятность такого события.
			 
			
			
  
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов 
Поддержать проект 
			
		 |  
	 
 | 
	| 14.08.2019 23:10 | 
	
		
	 | 
	
		
		ElfbI 
 
 
		
		
		
			
			
			
 
 
			
Posts: 325 
	
		
	 | 
	
		
			
			 
			
				Berserker, вам бы памятник, вот честно   
Глобальными y- пользуюсь аккуратно, но чувствую, лучше не стоит) 
Про пересечение переменных я знаю, пользуюсь списками в эре и в справке к ерм (ну плюс список своих, конечно). А вот времянки в духе вашего примера, особенно v1, это беда(
 
В общем, спасибо за объяснение, теперь буду подчищать код, а то меня аж пот прошибает от того, какая каша может быть.
			  
			
			
  
The dreams you kill will break your heart
			
		 |  
	 
 | 
	| 14.08.2019 23:34 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 15.08.2019 00:46 | 
	
		
	 | 
	
		
		slater777 
 
 
		
		
		
			
			
			 
			
Posts: 136 
	
		
	 | 
	
		
			
			 
			
				У кого-нибудь остался скрипт "опция 007 (встроенная): накопление существ во внешних жилищах"?
			 
			
			
			
		 |  
	 
 | 
	| 15.08.2019 23:18 | 
	
		
	 | 
	
		
		ElfbI 
 
 
		
		
		
			
			
			
 
 
			
Posts: 325 
	
		
	 | 
	
		
			
			 
			
				slater777, разве встроенные скрипты можно вытащить как-то? Мне бы пригодился этот способ. Возможно проще память поковырять...
			 
			
			
  
The dreams you kill will break your heart
			
		 |  
	 
 | 
	| 16.08.2019 00:33 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.08.2019 01:13 | 
	
		
	 | 
	
		
		slater777 
 
 
		
		
		
			
			
			 
			
Posts: 136 
	
		
	 | 
	
		
			
			 
			
				ElfbI, ну он же не всегда был встроенным? Возможно, у кого-то остался старый erm-аналог, или его в природе не существует?
			 
			
			
			
				
(This post was last modified: 16.08.2019 08:39 by slater777.)
 
			 
		 |  
	 
 | 
	| 16.08.2019 08:38 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.08.2019 14:12 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.08.2019 18:06 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.08.2019 20:41 | 
	
		
	 | 
	
		
		ElfbI 
 
 
		
		
		
			
			
			
 
 
			
Posts: 325 
	
		
	 | 
	
		
			
			 
			
				   Хм, тут такой вопрос. Есть скрипт, который размещает на воде сундуки по таймеру. Он каждый день считает кол-во свободных клеток, проверяет их на почву, затем на проходимость, затем получает координаты.     Может ли быть алгоритм, который позволит один раз посчитать клетки с водой, а затем работать с уже сохраненным массивом, проверяя ячейки только из его состава на проходимость? А то каждый день обрабатывать тысячи клеток, еще и для нескольких игроков, это такое себе.    Допустим есть 25 клеток с водой, разбросанных по карте. Как можно обращаться именно к ним, не используя извраты с РО?      Готовое решение не прошу, намекните, в какую сторону воевать...
			 
			
			
  
The dreams you kill will break your heart
			
		 |  
	 
 | 
	| 17.08.2019 15:24 | 
	
		
	 |