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

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

Ответ
 
Sedativ

offline
Опыт: 229
Активность:
Замена модели при поднятии предмета
Решил сделать так, что бы например при поднятии предмета с названием "Доспехи Рыцаря" у героя менялся скин на "Капитана Альянса".
С помощью данной статьи xgm.ru/p/wc3/various_textures я понял один из способов реализации моей задумки, но к сожалению таких героев и предметов в моей карте довольно много и это займет очень много времени. Есть ли другой способ замены модели юнита (более простой)?
Старый 04.06.2013, 01:14
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,449
Активность:
Sedativ, Просто так нельзя менять модель, но можно навешивать всякие щиты, мечи и тп на уже существующую модель юнита, то есть подобрал щит и появился он на руке рыцаря и тп.
Делается через крепление спецэффектов в костям модели во время игры, ( список костей ""head", "chest", "origin" и тд. ))
Кстати есть модели с кучей анимаций, если использовать такие модели (к несчастью их мало) то можно добиться желаемого по многим критериям...
Старый 04.06.2013, 05:38
Sedativ

offline
Опыт: 229
Активность:
Спасибо, но я про спец эффекты знал=( Вот и подумал может какую-то из функций пропустил.
Жаль, придется страдать и перерабатывать все модели в редакторе.
Старый 04.06.2013, 08:24
Ancient
Щпаовапа
offline
Опыт: 38,370
Активность:
Эм, просто заменять юнита стандартной командой не пробовал?
Старый 04.06.2013, 08:53
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,449
Активность:
Ancient, дык сколько же ему потребуется этих юнитов?
Старый 04.06.2013, 09:58
Ancient
Щпаовапа
offline
Опыт: 38,370
Активность:
Ну хз, что так, что так ему придется делать копии юнитов. Какая разница сколько?
Старый 04.06.2013, 11:18
Goodie

offline
Опыт: 2,825
Активность:
дык сколько же ему потребуется этих юнитов?
Красота требует жертв) У меня в карте скины только заменой меняются, с сохранениями магий и т д
Старый 04.06.2013, 13:07
Sedativ

offline
Опыт: 229
Активность:
Что ты подразумеваешь под заменой юнитов?
Тупо заменить предыдущего на нового? Если так то придется отлавливать все его характеристики и давать новому юниту и при сбрасывании предмета снова делать старого, это очень трудоемко, еще сложнее чем просто модели менять.
Старый 04.06.2013, 16:01
Goodie

offline
Опыт: 2,825
Активность:
Sedativ, Ну мне показалось это не сложным. Например предметы чтобы все перекинуть есть BJ функция, только её оптимизировать чуть чуть
Характеристики тоже легко, одной переменной ты найдешь характеристику
Главное что немного долго, это просто вписывание скиллов в базу данных.
Мне показалось это не сложным
Старый 04.06.2013, 16:21
Sedativ

offline
Опыт: 229
Активность:
А что за BJ функция? Я в jass не очень, хотя языки программирования знаю, как написать функцию которая искала бы наличие предмета в слотах и передевала значение в переменную. Хотя это и триггерно можно запилить, но очень много переменных надо вводить

Отредактировано Sedativ, 04.06.2013 в 17:42.
Старый 04.06.2013, 16:27
Goodie

offline
Опыт: 2,825
Активность:
((код jass
function ReplaceUnitBJ takes unit whichUnit, integer newUnitId, integer unitStateMethod returns unit
))
в этой функции много интересного можно найти
Старый 04.06.2013, 17:53
Sedativ

offline
Опыт: 229
Активность:
Спасибо, я уже сделал триггерно ахахах это только для 1 шмотки пришлось ввести 8 переменных, 1 юнит, 2 области. Там еще пару действий дописать надо, но вроде неплохо так поработал ахха Уверен что на jass это в 4 строки делается и + к тому сразу для нескольких объектов
Миниатюры
Кликните на картинку для увеличения
Название:  turkey.jpg
Просмотров: 37
Размер:  283.6 Кбайт  
Старый 04.06.2013, 18:01
Goodie

offline
Опыт: 2,825
Активность:
Sedativ, Массивы?? Не не слышал
Циклы? Не не слышал
Старый 04.06.2013, 18:31
Sedativ

offline
Опыт: 229
Активность:
У меня такая ситуация, что они не будут работать так как надо.
Это долго объяснять поэтому не буду.
Последний вопрос по теме. Таких шмоток например 4, перемененные для отслеживания уровня и т.д. одинаковые и естественно срабатывают только при взятии предмета, т.е. предположим что
х=уровень героя
у=опыт героя
и юниты одновременно подбирают 2 предмета следовательно однорменно 2 раза будт задествованы х и у, вообщем варик взорвется или неправильно сработают триггеры.
Вопрос стоит ли делать новые переменные для каждого триггера или вероятно одновременного взятия невозможна?

Отредактировано Sedativ, 04.06.2013 в 18:54.
Старый 04.06.2013, 18:46
HolyMoon
Hly shit!
offline
Опыт: 6,986
Активность:
варкрафт однопоточный, не будет вейтов - н ебудет проблем
Старый 04.06.2013, 20:59
Raised
Rid-Aid-Ios
offline
Опыт: 20,792
Активность:
Как - то оно страшновато выглядит. Чтобы не делать тучи переменных лучше использовать локалки и хотя-бы через CS. Проверь еще раз, мне кажется что массивы и циклы должны работать без проблем.
Старый 05.06.2013, 15:56
Sedativ

offline
Опыт: 229
Активность:
Чем мне циклы помогут, если все равно у меня отдельно для 1 предмета 1 триггер идет
Старый 05.06.2013, 18:53
Lord_DooM_ayt

offline
Опыт: 603
Активность:
можно сделать базу данных, массив предметов и потом циклом прогонять от 1 до последнего предмета, если он у нужного юнита, то выполнять нужные действия. Тоже самое со слотами.
Старый 06.06.2013, 02:42
Ответ

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

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

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

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



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