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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: PUVer, SirNikolas, Ty3uK  
[АРХИВ] Помощь по триггерам - 1
MTTДата: Пятница, 11 Декабря 2009, 17:00:46 | Сообщение # 2776
9 уровень
Группа: Пользователи
Сообщений: 941
Награды: 0
Репутация: 81
Блокировки:
Gonach,
А можна в 2 триггера :)
Но раз уж ты все расписал на русских триггерах, а я думаю у автора вопроса, скорее всего, триггеры русские, пусть он делает так как ты сказал.
Quote (Gonach)
А вот в чем: ты не знаеш где появится мобы; есть 3 дороги и по ним идут мобы только мобы идут только по одной дороги, и загвоска в том что ты не знаещ какая это будет дорога.

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

Делаеш 3 триггера на каждую дорожку, без события.
Затем делаеш триггер, который имеет действие.
Установить переменную Х рандум между 1 и 3
Если переменная Х равно 1
Проиграть такойто триггер
Иначе
Если переменная Х ровна 2
Проиграть другой триггер
Иначе
Проиграть третий триггер.

Все как ты любиш, в 4 триггера :)
Если без шуток, можно, вместо проигрывания триггера в то место вставить действие по созданию крипов

 

rizenДата: Пятница, 11 Декабря 2009, 17:23:55 | Сообщение # 2777
2 уровень
Группа: Пользователи
Сообщений: 31
Награды: 0
Репутация: 16
Блокировки:
MTT,Gonach, думаю, с этим не должно быть проблем)Но вот с тем, что мне посоветовал FKOFF что-то не выходит.

Что я сделал - я сделал 5 триггеров, которые включают:

При этом когда один игрок другого убивает, золото ему не дается и игроки не телепортируются обратно с арены.Я проверял - если игрок входит в чужой портал, то он умирает, значит значение dueler1 и 2 ему присваивается, скорее всего ошибка в последнем 5м триггере, но где?

 

GonachДата: Пятница, 11 Декабря 2009, 18:40:38 | Сообщение # 2778
5 уровень
Группа: Проверенные
Сообщений: 113
Награды: 0
Репутация: 21
Блокировки:
rizen,
кхм...

много не нужного, не делай порталы для какото команды 4 портала на всех!

Добавлено (11-12-2009, 18:40)
---------------------------------------------
rizen,

я расписал всеголиш действие твоего вопроса, а FKOFF написал как это сделать красива...

 

rizenДата: Пятница, 11 Декабря 2009, 18:57:49 | Сообщение # 2779
2 уровень
Группа: Пользователи
Сообщений: 31
Награды: 0
Репутация: 16
Блокировки:
Gonach, у меня итак 4 портала - 2 внутрь, 2 наружу)так как жанр карты hero defence, основная миссия карты сдерживать натиск монстров на портал)у каждой команды свои жизни, у каждой по половине карты)то есть они никак не могут встретиться кроме как на арене, поэтому важно, чтобы порталы у них были разные и при входе в чужой портал юнит помирал)))))
ПО поводу своего вопроса - разобрался, там and функция не совсем та была, теперь все работает)

Ты знаешь, как сделать, чтобы типа как в доте писалось "игрок 1 снес игрока 2 и получил ххххххх бабла" :D
Я новичок, но учусь быстро)

 

GonachДата: Пятница, 11 Декабря 2009, 19:00:58 | Сообщение # 2780
5 уровень
Группа: Проверенные
Сообщений: 113
Награды: 0
Репутация: 21
Блокировки:
rizen,

понял, тады нужно 8 порталов: 4 для одной команды ,4 для другой.

Я не про и не Noob=))

 

BeLousДата: Пятница, 11 Декабря 2009, 19:33:38 | Сообщение # 2781
8 уровень
Группа: Проверенные
Сообщений: 649
Награды: 0
Репутация: 120
Блокировки:
PR01004el, Фото с низу...
Прикрепления: 5631200.jpg (12.9 Kb)


^Y
 

GonachДата: Пятница, 11 Декабря 2009, 19:59:53 | Сообщение # 2782
5 уровень
Группа: Проверенные
Сообщений: 113
Награды: 0
Репутация: 21
Блокировки:
BeLous, ты чуть-чуть опаздал)
 

BeLousДата: Пятница, 11 Декабря 2009, 20:10:26 | Сообщение # 2783
8 уровень
Группа: Проверенные
Сообщений: 649
Награды: 0
Репутация: 120
Блокировки:
Gonach, Вы тут пишите все в разброс сам черт голову снесет =)
Извиняюсь, что не в тему...


^Y
 

GonachДата: Пятница, 11 Декабря 2009, 20:50:40 | Сообщение # 2784
5 уровень
Группа: Проверенные
Сообщений: 113
Награды: 0
Репутация: 21
Блокировки:
BeLous,

понял=)
ссори

 

AriusДата: Пятница, 11 Декабря 2009, 21:32:22 | Сообщение # 2785
10 уровень
Группа: Проверенные
Сообщений: 2163
Награды: 2
Репутация: 267
Блокировки:
rizen, насчет бабла, ставишь действие: игра-показать текст, там выбираешь сцепленные строки и делаешь так: имя[игрок(владелец(убивающий юнит))] + убил + имя[игрок(владелец(умирающий юнит))] + и получил (сюда ставишь конвертировать целое число в строку, вместо числа можешь ставить переменную, куда заносишь количество золота.)

триггеры примерно такие, точно не помню, нет возможности пока в ВЕ залезть.

Сообщение отредактировал Arius - Пятница, 11 Декабря 2009, 21:34:18
 

СорнемусДата: Пятница, 11 Декабря 2009, 23:49:30 | Сообщение # 2786
9 уровень
Группа: Проверенные
Сообщений: 854
Награды: 0
Репутация: 120
Блокировки:
Quote (rizen)
Ты знаешь, как сделать, чтобы типа как в доте писалось "игрок 1 снес игрока 2 и получил ххххххх бабла"

Открой эту статью. Там Дуос в качестве примера использует как раз то, что тебе надо.
 

FkoFFДата: Пятница, 11 Декабря 2009, 23:54:11 | Сообщение # 2787
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Quote (MTT)
Размер массива я изначально задал 10 Если а больше 10, функция не исполнится? Если исполница, значит массивы здесь динамичиские, тоесть все значения массива запоминаются, при его изменении. Как заставить забыть?

Quote (MTT)
Kartoha, Так вот, динамический массив, это тот, который может изменить свой размер, есть такая радость у нас в ворлд эдиторе?Добавлено (11-12-2009, 13:28)---------------------------------------------MTT, Как я уже писал раньше, каждую секунду задается значение новой кетки массива, тоесть изначально размер массива я не знаю, а если использловать трехмерный, то значение клеток не забывается, отсюда утечки.

странный ты, у меня к примеру размер у массивов стоял 1 с начала редактирования карты, но так как я человек чуть-чуть безолаберный то номера массивам (индексы) я ставил примерно 54, 88, 120. все работало.


 

PR01004elДата: Суббота, 12 Декабря 2009, 01:31:49 | Сообщение # 2788
7 уровень
Группа: Заблокированные
Сообщений: 310
Награды: 0
Репутация: 44
Блокировки:
а КАК сделать что бы когда делаеш начальную позицию не строилась ратуша?
 

ctpaxmДата: Суббота, 12 Декабря 2009, 01:39:14 | Сообщение # 2789
7 уровень
Группа: Проверенные
Сообщений: 418
Награды: 0
Репутация: 60
Блокировки:
мдя...
Удали начальный триггер


Dead Girls can't say NOT!
Делаю свой ORPG проект, нужны триггерщики(JASS-еры) и идейщики...
Все подробности в ЛС
 

MTTДата: Суббота, 12 Декабря 2009, 01:40:26 | Сообщение # 2790
9 уровень
Группа: Пользователи
Сообщений: 941
Награды: 0
Репутация: 81
Блокировки:
FkoFF,
Тоесть по логике идет так:
Массивы в ВЕ динамические.
При обращении к новой ячейке, он ее создает сам.

Вот вопрос.
Как заставить его забыть хоть одну ячейку

Просто по логике, ведь ячейка изначально имеет значение, чтота типо *нет значения*
А если у меня заполнилось много ячеек, как мне их вернуть к этому значению, тобиш обнулить.

Не говори мне, что они все изначально равны нулю, ибо как ВЕ может создать массив с бесконечным размером, если каждая ячейка имеет свое значение (пусть даже одинаковое.)

И *нет значения*=0 не может быть правдой, ибо массив при разных функциях может принять 0 и тогда... или нет, может и так и есть... я вопщем запутался.
Помогите мне распутаться :)

 

FkoFFДата: Суббота, 12 Декабря 2009, 01:52:36 | Сообщение # 2791
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
кручууу, верчуууу, обмануть тебя хочу!

Не пойму смысл исследовать устройство массивов. Ты хочешь воизбежание лагов их чистить? обнуляй все что создаешь по окончанию нужной функции. к примеру:
Pick every unit in range 500 around target point of ability being cast.
create 1 dummy for owner of caster at position of picked unit
set Unit[PLP]=last created unit
set PLP = PLP+1

то обнулять их следующим методом
for each integer A from 0 to 50 (больше на локации в 500 вокруг точки юнита врядли будет)
remove unit[plp-integer A] from game
set uni[PLP-integer A] = нет боевой единицы

и так везде где можешь. кстати ячейки обнуляются когда пропадает занимавший их объект. тоесть после смерти спецеффекта занесенного в переменную функцией destroy Specialeffct[example] - ячейка example (в нашем случае) обнуляется и до следующего запроса к ней она НЕ существует.

Добавлено (12-12-2009, 01:51)
---------------------------------------------

Quote (FkoFF)
for each integer A from 0 to PLP
remove unit[plp-integer A] from game
set uni[PLP-integer A] = нет боевой единицы

ступил чутка )

Добавлено (12-12-2009, 01:52)
---------------------------------------------
ах да, и по окончанию функции или при начале очередного запроса к PLP, PLP следует обнулить.

Добавлено (12-12-2009, 01:52)
---------------------------------------------
но это настолько же опционально как мытье посуды в мужской и женской общаге (в женской моют после еды, в мужской - перед едой)


 

MTTДата: Суббота, 12 Декабря 2009, 01:52:45 | Сообщение # 2792
9 уровень
Группа: Пользователи
Сообщений: 941
Награды: 0
Репутация: 81
Блокировки:
FkoFF,
А Реальная?
Как удалить реальную?
 

СорнемусДата: Суббота, 12 Декабря 2009, 02:08:46 | Сообщение # 2793
9 уровень
Группа: Проверенные
Сообщений: 854
Награды: 0
Репутация: 120
Блокировки:
Quote (PR01004el)
а КАК сделать что бы когда делаеш начальную позицию не строилась ратуша?

Как всё запущено... Удали триггер "Map initialization".
Quote (MTT)
Как заставить его забыть хоть одну ячейку

В триггерах многие типы переменных не обнуляються (например, триггеры). Только кастом скриптом. А в джассе делается так - "set *массив*[*ячейка*] = null". Но учти что обнулять надо не все типы переменных (например, целочисленные и реальные). И в некоторых типах нужно не "null" а 0.
А обнулять много ячеек сразу циклом:
Code
loop
       exitwhen bj_forLoopAIndex > *сколько тебе надо раз*
       set *массив*[bj_forLoopAIndex] = null (или 0, смотря что у тебя там)
       set bj_forLoopAIndex = bj_forLoopAIndex + 1
endloop

ЗЫ: bj_forLoopAIndex - это предопледелённая переменная, которая постоянно вшивается в код. Это таже "Integer A" в триггерах. Так что лучше использовать её в циклах, а не создавать лишнюю интегерку.

Добавлено (12-12-2009, 02:08)
---------------------------------------------
MTT, реальную обнулять не надо. Но если так надо, то выше написано.

Сообщение отредактировал Сорнемус - Суббота, 12 Декабря 2009, 02:10:53
 

MTTДата: Суббота, 12 Декабря 2009, 02:15:34 | Сообщение # 2794
9 уровень
Группа: Пользователи
Сообщений: 941
Награды: 0
Репутация: 81
Блокировки:
MTT,
Ландно, я распишу спелл по порядку.
Спелл называется отмотка времени.
Описание - отматывает время.
Как я делал.
Записывал каждый промижуток времени положение всех обьектов в переменную. (массив со счетчиком.)
При отмотке все у меня норм работает, но остаются проблемы - лагает.
При отмотке времени каждый обьект принимает положение, согласно переменной, а счетчик уменьшается в обратную сторону.

Отсюда, если счетчик примет значение, например, 1000. При отмотке остаются массивы с 1000 ячейками. Если все эти ячейки сделать равными нулю (через цыкл), лагать меньше не стает, тобиш нада их както заставить принять то значение, которое было до того, когда я к ним обратился. Это значение не 0. Нада узнать это значение.
Есть идеи?

Добавлено (12-12-2009, 02:15)
---------------------------------------------

Quote (Сорнемус)
"set *массив*[*ячейка*] = null"

Вот оно, то, что я и хотел, пасиба
 

PR01004elДата: Суббота, 12 Декабря 2009, 07:33:44 | Сообщение # 2795
7 уровень
Группа: Заблокированные
Сообщений: 310
Награды: 0
Репутация: 44
Блокировки:
А можно обьяснить как делать телепорт ток если у тя по английски?
 

FkoFFДата: Суббота, 12 Декабря 2009, 08:44:53 | Сообщение # 2796
Группа: Заблокированные
Сообщений: 4356
Награды: 1
Репутация: 1413
Блокировки:
Quote (PR01004el)
А можно обьяснить как делать телепорт ток если у тя по английски?

создаешь две области, одну - ту куда заходишь, вторую - ту откуда выходишь и связываешь их триггером:

generic unit enters region A
conditions:
условия если нужно, ну к примеру Entering unit is hero = yes
actions:
move insantly entering unit to region B
accept camera for owner of entering unit to CAMERA ABOVE REGION B over 0.0 seconds

второй триггер на обратное движение:

generic unit enters region B
сonditions: те же
actions:
move insantly entering unit to region B
accept camera object for owner of entering unit to CAMERA ABOVE REGION A over 0.0 seconds


 

PR01004elДата: Суббота, 12 Декабря 2009, 11:43:10 | Сообщение # 2797
7 уровень
Группа: Заблокированные
Сообщений: 310
Награды: 0
Репутация: 44
Блокировки:
У меня нет accept camera object for owner of entering unit to CAMERA ABOVE REGION A over 0.0 seconds
 

[DUОS]Дата: Суббота, 12 Декабря 2009, 12:00:19 | Сообщение # 2798
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Quote (FkoFF)
generic unit enters region A
conditions:
условия если нужно, ну к примеру Entering unit is hero = yes
actions:
move insantly entering unit to region B
accept camera for owner of entering unit to CAMERA ABOVE REGION B over 0.0 seconds

второй триггер на обратное движение:

generic unit enters region B
сonditions: те же
actions:
move insantly entering unit to region B
accept camera object for owner of entering unit to CAMERA ABOVE REGION A over 0.0 seconds


FkoFF,
Ну ты и грамотей... Английскими будет так:

Events.
Unit - A unit enters Region A
Conditions.
Actions.

Unit - Instantly move (Entering unit) to (Center of (Region B))
Camera - Pan camera to (Position of (Entering unit)) over 0.30 seconds.


Триггер на обратное движение будет выглядеть так:
Events.
Unit - A unit enters Region B
Conditions.
Actions.

Unit - Instantly move (Entering unit) to (Center of (Region A))
Camera - Pan camera to (Position of (Entering unit)) over 0.30 seconds.

Использованные переменные:
Region A - Область 1, из которой будет перекидывать в область 2.
Region B - Область 2, из которой будет перекидывать в область 1.

Согласись, это был исчерпывающий ответ.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

GonachДата: Суббота, 12 Декабря 2009, 12:41:26 | Сообщение # 2799
5 уровень
Группа: Проверенные
Сообщений: 113
Награды: 0
Репутация: 21
Блокировки:
PR01004el, Качай русские триггеры- http://depositfiles.com/files/nwjnmxoaf <_<
 

TIMEOFHEROESДата: Суббота, 12 Декабря 2009, 12:46:19 | Сообщение # 2800
2 уровень
Группа: Пользователи
Сообщений: 35
Награды: 0
Репутация: 0
Блокировки:
как сделать так, чтобы за обычных крипов, определенного игрока, которые выбегают из определенной области и бегут в другую (это я уже сделал с помощью триггеров) давали бабло?как сделать так, чтоб за убитого героя тоже вручили бабосы? извиите, если тупой вопрос, я просто на ваш форум зашел в первый раз.
и еще. Что такое "грани у кости"???
извините за тоже, пожалуй тупой вопрос))))


В истинном золоте блеска нет,
Не каждый странник забыт,
Не каждый слабеет под гнетом лет -
Корни земля хранит.
Зола обратится огнем опять,
В сумраке луч сверкнет,
Клинок вернется на рукоять,
Корону король обретет.
 

Поиск:

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