Вторник, 11.02.2025, 05:45           Главная | Регистрация | Вход | RSS | Форум     [Обои | Файлы | Статьи | Кнопки и баннеры]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Модератор форума: WakingTheDemon, Arius  
Триггеры
NormДата: Понедельник, 15.06.2009, 21:51 | Сообщение # 1
Bowman
Группа: Проверенные
Сообщений: 16
Репутация: 3
Награды
Здесь задаём вопросы по триггерам
Снизу будут несколько триггеров дабы не задавать лишних вопросов
1.Самая простая таблица рекордов
2.Показывает сколько урона нанёс определённый юнит
3.Чтобы крипы бежали как в доте
4.Чтобы предметы скрещивались как в доте
5.Таймер воскрешения героев

По мере пополнения сайта буду выкладывать более сложные примеры а также различные наработки

Не задавайте вопрос который прежде был задан и получил ответ, не ленитесь читать предыдущие посты.

 
KLOPДата: Вторник, 04.08.2009, 08:49 | Сообщение # 51
Гражданин
Группа: Пользователи
Сообщений: 62
Репутация: 0
Награды
ну так там всё правельно сделанно и алгоритм правельный
 
MeSSiaHДата: Вторник, 04.08.2009, 08:49 | Сообщение # 52
Крепостной
Группа: Пользователи
Сообщений: 20
Репутация: 0
Награды
а, во, сделал через переменную и итем беинг манипулейтед вместо вуда в каждой строчке... хотя в прошлый раз так же делал не работало
 
DruidДата: Вторник, 04.08.2009, 22:24 | Сообщение # 53
.:::RooN:::.
Гражданин
Группа: Проверенные
Сообщений: 71
Репутация: 0
Награды
1 вопрос, что означает етот тригер ? О_О
 
KLOPДата: Вторник, 04.08.2009, 22:32 | Сообщение # 54
Гражданин
Группа: Пользователи
Сообщений: 62
Репутация: 0
Награды
Druid,
ПРи потере предмета выдаёт сообщение что предмет выпал или потерян
 
[DUOS]Дата: Вторник, 04.08.2009, 23:06 | Сообщение # 55
Happy new... maps! :)
Придворный
Группа: Проверенные
Сообщений: 352
Репутация: 5
Награды
Как сделать правильно системку, в которой будет проверяться наличие юнита в области? Если он один, то нужно запускать таймер, показать его окно, а по его истечении скрыть окно и телепортнуть союзников и владельца вошедшего юнита на базу, а врагов - на их базу. Если юнита в области 2, то играть звук и паузить таймер, не скрывая окно, до тех пор, пока в области не останется один юнит. Если вошедший юнит умрёт ДО истечения таймера, то таймер сбрасывается, а окно таймера скрывается.

Поставлю + сделавшему.



Привет, меня зовут Рой. Я тут немножко подсел на магию... (© Чародей Крови)
За Кель-Таллас!

Oasis and Desert
Ландшафт - 100%
Триггеры и кодинг - 5%
Герои - 4%
Итого - 36%

 
KLOPДата: Среда, 05.08.2009, 01:13 | Сообщение # 56
Гражданин
Группа: Пользователи
Сообщений: 62
Репутация: 0
Награды
[DUOS], http://dump.ru/file/3172433

Добавлено (05.08.2009, 01:13)
---------------------------------------------
ах да забыл коечто сделать))добавь там где TImerEnd в самом конце такое действие
Обратный отсчёт-Destroy timer window и переменную Timerwindow укажи,а с каждым разом добавляться будет окно таймера и будет по 3 4 их)))

 
JLopDHy6oBДата: Вторник, 01.09.2009, 13:39 | Сообщение # 57
Новосёл
Группа: Пользователи
Сообщений: 14
Репутация: 0
Награды
У мну есть вопрос по поводу новых действий и вапще что представляет сабой Хеш-таблица и если ли на них руссификатор???(Кто незнает,хеш-таблицы появились в патче 1.24)

 
SpiritДата: Вторник, 01.09.2009, 15:41 | Сообщение # 58
Irony of Truth: The Last War
Гражданин
Группа: Проверенные
Сообщений: 66
Репутация: 1
Награды
JLopDHy6oB, русификатора нет,если надо - пиши сам...
хэш - альтернатива кэшу,но быстрее за счёт того,что в роли ключей там выступают интегеры в отличие от кэша(там строки)
 
JLopDHy6oBДата: Вторник, 01.09.2009, 17:36 | Сообщение # 59
Новосёл
Группа: Пользователи
Сообщений: 14
Репутация: 0
Награды
Спирит спс!Жалко русика нет=(

 
SpiritДата: Вторник, 01.09.2009, 17:38 | Сообщение # 60
Irony of Truth: The Last War
Гражданин
Группа: Проверенные
Сообщений: 66
Репутация: 1
Награды
JLopDHy6oB, переведи новый TriggerString.txt с функциями хэша и радуйся
 
JLopDHy6oBДата: Вторник, 01.09.2009, 17:44 | Сообщение # 61
Новосёл
Группа: Пользователи
Сообщений: 14
Репутация: 0
Награды
Знал бы чо писать может быть и перевел=)

 
SpiritДата: Вторник, 01.09.2009, 17:56 | Сообщение # 62
Irony of Truth: The Last War
Гражданин
Группа: Проверенные
Сообщений: 66
Репутация: 1
Награды
Почищен последний оффтоп^^
 
JLopDHy6oBДата: Вторник, 01.09.2009, 17:57 | Сообщение # 63
Новосёл
Группа: Пользователи
Сообщений: 14
Репутация: 0
Награды
=)

Добавлено (01.09.2009, 17:57)
---------------------------------------------
спирит а ты можешь перевести тригеры??? biggrin


 
SpiritДата: Вторник, 01.09.2009, 18:34 | Сообщение # 64
Irony of Truth: The Last War
Гражданин
Группа: Проверенные
Сообщений: 66
Репутация: 1
Награды
JLopDHy6oB, могу то могу,но времени нету
 
MakcДата: Воскресенье, 11.10.2009, 10:46 | Сообщение # 65
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
У меня вопрос... как сделать чтобы конкретный мультибоард показывался для конкретного игрока..? Ведь действия "Показать (Последний Multiboard) для игрока" нету.. sad



 
MeckДата: Воскресенье, 11.10.2009, 15:45 | Сообщение # 66
Начальник
Группа: Проверенные
Сообщений: 131
Репутация: 0
Награды
За победу в гран-при Азерота
Makc,
Code
function Multibord takes nothing returns nothing
local integer i = 0
loop
     exitwhen i == 12
     if GetLocalPlayer() == Player(i) then
       call MultiboardDisplay(Multiboard[i], true)
       endif
     set i=i+1
endloop
endfunction

В тригерах такого несделаеш, только джас.
 
MakcДата: Понедельник, 12.10.2009, 11:16 | Сообщение # 67
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
Окей... сейчас попробую...
Line 126: Expected a name
call MultiboardDisplay(Multiboard[i], true)
Я в джасе новичок поэтому непонимаю чо значит эта ошибка)
что я сделал не так?






Сообщение отредактировал Makc - Понедельник, 12.10.2009, 11:32
 
[DUOS]Дата: Понедельник, 12.10.2009, 17:00 | Сообщение # 68
Happy new... maps! :)
Придворный
Группа: Проверенные
Сообщений: 352
Репутация: 5
Награды
Makc,
Используй мою функцию ShowMultiboardForPlayer:
Code
function ShowMultiboardForPlayer takes multiboard mb, player whichPlayer, boolean show returns nothing
     if(GetLocalPlayer() == whichPlayer) then
         call MultiboardDisplay(mb,show)
     else
     endif
endfunction



Привет, меня зовут Рой. Я тут немножко подсел на магию... (© Чародей Крови)
За Кель-Таллас!

Oasis and Desert
Ландшафт - 100%
Триггеры и кодинг - 5%
Герои - 4%
Итого - 36%

 
MakcДата: Понедельник, 12.10.2009, 18:02 | Сообщение # 69
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
Эм...) И как она работает?) У меня есть 2 (пока что) переменных мультибоарда PlayerMultiBoard массивная 15 раз и мне надо чтобы PlayerMultiBoard[1] показывалась для красного PlayerMultiBoard[2] для синего и т.д)



 
[DUOS]Дата: Понедельник, 12.10.2009, 18:24 | Сообщение # 70
Happy new... maps! :)
Придворный
Группа: Проверенные
Сообщений: 352
Репутация: 5
Награды
Quote (Makc)
У меня есть 2 (пока что) переменных мультибоарда PlayerMultiBoard массивная 15 раз и мне надо чтобы PlayerMultiBoard[1] показывалась для красного PlayerMultiBoard[2] для синего и т.д)

1) Вставляешь в код мою функцию.
2) Пишешь в том месте кода, где надо показать доску:

call ShowMultiboardForPlayer(udg_PlayerMultiBoard[1],Player(0))
call ShowMultiboardForPlayer(udg_PlayerMultiBoard[2],Player(1))

И.т.д.



Привет, меня зовут Рой. Я тут немножко подсел на магию... (© Чародей Крови)
За Кель-Таллас!

Oasis and Desert
Ландшафт - 100%
Триггеры и кодинг - 5%
Герои - 4%
Итого - 36%

 
MakcДата: Понедельник, 12.10.2009, 19:32 | Сообщение # 71
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
Блин((( Неполучается(
Code
function Trig_ShowMultiboardForPlayer_Actions takes nothing returns nothing
endfunction

//===========================================================================
function InitTrig_ShowMultiboardForPlayer takes nothing returns nothing
      set gg_trg_ShowMultiboardForPlayer = CreateTrigger(  )
      call TriggerAddAction( gg_trg_ShowMultiboardForPlayer, function Trig_ShowMultiboardForPlayer_Actions )
endfunction

function ShowMultiboardForPlayer takes multiboard mb, player whichPlayer, boolean show returns nothing   
       if(GetLocalPlayer() == whichPlayer) then   
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[1],Player(0))   
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[2],Player(1))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[3],Player(2))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[4],Player(3))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[5],Player(4))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[6],Player(5))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[7],Player(6))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[8],Player(7))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[9],Player(8))
           call ShowMultiboardForPlayer(udg_PlayerMultiboard[10],Player(9))
       else   

       endif   
endfunction

Это то что у меня получилось.. Выдает ошибку Invalid number of arguments. Что я опять не так сделал?)






Сообщение отредактировал Makc - Понедельник, 12.10.2009, 19:33
 
[DUOS]Дата: Вторник, 13.10.2009, 18:25 | Сообщение # 72
Happy new... maps! :)
Придворный
Группа: Проверенные
Сообщений: 352
Репутация: 5
Награды
Makc,
Code

function Trig_ShowMultiboardForPlayer_Actions takes nothing returns nothing
      local integer i = 0
      loop
         exitwhen i > 9
         if(GetLocalPlayer() == Player(i)) then
             call MultiboardDisplay(udg_PlayerMultiboard[i+1],true)
         else
         endif
         set i = i + 1
      endloop   
endfunction
    
//===========================================================================
function InitTrig_ShowMultiboardForPlayer takes nothing returns nothing
     local trigger tr = CreateTrigger()
     call TriggerRegisterTimerEvent(tr, 0.01, false)
     call TriggerAddAction(gg_trg_ShowMultiboardForPlayer, function Trig_ShowMultiboardForPlayer_Actions)
     set tr = null
endfunction

Вот, держи и учись smile



Привет, меня зовут Рой. Я тут немножко подсел на магию... (© Чародей Крови)
За Кель-Таллас!

Oasis and Desert
Ландшафт - 100%
Триггеры и кодинг - 5%
Герои - 4%
Итого - 36%

 
MakcДата: Пятница, 30.10.2009, 19:06 | Сообщение # 73
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
У меня есть 2 ещё 2 вопроса по триггерам)
1. Я задаю рандомное число от 1 до 8, но всё равно боты берут каждый раз одинаковых геров. Только синий иногда скелета берет. Остальные берут одних и тех же. В чом ошибка?
2. В триггере где боты должны юзать спеллы когда их\они атакуют, но почемуто не юзают(
http://ifolder.ru/14755238 посмотрите плз в категории Bots
P.S Ну во втором вопросе мб там есть какая-то ошибкка но в 1 случае я непонимаю(






Сообщение отредактировал Makc - Пятница, 30.10.2009, 20:58
 
MeckДата: Суббота, 31.10.2009, 12:17 | Сообщение # 74
Начальник
Группа: Проверенные
Сообщений: 131
Репутация: 0
Награды
За победу в гран-при Азерота
Makc, твой первый случай проблемный на самом деле, я сам с трудом додумался до решения данного вопроса, но повел за собой много утечек, значит вариант был таков, я сделал маленьку териториюб в виде квадрата гдето 5х5, натянул на эту тереторию область и при старте игры создавал всех героев карты и каждые пол секунды их двигал из стороны в сторону, тоесть по рандомной точке на этой области и когда я прописывал мод, тобиш он у меня был "-ar" то каждый раз брался другой герой, тоесть метод рандомного числа срабатывает по стандартным этапам, а у меня все зависило от того когда будет прописан мод и чем чаще ты будеш двигать юнитов тем будет больший щанс на рандомного игрока, правда все создаваемые точки нужно удалять, тоесть точки на которые ты двигаеш юнитов.
Второй твой случай немогу посмотреть, но предпологаю что когда ты атакуш юнита то у него смешиваються разные команды, пересмотри все команды которые ты даеш боту при том когда его и он атакует, команды могут перебивать друг друга и в итоге бот будет стоять на месте незная что ему делать.

P.S. сейчас немогу скачать твою мапу и немогу сделать пример.

 
MakcДата: Суббота, 31.10.2009, 16:39 | Сообщение # 75
Крепостной
Группа: Пользователи
Сообщений: 36
Репутация: 0
Награды
Насчет первого случая я так и не понял что ты мне сказал, если честно) Если можешь, напиши более понятными словами) А насчет второго я и сам непонимаю... может при атаке сделать команду ждать 1 сек?



 
  • Страница 3 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Поиск: