Добавлен , опубликован
Алгоритмы, Наработки и Способности
Способ реализации:
Lua
Тип:
Наработка
Версия Warcraft:
1.32+
Что это такое?
Наработка добавляющая кастомный инвентарь определенному герою.

Демо

Инструкция

  • Создать карту.
  • Выставить в Scenario -> Map Options -> Script Language на Lua.
Подробнее
  • Скопировать код из lua файла, который есть в архиве files.zip и вставить в редакторе триггеров в Custom script code.
Подробнее
  • Создать переменную countItems типа Integer (задавать значение пока не нужно).
Подробнее
  • Создать массив itemClass типа String.
Подробнее
  • Создать массив itemAbilitys типа String.
Подробнее
  • Создать новый кастомный предмет в Редакторе объектов.
Примечание
В данный момент есть 10 типов предметов:
  • MainHand - надевается в слот оружия
  • Head - надевается в слот шлема
  • OffHand - надевается в слот щита
  • Hands - надевается в слот перчаток
  • Chest - надевается в слот брони
  • Shoulders - надевается в слот наплечников
  • Neck - надевается в слот амулетов
  • Feet - надевается в слот ботинок
  • Waist - надевается в слот пояса
  • Potion - зелья
  • В Редакторе объектов выбрать опцию View -> Display values as raw data.
Подробнее
  • Посмотреть у созданного предмета на самое первое поле "abilList" и запомнить эти значения.
Подробнее
  • Вернуться в Редактор триггеров и установить для itemAbilitys[0] значение из поля "abilList"(в данном случае это "AIt9").
Подробнее
  • Установить для itemClass[0] значение класса предмета(в данном случае это "MainHand").
Подробнее
  • Установить для countItems значение 1(Мы добавили один предмет в базу).
Подробнее
  • По той же схеме добавляются еще предметы
  • После добавления предметов создаем новое действие Custom script и вызываем функцию Inventory().
Подробнее
  • Не забыть импортировать все нужные файлы для инвентаря из архива files.zip
  • Последнее, что нам нужно сделать, это привязать инвентарь к герою. Создаем новое действие Custom script и вызываем функцию CreateInventory(unit, player), где unit - герой, которому нужно привязать инвентарь, player - игрок владелец героя.
Подробнее
Настройка инвентаря
Есть девять строковых переменных, которые отвечают за иконки экипировки:
Так же есть девять строковых переменных задающих класс каждому слоту экипировки:
eq_class_one
eq_class_two
eq_class_three
eq_class_four
eq_class_five
eq_class_six
eq_class_seven
eq_class_eight
eq_class_nine
  • Если что-то непонятно, можно посмотреть в карте примере из архива files.zip
ChangeLog
  • v. 0.11b
Немного изменил расположение окна инвентаря.
Добавил подсветку окну инвентаря, чтобы было понятнее, что можно выкидывать предмет за пределы окна инвентаря.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
11
3 года назад
0
Отлично сделано)
Плюс к однозначно!
0
23
3 года назад
0
делаем герой - инвентарь 2 слот дефолотный и 1 слот - дополнение и вручи герою в итоге у героя будет 2 слот и 1 слот скрытый и будет подбирать на 3 слот.
Делаем 2 слот для хилки который можно из нового инвентаря перенести в слот хилки и у героя появится хилки не выбрасываемый. Я уже показывал баг инвентаря на 12 слот.
PS. Создаем предмет
Название: "Выбрать зелье/свитки"
Описание: "Можно выбрать из инвентаря зелье или свитки"
Когда герой создан или вошел в карту вручаем ему 2 слот сразу предмета "Выбрать зелье/свитки"
У героя абилка инвентаря должен 2 слот. А допольнительный абилка инвентаря из раба тоже у героя иметь.
События Игрок подобрал предмет заносят в базу
События Игрок нажал предмет "Выбрать зелье/свитки".
Появляется фрейм все списки зелье и свитки который есть в базе у героя.
После выбора зелья убираем где был применен слот 1 или 2 и добавляет предмет который подобрали.
Это уберет рутинная открывания целого инвентаря и лечить героя.
А 3 слот у героя не будет показывать так как баг интереный в итоге можно подбирать веши даже у тя покажет 2 слота одетый. А все остальное уже за интерфейс
0
5
3 года назад
0
pro100master, Я уже этот момент обдумал. Просто еще не сделал. Я этот код даже не убрал. Сейчас можно просто взглянуть как это примерно будет выглядеть. Собери зелий в инвентарь, потом правой кнопкой мышки нажми на стандартный слот инвентаря. В общем увидишь как это будет выглядеть примерно.
1
23
3 года назад
Отредактирован pro100master
1
jsore, Это понятно но самое странное в коде то что ты создаеш фрейм на юнита когда можно 1 фрейм на клиент. Надеюсь освоишь как оптимизировать и сократить на 1 фрейм а иконки как предметы в инвентаре не создавать и удалять а заранее создай и скрой при подборе просто меняешь текстуры и показываешь. А так все что ты делал отлично лови 5 оценку =)
0
5
3 года назад
0
pro100master, действительно. Спасибо. Отредактирую код.
0
23
3 года назад
0
так как GetLocalPlayer работает в фрейма смена текстура, скрыть и показать фрейм и немногие уже забыл

в итоге можно отдать контроль 2 игроку и он увидит вашего инвентаря но с заблокированным кнопками (чтоб не перемешал и не выбросил) и так много идеи.
0
1
3 года назад
Отредактирован Immoral
0
Очень круто. Спасибо за такую штуку. Попробовал слотов экипировки/инвентаря увеличить -- ок, вроде понятно как.
Только вот, как быть, если хочется сделать 2 кольца, например? Т.е чтобы больше чем 1 слот экипировки мог получать вещь определенного класса?
Если сейчас прописать просто 2-м слотам 1 класс, то будет беда.
0
5
3 года назад
0
Immoral, да этого я не учел. Не уверен, что буду дальше этим заниматься.
0
1
3 года назад
0
хочу извиниться перед сообществом но lua мне показался проще jass начинаю изучать)
1
32
3 года назад
1
Survivalist, ура, ещё не всё потеряно в варкрафте
0
1
2 года назад
0
How can i sell Item to a Store with this Inventory System?
Is there a Limitied Number of items i can Custom-Create? I need like 75 or more.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.