NazarPunk, Msey, оптимизация с точки зрения человека и с точки зрения машины разные вещи
код оптимизированный для машины плохо понятен человеку
а красивый и понятный код как правило дольше обрабатывается машиной
хотя существуют уникумы которые могут писать медленно работающий непонятный код
по сути задача любого препроцессора и компилятора превратить красивый и удобный код в нечитаемое говно которое устраивает машину
при беглом просмотре утечек не заметил
убери группу и используй простую проверку расстояния между точками:
"если расстояние между точками speak и speak2 меньше чем 500 то"
всеравно ведь точки используешь
так же проверь утечки при многократном повторении этого триггера
т.е. последовательно запусти этот триггер раз 20 и посмотри на показатель счётчика
баг чего
баг где
нафига его исправлять
что это вообще такое и что с этим делать
когда сделаешь нормальное описание которое не создаёт подобных вопросов тогда и опубликую
ledoed, ерунду не неси
структуры в vjass те же массивы
только удобнее
destroy() это удаление объекта
надо удалить точку пишешь a.destroy()
в обычном джасс ты ведь тоже удаляешь точки, юнитов и прочее
только там у каждого своя функция для удаления
а тут метод destroy()
да я с удовольствием на структурах делал, но там не понятно куда проходы потока могут бежать да и контроля не так как мне хотелось
лол что?
какие потоки
какой контроль
ты о чём вообще
все стандартные типы кроме числовых тоже являются структурами (например unit. group)
только они задаются в самом движке
а свои структуры создавать легко
есть классы (структуры), есть их экземпляры (объекты)
у классов есть поля (переменные) и методы (функции работающие с объектом)
в результате получаем нечто подобное:
// класс точки
struct Loc{
float x, y;
static Loc ofUnit(unit u){
Loc this=Loc.create();
x=GetUnitX(u);
y=GetUnitY(u);
return this;
}
void moveTo(Loc target, float dist){
float dx=target.x-x;
float dy=target.y-y;
float r=SquareRoot(dx*dx+dy*dy);
float sin=dy/r;
float cos=dx/r;
y+=sin*dist;
x+=cos*dist;
}
}
...
// гдето в коде
Loc a=Loc.create(); // создание точки a
a.x=5; // присвоение переменной x точки a значения 5
a.y=2; // присвоение переменной y точки a значения 2
Loc b=Loc.ofUnit(myUnit); // создание точки b с координатами юнита myUnit
a.moveTo(b, 100); // двигает точку a в направлении точки b на расстояние 100
Alexey103, в редакторе триггеров вверху нажми правка --> конвертировать в текст
твой триггер преобразуется в джасс код
кинь этот код сюда
так же не забудь использовать форматирование код при вставке кода в комментарий
топоры делаем через дамми юнитов
двигаем их по параболе пикая всех врагов которых они касаются и нанося им урон
+ проверка на отсутствие повторного урона
взломанная дота берётся в гугле
либо на этом сайте
лол что?
скорость работы глобалок в 1,5 раза быстрее чем у хештейблов
т.е. 10 обращений к хештейблам выполняется столько же времени сколько и 15 к глобалкам
если каждую секунду не выполняется более 1000 обращений к хештейблу то не юзать хэштейблы ради оптимизации та ещё тупость
Cancel, тогда ручками правь j файл
это единственный способ обойтись без джнгп
и вроде в джнгп есть директива для отключения джассхелпера?
т.е. по идее 1,29 должен работать
и что ты там учить для джнгп такое сложно собрался?
он запускается точно так же как и обычный редактор
uranus, там не только в этом проблема
вернее там проблема в том что автор даже не понимает что делает триггер Daniil33, ну так ты написал триггер так чтобы он получал нового каждый раз когда берёт любой предмет
я ведь уже всё объяснил
» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...
код оптимизированный для машины плохо понятен человеку
а красивый и понятный код как правило дольше обрабатывается машиной
хотя существуют уникумы которые могут писать медленно работающий непонятный код
по сути задача любого препроцессора и компилятора превратить красивый и удобный код в нечитаемое говно которое устраивает машину
Ред. nvc123
» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...
убери группу и используй простую проверку расстояния между точками:
"если расстояние между точками speak и speak2 меньше чем 500 то"
всеравно ведь точки используешь
так же проверь утечки при многократном повторении этого триггера
т.е. последовательно запусти этот триггер раз 20 и посмотри на показатель счётчика
» WarCraft 3 / Король Мертвых
скриншоты модели с прозрачностью и прочее
» WarCraft 3 / IceUI с фиксами от Феникса
"Данный архив содержит в себе исправленную версию интерфейса Ice UI сделанного user@name."
и заяви на публикацию
Ред. nvc123
» WarCraft 3 / Гибель Дренора
» WarCraft 3 / IceUI с фиксами от Феникса
баг где
нафига его исправлять
что это вообще такое и что с этим делать
когда сделаешь нормальное описание которое не создаёт подобных вопросов тогда и опубликую
Ред. nvc123
» WarCraft 3 / склеить буквы
структуры в vjass те же массивы
только удобнее
destroy() это удаление объекта
надо удалить точку пишешь a.destroy()
в обычном джасс ты ведь тоже удаляешь точки, юнитов и прочее
только там у каждого своя функция для удаления
а тут метод destroy()
Ред. nvc123
» WarCraft 3 / склеить буквы
какие потоки
какой контроль
ты о чём вообще
все стандартные типы кроме числовых тоже являются структурами (например unit. group)
только они задаются в самом движке
а свои структуры создавать легко
есть классы (структуры), есть их экземпляры (объекты)
у классов есть поля (переменные) и методы (функции работающие с объектом)
в результате получаем нечто подобное:
» WarCraft 3 / обнуление локальныйх массивов
так то обнуление это и есть перезапись
Ред. nvc123
» WarCraft 3 / Как сделать спелл Wild Axes?
Ред. nvc123
» WarCraft 3 / Когда-то уже просил найти утечки тут, и через годы... Снова...
твой триггер преобразуется в джасс код
кинь этот код сюда
так же не забудь использовать форматирование код при вставке кода в комментарий
» WarCraft 3 / Моя первая карта в редакторе. Жду критики
сделай чтобы было похоже на ресурсы из примеров
» WarCraft 3 / Движение по спирали
притягивает окружающих юнитов по спирали
» WarCraft 3 / Как сделать спелл Wild Axes?
двигаем их по параболе пикая всех врагов которых они касаются и нанося им урон
+ проверка на отсутствие повторного урона
взломанная дота берётся в гугле
либо на этом сайте
Ред. nvc123
» WarCraft 3 / склеить буквы
а вообще юзай структуры вместо всяких "MoveSystem_this_x[id]=1"
получится чтото наподобие
» Администрация XGM / Не понятно с сайтом
» WarCraft 3 / удаление событий
а юнитов проверяй в условии
» WarCraft 3 / Несколько интересующих вопросов
» WarCraft 3 / Jass создать глоабльную переменную
локалки же есть
Ред. nvc123
» WarCraft 3 / Несколько интересующих вопросов
Ред. nvc123
» WarCraft 3 / Jass создать глоабльную переменную
скорость работы глобалок в 1,5 раза быстрее чем у хештейблов
т.е. 10 обращений к хештейблам выполняется столько же времени сколько и 15 к глобалкам
если каждую секунду не выполняется более 1000 обращений к хештейблу то не юзать хэштейблы ради оптимизации та ещё тупость
Ред. nvc123
» WarCraft 3 / handle в unitpool - что не так
это единственный способ обойтись без джнгп
и вроде в джнгп есть директива для отключения джассхелпера?
т.е. по идее 1,29 должен работать
и что ты там учить для джнгп такое сложно собрался?
он запускается точно так же как и обычный редактор
» Модели из World Of WarCraft / Смертокрылый мурлок
» Модели из World Of WarCraft / Гигантские вепри Дренора
убери скрин из краткого описания и сделай превью
Ред. nvc123
» WarCraft 3 / Герою дается новый,при получении предмета
вернее там проблема в том что автор даже не понимает что делает триггер
Daniil33, ну так ты написал триггер так чтобы он получал нового каждый раз когда берёт любой предмет
я ведь уже всё объяснил