Плохо! Плохо!:  0
Показано с 1 по 6 из 6

Тема: Тайлсет-организатор

  1. #1

    По умолчанию Тайлсет-организатор

    Тайлсет-организатор

    Автор: strelokhalfer
    Версия скрипта: 1.0
    Версия мейкера: VX Ace
    Тип: Позволяет переместить графику тайлсетов в подпапки, упрощая навигацию.
    Условия использования/Лицензия: Любой проект, только укажите меня в благодарностях.

    Описание:
    Лично меня напрягает, что ресурсы в мукере не могут лежать в подпапках. Теперь тайлсеты могут.

    Настройки:

    Файлы в папке тайлсетов должны называться по шаблону:
    [id][папка][тип тайла].png
    id - номер тайлсета в базе данных
    папка - имя папки для тайлсета
    тип тайла - Тип вкладки тайлсета(например A1, C, E)

    Запустите проект и скрипт переместит файлы в папки,
    обновив пути в файле тайлсета. Если вы запустили проект через
    редактор, перезапустите его, если спросит сохранить проект - Нет.
    После, вы можете спокойно редактировать базу данных
    (кроме графики, так как придется повторять процедуру)
    Вы можете поместить файлы тайлсета в разные папки
    (например, если файл используется в нескольких тайлсетах)

    Пример:
    [2][Exterior][A1].png

    Файл будет перемещен в подпапку Exterior и переименован в A1.

    Код:
    Код:
    %Q{╔═══════════════════════════════════════════════════════════════════════════╗
    ╔══╝                Tileset organizer | Тайлсет-организатор                    ║
    ╠══════════════════════════════════════════════════════════════════════════════╣
    ║ ┌───────────────────────────┬──────────────────────────────────────────────┐ ║
    ║ │       Author | Автор      │                 strelokhalfer                │ ║
    ║ ├───────────────────────────┼──────────────────────────────────────────────┤ ║
    ║ │      Contacts | Связь     │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │  E-mail: strelokhalfer@gmail.com                                         │ ║
    ║ │  Site | Сайт: rm-dev.info                                                │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │      Version | Версия     │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │ 1.0 - Release | Релиз                                                    │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │     License | Лицензия    │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │ You can | Вы можете                                                      │ ║
    ║ │    Use this script in free/commercial project                            │ ║
    ║ │      Использовать скрипт в бесплатных и коммерческих проектах            │ ║
    ║ │    Edit this script if you need                                          │ ║
    ║ │      Изменять скрипт, если нужно                                         │ ║
    ║ │    Distribute anywhere                                                   │ ║
    ║ │      Распространять где хотите                                           │ ║
    ║ │                                                                          │ ║
    ║ │ You CANT | Вы НЕ можете                                                  │ ║
    ║ │    Cut this license                                                      │ ║
    ║ │      Удалять эту лицензию                                                │ ║
    ║ │    Sell this script                                                      │ ║
    ║ │      Продавать этот скрипт                                               │ ║
    ║ │                                                                          │ ║
    ║ │ You CANT | Вы НЕ можете                                                  │ ║
    ║ │    Cut this license                                                      │ ║
    ║ │      Удалять эту лицензию                                                │ ║
    ║ │    Sell this script                                                      │ ║
    ║ │      Продавать этот скрипт                                               │ ║
    ║ │                                                                          │ ║    
    ║ │ You must | Вы ДОЛЖНЫ                                                     │ ║
    ║ │    Credit me(strelokhalfer)                                              │ ║
    ║ │      Указать меня(strelokhalfer) в благодарностях                        │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │ How to | Как использовать │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │    Files in the Tileset folder should be named by template:              │ ║
    ║ │      [id][folder][tile type].png                                         │ ║
    ║ │        id - tileset number in Database                                   │ ║
    ║ │        folder - folder name for tileset                                  │ ║
    ║ │        tile type - tile tab name(like A1, C, E)                          │ ║
    ║ │    Файлы в папке тайлсетов должны называться по шаблону:                 │ ║
    ║ │      [id][папка][тип тайла].png                                          │ ║
    ║ │        id - номер тайлсета в базе данных                                 │ ║
    ║ │        папка - имя папки для тайлсета                                    │ ║
    ║ │        тип тайла - Тип вкладки тайлсета(например A1, C, E)               │ ║
    ║ │                                                                          │ ║
    ║ │    Just run project and files will moved to folders,                     │ ║
    ║ │    tileset data will be updated. If you run project from Editor,         │ ║
    ║ │    close them without saving, and restart.                               │ ║
    ║ │    You can free edit Database and even Tilesets, exept tileset files.    │ ║
    ║ │    You can store one tileset in different folders.                       │ ║
    ║ │                                                                          │ ║ 
    ║ │    Запустите проект и скрипт переместит файлы в папки,                   │ ║
    ║ │    обновив пути в файле тайлсета. Если вы запустили проект через         │ ║
    ║ │    редактор, перезапустите его, если спросит сохранить проект - Нет.     │ ║
    ║ │    После, вы можете спокойно редактировать базу данных и тайлсеты        │ ║
    ║ │    (кроме графики, так как придется повторять процедуру)                 │ ║
    ║ │    Вы можете поместить файлы тайлсета в разные папки                     │ ║
    ║ │    (например, если файл используется в нескольких тайлсетах)             │ ║
    ║ │                                                                         ┌┘ ║
    ║ └─────────────────────────────────────────────────────────────────────────┘ ╔╝
    ╚═════════════════════════════════════════════════════════════════════════════╝}
    module Halfer
      TileTypes = [:A1, :A2, :A3, :A4, :A5, :B, :C, :D, :E]
    end
    tilehash = {}
    Dir["Graphics/Tilesets/*.png"].each{|file|
     file.slice!("Graphics/Tilesets/") 
     file.sub(/\[(\d+)\]\[(\w+)\]\[(\w+)\]/){|str|
      if Halfer::TileTypes.include?($3.upcase.to_sym)
        tilehash[$1.to_i] ||= {} 
        tilehash[$1.to_i][$3.upcase.to_sym] = $2.to_sym
        Dir.mkdir "Graphics/Tilesets/#{$2}"
        File.rename("Graphics/Tilesets/#{file}", "Graphics/Tilesets/#{$2}/#{$3.upcase}.png")
      end
     }
    }
    if !tilehash.empty?
      tilesets = load_data("Data/Tilesets.rvdata2")
      tilehash.each_pair{ |key, value|
        value.each_pair{ |type, folder|
          tilesets[key].tileset_names[Halfer::TileTypes.index(type)] = "#{folder}/#{type}"
        }
      }
      save_data(tilesets, "Data/Tilesets.rvdata2")
      tilesets = nil
      tilehash = nil
    end
    Скриншоты:
    tilesets.png

    Скачать демо:
    нету

  2. #2
    Пользователь Аватар для RpgMakerUser
    Информация о пользователе
    Регистрация
    24.05.2015
    Сообщений
    40
    Репутация: 1 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от strelokhalfer Посмотреть сообщение
    Тайлсет-организатор

    Автор: strelokhalfer
    Версия скрипта: 1.0
    Версия мейкера: VX Ace
    Тип: Позволяет переместить графику тайлсетов в подпапки, упрощая навигацию.
    Условия использования/Лицензия: Любой проект, только укажите меня в благодарностях.

    Описание:
    Лично меня напрягает, что ресурсы в мукере не могут лежать в подпапках. Теперь тайлсеты могут.

    Настройки:

    Файлы в папке тайлсетов должны называться по шаблону:
    [id][папка][тип тайла].png
    id - номер тайлсета в базе данных
    папка - имя папки для тайлсета
    тип тайла - Тип вкладки тайлсета(например A1, C, E)

    Запустите проект и скрипт переместит файлы в папки,
    обновив пути в файле тайлсета. Если вы запустили проект через
    редактор, перезапустите его, если спросит сохранить проект - Нет.
    После, вы можете спокойно редактировать базу данных
    (кроме графики, так как придется повторять процедуру)
    Вы можете поместить файлы тайлсета в разные папки
    (например, если файл используется в нескольких тайлсетах)

    Пример:
    [2][Exterior][A1].png

    Файл будет перемещен в подпапку Exterior и переименован в A1.

    Код:
    Код:
    %Q{╔═══════════════════════════════════════════════════════════════════════════╗
    ╔══╝                Tileset organizer | Тайлсет-организатор                    ║
    ╠══════════════════════════════════════════════════════════════════════════════╣
    ║ ┌───────────────────────────┬──────────────────────────────────────────────┐ ║
    ║ │       Author | Автор      │                 strelokhalfer                │ ║
    ║ ├───────────────────────────┼──────────────────────────────────────────────┤ ║
    ║ │      Contacts | Связь     │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │  E-mail: strelokhalfer@gmail.com                                         │ ║
    ║ │  Site | Сайт: rm-dev.info                                                │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │      Version | Версия     │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │ 1.0 - Release | Релиз                                                    │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │     License | Лицензия    │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │ You can | Вы можете                                                      │ ║
    ║ │    Use this script in free/commercial project                            │ ║
    ║ │      Использовать скрипт в бесплатных и коммерческих проектах            │ ║
    ║ │    Edit this script if you need                                          │ ║
    ║ │      Изменять скрипт, если нужно                                         │ ║
    ║ │    Distribute anywhere                                                   │ ║
    ║ │      Распространять где хотите                                           │ ║
    ║ │                                                                          │ ║
    ║ │ You CANT | Вы НЕ можете                                                  │ ║
    ║ │    Cut this license                                                      │ ║
    ║ │      Удалять эту лицензию                                                │ ║
    ║ │    Sell this script                                                      │ ║
    ║ │      Продавать этот скрипт                                               │ ║
    ║ │                                                                          │ ║
    ║ │ You CANT | Вы НЕ можете                                                  │ ║
    ║ │    Cut this license                                                      │ ║
    ║ │      Удалять эту лицензию                                                │ ║
    ║ │    Sell this script                                                      │ ║
    ║ │      Продавать этот скрипт                                               │ ║
    ║ │                                                                          │ ║    
    ║ │ You must | Вы ДОЛЖНЫ                                                     │ ║
    ║ │    Credit me(strelokhalfer)                                              │ ║
    ║ │      Указать меня(strelokhalfer) в благодарностях                        │ ║
    ║ ├───────────────────────────┬──────────────────────────────────────────────┤ ║
    ║ │ How to | Как использовать │                                              │ ║
    ║ ├───────────────────────────┘                                              │ ║
    ║ │    Files in the Tileset folder should be named by template:              │ ║
    ║ │      [id][folder][tile type].png                                         │ ║
    ║ │        id - tileset number in Database                                   │ ║
    ║ │        folder - folder name for tileset                                  │ ║
    ║ │        tile type - tile tab name(like A1, C, E)                          │ ║
    ║ │    Файлы в папке тайлсетов должны называться по шаблону:                 │ ║
    ║ │      [id][папка][тип тайла].png                                          │ ║
    ║ │        id - номер тайлсета в базе данных                                 │ ║
    ║ │        папка - имя папки для тайлсета                                    │ ║
    ║ │        тип тайла - Тип вкладки тайлсета(например A1, C, E)               │ ║
    ║ │                                                                          │ ║
    ║ │    Just run project and files will moved to folders,                     │ ║
    ║ │    tileset data will be updated. If you run project from Editor,         │ ║
    ║ │    close them without saving, and restart.                               │ ║
    ║ │    You can free edit Database and even Tilesets, exept tileset files.    │ ║
    ║ │    You can store one tileset in different folders.                       │ ║
    ║ │                                                                          │ ║ 
    ║ │    Запустите проект и скрипт переместит файлы в папки,                   │ ║
    ║ │    обновив пути в файле тайлсета. Если вы запустили проект через         │ ║
    ║ │    редактор, перезапустите его, если спросит сохранить проект - Нет.     │ ║
    ║ │    После, вы можете спокойно редактировать базу данных и тайлсеты        │ ║
    ║ │    (кроме графики, так как придется повторять процедуру)                 │ ║
    ║ │    Вы можете поместить файлы тайлсета в разные папки                     │ ║
    ║ │    (например, если файл используется в нескольких тайлсетах)             │ ║
    ║ │                                                                         ┌┘ ║
    ║ └─────────────────────────────────────────────────────────────────────────┘ ╔╝
    ╚═════════════════════════════════════════════════════════════════════════════╝}
    module Halfer
      TileTypes = [:A1, :A2, :A3, :A4, :A5, :B, :C, :D, :E]
    end
    tilehash = {}
    Dir["Graphics/Tilesets/*.png"].each{|file|
     file.slice!("Graphics/Tilesets/") 
     file.sub(/\[(\d+)\]\[(\w+)\]\[(\w+)\]/){|str|
      if Halfer::TileTypes.include?($3.upcase.to_sym)
        tilehash[$1.to_i] ||= {} 
        tilehash[$1.to_i][$3.upcase.to_sym] = $2.to_sym
        Dir.mkdir "Graphics/Tilesets/#{$2}"
        File.rename("Graphics/Tilesets/#{file}", "Graphics/Tilesets/#{$2}/#{$3.upcase}.png")
      end
     }
    }
    if !tilehash.empty?
      tilesets = load_data("Data/Tilesets.rvdata2")
      tilehash.each_pair{ |key, value|
        value.each_pair{ |type, folder|
          tilesets[key].tileset_names[Halfer::TileTypes.index(type)] = "#{folder}/#{type}"
        }
      }
      save_data(tilesets, "Data/Tilesets.rvdata2")
      tilesets = nil
      tilehash = nil
    end
    Скриншоты:
    tilesets.png

    Скачать демо:
    нету
    Отличная идея может кому-нибудь пригодится! Меня напрягает другое что карты лежат просто в папке данные, а не в отдельной папке!

  3. #3

    По умолчанию

    Вцелом я писал скрипт ночью и утром подумал, что можно попробовать реорганизовать и другие данные

  4. #4
    Пользователь Аватар для RpgMakerUser
    Информация о пользователе
    Регистрация
    24.05.2015
    Сообщений
    40
    Репутация: 1 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от strelokhalfer Посмотреть сообщение
    Вцелом я писал скрипт ночью и утром подумал, что можно попробовать реорганизовать и другие данные
    Отличная идея можешь начать с карт!

  5. #5

    По умолчанию

    Карты не получится, их редактор считывает напрямую.

  6. #6
    Пользователь Аватар для RpgMakerUser
    Информация о пользователе
    Регистрация
    24.05.2015
    Сообщений
    40
    Репутация: 1 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от strelokhalfer Посмотреть сообщение
    Карты не получится, их редактор считывает напрямую.
    Понятно! Жаль конечно, но попробовать можно! Как говорится попытка не пытка!

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •