SRes
1110101000
offline
Опыт:
9,997Активность: |
Утечки
Хочу спросить у jass'еров XGM : есть ли в моем коде утечки ? (про TriggerRegisterAnyUnitEventBJ я знаю)
Спасибо. » Код Код:
Отредактировано DFlyer, 30.12.2008 в 01:02. |
29.12.2008, 23:43 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
agentex
offline
Опыт:
34,534Активность: |
Код:
это нада заменить на Код:
(это не утечка, просто оптимизация) Цитата:
все обнуления провдятся в ф-ии 1 раз, и в ее конце Цитата:
обнулять глобалки не нужно (это кстати относится и к loc) ну вроде утечек нету, но вот точки лучше не юзать, они медленные agentex добавил: Цитата:
эта функция не вызывает утечек. |
|||
30.12.2008, 00:29 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
agentex, Спасибо. Буду знать. Насчет условия тоже знаю, т.к. просто не было смысла переделывать. И вопрос : как лучше заменить точки... юзать
» GetUnitX и Код:
» GetUnitY в моем случае, а в общем ?Код:
|
30.12.2008, 00:34 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hellfim
Новичок
offline
Опыт:
79,880Активность: |
SRes, и в общем тоже.
|
30.12.2008, 00:40 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
TriggerRegisterAnyUnitEventBJ не утечка сам юзаю, если потребности в импорте bj нету то можно юзать
ScorpioT1000 добавил: Код:
Оптимизировал. В работе спелла(логике) не разбирался. |
30.12.2008, 01:02 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
1. Все постоянные значения (например, равкод спелла, путь к эффекту) лучше выносить в константы - так легче будет редактировать код.
2. Из неэффективных конструкций - создание и удаление точки, а также использование переменных для хранения эффектов (в данном случае это бессмысленно, в любом из приведенных вариантов эффекты создадутся и сразу удалятся). 3. По возможности в тригонометрических операциях пользоваться значениями в радианах. По сути, почти все функции, работающие с поворотами, принимают значение угла в радианах, кроме GetUnitFacing и SetUnitFacing (они возвращают значение в градусах). 4. Каждый раз создавать и удалять таймер не очень эффективно. Лучше стартовать и паузить. Учитывая вышеприведенные тезисы, код должен получиться примерно таким: Код:
5. И, кстати, спелл у тебя не MUI. Проще говоря, если два юнита одновременно применят спелл, то будут глюки. Как решить? Забивать данные в параллельные массивы, в лупе (который в таймере) пробегаться по элементам параллельных массивов и делать нужные действия с объектами. |
30.12.2008, 10:58 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
Намудрили... Ладно буду разбиратся.
P.S. Это не спел. Это я от нефиг делать взялся перевести работу друга которая убивала вар за 4 юза этого спела в jass с оптимизацией Вот,если кому интересно то чего я добился... Отредактировано SRes, 30.12.2008 в 12:02. |
30.12.2008, 11:12 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
ShadoW DaemoN, ты бред сделал) там можно норм циклом разумней как у мну не мог мой код исправить
|
30.12.2008, 14:14 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
SC, я за аргументацию, а ты видно не только против, да еще и не шаришь. И в следующий раз попробуй расставлять запятые в предложениях.
Цитата:
SRes, хмм... Я бы сказал, что ты делаешь успехи =) Некоторые замечания:
Я, к примеру, делаю MUI примерно так: Код:
Отредактировано ShadoW DaemoN, 30.05.2009 в 18:26. |
|
30.12.2008, 17:56 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
ShadoW DaemoN, Удобно. Надо попробывать использовать структуры
Спел можно запустить и 2 раза в одно время,но нельзя миллисекунда в миллисекунду, т.е. конфликтуют где-то переменные... У меня ошибка... при проверке Jass Helper'ом Expected [size] . Указывает на переменные в структуре. Отредактировано SRes, 30.12.2008 в 19:39. |
30.12.2008, 19:25 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
Прошу подсказать где я допустил ошибку...
Цитата:
|
|
31.12.2008, 11:42 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
SRes, код в студию.
Хмм... хотя я рискну предположить, что у тебя написано что-то вроде: Код:
Структура, грубо говоря, это одна ячейка в массиве. Так что не нужно вкладывать туда массивы, если ты конечно не хочешь сэкономить место. Плюс, массивы не получится вложить в структуру, если неизвестен их размер. |
01.01.2009, 12:09 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
ShadoW DaemoN, Да, предположил ты верно
Код:
Так... значит структуры между собой не будут конфликтовать ? Это хорошо... Щас проверим. Add : JassHelper говорит :"caster is not an static member of st" Код:
» Полный код Код:
|
01.01.2009, 15:36 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,747Активность: |
SRes, caster - это не статичная переменая, получать к ней доступ нужно через экзепляр структуры, а не через саму структуру...
|
01.01.2009, 16:28 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SRes
1110101000
offline
Опыт:
9,997Активность: |
Короче.. бред какой-то
» Код Код:
Ругается на syntax error в первой строчке и после пошло поехало еще ошибки... |
01.01.2009, 18:10 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
Я вижу здесь только одну ошибку:
Код:
Проверь, включен ли у тебя JassHelper (JassHelper => Enable JassHelper) Scorpio, рано радуешься =), цикл совсем по другому поводу там. Что касается кода, то здесь опять не все гладко... Код:
|
01.01.2009, 18:57 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|