Сейчас 02:47:18 Суббота, 23 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Юнит застрял в рельефе
Q1wAseДата: Вторник, 30 Апреля 2013, 22:46:31 | Сообщение # 1
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Ну бывает такое что юнит застревает из-за триггеров которые двигали его. Вопрос - Как это проверить? Чтобы вытолкнуть этого юнита оттуда?

 

NaturekidДата: Вторник, 30 Апреля 2013, 22:51:32 | Сообщение # 2
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
не парься и введи команду -unstuck
при вводе юнит паузится на 30 сек после чего переносится близко к своей базе.

а так логическое - terrain pathing of typ ходьба - проверять вокруг


 

Q1wAseДата: Вторник, 30 Апреля 2013, 23:14:14 | Сообщение # 3
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Naturekid)
не парься и введи команду -unstuck
при вводе юнит паузится на 30 сек после чего переносится близко к своей базе.

а так логическое - terrain pathing of typ ходьба - проверять вокруг

Фигасе не парься. У меня ИИ застревает.. Вот думаю как доработать спеллы.


 

DaroДата: Вторник, 30 Апреля 2013, 23:20:18 | Сообщение # 4
6 уровень
Группа: Проверенные
Сообщений: 217
Награды: 0
Репутация: 105
Блокировки:
Простой вариант нарисовать обл и когда войдет двигать -100 к повороту,криво но будет тормазить или просто куданить двиг

 

NaturekidДата: Вторник, 30 Апреля 2013, 23:29:39 | Сообщение # 5
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Цитата (Q1wAse)
Вот думаю как доработать спеллы

какие именно?

Добавлено (30 Апреля 2013, 23:29:39)
---------------------------------------------
можно сделать если приказ юнита равен атаковать или двигаться, но позиция юнита не менялась с прошлых 3 сек - значит застрял.


 

Q1wAseДата: Среда, 01 Мая 2013, 11:55:59 | Сообщение # 6
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Naturekid)
но позиция юнита не менялась с прошлых 3 сек

как реализовать это?
Как в триггерах сделать чтобы было ясно что он застрял?


 

Wc3MapmakerДата: Среда, 01 Мая 2013, 14:43:12 | Сообщение # 7
3 уровень
Группа: Проверенные
Сообщений: 47
Награды: 0
Репутация: 31
Блокировки:
Каждые 3 сек, установить переменную ТОЧКА как позиция ИИ, в этом триге if/then/else если расстояние между точками = 0 то твои действия, ...
 

Q1wAseДата: Среда, 01 Мая 2013, 15:31:06 | Сообщение # 8
Группа: Проверенные
Сообщений: 1235
Награды: 0
Репутация: 286
Блокировки:
Цитата (Wc3Mapmaker)
Каждые 3 сек, установить переменную ТОЧКА как позиция ИИ, в этом триге if/then/else если расстояние между точками = 0 то твои действия, ...

Не знаю как сделать не утечно.


 

NaturekidДата: Четверг, 02 Мая 2013, 14:24:00 | Сообщение # 9
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Цитата (Q1wAse)
Не знаю как сделать не утечно.

Lastpoint[]
Curpoint[]

1 раз - тут ты делаешь условие или выносишь как-нибудь, ведь вначале прошлая и текущая точка равны, а значит может выдать, что на месте стоят.
set curtpoint[1]=position of unit[1]

2 раз
call removelocation udg_Lastpoint[1]
set lastpoint[1]=curpoint[1]
set curtpoint[1]=position of unit[1]
if distance (lastpoint[1]and curpoint[1])<100
"стоят на месте"

3 раз
call removelocation udg_Lastpoint[1]
set lastpoint[1]=curpoint[1]
set curtpoint[1]=position of unit[1]
if distance (lastpoint[1]and curpoint[1])<100
"стоят на месте"

Добавлено (02 Мая 2013, 14:24:00)
---------------------------------------------
ну как?


 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz