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

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

Ответ
 
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Извините, люди, я вам подло солгал о голдкосте - все дело в том, что подобного рода условия (да и то только с юнитами и апгрейдами) можно делать только в *аи скриптах! Это native из коммон аи -
native GetUnitGoldCost takes integer unitid returns integer
Я слишком долго возился с *аи - вот результат :(
Эх, если бы можно было бы нэйтив-типы передавать в *j! Можно было бы узнать любой параметры из *силк базы данных! Это просто рай! Можно было бы написать нэйтив для извлечения регенерации маны, а так, прав МапМэн, надо прописывать каждый оюбъект...
Попробую чет-то сделать с нэйтивами, слишком это лакомый кусок, чтобы от него отказаться.
НО! МапМэн натолкнул меня на ЗАМЕЧАТЕЛЬНУЮ особенность эдитора. Можно, оказывается, не парясь со скрытым спеллбуком делать невидимые абилы ИТАК. Посмотрите вложение.
Там происходит следующее. В инициализации по-умолчанию добавляется предметная абила герою триггерами (аура смерти). Иконка видна и захламляет интерфэйс.
НО, когда мапмэн убирает триггерно предмет из игры, предварительно забыв выкинуть его из инвентаря (Ремув итем), герой НАСЛЕДУЕТ АБИЛУ ПРЕДМЕТА! ЭТО ЧУДО :) =) =)
Потом просто триггерно можно убрать абилу предмета уже с героя.
НЕ наследуется почему-то крест перерождения. Да и вообще, перерождение - глючная абила, портит часто жизнь, ее юзаем через спеллбук.
Правда, не-пассивки и не-ауры выдают иконку (в случае, например, плаща невидимости). Но я думаю, не-пассивки никто и не прячет.
Блин, надо создавать отдельную тему и благословлять МэпМэна :cool:
А ищо - можно так книги делать. Типа книга какой-то ауры. Прочитал мгновенно - вот вам, пожалуйста, появляется аура первой категории. Прочитал вторую - нате еще уровень =). Короче, спасибо Карточному Человеку огромное до небес.
Прикрепленные файлы
Тип файла: w3x Primer#3.w3x (14.8 Кбайт, 31 просмотров )
Старый 04.06.2006, 17:19
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Цитата:
НО, когда мапмэн убирает триггерно предмет из игры, предварительно забыв выкинуть его из инвентаря (Ремув итем), герой НАСЛЕДУЕТ АБИЛУ ПРЕДМЕТА! ЭТО ЧУДО =) =)

О чуда! А когда сохраняешся-загружаешся чуда остается?
Старый 04.06.2006, 17:22
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
exploder, да когда дохнешь, а потом воскрешаешся, - все на месте. Можно ремувить триггерно абилы. Вероятно, при написании близзардами системки добавления итемных абил, они использовали родительский способ наследования.. Это как ретурн баг.. Хе-хе.. Вот она их и подвела =)

FellGuard добавил:
Нет, и после загрузки все тип-топ.

FellGuard добавил:
Если после ревайва убираются абилы - все нормально, это показано для наглядной демонстрации возможности убрать абилу в любой момент.
Старый 04.06.2006, 17:32
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Бред какой-то... близзы опять облажались :) Так можно делать многостраничные инвентари с сохранением пассивок при перемотке...
См. личу
Старый 04.06.2006, 17:35
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Цитата:
близзы опять облажались

Эксп, *умоляюще*, лазю в инет в перерывах ,когда родителей дома нет. Асю седня ночью качну.
Старый 04.06.2006, 17:38
exploder
iOS zealot
offline
Опыт: 19,394
Активность:
Это реально рульный баг :) Но для добавления абилы нужен как миниму один пустой слот...
Старый 04.06.2006, 17:43
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
В любом случае ,это можно делать так - после получения адресов всех предметов на первой странице слота бросаем все предметы. Параллельно бросанию проходим проверку на наличие бонусов. При наличии бонусов - проводим вышеописанную операцию с их добавлением. И потом уже загружаем вторую страницу инвентаря. Чудесно :)
Старый 04.06.2006, 17:47
NETRAT

offline
Опыт: 83,712
Активность:
Цитата:
предварительно забыв выкинуть его из инвентаря (Ремув итем), герой НАСЛЕДУЕТ АБИЛУ ПРЕДМЕТА! ЭТО ЧУДО
Чего? Блин, я с вас фигею!

На самом деле не проблема оцифровать силки и перенести их в кеш, а потом извлекать из него данные. Поскольку готовые классы для работы с w3o slk txt у меня есть, это займет всего 10 минут. а зачем вам это?

NETRAT добавил:
С инвентарями вообще забавная система...

Я еще не совсем вьехал в чем фича этого бага =) обьясни популярно

NETRAT добавил:
Думаю что это явление вполне обьяснимо - так как вещи из инвентаря добавляют и отнимают бонус точно так же как обычная команда AddAbility, по-видимому, именно тут близзы чего-то не предусмотрели
Старый 04.06.2006, 21:15
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Ах, чтоб тебя =( Сел делать многолистовой инвентарь, хотел заюзать эту весч и обнаружил, что нифига близзарды не так глупы, как кажется. Создать и дать предмет, а потом ремувить с достижением результата не получится, можно так делать только если покупаешь - реакция на юнит продает предмет из лавки. Очевидно, бл.инк недодумали способ передачи предмета - то, что их способ не юзает "create and give item to unit" я теперь почти уверен. Наверное, при удалении предмета во время покупки сначала добавляется как-то герою абила, а потом уже идет добавление предмета (а тк предмет == 0, то привет..). Это как пауза юнита при телепортации - отличается от обычной паузы юнита :(
Итого придется ограничиться созданием книг с добавлением пассмвок :( Блин, да что за невезуха сегодня?!!
Цитата:
На самом деле не проблема оцифровать силки и перенести их в кеш, а потом извлекать из него данные. Поскольку готовые классы для работы с w3o slk txt у меня есть, это займет всего 10 минут. а зачем вам это?
Ну, например можно без мозгоклюйства делать различного рода спеллы - допустим, коэффициент регенерации маны для юнита ты никак не узнаешь, придется прописывать кучу констант в нестандартном коде - вот тут на предыдущей странице, кстати, возникла необхоимость узнать стоимость предмета - а хрен =( Если в коммон.аи еще как-то решен вопрос со стоимостью юнитов/апгрейдов ,то в близз.джэй такого нет в принципе. Соответтственно, при написании спелла с, допустим, возвратом полстоимости предмета нужны будут все те же константы...

Фича была в том, что можно сколь угодно бонусов надавать герою (без спеллбука), и они не будут на интерфэйсе как-то мельтешить. Тот же спелл бук, но проще. И без лимитов, более мобильный - можно прямо в процессе добавлять абилы. Так мне казалось =(

FellGuard добавил:
Щас попробую поставить как-то этот баг на широкую ногу.. Если получится, будет классно..

НТ, у меня к тебе два вопроса - можно ли как-то использовать native-ы из коммон аи? Например, в частности, хотелось бы узнавать стоимость объекта.
И еще - можно ли как-то заставить героя покупать ту или иную весчь из лавки?
Тк кроме тебя мне на эти вопросы точно не ответит :(. Спасибо за внимание!
Старый 04.06.2006, 23:14
NETRAT

offline
Опыт: 83,712
Активность:
У меня сейчас редактора нет
На оба вопроса ответ мне неизвестен - с c.ai я вообще не работал, это к Блуди
Попробуй сам проверить, для c.ai - проинициализируй его, а затем попробуй по запускать функции из него, только думаю что его проинициализировать надо аналогом InitBlizzard (для b.j)
На второй - только если приказом, поставь триггер вывода на экран числового значения приказа при его получении и проверь какой(и есть ли он) приказ выполняется при покупке предмета. Думаю что иначе никак. В Варе вообще все через приказы идет - любое действие пользователя фактически представляет собой приказ. Например, у москитов есть три приказа - атака цели (attackonce), возврат к хозяину(приказ номерной) и запуск. Так что, думаю что это возможно.
Старый 04.06.2006, 23:38
FellGuard
Losyash
offline
Опыт: 39,547
Активность:
Спасибо огромное, Нетрат, ты реально меня выручаешь :)
Старый 05.06.2006, 00:09
dk

offline
Опыт: 60,293
Активность:
насчет покупки предметов! Вот мой способ.
FellGuard реальный глюк, теперь все думаем как сделать из него фичу! :)
Прикрепленные файлы
Тип файла: w3x Primer#4.w3x (13.1 Кбайт, 26 просмотров )

Отредактировано Dead_knight, 05.06.2006 в 08:15.
Старый 05.06.2006, 05:54
DioD

offline
Опыт: 45,134
Активность:
Дело в том, что в АИ скрипте, а вернее в нутри него работает СОМОНЖ, передавать цену и любые другие параметры уже давно можно...

http://www.wc3jass.com/viewtopic.php?t=265
http://www.wc3jass.com/viewtopic.php?t=264
Старый 31.07.2006, 11:25
Ответ

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

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

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

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



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