XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
NECros88

offline
Опыт: 16,351
Активность:
Помогите сделать JASS тригер
Очень нужно сделать жасс тригер, так как на ГУИ очень много утечек получается и я не знаю жасс =) Хотя щас уже начну упорно его изучать.
Итак... каждые 5 секунд в любой точке карты появляется спецэффект (а можно и несколько одновременно) молнии и после проигрывания анимации (примерно секунда) удалять из памяти.
В общем-то всё просто, но нужно чтобы небыло никаких утечек. С аналогом на ГУИ очень их много получается и через буквально пол часа игровой процесс превращается в слайд-шоу... Пожалуйста помогите, буду очень благодерен.
Старый 18.12.2006, 00:50
DioD

offline
Опыт: 45,134
Активность:
давай код на гуи я уберу утечки...
Старый 18.12.2006, 10:32
adic3x

offline
Опыт: 108,439
Активность:
Вставляешь в код карты (над категориями тригеров)
function Et takes string s,real t, real x, real y returns nothing
local effect e = AddSpecialEffect (s, x, y)
call PolledWait (t)
call DestroyEffect (e)
set e = null
endfunction
и потом где надо пишешь через SustomScript
call Et ("<строка модели эффекта>", <Время действия>, x, y)
к примеру Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl, x и y координаты, для их определения можешь юзать рандом реал...
Старый 18.12.2006, 11:38
simon

offline
Опыт: 1,709
Активность:
хм...
дай данные тригеров.
может сделаю что нибудь если время будет.
скинь тригеры в личку так как по форумам редко лазаю, кроме своих...
Старый 18.12.2006, 12:31
NECros88

offline
Опыт: 16,351
Активность:
ADOLF спасибо, щас попробую =)

NECros 88 добавил:
Ашипка =(

ЗЫ: Не ругайтесь, аттач потом уберу =)

Отредактировано NECros 88, 19.12.2006 в 01:02.
Старый 18.12.2006, 19:53
DioD

offline
Опыт: 45,134
Активность:
локальные переменные не объявлены
Старый 18.12.2006, 20:08
NECros88

offline
Опыт: 16,351
Активность:
DioD напиши пожалуйста как надо =)
Старый 18.12.2006, 21:16
OmUT

offline
Опыт: 416
Активность:
добавь в функцию перед "call Et (...." :
local real x = GetRandomReal(<меньший размер карты по х в точках>,<больший размер карты по х в точках>)
local real y = GetRandomReal(<меньший размер карты по х в точках>,<больший размер карты по х в точках>)
например:
local real x = GetRandomReal(-2048,2048)
local real y = GetRandomReal(-4096,4096)
размеры карты в точках можно посмотреть в Сценарий/Размеры карты и граници обзора
Старый 18.12.2006, 21:44
adic3x

offline
Опыт: 108,439
Активность:
OmUT, неправильно(

NECros 88:

Код:
call Et ("<строка модели эффекта>", <Время действия>, GetRandomReal(-2048,2048), GetRandomReal(-2048,2048))
Старый 19.12.2006, 00:06
NECros88

offline
Опыт: 16,351
Активность:
ADOLF минуту)

NECros 88 добавил:
Хм... я что-то вообще невижу никакого эффекта в игре... Молнии просто не появляются!

Засунул с цикл, если ненужно было этого делать, то извиняюсь =)
Миниатюры
Кликните на картинку для увеличения
Название:  prew1.GIF
Просмотров: 22
Размер:  4.9 Кбайт  
Старый 19.12.2006, 01:02
DioD

offline
Опыт: 45,134
Активность:
каждые 0.3 секунды и без цикла....
цикл вообще наиущербнейшая конструкция для таких назначений
Старый 19.12.2006, 06:19
adic3x

offline
Опыт: 108,439
Активность:
NECros 88, оно каждый раз в цикле будей вэйтовать 1 сек(...

DioD правильно сказал, малый период поставь...

NECros 88, если хочешь проверить, появляются ли молнии замени Гетранодмреал на 0 и посмотри в центр карты)))
Старый 19.12.2006, 10:27
nic666

offline
Опыт: 5,612
Активность:
Вот пример использования FIFO буфера, для вашего случая надо:
  • другой эффект
-промежуток времени увеличить с 0.04 например до 3 сек
  • формулы вычисления точек заменить на рандом
  • Keep_Light задать - это число одновременных эфектов на карте.
Прикрепленные файлы
Тип файла: w3x Lighting.w3x (17.8 Кбайт, 12 просмотров )
Старый 19.12.2006, 14:21
NECros88

offline
Опыт: 16,351
Активность:
DioD, ADOLF, nic666, спасибо парни, всё сделал =) Тему можно close.
Старый 19.12.2006, 17:52
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 21:10.