Page 1 of 2
					
				отбегалка )))
				Posted: 28.05.2011 22:42
				by Tiger89
				как реализовать скрипт чтобы отбегал от цели допустим клеток на 5 и стрелял из лука, причем нужна траектория такая чтобы можно было кастовать и стрелять из лука, задача очень сложная на мой взгляд
			 
			
					
				
				Posted: 30.05.2011 11:24
				by Venom
				Для начала, ты должен для себя определить, куда ты хочешь отбежать ?
			 
			
					
				
				Posted: 30.05.2011 12:23
				by MuDaCk
				Venom wrote:Для начала, ты должен для себя определить, куда ты хочешь отбежать ?
Массовые эмиграции))))) 

 
			 
			
					
				
				Posted: 30.05.2011 13:29
				by Fenix
				Задача действительно очень сложная. В этом случае впору искуственный интелект писать, что бы определял в каких направлениях тактически правильно отступать. Проверка возможности выстрела в простейшем случае может решаться по определению тайлов, по которым должна лететь стрела, а затем проверкой каждого из тайлов на наличие каких-либо препятствий.
			 
			
					
				
				Posted: 30.05.2011 16:17
				by Vizit0r
				я уже в асе писал, что на сфере проверка LOS очень простая - всего лишь проверка на дальность и на Z.
это не проверки на ПОЛе и РанУО, где функции по определению LOS занимают страниц по 5-7, без ящика водки не разобраться
			 
			
					
				
				Posted: 01.06.2011 17:35
				by Tiger89
				Venom wrote:Для начала, ты должен для себя определить, куда ты хочешь отбежать ?
В любом направлении на n количество тайлов. Мне думается, надо написать проверку которая нашла бы точку в пяти клетках от цели из которой возможно стрелять, а потом из возможных вариантов выбрать ближний, но это слишком сложно думаю у вас есть идея проще.
Дело будет в лесу среди деревьев, на всякий говорю.
 
			 
			
					
				
				Posted: 01.06.2011 17:42
				by Tiger89
				И вот, ещё каким образом будете проводить проверку на препятствие?
			 
			
					
				
				Posted: 01.06.2011 18:36
				by Scripts Writer
				Tiger89 wrote:Venom wrote:Для начала, ты должен для себя определить, куда ты хочешь отбежать ?
В любом направлении на n количество тайлов. Мне думается, надо написать проверку которая нашла бы точку в пяти клетках от цели из которой возможно стрелять, а потом из возможных вариантов выбрать ближний, но это слишком сложно думаю у вас есть идея проще.
Дело будет в лесу среди деревьев, на всякий говорю.
 
Направление бега надо принимать:
1. По направлению взгляда цели, если она тебя преследует
2. В сторону, противоположную взгляду цели, если она стоит мирно
Это наверно очевидно.
Если задача состоит исключительно из поиска без каких-либо действий движения/атаки, исходя из которых можно было бы делать выводы о проходимости/видимости, то не знаю как это можно сделать.
 
			 
			
					
				
				Posted: 01.06.2011 19:01
				by Vizit0r
				я бы не взялся писать хорошую, правильную отбегалку, ну его нафиг 

 
			 
			
					
				
				Posted: 01.06.2011 22:59
				by Tiger89
				Scripts Writer wrote:Tiger89 wrote:Venom wrote:Для начала, ты должен для себя определить, куда ты хочешь отбежать ?
В любом направлении на n количество тайлов. Мне думается, надо написать проверку которая нашла бы точку в пяти клетках от цели из которой возможно стрелять, а потом из возможных вариантов выбрать ближний, но это слишком сложно думаю у вас есть идея проще.
Дело будет в лесу среди деревьев, на всякий говорю.
 
Направление бега надо принимать:
1. По направлению взгляда цели, если она тебя преследует
2. В сторону, противоположную взгляду цели, если она стоит мирно
Это наверно очевидно.
Если задача состоит исключительно из поиска без каких-либо действий движения/атаки, исходя из которых можно было бы делать выводы о проходимости/видимости, то не знаю как это можно сделать.
 
Да нет, в данном случае цель слишком "вялая" для такой штуки, передвигается очень медленно, так что не надо учитывать это.
Просто надо отойти в любую сторону от цели на n количество тайлов, думаю 5 тайлов будет самый раз.
 
			 
			
					
				
				Posted: 01.06.2011 23:00
				by Tiger89
				Vizit0r wrote:я бы не взялся писать хорошую, правильную отбегалку, ну его нафиг 

 
А ты напиши хоть какую, думаю для моей цели подойдет.
 
			 
			
					
				
				Posted: 01.06.2011 23:01
				by Vizit0r
				мысли для "хоть какой" тебе уже озвучили выше, действуй.
			 
			
					
				
				Posted: 01.06.2011 23:11
				by Tiger89
				Vizit0r wrote:мысли для "хоть какой" тебе уже озвучили выше, действуй.
Я не знаю каким образом проверять тайл на наличие препятсвий
 
			 
			
					
				
				Posted: 01.06.2011 23:22
				by Vizit0r
				проходимость точки относительно исходной (соседней):
1) есть слой с Z, отличающейся от исходной не больше чем на 16, который проходим - нет флагов Impassible и Wall, зато возможно есть флаг Surface или Bridge.
2) любые другие слои, которые запрещены для прохода - отличаются от проходимого слоя по координате Z больше чем на 16.
в некоторых эмуляторах вместо 16 стоит 18, но это несущественно - ведь все в клиенте заточено под 20  

на вопросы типа "как определить слой" или "как опредилть его флаги" не отвечаю, все уже давно описано.
P.S. Зачем я то все пишу? ведь есть функция IsWorldCellPassable
 
			 
			
					
				
				Posted: 02.06.2011 10:03
				by Tiger89