Миничат

poca 5 ч. не кикает больше часа. зер гут
poca 7 ч. было-бы неплохо, да
poca 7 ч. авто-бан за 10 повторений
poca 7 ч. придётся
poca 7 ч. банить
poca 7 ч. фсаперов
poca 7 ч. вручную
poca 7 ч. то
poca 7 ч. а
poca 7 ч. надо
poca 7 ч. прикрутить
poca 7 ч. фильтр
poca 7 ч. -
poca 7 ч. спам
poca 7 ч. но
poca 7 ч. работу
poca 7 ч. проделанную
poca 7 ч. за
poca 7 ч. большое
poca 7 ч. большое
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.

помогите настроить Instance Items [VX ace]

Больше
6 года 11 мес. назад - 6 года 11 мес. назад #111947 от truver
Помогите пожалуйста разобраться со скриптом Instance Items версия мукера VX ace.
Исходник: Здесь
Скрипт для работы требует этого Core Equip Slots или этого Yanfly’s Ace Equip Engine.
Поставил это Yanfly’s Ace Equip Engine а вместе сним и Ace Core Engine v1.09 и даже заплатку Ace Equip Engine v1.06 на всякий случай, хотя она вроде убирает конфликт с другим скриптом.
Но ума разобраться в скрипте не хватило.
Пытался оперировать тем, что приводиться в примерах,что бы понять принцип действия,но скрипт выдает ошибку "неизвестный метод для класса модуль" вероятно я осуществляю ввод не в тех местах где положено...

C базовой штукой [strike]вроде как[/strike] разобрался тег параметра из примера задается в коде после
Code:
### module RPG class BaseItem # List of all attributes that are shared instance variable _instance_attr = [:name, :params, :price, :features, :note, :icon_index, :description] #--------------------------------------------------------------------------- # Define methods for all shared variables #--------------------------------------------------------------------------- _instance_refresh = "def refresh" _instance_attr.each do |ivar| _instance_refresh << ";refresh_#{ivar}" eval( "def refresh_#{ivar} var = InstanceManager.get_template(self).#{ivar} @#{ivar} = make_#{ivar}(InstanceManager.make_full_copy(var)) end def make_#{ivar}(#{ivar}) #{ivar} end " ) end _instance_refresh << ";end" eval(_instance_refresh) end class Item < UsableItem attr_accessor :template_id def is_template? return self.template_id == self.id end def template_id @template_id = @id unless @template_id return @template_id end end class EquipItem < BaseItem attr_accessor :template_id def is_template? self.template_id == self.id end def template_id @template_id = @id unless @template_id return @template_id end end end # # здесь добавляем свои варианты # class RPG::Weapon < RPG::EquipItem def attack_bonus 50 end end # # Продолжение скрипта... # module DataManager


Модуль управления шаблоном:
Code:
module InstanceManager class << self attr_accessor :weapons attr_accessor :armors attr_accessor :items attr_reader :template_counts end def self.setup @template_counts = {} @template_counts[:weapon] = $data_weapons.size @template_counts[:armor] = $data_armors.size @template_counts[:item] = $data_items.size end #----------------------------------------------------------------------------- # Stores the instance objects for game saving purpose # Хранит объекты экземпляров для сохренений игры #----------------------------------------------------------------------------- def self.create_game_objects @weapons = {} @armors = {} @items = {} end #----------------------------------------------------------------------------- # Full copy of the template object so we don't have any reference issues #----------------------------------------------------------------------------- def self.make_full_copy(obj) return Marshal.load(Marshal.dump(obj)) end def self.instance_enabled?(obj) return TH::Instance_Items::Enable_Items if obj.is_a?(RPG::Item) return TH::Instance_Items::Enable_Weapons if obj.is_a?(RPG::Weapon) return TH::Instance_Items::Enable_Armors if obj.is_a?(RPG::Armor) return false end def self.is_template?(obj) return obj.id >= @template_counts[:item] if obj.is_a?(RPG::Item) return obj.id >= @template_counts[:weapon] if obj.is_a?(RPG::Weapon) return obj.id >= @template_counts[:armor] if obj.is_a?(RPG::Armor) end #----------------------------------------------------------------------------- # create an instance from the template. Basically just a full copy. #----------------------------------------------------------------------------- def self.make_instance(obj) new_obj = make_full_copy(obj) new_obj.template_id = new_obj.id return new_obj end #----------------------------------------------------------------------------- # Return the database table that the obj belongs in #----------------------------------------------------------------------------- def self.get_tables(obj) return @items, $data_items if obj.is_a?(RPG::Item) return @weapons, $data_weapons if obj.is_a?(RPG::Weapon) return @armors, $data_armors if obj.is_a?(RPG::Armor) end def self.get_template(obj) return $data_items[obj.template_id] if obj.is_a?(RPG::Item) return $data_weapons[obj.template_id] if obj.is_a?(RPG::Weapon) return $data_armors[obj.template_id] if obj.is_a?(RPG::Armor) end #----------------------------------------------------------------------------- # Returns an instance of the object, assuming it is a valid object, it # supports instances, and it's not a template #----------------------------------------------------------------------------- def self.get_instance(obj) return obj if obj.nil? || !instance_enabled?(obj) || !obj.is_template? new_obj = make_instance(obj) container, table = get_tables(obj) id = table.size new_obj.id = id # Setup the instance object as required setup_instance(new_obj) # Add to database and container container[id] = new_obj table[id] = new_obj return new_obj end #----------------------------------------------------------------------------- # Set up our new instance object. This is meant to be aliased #----------------------------------------------------------------------------- def self.setup_instance(obj) setup_equip_instance(obj) if obj.is_a?(RPG::EquipItem) setup_item_instance(obj) if obj.is_a?(RPG::Item) end #----------------------------------------------------------------------------- # Apply any equip-specific logic. This is meant to be aliased. # Note the same object is passed to the appropriate setup method depending # on whether it's a weapon or armor, so be careful not to apply the same # changes multiple times. #----------------------------------------------------------------------------- def self.setup_equip_instance(obj) setup_weapon_instance(obj) if obj.is_a?(RPG::Weapon) setup_armor_instance(obj) if obj.is_a?(RPG::Armor) end #----------------------------------------------------------------------------- # Apply any weapon-specific logic. This is meant to be aliased. #----------------------------------------------------------------------------- def self.setup_weapon_instance(obj) end #----------------------------------------------------------------------------- # Apply any armor-specific logic. This is meant to be aliased. #----------------------------------------------------------------------------- def self.setup_armor_instance(obj) end #----------------------------------------------------------------------------- # Apply any item-specific logic. This is meant to be aliased. #----------------------------------------------------------------------------- def self.setup_item_instance(obj) end # # Здесь вводим свои значения # class << self alias :th_random_weapon_bonus_setup_weapon_instance :setup_weapon_instance end def self.setup_weapon_instance(obj) template_obj = get_template(obj) th_random_weapon_bonus_setup_weapon_instance(obj) obj.params[2] += rand(template_obj.attack_bonus) end # # Здесь вводим свои значения # end # # Продолжение скрипта... # module RPG

Поправьте,если утверждения выше не верны.

После этих махинаций скрипт работает и на всем оружии урон скачет на +1 - +50, но как сделать так, что бы на каждый шаблон(оружие,броню) указанный в базе данных был определенный разброс урона, что бы можно было таки достигнуть конечной цели при которой условный бронзовый клинок будет иметь урон от 50-75, а у мифрилового разброс будет
от 100-120 ?



P.S. Помогите оби ван киноби на вас вся надежда :Д
Последнее редактирование: 6 года 11 мес. назад пользователем truver.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 3 место Проект месяца 1 место Проект месяца 2 место Организатор конкурсов Тестер Ветеран
Больше
6 года 11 мес. назад #111952 от VarVarKa
Ещё бы понять, что ты хочешь от скрипта.
Свою функцию он выполняет, то создаёт разные экземпляры одного и того же предмета(оружия):
ВНИМАНИЕ: Спойлер!

truver пишет: Скрипт для работы требует этого Core Equip Slots или этого Yanfly’s Ace Equip Engine.
Поставил это Yanfly’s Ace Equip Engine а вместе сним и Ace Core Engine v1.09 и даже заплатку Ace Equip Engine v1.06 на всякий случай, хотя она вроде убирает конфликт с другим скриптом.

Скрипт не требует их, а может с ними конфликтовать (если они используются!), поэтому должен быть ниже их в списке скриптов. Это понятно даже яндексПереводом: Вы должны поместить это ниже любых сценариев, связанных с оборудованием, таких как my Core Equip слоты или туз Yanfly оборудовать двигатель.
Поэтому, лучше их удалить)))
Спасибо сказали: yuryol, Noxmils

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 года 11 мес. назад - 6 года 11 мес. назад #111953 от truver
Еще как нужны
Installation

In the script editor, place this script below Materials and above Main

You should place this below any equip-related scripts, such as my Core Equip Slots or Yanfly’s Ace Equip Engine.

Источник:
himeworks.com/2014/01/instance-items/

Вопрос я переформулировал
И да я в курсе,что приоритет скриптов имеет значение и что адоны надо помешать под core скрипт

Спасибо за помощь..
Последнее редактирование: 6 года 11 мес. назад пользователем truver.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.089 секунд
Работает на Kunena форум