ГлавнаяБлогКарты Warcraft 3Гайды для первой ДотыГайды для Доты 2 [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Зарегистрированные пользователи не видят всплывающей рекламы
Страница 4 из 5«12345»
Модератор форума: XOPYC, Vanzer, Goodie 
Форум » Картостроение в Warcraft 3 » Обучение » Получение золота от фермы (как упростить данные тригеры?)
Получение золота от фермы
Дата: Понедельник, 14.05.2012, 16:12 | Сообщение # 31
Генералиссимус
Модераторы
Сообщений: 9045
Награды: 21
Репутация: 140
DewidWill, Что значит кароче закрыл? А если у него вопросы по триггам или ещё что-то по теме?
Дождись сначала ответа, а потом уже "кароче" >_<


это Ксопик!
 
Дата: Понедельник, 14.05.2012, 23:21 | Сообщение # 32
Рядовой
Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Эпическая ересь. Ну честно.
Постановка задачи: есть особый тип здания(ферма), каждый из которых приносит 2 золота каждые 2 секунды.
Че делаем: триггер
Code
Событие: каждые 2 секунды
Условие:
Действия:
Цикл по игрокам
    в tmpGroup заносим все фермы пикнутого игрока.
    цикл по всем юнитам из tmpGroup
      даем пикнутому игроку 2 золота
      пишем текст над пикнутой фермой
      убираем утечку с tmpGroup
(где tmpGroup - переменная типа Группа Юнитов)
Готово! универсально, просто

Сложный путь:
триггер 1
Code

Событие: завершено строительство
Условие: триггерный юнит = ферма (сравнение юнитов)
Действия:
set FarmCount = FarmCount + 1
set Farms[FarmCount] = триггерный юнит

(где Farms - переменная типа юнит и при этом массив, а FarmCount - переменная типа целочисленная)

триггер 2
Code

Событие: каждые 2 секунды
Условие:
Действия:
цикл по переменной i от 1 до FarmCount
    добавить 2 золота игроку-владельцу юнита Farms[i]
    показать текст
    спец-эффект там и тд

(где i - переменная типа целочисленная)

триггер 3
Code

Событие: юнит умирает
Условия:
Действия:
цикл по переменной i от 1 до FarmCount
    если триггерный юнит = Farms[i] то (множественные действия)
      Farms[i] = Farms[FarmCount]
      FarmCount = FarmCount - 1


Готово

PS зачем я это пишу? я вообще ищу как избавиться от утечек


Сообщение отредактировал Nooker - Понедельник, 14.05.2012, 23:24
 
Дата: Вторник, 15.05.2012, 08:05 | Сообщение # 33
Генералиссимус
Модераторы
Сообщений: 2264
Награды: 9
Репутация: 70
Nooker,
Quote (Nooker)
зачем я это пишу? я вообще ищу как избавиться от утечек

Ты не повЭришь их тут куча: Отряд, точка, группа, цикл, евэнт(событие каждые 2 секунды)
и в плюс, ты не уменьшаешь число, когда юнит ломает здание или ему ломают его или он сломал или ему сломали)


Тот кто владеет информацией, тот владеет миром.

Сообщение отредактировал ^GREAT^MAN^ - Вторник, 15.05.2012, 09:03
 
Дата: Вторник, 15.05.2012, 09:02 | Сообщение # 34
Генералиссимус
Модераторы
Сообщений: 2264
Награды: 9
Репутация: 70
Blayderman, Вопрос исчерпаН?

Тот кто владеет информацией, тот владеет миром.
 
Дата: Вторник, 15.05.2012, 09:04 | Сообщение # 35
Полковник
Проверенные
Сообщений: 231
Награды: 0
Репутация: 13
XOPYC огромное спасибо за помощь. Не закрывайте еще тему, давайте лутше решим проблему с фермой (построил еще одну, а первая перестала давать голду).
Как насчет ввода действия арифметики, когда будет подсчитыватся количество ферм которые должны давать голду?


Есть сторона зла и сторона добра.
Берем середину ^_^
 
Дата: Вторник, 15.05.2012, 09:24 | Сообщение # 36
Генералиссимус
Модераторы
Сообщений: 2264
Награды: 9
Репутация: 70
Blayderman, Блин. Если Золото больше нуля, то заноси в переменную, а там через перменную добавляй голд

Тот кто владеет информацией, тот владеет миром.
 
Дата: Вторник, 15.05.2012, 09:36 | Сообщение # 37
Генералиссимус
Ньюсмейкер
Сообщений: 4868
Награды: 13
Репутация: 72
Quote (XOPYC)
DewidWill, Что значит кароче закрыл? А если у него вопросы по триггам или ещё что-то по теме? Дождись сначала ответа, а потом уже "кароче" >_<

ну он просто давно не отписывался

---

Quote (Nooker)
Событие: каждые 2 секунды Условие: Действия: Цикл по игрокам     в tmpGroup заносим все фермы пикнутого игрока.     цикл по всем юнитам из tmpGroup       даем пикнутому игроку 2 золота       пишем текст над пикнутой фермой       убираем утечку с tmpGroup

Quote (^GREAT^MAN^)
Ты не повЭришь их тут куча: Отряд, точка, группа, цикл, евэнт(событие каждые 2 секунды) и в плюс, ты не уменьшаешь число, когда юнит ломает здание или ему ломают его или он сломал или ему сломали)

Ну хоть здесь с тобой согласен =\
Вообще не понятно, зачем он это написал...


Мой ВК: http://vk.com/willmas
Ютьюб канал: https://youtube.com/777will7777
 
Дата: Вторник, 15.05.2012, 10:20 | Сообщение # 38
Генералиссимус
Модераторы
Сообщений: 2264
Награды: 9
Репутация: 70
DewidWill, сам в афиге)

Тот кто владеет информацией, тот владеет миром.
 
Дата: Вторник, 15.05.2012, 16:10 | Сообщение # 39
Генералиссимус
Модераторы
Сообщений: 9045
Награды: 21
Репутация: 140
Blayderman, я же писал, что если ферм будет много, то нужно немного переделать тригги...

это Ксопик!
 
Дата: Вторник, 15.05.2012, 22:53 | Сообщение # 40
Полковник
Проверенные
Сообщений: 231
Награды: 0
Репутация: 13
окей, разберусь - отпишу.

Есть сторона зла и сторона добра.
Берем середину ^_^
 
Форум » Картостроение в Warcraft 3 » Обучение » Получение золота от фермы (как упростить данные тригеры?)
Страница 4 из 5«12345»
Поиск: