![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
оптимален ли код
наконец-то я выучил vjass и хочу предоставить мою первую наработку, хочу узнать есть ли какие-нибудь ошибки, что можно исправить и т.п.
Отредактировано LostCoast, 21.09.2011 в 17:47. |
![]() |
#1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
alexprey
познающий Unity
![]() ![]() offline
Опыт:
68,501Активность: |
LostCoast, вместо скопа юзай либу и все будет круто +)
|
![]() |
#2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
alexprey, если я использую либу то функции типа ReleaseTimer, GetTimerData, SetTimerData не работают
Faion, ну допустим ты стреляешь по врагу стоящему через пропасть и в яме есть враги, если не будет солизии то снаряд будет врезаться в тех кто внизу,недолетая до нужных |
![]() |
#3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Elf_Stratigo
![]() offline
Опыт:
4,699Активность: |
есть подозрение, что некоторые поля должны быть статическими при быстром просмотре нашёл одну утечку в Con(), очень критичную |
![]() |
#4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
Elf_Stratigo, а поконкретней?
|
![]() |
#5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Elf_Stratigo
![]() offline
Опыт:
4,699Активность: |
Для любого заклинания выполняется:
Если заклинание не обрабатывается этой системой, структура не будет уничтожена.
Поведение всех таймеров одинаково для всех структур (период, функция). Будет правильным выделить это поведение относительно всех структур и иметь всего один объект. Конечно для этого придётся преобразовать код. Может поведение и других частей структуры не зависит от её состояния, не вчитывался. |
![]() |
#6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
Elf_Stratigo , так у меня вроде обрабатывается, че-то я никак вникнуть не могу...
Отредактировано LostCoast, 20.09.2011 в 01:53. |
![]() |
#7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Elf_Stratigo
![]() offline
Опыт:
4,699Активность: |
Представь, что было событие EVENT_PLAYER_UNIT_SPELL_EFFECT с кодом заклинания 'AAAA' Тогда ни в один if не попадёшь, а по завершению функции Con() у экземпляра Option o не будет вызван деструктор |
![]() |
#8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
Elf_Stratigo, я себя таким нубом чувствую когда читаю твои посты. Но навело меня на мысль и так, если я правильно понял, то при каждом произнесении любого спелла у меня создается структура Option и ничего не делает
такой код будет правильным? Код:
|
![]() |
#9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Elf_Stratigo
![]() offline
Опыт:
4,699Активность: |
да
заметь, удобно иметь некую БД где можно было бы установить соответствие между заклинанием и значениями для структуры тогда добавление нового типа снарядов можно было бы организовать в одну строчку, а сложность выбора нужных данных в функции Con() для структуры была бы О(1) |
![]() |
#10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
тоесть сделать из Con стандартную
function влалал returns boolean return заклинание endfunction а все перерасчеты в функции action, ну в принципе буду дорабатывать свою систему пока как раз пытаюсь её оптимизировать на сколько можно. |
![]() |
#11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
DioD
![]() ![]() offline
Опыт:
45,134Активность: |
для любителей байтосчитания можно оптимизировать ряд объектов, например точки, не создавать их, а двигать на нужные корды, получать Z и отпускать.
не использовать структуры и кастом объекты там где нет явной необходимости. все патроны можно двигать одним единственным таймером который не создаётся и не удаляется. |
![]() |
#12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
Цитата:
например MoveLocation(X,Y) ? Цитата:
такой метод знаю,создается тригер с таймером и идет постоянная проверка не пуста ли ячейка с юнитом, если есть инит то его двигаем,но это через массивы. Цитата:
дня 4 назад я вообще не знал как писать на vjass этот код является в принципе моим первым творением, и вроде бы он неплохо написан. |
|||
![]() |
#13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
LostCoast
![]() offline
Опыт:
2,633Активность: |
я думаю тему можно закрыть, всем спасибо за советы.
|
![]() |
#14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|