UjAPI

Добавлен , опубликован
Лауреат премии 2023 года


Данный ресурс работает ТОЛЬКО с патчами 1.24e/1.26а/1.27a/1.27b/1.28f

Как пользоваться?

  1. Распакуйте все файлы из архива, желательно в отдельную папку, вот так:
скриншоты
  1. Запустите UjAPI.exe.
    • Если же у вас приложение не запускается, то скачайте и установите: .NET Framework 4.7.2.
    • Если же ни в игре, ни в World Editor UjAPI не работает, то скачайте и установите: C++ Redistributable 2012
  2. Установите путь для Warcraft 3, вот так:
скриншоты
  • Можно указать и на Frozen Throne.exe или же на Warcraft III.exe (но рекомендуется использовать именно war3.exe для патчей 1.27б и ниже).
  • На патче 1.28.5(f) рекомендуется использовать непосредственно Warcraft III.exe.
  1. Установите путь для World Editor, вот так:
скриншоты
  • Рекомендуется использовать JNGP версии Прометея: скачать
  • Пароль от архива: JNGP
4.1 Для удобства, добавления подсветки/автозаполнения, скачайте: [UjAPI] TESH Подсветка (спасибо DevilVsLife и Nazarpunk) и просто положите его в папку tesh/data вот так:
скриношоты
  1. Готово, вы можете теперь смело запускать как игру, так и World Editor через UjAPI Launcher.
    • Для использования оконного режима в Warcraft III нажмите галочку на "Additional command line arguments" и в появившееся окно, пропишите -window, вот так:
скриншоты

Полезные файлы

`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
18
1 год назад
0
ScorpioT1000, было бы интересно узнать, что это такое (в статьях из гугла ничего не понял), как создать подобие интерфейса в jass и действительно ли он упрощает работу, или он просто абстракция наподобие группирования функций по названиям, наподобие function UnitDeath, UnitSpell, UnitSpellA, UnitSpellB (имена от балды), чтобы их проще было найти в function list.
0
29
1 год назад
0
EugeAl, загугли ООП и будет тебе счастье.
0
20
1 год назад
0
ScorpioT1000, в каком то смысле widget это интерфейс.
0
37
1 год назад
0
Kokomi, скорее контейнер общих данных
0
18
1 год назад
0
nazarpunk, Загуглил, но нужно кое-что прояснить. Если я например, из нативных функций делаю свои функции, из этих функций делаю более "общие" функции, и так далее вплоть до функций, запускаемых через trigger add action - это является ООП? Согласно парадигме "всё является объектом". Если да, то что тут будет интерфейсом?
0
20
1 год назад
0
ScorpioT1000, возможно и так.

EugeAl, погугли паттерн стратегия.
0
18
1 год назад
0
Kokomi, Загуглил. Посмотрел примеры из Педивикии. Выглядят они как большая функция, в которой через разные условия вызываются другие функции с различающимися аргументами. Большая функция и есть интерфейс?
0
20
1 год назад
0
EugeAl, не идут примеры в мою сонную голову.
По факту интерфейс это просто набор методов, которые должен реализовывать класс. То есть если в классе прописано, что он реализует интерфейс - он обязан иметь все те же функции, которые прописаны в нем.
1
29
1 год назад
Отредактирован nazarpunk
1
не идут примеры в мою сонную голову.
interface Point {
	method setPosition(x, y);
}

interface Unit impliements Point {
	method setPosition(x, y){
		SetUnitX(this, x)
		SetUnitY(this, y)
	}
}

interface Effect impliements Point {
	method setPosition(x, y){
		SetEffectX(this, x)
		SetEffectY(this, y)
	}
}
0
8
1 год назад
0
EugeAl, мне кажется, без полиморфизма не понять все преимущества их использования. Если брать пример выше, то можно иметь один метод, который двигает\отталкивает и т.д., и в качестве аргумента ему можно задать Point. В таком случае, в него можно будет передавать и юниты, и эффекты, и предметы, он будет работать с ними одинаково, просто исходя из того, что все они - Point.
0
18
1 год назад
Отредактирован EugeAl
0
Kokomi, nazarpunk, build, Судя по всему, это что-то вроде типа функции. То есть функции, также как и объекты, имеют тип и наследование, только вместо handle -> widget -> unit здесь идёт function -> method -> interface -> class. Я правильно понимаю?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.