Сейчас 10:51:41 Пятница, 29 ноября, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Запрет на атаку
japoneskoДата: Пятница, 02 Августа 2013, 01:34:12 | Сообщение # 1
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Подскажите как сделать чтобы моб, находящийся на уровень выше(в смысле уровень рельефа) не агрился на юнитов стоящих ниже уровня моба
 

NaturekidДата: Пятница, 02 Августа 2013, 08:40:31 | Сообщение # 2
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Меняй aquistion range

Добавлено (02 Августа 2013, 08:40:31)
---------------------------------------------
или просто давай приказ держать позици, если юнит на другом этаже


 

japoneskoДата: Пятница, 02 Августа 2013, 10:36:04 | Сообщение # 3
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Цитата (Naturekid)
или просто давай приказ держать позици, если юнит на другом этаже

как проверять этаж?
я думал области повыставлять на все этажи, создать массив всех имеющихся этажей, тоесть floor1[..], дальше floor2[..] и floor3[..] (больше этажей делать не собирался)
но карта 256х256, так что с областями как-то нерационально
 

NaturekidДата: Пятница, 02 Августа 2013, 10:51:45 | Сообщение # 4
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
ща напишу

Добавлено (02 Августа 2013, 10:41:23)
---------------------------------------------
Допустим Z - переменная для высоты юнита
Po - точка-позиция этого юнита
пишем custom script
set udg_Z=GetLocationZ(udg_Po)

Добавлено (02 Августа 2013, 10:51:45)
---------------------------------------------
вот только с событием небольшая загвоздка
если поставить событие "обнаруил противника в зоне досягаемости" то оно у воинов ближнего боя только при подходе врага вплотную сработает.
Придётся периодическое событие ставить.


 

japoneskoДата: Пятница, 02 Августа 2013, 10:58:12 | Сообщение # 5
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Цитата (Naturekid)
вот только с событием небольшая загвоздка
если поставить событие "обнаруил противника в зоне досягаемости" то оно у воинов ближнего боя только при подходе врага вплотную сработает.
Придётся периодическое событие ставить.

а событие атаки не подойдет разве?
 

NaturekidДата: Пятница, 02 Августа 2013, 11:02:35 | Сообщение # 6
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
лол , тебе нужно, чтобы не агрились или чтобы не атаковали? это не одно и то же

 

japoneskoДата: Пятница, 02 Августа 2013, 11:13:00 | Сообщение # 7
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Цитата (Naturekid)
лол , тебе нужно, чтобы не агрились или чтобы не атаковали? это не одно и то же

Агр- Агрессивный моб, который нападает сам при приближении к нему игрока
Перед ударом моб же дает приказ атаки, так что агр можно и через событие атаки проверить
как я понял нужно присавивать переменной Zattacked высоту атакованного юнита
Zattacking - высоту атакующего юнита, и если Zattacked-Zattacking>100 то отставить
 

NaturekidДата: Пятница, 02 Августа 2013, 11:19:47 | Сообщение # 8
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Цитата (japonesko)
Zattacked-Zattacking>100

да даже если просто они не равны
хотя лучше да пусть будет 100, Z учитывает также плавные подъёмы.
Ну если тебе этого достаточно то ок.
Хотя лучше сделать - математика - abs(Zattacked-Zattacking)>100

я думал тебе надо:
стоит юнит на скале
мимо пробегает юнит
первый агрится и начинает пытаться преследовать второго
и ты хотел избавиться от этого преследования
Ну а раз нет, то через событие атаки вполне подойдёт.


 

japoneskoДата: Пятница, 02 Августа 2013, 11:24:22 | Сообщение # 9
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Цитата (Naturekid)
я думал тебе надо:
стоит юнит на скале
мимо пробегает юнит
первый агрится и начинает пытаться преследовать второго
и ты хотел избавиться от этого преследования
Ну а раз нет, то через событие атаки вполне подойдёт.

он не будет преследовать его, так как 1 юнит преследует 2 юнита только из-за атаки
 

NaturekidДата: Пятница, 02 Августа 2013, 11:32:17 | Сообщение # 10
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
да ты что

 

ExtrematorДата: Пятница, 02 Августа 2013, 12:12:46 | Сообщение # 11
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
События
- Боевая единица - юнит атакован

Условия
-

Действия
- set P1 = позиция атакующего
- set P2 = позиция атакованного
- Если
- - Сравнение целых чисел - высота ландшафта в точке P1 больше чем высота ландшафта в точке P2
- То
- - Боевая единица - отдать приказ без цели - атакующий юнит, стоп
- CS: call RemoveLocation(udg_P1)
- CS: call RemoveLocation(udg_P2)
 

japoneskoДата: Пятница, 02 Августа 2013, 12:15:26 | Сообщение # 12
4 уровень
Группа: Пользователи
Сообщений: 86
Награды: 0
Репутация: 8
Блокировки:
Цитата (Extremator)
События
- Боевая единица - юнит атакован

Условия
-

Действия
- set P1 = позиция атакующего
- set P2 = позиция атакованного
- Если
- - Сравнение целых чисел - высота ландшафта в точке P1 больше чем высота ландшафта в точке P2
- То
- - Боевая единица - отдать приказ без цели - атакующий юнит, стоп
- CS: call RemoveLocation(udg_P1)
- CS: call RemoveLocation(udg_P2)

триггер для идеально ровного ланда
 

NaturekidДата: Пятница, 02 Августа 2013, 12:16:27 | Сообщение # 13
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
Цитата (Extremator)
больше

а если меньше? trollface


 

ExtrematorДата: Пятница, 02 Августа 2013, 12:26:04 | Сообщение # 14
10 уровень
Группа: Проверенные
Сообщений: 3199
Награды: 0
Репутация: 1018
Блокировки:
Цитата (japonesko)
триггер для идеально ровного ланда
здесь имеется ввиду уровень КЛИФа
это разница между высотами ланда, которые регулируются кнопками "на уровень вверх" и "на уровень вниз" в редакторе

Цитата (Naturekid)
а если меньше?
Ну в 1м посте написано только что бы выше стоящий не мог стрелять в ниже стоящего
а вообще можо сделать "не равно", тогда если у юнитов есть разница в клифах под их ногами - они не смогут друг друга бить
 

NaturekidДата: Пятница, 02 Августа 2013, 12:36:39 | Сообщение # 15
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
ну дя
вообщем то о чем я уже писал ._.


 

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

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