0
19
3 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Допустимое время АФК (игрок отошёл)

ScorpioT1000, да, AFK я имел в виду, сорян, сейчас исправлю)
Союзы не катят, поскольку есть функционал объявления войны и заключения союза. То есть, тут всё меняться будет в процессе игры. И может случиться ситуация, что союзников нет ) Лишь вариант сделать поражение игроку остаётся. Вопрос лишь во времени проверки...
1
19
3 недели назад
1

» WarCraft 3 / Засунуть в юнита новый реал или интеджер

rsfghd, ну это уже по вкусу, как говорится)
0
19
3 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Засунуть в юнита новый реал или интеджер

KaneThaumaturge, Ну и что? Handle Id ведь в массив нужно не как индекс пихать, а как значение. Перед этим естественно проверить, чтобы ячейка была пустая. Затем определять индекс по значению, через цикл по массиву.
Примерно так
function GetIndexArray takes integer Id, integer minIndex, integer maxIndex returns integer
    loop
    exitwhen Id == ArrayName [minIndex] or minIndex > maxIndex
        set minIndex = minIndex + 1
    endloop
        
    return minIndex
endfunction
0
19
3 недели назад
0

» WarCraft 3 / пассивная способность "кража маны" при атаке

ScorpioT1000, сам урон не задетектить, это верно, увы. Вот и приходится костылить.
0
19
3 недели назад
0

» WarCraft 3 / Засунуть в юнита новый реал или интеджер

Можно ещё с хэш таблицей извернуться, используя handle id юнита в качестве ключа. Или же сохранить handle id юнита в массив, затем в запуске какого либо триггера определять индекс в массиве и сохранять данные по этому индексу в другие массивы (для одинаковых типов данных можно запилить "двумерный массив"). Или же сохранить самого юнита в отдельный массив и так же определять по индексу. Но в случае с handle id немного jass потребуется, не знаю, ввели ли в jngp в гуи функцию GetHandleId. И в целом это более муторная система, чем с user data. Но как вариант пойдёт ) Короче, возможностей полно.
0
19
3 недели назад
0

» WarCraft 3 / Не срабатывает условие

konvan5, Ну да, а в данном случае вообще от запроса автора)) не добавил пояснения - ну извините, что просил, то получил)
0
19
3 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Не срабатывает условие

konvan5, У него одноразовые, исчезают после покупки)
Насчёт твоего предложения... хм, наверно, я бы сделал 4 абилки пустышки по 2 левела каждая, на каждый вид предмета прописал бы что:
Если предмет продан, и левел пустышки равно 1, то увеличить левел пустышки на 1
И если все 4 пустышки имеют 2 левел, то взорвать лавку.
Ну чтоб получилось MUI, или как оно там правильно называется, когда триггер работает на нескольких юнитах одновременно)
А ещё для оптимизации можно равкоды абилок и предметов согласовать, чтобы равкод абилки был равен равкод предмета + 1, тогда можно обойтись без elseifа при определения типа предмета )
Как то так)
0
19
3 недели назад
0

» WarCraft 3 / Пасивная способность Ручной паук

rsfghd, она триггерная , понятное дело. В ро такого нет
0
19
4 недели назад
0

» WarCraft 3 / Не срабатывает условие

konvan5, предлагаю оптимизировать триггер, при покупке любого из 4 предметов проверить user data лавки, затем увеличить user data лавки на 1, а если при проверке будет user data > 4 взорвать лавку )
1
19
4 недели назад
1

» WarCraft 3 / Пасивная способность Ручной паук

rsfghd, я играл как-то в эту кампанию, суть примерно в том, что после завершения исследования за произведённым в казарме юнитом создаётся автоматически паук и следует за юнитом, и автоматом атакует врагов на пути, или врагов юнита, как-то так.
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

rsfghd, Спасибо. Работает, но есть костыли)
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

nazarpunk, Если бы две... две то ладно, а вот 32 или больше, или ещё запиливать под проверку какой нибудь отдельный скрипт - ну нафиг.
Ну пока не дошло, просто если вижу, допустим, какой нибудь старый кусок кода и понимаю что это адское нагромождение костылей - сношу начинку функции и пишу уже относительно нормально. И стараюсь следовать советам из книги "Совершенный код" (за исключением конечно костылей из за отсутствия нативок).
И ещё нюансы в том, что я код не под конкретную карту делаю, а для bj, чтобы везде работало, в любой карте. Из за этого хочешь не хочешь, а приходится упираться в голый жасс, иначе, думаю, давно бы перешёл на луа или южапи или ангел скрипт. Просто их в bj не запихнёшь, а других способов, как запихнуть код в mpq, чтобы игра его по дефолту находила и запускала, я не знаю.
0
19
4 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Угон транспорта

nazarpunk, да можно, конечно, сделать хорошо и супер точно, и писать много кода. Просто это долго и надо нехилую усидчивость, у меня её точно нет, потому мне проще костыль запилить и перейти к следующей механике. Которая стала мне интересна. Чтобы просто не выгореть нафиг) А править мб потом. Как другие делают - не знаю.
вот такой я говнокодер, да)
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

nazarpunk, понимаю, с кривым кастом на краю круга не зацепит, хотя должно.
Да, 200 хватит. У себя столько и ставил примерно.
Если не зацепит, хотя должно было, это баг. А если наоборот сделать, и в описании абилки добавить "Способность имеет разброс, который может задеть больше юнитов", это фича ))
0
19
4 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Угон транспорта

nazarpunk, Не доводилось сталкиваться с кривым радиусом каста в чужих картах. Но верю, что такое есть. Конечно , такого не должно быть, радиус круга выбора в абилке и радиус каста должны совпадать обязательно. Оптимальнее всего делать радиус с запасом, согласен, ведь у юнитов разные физ размеры, а у зданий тем более, и тут проблемно будет "средний физ размер" высчитать, мягко говоря. А так, если зацепит кого лишнего, при касте, не так критично. Хуже, если не зацепит, хотя должно было. Думаю, и без доп фильтров сойдёт. (Ну, это если не выйдет подогнать радиус к кругу)
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

nazarpunk, я просто думал, что физ размер, это какая то другая единица измерения, которую нужно как-то переводить в радиус.
А так всё ещё проще оказалось. Всё понял, спасибо огромное )
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

nazarpunk, таки да, работает точно! Ок, я понял. А радиус "толщины юнита" по его физ размеру как вычислять? Допустим, у него физ размер 144. А какой будет радиус, чтобы его плюсануть к расстоянию и вбить общее число в функцию?
0
19
4 недели назад
Отредактирован EugeAl
0

» WarCraft 3 / Угон транспорта

nazarpunk, О, а про это я не знал, спасибо за уточнение)
А какой коллизии? Которая в модели настроена как "форма" или которая как физический размер в настройках юнита или обоих?
0
19
4 недели назад
0

» WarCraft 3 / Угон транспорта

я не могу понять, как назначить анимацией ПОДГОТОВКИ именно анимацию ПОДГОТОВКИ
Нужно обозвать анимацию правильно в модели, например stand work или stand victory
А в поле анимации Канала прописать stand,victory 2мя строками stand и victory, тогда абилка будет кастоваться с этой анимацией.
Что же касается самой абилки и её алгоритма, то 1) после ожидания юнит триггера и тд не будут работать (поток сбивается), поэтому их нужно сохранять в переменные. 2) для радиуса поможет jass функция IsUnitInRange, она проверяет расстояние между юнитами и "даёт добро" или не даёт на дальнейшие действия, но я не помню, есть ли она в гуи, скорее всего нет, так что только custom script делать.
0
19
4 недели назад
0

» IntelliJASS / IntelliJASS

nazarpunk, я уже понял, что сам софт создан корпорацией, а ты делал только плагин. Посему извиняюсь за претензии к тормознутости и геморройности установки, это надо мне было им писать, а не сюда. Но всё равно я не понимаю, куда столько памяти софт просит, размером с пару микрософт офисов... ну и то, что он открывал какой то мелкий .j файл на 700кб аж 3 минуты (против 7 секунд у jasscraft) наводит на вопросы к разрабам - что они там вообще натворили? Каждый раз открывать прогу с танцами с бубнами, (особенно учитывая, что правлю я скрипты свои несколько раз за день, по желанию своей левой пятки) - не улыбается, честно говоря. Но ладно, я уже понял, что свои претензии пишу не по адресу )
0
19
4 недели назад
0

» IntelliJASS / IntelliJASS

PT153, ну ладно, буду знать)
0
19
4 недели назад
0

» Прочее / Слух: Microsoft планирует покупку Valve и Steam за 16 млрд$

Purgatorius, деньги делают на добытых данных, это ж маркетологами тамошними юзается)
0
19
4 недели назад
0

» IntelliJASS / IntelliJASS

PT153, Брандмауэр защитника виндовс там.
Увидел отдельную установку, но для этого пришлось читать и переводить гайд...
Просто мне искренне непонятно, зачем столько ОЗУ. И вес на жестком диске 3 ГБ (!)
Для Jass это не стоит. Слишком простой и узконаправленный язык. И некоммерческий. Мб для геймдевщиков, компаний и программистов на C C# C++, lua итд это пойдёт, на массовое производство и большие мощности, но не на моддинг мимокрокодилом у себя на компе )
1
19
4 недели назад
1

» Прочее / Слух: Microsoft планирует покупку Valve и Steam за 16 млрд$

Бэкдор для хакеров и потенциальный шпионаж от корпорации.
Не потенциальный, а имеющийся. То, что корпорации шпионят за юзерами вопреки всем правовым нормам не секрет. Но хуже всего то, что все рычаги будут у корпорации и она сможет по желанию левой пятки делать с юзерами что хочет. Этакий локальный цифровой концлагерь. И ещё бэкдор для правительства, о чем ещё говорил Сноуден в незапамятные 10-е. Фигово всё это, никакой свободы, хоть комп отдельный без интернета заводи...
0
19
4 недели назад
Отредактирован EugeAl
0

» IntelliJASS / IntelliJASS

PT153, это не только брандмауэр, это антивирус встроенный, почему и возник вопрос.
4 ГБ ОЗУ для игр 2015 года, весящих по 50 ГБ, вполне норм. А тут надо 2 ГБ для проги для работы с кодом? Серьёзно? Не для музыкальной проги, не для видео монтажа, не 3Д графики, не для движка UE5, а просто для работы с кодом.
То есть, чтобы нормально работать, нужно а) открыть и изучить документацию б) поставить ещё плагин в) выбрать версию? Офигительно. Вместо того чтобы поставить дефолт и осваивать программу сразу в процессе работы.
Прочитал этот гайд по установке. Огромный талмуд с кучей параметров. И это только для установки (!). Установки, черт подери...
Ок, с community edition я прошляпил.
Автоматически куда? А если мне нужно скопировать файлы на другой диск или удалить файл, то где мне их искать? Через поиск в Проводнике тыкаться? Охрененно.
Если в облаке сохраняется, то это ещё хуже, что непонятно где, и фиг знает кто имеет туда доступ.
И опять же с установкой непонятно куда. Скорее всего, она поставится на диск С (а мне не надо на С, там только винда стоит, чтобы, если что, сносить её и форматировать диск С), а на другой диск не даёт ставить.
Как сам думаешь, это всё удобно или нет? Вот просто скажи своё мнение, под себя подставив. Я, конечно, понимаю, что есть мазохисты, которые любят возиться с талмудами гайдов, настроек и установок, но большинство людей всё же предпочитают не долбить себе мозги.