Создание своих наборов | Разработка игровых платформ
  1. Доброго времени суток. В связи с появлением спамеров, активация функций новых пользователей (Создавать темы, писать сообщения), теперь будет только после проверки администратором! Для регистрации отписываемся в лс, в вк. vk.com/tehnik777 (Пишем только с реальных страниц)
    Скрыть объявление

Создание своих наборов

Тема в разделе "Гайды/Мануалы", создана пользователем Zloo, 7 ноя 2016.

Обсуждение темы Создание своих наборов в разделе Гайды/Мануалы на форуме zetta-forum.ru.

  1. Zloo

    Zloo Администратор Команда форума

    Регистрация:
    31 окт 2016
    Сообщения:
    265
    Симпатии:
    158
    Баллы:
    43
    Пол:
    Мужской
    Сайт:
    https://zetta-forum.ru
    VK:
    https://vk.com/tehnik777
    Наполнение сундуков прописывается в Lua скриптах, которые лежат в server_data\script\item\giftbag\
    Итак, приведу пример конструкции кода:

    Код:
    function I50000_GiftBag(MapID, InstanceID, TypeID, TargetID)
       role.AddRoleItem(MapID, InstanceID, TargetID, x1, y1, z1, 8, 420)
       role.AddRoleItem(MapID, InstanceID, TargetID, x2, y2, z2, 8, 420)
       role.AddRoleItem(MapID, InstanceID, TargetID, x3, y3, z3, 8, 420)
       role.AddRoleItem(MapID, InstanceID, TargetID, x4, y4, z4, 8, 420)
    end
    
    function I50000_CanUse(MapID, InstanceID, TypeID, TargetID)
       local bRet, bIgnore = 0, false
       local FreeSize = role.GetBagFreeSize(TargetID)
       if(FreeSize < G) then             --проверка количества свободных слотов в инвентаре
          bRet = 40            -- если слотов меньше, чем итемов в наборе, то выдает ошибку, мол не хватает места
       end
       return bRet, bIgnore
    end
    aux.RegisterItemEvent(50000, 1, "I50000_GiftBag")
    aux.RegisterItemEvent(50000, 0, "I50000_CanUse")
    50000 - ИД набора/подарка/коробки (которые вы предварительно должны создать в item_name.xml и item_proto.xml)
    x1,x2,x3... - ИД первого итема, ИД второго итема, ИД третьего итема и т.д. (итемы, которые будут падать из этой коробки)
    y1, y2, y3... - количество первого итема, количество второго итема, количество третьего итема и т.д.
    z1, z2, z3... - качество первого итема, качество второго итема, качество третьего итема и т.д. (1-6)
    И ещё момент:

    Код:
    if(FreeSize < G) then
    Где G - количество итемов набора + 1

    Каждый итем лежит в одной строке:

    Код:
    role.AddRoleItem(MapID, InstanceID, TargetID, x1, y1, z1, 8, 420)
    Их количество вы можете спокойной уменьшать (если хотите засунуть меньше итемов, чем здесь) и увеличивать (если хотите засунуть больше итемов), но не забывайте про проверку на количество свободных слотов.
    Создаете текстовой файл, прописываете в нем скрипт и сохраняете с расширением .lua
    Имя файла не имеет значения, поэтому вы можете назвать его так, как вам угодно

    Источник: Ex
     
  2. rush

    rush Поклонник кармы

    Регистрация:
    28 янв 2019
    Сообщения:
    60
    Симпатии:
    24
    Баллы:
    8
    Пол:
    Мужской
    Сайт:
    https://vk.com/kirillapikalov
    VK:
    https://vk.com/kirillapikalov
    поправочка качество ставиться на снаряжение, а для любого простого итема ставиться -1
     
  3. Дафна

    Дафна Поклонник кармы

    Регистрация:
    8 ноя 2016
    Сообщения:
    65
    Симпатии:
    39
    Баллы:
    18
    Пол:
    Женский
    VK:
    https://vk.com/id9853656
    в данном случае там качество можно также указать, но вариант когда оно указано в прото все же лучше
     
  4. rush

    rush Поклонник кармы

    Регистрация:
    28 янв 2019
    Сообщения:
    60
    Симпатии:
    24
    Баллы:
    8
    Пол:
    Мужской
    Сайт:
    https://vk.com/kirillapikalov
    VK:
    https://vk.com/kirillapikalov
    Не, раз есть предмет, значит в прото уже указано его качество, и смысл его менять скриптом? Ну снарягу да, можно там для какого либо ивента или акции. а допустим качество руны битвы, пыльцы эльфов или плейоны, да и как 95% простых предметов, роли особой не играет. ведь id у него один))) Это у снаряжения
     
  5. test

    test Постоялец

    Регистрация:
    25 май 2022
    Сообщения:
    120
    Симпатии:
    0
    Баллы:
    16

Поделиться этой страницей