7

» WarCraft 3 / Lua или jass?

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

» WarCraft 3 / Lua или jass?

PornoMishka:
Ельнур, можно знать Lua и не знать JASS, не вижу связи.
Вообще Lua еще и в доте используется, да и однозначно полезнее мертвого [за пределами wc3] JASS.
нельзя в варкрафте зная луа и не знать джасс потому что апи варкрафта, если ты знаешь луа ты знаешь джасс, а если ты знаешь джасс то знаешь луа другого нет, и вообще то луа варкрафта тоже мертво с таким рейтингом... это так начало чтобы поучиться, недаром все популярные игры вышли с варкрафта..
7

» WarCraft 3 / Lua или jass?

если ты в основном делаешь на гуй то оставайся ибо чтобы писать в луа нужно знать джасс(это не луа вовсе а джасс точно такой же просто короче)
7

» WarCraft 3 / Lua или jass?

делай на луа и пиши как джасс себе секономишь время и нервов

ибо в луа все коротко (но надо знание джасс) и ненужно обнулять
7

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

pro100master:
Ельнур, ты о чем? То есть пусть хакер ломает карту?

И да в лаунчере уже перевели по русски а тут век переводят =)

Если нет лаунчера то вот обновление!
а что это значит??))
7

» WarCraft 3 / Warcraft 3 Reforged: Патч 1.32.9

что значит blizzard.j и war3map.j больше не учитываются при расчете контрольных сумм сохранении
7

» WarCraft 3 / Hash в луа

Bergi_Bear:
Ельнур, что луа что в jass используй 1 единственною глобальную группу.. всё вообще ничего не надо больше
сорян работают как надо просто я криво написал
7

» WarCraft 3 / единичный урон в луа

prog:
а тут он каждый раз создает при тике таймера новую группу, не смотря на то что группа сохранена в дата стораж или хеш
А с чего ты взял что дело в создании группы? Группа не может магическим образом сама создаться без CreateGroup.
если бы он не создавал новую группу, а брал бы в сохраненный дата стораж или хеш то был бы единичный урон а так он бесконечно раз может продамажить или полечить юнита..

прошу прощения уменя ошибка UnitAddGroup должен быть GroupAddUnit ))
7

» WarCraft 3 / единичный урон в луа

prog:
Ельнур, локалки работают так же как в жассе, не считая кложуров. Локалки практически в любом языке работают одинаково, не надо валить свои косяки на язык.
да я даже в хеш пробовал сохранить, в луа он не робит, он бы работал в джассе исправно, столько групп создалось бы сколько раз кастовали способность , а тут он каждый раз создает при тике таймера новую группу, не смотря на то что группа сохранена в дата стораж или хеш
7

» WarCraft 3 / единичный урон в луа

prog:
Должно работать как есть. Скорее всего, где-то в коде мелкая ошибка, которая не заметна при беглом просмотре.
это значит лишь одно локали работают чуть по другому чем в джассе в этом есть свои плюсы и минусы...
только не знаю способ по другому чтобы один раз одного юнита дамажил.. ибо все остальные способы не муй
7

» WarCraft 3 / Ульт тайдхантера из доты

Yury13:
Ельнур, отлично работает! Но есть небольшой момент: там утечка дамми-юнита, после того как создается дамми ему надо давать таймер истечения.
это не моя работа) могу в личку скинуть ссылку откудя я брал его
7

» WarCraft 3 / единичный урон в луа

wetalq:
Ельнур, xgm.guru/p/wc3/missile-lua
Советую почитать как тут сделано, Вы правы, локалки работают немного по другому и использовать хеш или что то другое не обязательно )
у меня волна -_-
7

» WarCraft 3 / единичный урон в луа

if GetSpellAbilityId() == FourCC('A00S') and GetUnitTypeId(u) == FourCC('Hamg') then
local dummy = CreateUnit(p,FourCC('h005'),GetUnitX(u),GetUnitY(u),GetUnitFacing(u))
local x1 = GetUnitX(dummy) + 800 * Cos(GetUnitFacing(dummy)*(3.14159/180.0))
local y1 = GetUnitY(dummy) + 800 * Sin(GetUnitFacing(dummy)*(3.14159/180.0))
local t = CreateTimer()
local cot = DarkLoa
local g1 = CreateGroup()
TimerStart(t,0.05,true,cot)
local data = { caster = u,xy = x1, yx = y1,dummy1 = dummy,g = g1}
DataStorage[GetHandleId(t)] = data
end
function DarkLoa()
local t = GetExpiredTimer()
local data = DataStorage[GetHandleId(t)]
local u = data.caster
local p = GetOwningPlayer(u)
local life = UNIT_STATE_LIFE
local x = data.xy
local y = data.yx
local dummy = data.dummy1
local g1 = data.g
if SquareRoot((x - GetUnitX(dummy)) * (x - GetUnitX(dummy)) + (y - GetUnitY(dummy)) * (y - GetUnitY(dummy))) - 35 <= 35 then
KillUnit(dummy)
GroupClear(g1)
DestroyGroup(g1)
g1 = nil
DataStorage[GetHandleId(t)] = nil
DestroyTimer(t)
t = nil
else
SetUnitX(dummy, GetUnitX(dummy) + 35 * Cos((180.0/3.14159) * Atan2(y - GetUnitY(dummy), x - GetUnitX(dummy)) * (3.14159/180.0)))
SetUnitY(dummy, GetUnitY(dummy) + 35 * Sin((180.0/3.14159) * Atan2(y - GetUnitY(dummy), x - GetUnitX(dummy)) * (3.14159/180.0)))
local g = CreateGroup()
GroupEnumUnitsInRange(g,GetUnitX(dummy),GetUnitY(dummy),150,nil)
while true do
	local u1 = FirstOfGroup(g)
	if u1 == nil then break end -- выходим из цикла при пустой группе
        if GetUnitState(u1,life) > 0.405 and IsUnitEnemy(u1,p) and IsUnitInGroup(u1,g1) == false then -- условия для перебора
local normal = ATTACK_TYPE_NORMAL
local d1  =       DAMAGE_TYPE_NORMAL
local w0 =         WEAPON_TYPE_WHOKNOWS
UnitDamageTarget(u, u1, GetHeroInt(u,false)*3, true, true, normal, d1, w0)
UnitAddGroup(u1,g1)
end
if GetUnitState(u1,life) > 0.405 and IsUnitAlly(u1,p) and IsUnitInGroup(u1,g1) == false then
SetUnitState(u1,life,GetUnitState(u1,life)+GetHeroInt(u,false)*3)
local e = AddSpecialEffectTarget("Abilities\\Spells\\Orc\\HealingWave\\HealingWaveTarget.mdl","origin",u1)
DestroyEffect(e)
e = nil
UnitAddGroup(u1,g1)
end
GroupRemoveUnit(g,u1)
u1 = nil
end
GroupClear(g)
DestroyGroup(g)
g = nil
end
end
  1. Дар Лоа. Дистанция 800, каст ренж 700, кд 10, манакост 110.
Выпускает волну, наносящую (Интеллект х 3) урона врагам на своем пути, восполняя (Интеллект х 3) здоровья союзникам.

wetalq:
Скиньте код
я бы сделал с волной силы с damaging евентом но там нельзя в целях союзниокв указать как ни крути

я думал проблема в data storage и использовал хеш но все равно одна и та же проблема, в луа локалки по другому чуть работают видимо
7

» WarCraft 3 / единичный урон в луа

может скиньете примерчик кложура может там заработает как надо))
7

» WarCraft 3 / Hash в луа

блин локальные группы странно работают в луа для единичных уронов...
7

» WarCraft 3 / Ульт тайдхантера из доты

Tidehunter (Ravage) - 6.88
GUI
Сделан на простой основе! Из за этого не поднимает в воздух дважды если враг оглушен.
Загруженные файлы
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

Steal nerves:
так вопрос решен или нет? 2 коммент на новую функцию - вы пишите, что работает замечательно
интересно, когда юнит застанен, то может работать руна?
работает с функцией BlzPauseunitEx(whichunit,boolean flag)
а с простой PauseUnit(whichunit,flag) нет когда станишь с BlzPauseUnit(whichunit,true) ты не можешь отменить с PauseUnit(whichunit,false) они разные

KaneThaumaturge:
Ельнур, может там что-то в целях неправильно? Неужели там руны сломали? Что-то слабо верится.
руны сломали типо волна силы громовая поступь и т.д а на области и руна скорости и т.д прекрасно действует
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

KaneThaumaturge:
Можешь попробовать руну вручить со способностью "Молот бурь". Должно сработать.
я уже пробовал с руной громовой поступью в рефордже это не работает
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

Lord_Teo:
Ельнур:
Lord_Teo:
А это принципиально, чтобы без даммика было?
  1. Удар щитом. Длительность 6 сек, кд 20 сек.
Бьет противника щитом, нанося ему (Сила х 2 (вкл бонусы) +30% от текущего значения Адреналина) урона, оталкивая его на расстояние 200, снижая его скорость передвижения и атаки на 20% и заставляя его промахиваться с вероятностью 30%.
Вообщем я сделал с паузой юнита перед тем как давать стан, но пауза ломает приказы...
Не совсем понял, а где тут оглушение? Двигать можно и без стана. Или ты имеешь ввиду понижение скорости атаки и перемещения? А нельзя использовать Удар грома (у гнома), например, для этого? Или 2 скила от даммика: понижение скорости перемещения и понижение скорости атаки( через ярость проклятых, например)?
перепутал вот
  1. Стальной выпад. Дальность применения 400. кд 10 сек.
Выставляет Щит перед собой и совершает быстрый рывок в выбранном направлении, при столкновении с противником, останавливается и станит его на 2 секунды, нанося (Сила х 4 (вкл бонусы) +15% от текущего значени Адреналина). Максимальная дальность рывка 400.

мне кпц как нравится новые функции варкрафта жаль что рейтинг такой..
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

новая функция BlzPauseUnitEx не ломает руны не ломает приказы вроде...

wetalq:
Bergi_Bear, это пауза с которой видно панель приказов и способностей?
да

хотелось бы узнать список способностей где есть пауза PauseUnit(whichunit,flag) и стиреть все эти способности заменить на новую паузу
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

Lord_Teo:
А это принципиально, чтобы без даммика было?
  1. Удар щитом. Длительность 6 сек, кд 20 сек.
Бьет противника щитом, нанося ему (Сила х 2 (вкл бонусы) +30% от текущего значения Адреналина) урона, оталкивая его на расстояние 200, снижая его скорость передвижения и атаки на 20% и заставляя его промахиваться с вероятностью 30%.
Вообщем я сделал с паузой юнита перед тем как давать стан, но пауза ломает приказы...
7

» WarCraft 3 / как сделать стан мгновенно без даммикаста

Bergi_Bear:
Сейчас для стана лучше всего подходит новая функция
---@param whichUnit unit
---@param flag boolean
---@return nil
function BlzPauseUnitEx(whichUnit, flag) end    -- (native)
а это пауза не мешает рунам?)

Zetox:
Через книжку, которая дает силу ловк, и тд. Ну можно и чтобы дамми юзался мгновенно.
а что за вариант через книжку
7

» WarCraft 3 / Hash в луа

prog:
Можно, я об это написал же. Но важно чтобы его создание (присвоение {}) было только в одном месте.
понятно запихал его в nestandartniy kod karty .wct