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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Bru  
Форум о Warcraft 3 » Прочее » Отвал » Есть вопросы по триггерам!
Есть вопросы по триггерам!
BlizzarderДата: Вторник, 14 Июля 2009, 14:47:05 | Сообщение # 1
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
Вопрос мб и тупой, но у меня почему-то не выходит!
Я попытался сделать так, чтобы по истечении таймера проверяло юнита, который стоит в области в это время. И чтобы в зависимости от команды владельца этого юнита играло разные звуки. Я сделал так:

События
(Мой таймер) expires
Условия
Действия
If(((Entering unit) owner) is ally of (Игрок 1 (Красный))) then do (Play (Мой звук для красных)) else do (Play (Мой звук для синих))

При тесте карты по истечении таймера играет только звук для синих, даже если в области находится юнит красных. Что я сделал не так?

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

Также не понял, как поставить таймер на паузу, если в области больше одного работника. И в случае смерти одного из них - таймер возобновлялся.

 

ceriler1Дата: Вторник, 14 Июля 2009, 14:59:06 | Сообщение # 2
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
ты не забыл указать альянс к примеру 3-его игрока с 1 игроком (взаимный альянс)?

раз у тебя играет звук для синих - даже тогда когда 1 игрок само лично вступает в регион - тогда создай условие (если тебе надо чтобы даже при истечении таймера играл звук для красных когда там красный):

If(((Entering unit) owner) is (Игрок 1 (Красный))) then do (Play (Мой звук для красных)) else do If(((Entering unit) owner) is ally of (Игрок 1 (Красный))) then do (Play (Мой звук для красных)) else do (Play (Мой звук для синих))

Quote (Blizzarder)
Также не понял, как поставить таймер на паузу, если в области больше одного работника. И в случае смерти одного из них - таймер возобновлялся.

а что, если работника там 4 - одного убили таймер возобновился и потом вновь остановился чтоли? (остановиться т.к. работника в регионе больше 1 всё ещё будет)



____________Segara____________
 

BlizzarderДата: Вторник, 14 Июля 2009, 15:02:21 | Сообщение # 3
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
Quote (ceriler1)
а что, если работника там 4 - одного убили таймер возобновился и потом вновь остановился чтоли? (остановиться т.к. работника в регионе больше 1 всё ещё будет)

На мапе только 2 рабочих.
Quote (ceriler1)
If(((Entering unit) owner) is (Игрок 1 (Красный))) then do (Play (Мой звук для красных)) else do If(((Entering unit) owner) is ally of (Игрок 1 (Красный))) then do (Play (Мой звук для красных)) else do (Play (Мой звук для синих))

Попробую. Но меня интересует больше вопрос
Quote (Blizzarder)
как сделать так, чтобы проверяло, кто по истечении таймера стоит в области. И команде, за которую играет этот юнит, начислялось очко?
 

ceriler1Дата: Вторник, 14 Июля 2009, 15:06:04 | Сообщение # 4
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
в область может попасть - не рабочий? другой тип воина и т.д.? или только рабочие там?


____________Segara____________
 

BlizzarderДата: Вторник, 14 Июля 2009, 15:16:17 | Сообщение # 5
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
Я говорю, что ЕСЛИ в область попадёт рабочий - ведь на карте ещё и герои :)
 

ceriler1Дата: Вторник, 14 Июля 2009, 15:53:27 | Сообщение # 6
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
ок - сейчас попробую сделать

Добавлено (14-07-2009, 15:50)
---------------------------------------------
готово сейчас загружу

Добавлено (14-07-2009, 15:50)
---------------------------------------------
http://depositfiles.com/files/pbdhk632q

Добавлено (14-07-2009, 15:52)
---------------------------------------------
это лишь образец (два варианта по два варианта выдачи текста)

на карте есть полосы бочек - между ними регион

через 5 секунд - срабатывает проверка

чтобы проверить игрока 2 - стукни его героем один раз.

надеюсь что помог

Добавлено (14-07-2009, 15:53)
---------------------------------------------
я более подробных условий не знаю - ну уж добавить условие не составит труда =) (мол если начисляют очко только если там есть рабочий)



____________Segara____________
 

BlizzarderДата: Вторник, 14 Июля 2009, 16:13:04 | Сообщение # 7
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
Ты меня видно немного не так понял - я хочу, чтобы очко добавлялось тому, кто за истёкших 10 секунд таймера последним вошёл в область!
 

ceriler1Дата: Вторник, 14 Июля 2009, 16:34:39 | Сообщение # 8
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
в таком случае - можно просто сделать Unit[1] - для всех игроков, однако тот, кто о таком решении пронюхает в игре на твоей карте - будет стоять у границы региона и заходить\выходить по сто раз в регион, лишь бы зайти в него последним и получить очко.

есть второй вариант - однако - тебе снова придёться подождать ~ 5-10 минут.



____________Segara____________
 

BlizzarderДата: Вторник, 14 Июля 2009, 16:38:29 | Сообщение # 9
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
У меня много времени)
 

ceriler1Дата: Вторник, 14 Июля 2009, 16:58:36 | Сообщение # 10
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
насчёт времени я преуменьшил - я сейчас задумался над математическим способом - потребуется немного больше времени - надеюсь у тебя сейчас это не горит быстро создать.

Как сделаю - сразу напишу.
Спасибо за "+" в репутацию - я не подведу =)

Добавлено (14-07-2009, 16:55)
---------------------------------------------
единственное что ещё хочу узнать - какое количество юнитов может пройтись (однажды - т.е. пусть даже один чел ходит туда сюда - но его я помечу номером под которым он зашёл и он больше не сможет прийти последним, если он не пришёл им) по этому региону?

Добавлено (14-07-2009, 16:58)
---------------------------------------------
бесконечное или ограниченное (то приблизительно сколько) ?



____________Segara____________
 

BlizzarderДата: Вторник, 14 Июля 2009, 17:47:45 | Сообщение # 11
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
Такс, давай объясню весь триггер подробно.
1) Если работник войдёт в область, то проигрывается звук (если работник принадлежит команде Красных - то один звук, команде Синих - другой).
2) Начнётся обратный отсчёт 10 сек.
3) Если в круг встанут сразу 2 работника, таймер паузится до смерти одного из рабочих.
4) По истечении таймера, нужно проверить, юнит какой команды стоит в области. Если стоит юнит красных, играть их звук и добавить им 1 очко. Если синих - то играть их звук и им добавить очко.
5) Если работник был убит за 1 секунду до истечения таймера, то играть определённый звук.

Если всё будет готово - кину +ов ещё, я не жадина :)

 

ceriler1Дата: Вторник, 14 Июля 2009, 18:51:14 | Сообщение # 12
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
:D :D :D :D Я тут сижу - думаю, над общей формулой последовательности (зашёл в регион - записался номером и пометился "печатью") - бесконечно-идущих (малоли помимо героев и рабочих есть ещё кто-то - я ж не знал) юнитов в этот регион и т.д.

дошёл до того, что не знаю как их пометить ( запомнить для опр. номера юнита - значение 0 или 1 (типа для проверки, чтобы чел обратно в регион не пришёл и не стал последним) )

вообщем грузился я как на олимпиаде по математике :D до момента покуда я это не прочитал.

- теперь вроде бы всё вышлядет проще. (а ведь вплоть до этого момента работал мозгами) :D

начинаю переделывать

Добавлено (14-07-2009, 18:43)
---------------------------------------------
сделал - тесты провожу

Добавлено (14-07-2009, 18:50)
---------------------------------------------
всё - проверено - выкладываю

Добавлено (14-07-2009, 18:51)
---------------------------------------------
http://depositfiles.com/files/quf8gchmm



____________Segara____________
 

PreveterДата: Вторник, 14 Июля 2009, 19:00:30 | Сообщение # 13
2 уровень
Группа: Пользователи
Сообщений: 37
Награды: 0
Репутация: 0
Блокировки:
1)событие
unit enter in region
действие
if unit owner=игрок1 then play sound1
if unit owner=игрок2 then play sound2
if entering unit рабочий,то if a=0 then start timer1 else pause timer 1
a=a+1
2)событие
время таймера1 закончилось
условия
a=1
действие
if owner of unit in region=owner1 then b=b+1
if owner of unit in region=owner2 then c=c+1
3)событие
unit in region умирает
действие
a=a-1
if a=1 then unpause timer 1

a -- счётчик юнитов, находящихся в области
в и с -- очки игроков

Извините если есть ошибки... :(


Не могу стрелять на трезвую голову!
Ну... Наливай...
Хорошо смеётся тот, у кого пушка больше!
Кто с мечом к нам придёт -- того проще застрелить!
 

ceriler1Дата: Вторник, 14 Июля 2009, 22:51:52 | Сообщение # 14
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
Blizzarder, будь бдителен насчёт моего файла - только что обнаружил невнимательность свою в разделе "TIMER STARTS AGAIN IF" - самое нижнее действие - оно в разделе "иначе" - хотя я его туда не хотел ставить - перезаливать - лень )


____________Segara____________
 

BlizzarderДата: Среда, 15 Июля 2009, 11:56:18 | Сообщение # 15
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
Да я уже пофиксил :) Упомяну твоё имя в карте.
Enforcer, ЗАКРЫВАЙ! :)
 

ceriler1Дата: Среда, 15 Июля 2009, 12:05:28 | Сообщение # 16
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
только не название моего аккаунта - а реальный ник - что у меня пожизненный. =)

А ты качал мою карту хотя бы? :D



____________Segara____________
 

BlizzarderДата: Среда, 15 Июля 2009, 12:53:01 | Сообщение # 17
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
Угу. Прикололо - I kill you!!!!!!
И надпись ника огнём xDD
 

ceriler1Дата: Среда, 15 Июля 2009, 13:57:19 | Сообщение # 18
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
:D :D

вот только надпись "I'll kill you" в игре у меня не отображалась. лишь в F12 мог её прочесть...

у меня версия редактора 1.21b (6052)



____________Segara____________
 

BlizzarderДата: Среда, 15 Июля 2009, 23:28:05 | Сообщение # 19
5 уровень
Группа: Заблокированные
Сообщений: 119
Награды: 0
Репутация: 19
Блокировки:
ceriler1,
Мой - 1.23а
 

ceriler1Дата: Среда, 15 Июля 2009, 23:53:23 | Сообщение # 20
7 уровень
Группа: Проверенные
Сообщений: 351
Награды: 0
Репутация: 13
Блокировки:
:D мне сегодня выложили патч (STAWR - спасибо) - в стариках не останусь ! =) :D


____________Segara____________
 

Форум о Warcraft 3 » Прочее » Отвал » Есть вопросы по триггерам!
  • Страница 1 из 1
  • 1
Поиск:

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