XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Astra
-=G-U-I=-
offline
Опыт: 5,086
Активность:
предмет и уровень героя
Чтоб герой мог поднять итем по установленному для предмета уровню сделано так:
if/then/else меньше или равно n-уровень героя и т.д.
Вопрос в чем: таких if/then/else больше 50-ти в одном триггере. Стоит это как-то оптимизировать или для современных компов это не проблема?
Старый 21.01.2015, 23:46
Кет

offline
Опыт: 111,109
Активность:
Можно сделать циклом, через for, если с несколькими значениями уровня нужно сверять.
Кет добавил:
А зачем там столько if в одном триггере? Можно посмотреть?
Старый 22.01.2015, 00:05
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,596
Активность:
Можно сделать систему через custom value.
В твоём случае можно проверять уровень предмета и героя 1 ифом и всё. В РО ставить нужный уровень предмету.
Старый 22.01.2015, 00:30
Astra
-=G-U-I=-
offline
Опыт: 5,086
Активность:
Melissa,
Все равно ведь для каждого предмета придется делать проверку
Кет добавил:
А зачем там столько if в одном триггере? Можно посмотреть?
Миниатюры
Кликните на картинку для увеличения
Название:  Итемлвл.jpg
Просмотров: 28
Размер:  327.6 Кбайт  
Старый 22.01.2015, 10:22
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,596
Активность:
Astra, одну и ту же проверку, 1 раз в триггере.
integer - item level > hero level - выбросить
Старый 22.01.2015, 10:58
Astra
-=G-U-I=-
offline
Опыт: 5,086
Активность:
Melissa,
Вообще кол-во подобных ифов в пределах 50-100 штук на событие - влияет на производительность кода в карте?
Старый 22.01.2015, 13:53
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,596
Активность:
I
don't
know
Старый 22.01.2015, 14:05
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,259
Активность:
100500 if then else конечно же не оптимально, гораздо быстрее и проще сравнивать уровень героя и предмета...
Старый 22.01.2015, 15:45
Fakov
Viva la Fa
offline
Опыт: 102,058
Активность:
я не шарю конечно, но что то мне подсказывает что можно использовать Custom Value предмета в РО в котором указывать требуемый для этого предмета уровень, и уже в триггерах отдропать эти итемы, если уровень героя не соответсвует кастом валью поднятого предмета.
На календаре кстати 2015 год.
Fakov добавил:
оу. сорри, не увидел ответ мелиссы
Fakov добавил:
но год от этого конечно же не поменялся
Старый 22.01.2015, 20:09
Astra
-=G-U-I=-
offline
Опыт: 5,086
Активность:
Fakov:
я не шарю конечно, но что то мне подсказывает что можно использовать Custom Value предмета в РО в котором указывать требуемый для этого предмета уровень, и уже в триггерах отдропать эти итемы, если уровень героя не соответсвует кастом валью поднятого предмета.
  1. Тоже думал про этот вариант, но преимущество уже созданной "системы" в том, что можно локально настраивать текстовые подсказки для определенного ряда итемов
  2. На строке уровня предмета в РО подвязаны некоторые функции в мои триггерах, отвечающие за поднятие одинаковых итемов (
  3. Хотелось бы все таки услышать мнение по поводу производительности в существующем варианте
Старый 22.01.2015, 21:36
Melissa
Я всегда хочу как лучше!
offline
Опыт: 31,596
Активность:
Astra, тогда перепиливай систему. С custom value будет лучше, т.к. если тебе вдруг понадобится больше данных на предмет заводить - то не нужно будет прикладывать никаких усилий кроме создания НовыеДанные[ ].
Melissa добавил:
Хотя если у тебя класс предметов не занят - то лучше бы проверку одинаковых(если она для оружия, брони и т.д.) сделать проверкой на класс предмета.
А уровень перепилить на сабж темы.
Старый 22.01.2015, 21:46
ScorpioT1000
Работаем
online
Опыт: отключен
в способностях можно хранить массив произвольных значений
графика - особые
GetAbilityEffectById()
ScorpioT1000 добавил:
xgm.guru/p/wc3/spellmaking5#h1.3 вот тут про это, но тема не раскрыта, суть в том, что туда можно помещать что угодно, только запятую заменять другой запятой (есть другая запятая в юникоде)
Старый 23.01.2015, 11:44
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 21:59.