RolePlay-S

RolePlay-S 0.6.3.7

На всякий случай, кинь картинку в папку графикс смой игру, и проверь, работает или нет?
Вероятно и из папки игры не будет работать.
 
На всякий случай, кинь картинку в папку графикс смой игру, и проверь, работает или нет?
Вероятно и из папки игры не будет работать.
ага потом на свежую голову еще взгляну.

Можешь кинуть ссылку или написать, про то, как добавлять вещи торговцам?
 
Ща гляну сам.
 
ага потом на свежую голову еще взгляну.

Можешь кинуть ссылку или написать, про то, как добавлять вещи торговцам?
Зависит от того, кому ты собираешься добавить предметы.
У Эккмы сейчас два метода используется для обмена.
В общем, для старого надо делать так:
Ruby:
module GIM_ADDON

    alias_method :manual_trade_role_play_s, :manual_trade unless method_defined?(:manual_trade_role_play_s)
    def manual_trade(good,charStoreHashName=nil,charStoreTP=0,charStoreExpireDate=nil,noSell=false,noBuy=false)
        if "#{charStoreHashName}" == "Map_NPC_Id"    # "59_69" - for BigMama. Но Биг Мама уже новым методом обрабатывается. Это просто пример.
            good += [[.......]] if smth
        end
        if get_character(0).npc_name == "Name_NPC"
            good += [[.......]] if smth # Аналогично коду в скриптах
        end
        manual_trade_role_play_s(good,charStoreHashName,charStoreTP,charStoreExpireDate,noSell,noBuy)
    end
 
end
 
Последнее редактирование:
Сейчас поищу как делать это для нового метода.
Новый метод - он через json. Для некоторых особо избранных НПЦ. Вероятно, постепенно все переедут на новый метод.
Будет примерно как с arpgskills. C использованием merge.
Одна команда кода, и ковыряешься в json c настройками.
 
Так, код для работы со вторым методом.
А в остальном, берешь файлы json из игры, копируешь в свою папку, удаляешь предметы которые там есть, (ведь мы делаем merge а не замену, значит дублировать не требуется) и по образцу добавляешь свои предметы.
Ruby:
$mod_role_play_folder = "ModScripts/_Mods/Role Play S"

module DataManager
    class << self
        alias_method :load_mod_database_role_play_s, :load_mod_database
    end

    def self.load_mod_database
        load_mod_database_role_play_s
        mod_barters = FileGetter.load_barter_settings_from_dir(folder="#{$mod_role_play_folder}/Data/Barters/*.json")
        $data_barters    = $data_barters.merge(mod_barters)
    end
end
Это туда же где навыки, где статы, и предметы добавляются. Просто теперь добавлять надо и торговцев.
 
Сейчас поищу как делать это для нового метода.
Новый метод - он через json. Для некоторых особо избранных НПЦ. Вероятно, постепенно все переедут на новый метод.
Будет примерно как с arpgskills. C использованием merge.
Одна команда кода, и ковыряешься в json c настройками.
Ага, спасибо большое за помощь. Мне очень не хочется просто загружать скрипты полностью.
У Экмы тоже спрошу, если повезет, он не скажет что для этого нужно новое API.))
 
Так, код для работы во вторым методом.
А в остальном, берешь файлы json из игры, копируешь в свою папку, удаляешь предметы которые там есть, (ведь мы делаем merge а не замену, значит дублировать не требуется) и по образцу добавляешь свои предметы.
Ruby:
$mod_role_play_folder = "ModScripts/_Mods/Role Play S"

module DataManager
    class << self
        alias_method :load_mod_database_role_play_s, :load_mod_database
    end

    def self.load_mod_database
        load_mod_database_role_play_s
        mod_barters = FileGetter.load_barter_settings_from_dir(folder="#{$mod_role_play_folder}/Data/Barters/*.json")
        $data_barters    = $data_barters.merge(mod_barters)
    end
end
Это туда же где навыки, где статы, и предметы добавляются. Просто теперь добавлять надо и торговцев.
Не понимаю. В json может хранится перечень предметов?
 
Открой
Data\Barters
И посмотри на json там.
Там их всего 3 шт. Но эти НПЦ уже работают через второй метод.
 
ага поглядел, а Экма сказал что это все в разработке.
Но тем не менее, первый метод на них не сработает. Потому что там другой def используется.
Def, который считывает хеш из $data_barters.
Так что, если тебе надо добавить предметы именно этим трем, то надо использовать метод json.
Если нет, то хватит и первого.
 
Назад
Сверху Снизу