Войти на сайт

Авторизация, ждите ...
×

ТЕМА: [VX Ace] Как создать новую категорию в инвентаре?

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70075

  • NikZol
  • NikZol аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 86
  • Спасибо получено: 116
  • Проект месяца 2 местоПроект месяца 1 местоПроект месяца 3 место
Доброго времени суток! Столкнулся с проблемой...
К проекту написано большое количество текстово-справочной информации. Как следствие, большое количество книг... Но они будут очень сильно засорять основную категорию инвентаря "вещи". возникла идея создать еще один подраздел, но вопрос - как это сделать? Понятное дело, что через скрипты, но может кто-нибудь наставит на путь истинный, что и где надо прописать/поменять?) :unsure:
Актуальный проект: MV Project Village

Группа проекта Вконтакте: QuickLoadGames
Последнее редактирование: 9 года 10 мес. назад от NikZol.
Администратор запретил публиковать записи гостям.

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70076

  • Зеро
  • Зеро аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1291
  • Спасибо получено: 123
Yanfly Engine Ace - Ace Item Menu v1.02 вот скрипт тебе в помощь.
Администратор запретил публиковать записи гостям.

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70077

  • Cerberus
  • Cerberus аватар
  • Вне сайта
  • Модератор
  • Собака злая
  • Сообщений: 2269
  • Спасибо получено: 1182
  • 3 место2 место 2 место Сбитая кодировкаПроект месяца 1 местоОрганизатор конкурсовПисатель 3 местоПрограммист JavaScript Проект месяца 2 местоПобедитель Сбитой кодировки3 место Готв
Зеро, из пушки по воробьям, не?
NikZol, набросал такой вот скрипт. Предположил, что оружие и броня так и остаются сами собой, а делятся только "вещи".
#==============================================================================
# ** Window_ItemCategory
#------------------------------------------------------------------------------
#  This window is for selecting a category of normal items and equipment
# on the item screen or shop screen.
#==============================================================================
 
class Window_ItemCategory < Window_HorzCommand
  #-----------------------------------------------------------------
  # * Get Digit Count
  #--------------------------------------------------------------------------
  alias less_col_max col_max
  def col_max
    return less_col_max + 1 # здесь количество новых категорий
  end
  #--------------------------------------------------------------------------
  # * Create Command List
  #--------------------------------------------------------------------------
  alias make_less_command_list make_command_list
  def make_command_list
    make_less_command_list
    add_command("Test",          :test) # здесь их имена (внешнее, прописанное в инвентаре, и внутреннее, использованное ниже)
  end
end
 
 
#==============================================================================
# ** Window_ItemList
#------------------------------------------------------------------------------
#  This window displays a list of party items on the item screen.
#==============================================================================
 
class Window_ItemList < Window_Selectable
  #--------------------------------------------------------------------------
  # * Include in Item List?
  #--------------------------------------------------------------------------
  def include?(item)
    case @category
    when :item
      item.is_a?(RPG::Item) && !item.key_item? && item.note[/<category: Test>/].nil?
# в скобках и слешах - то, что надо вписать в заметки искомой вещи (т.е. в примере вписать надо <category: Test>
    when :weapon
      item.is_a?(RPG::Weapon)
    when :armor
      item.is_a?(RPG::Armor)
    when :key_item
      item.is_a?(RPG::Item) && item.key_item? && item.note[/<category: Test>/].nil?
    when :test # то самое внутреннее имя, которое мы определили выше
      item.is_a?(RPG::Item) && !item.note[/<category: Test>/].nil?
    else
      false
    end
  end
end
Жуть болотная, на лапках, в тапках и с пулемётом...
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: NikZol

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70078

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • Программист Ruby2 место ГотвОраторУчительПобедитель Сбитой кодировки
Cerberus пишет:
Зеро, из пушки по воробьям, не?
NikZol, набросал такой вот скрипт. Предположил, что оружие и броня так и остаются сами собой, а делятся только "вещи".
#==============================================================================
# ** Window_ItemCategory
#------------------------------------------------------------------------------
#  This window is for selecting a category of normal items and equipment
# on the item screen or shop screen.
#==============================================================================
 
class Window_ItemCategory < Window_HorzCommand
  #-----------------------------------------------------------------
  # * Get Digit Count
  #--------------------------------------------------------------------------
  alias less_col_max col_max
  def col_max
    return less_col_max + 1 # здесь количество новых категорий
  end
  #--------------------------------------------------------------------------
  # * Create Command List
  #--------------------------------------------------------------------------
  alias make_less_command_list make_command_list
  def make_command_list
    make_less_command_list
    add_command("Test",          :test) # здесь их имена (внешнее, прописанное в инвентаре, и внутреннее, использованное ниже)
  end
end
 
 
#==============================================================================
# ** Window_ItemList
#------------------------------------------------------------------------------
#  This window displays a list of party items on the item screen.
#==============================================================================
 
class Window_ItemList < Window_Selectable
  #--------------------------------------------------------------------------
  # * Include in Item List?
  #--------------------------------------------------------------------------
  def include?(item)
    case @category
    when :item
      item.is_a?(RPG::Item) && !item.key_item? && item.note[/<category: Test>/].nil?
# в скобках и слешах - то, что надо вписать в заметки искомой вещи (т.е. в примере вписать надо <category: Test>
    when :weapon
      item.is_a?(RPG::Weapon)
    when :armor
      item.is_a?(RPG::Armor)
    when :key_item
      item.is_a?(RPG::Item) && item.key_item? && item.note[/<category: Test>/].nil?
    when :test # то самое внутреннее имя, которое мы определили выше
      item.is_a?(RPG::Item) && !item.note[/<category: Test>/].nil?
    else
      false
    end
  end
end
Причем придется читать все комментарии в коде, чтобы все вышло. А вообще придется заменить 1 команду, и 3 регулярки, которые /<category: Test>/ . Затем как обычно писать в заметки к предмету.
Хотя, чтобы было попроще, можно заменить только в команде слово в кавычках, а затем в заметках просто писать <category: Test> .
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: NikZol

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70084

  • NikZol
  • NikZol аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 86
  • Спасибо получено: 116
  • Проект месяца 2 местоПроект месяца 1 местоПроект месяца 3 место
Отлично, все работает. Спасибо огромное, отдельное - товарищу Cerberus) Все заработало) :whistle:
Актуальный проект: MV Project Village

Группа проекта Вконтакте: QuickLoadGames
Администратор запретил публиковать записи гостям.

[VX Ace] Как создать новую категорию в инвентаре? 9 года 10 мес. назад #70090

  • Cerberus
  • Cerberus аватар
  • Вне сайта
  • Модератор
  • Собака злая
  • Сообщений: 2269
  • Спасибо получено: 1182
  • 3 место2 место 2 место Сбитая кодировкаПроект месяца 1 местоОрганизатор конкурсовПисатель 3 местоПрограммист JavaScript Проект месяца 2 местоПобедитель Сбитой кодировки3 место Готв
Амфил, признаю, можно было вынести всё в конфигурацию, но не хотелось городить отдельный модуль.
Жуть болотная, на лапках, в тапках и с пулемётом...
Администратор запретил публиковать записи гостям.
Модераторы: NeKotZima
Время создания страницы: 0.191 секунд