Хорошо! Хорошо!:  0
Плохо! Плохо!:  0
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 14

Тема: Чары VX в XP стиле

  1. #1
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию Чары VX в XP стиле

    Кто сможет переделать чары в ВХ в ХР стиль?
    Очень надо.
    Заранее спасибо.


  2. #2
    Создатель Аватар для Рольф
    Информация о пользователе
    Регистрация
    14.04.2008
    Адрес
    Южно- Сахалинск/Пенза
    Сообщений
    10,099
    Записей в дневнике
    2
    Репутация: 108 Добавить или отнять репутацию

    По умолчанию

    Вроде где-то были переделанные. Если вспомню то напишу.

  3. #3
    Маститый Аватар для Рыб
    Информация о пользователе
    Регистрация
    12.11.2008
    Адрес
    [ДАННЫЕ УДАЛЕНЫ]
    Сообщений
    1,421
    Записей в дневнике
    50
    Репутация: 55 Добавить или отнять репутацию

    По умолчанию

    Скрипт: Vx To Xp Char Converter
    Автор: game_guy
    Мейкер: Rpg Maker™ VX
    Описание: Скрипт конвертирует чарсеты формата VX(3х4 фрейма или 12х8 фреймов) в формат XP (4x4 фрейма)
    Скирншоты:


    Спойлер Скрипт:
    #================================================= ==============================
    #================================================= ==============================
    # Vx To Xp Char Converter
    # Version 1.0
    # Author game_guy
    #-------------------------------------------------------------------------------
    # Intro
    # Converts the little vx guys to xp format.
    #
    # Features
    # Converts the 12x8 frame chars (ones with 8 people)
    # Converts the 3x4 frame chars (the single person)
    #
    # Instructions
    # Just place character files in the Chars/12x8 folder for 12x8 chars.
    # Place files in Chars/3x4 folder for 3x4 chars.
    # Then run the game, it'll convert it for you.
    #
    # Credits
    # game_guy ~ for making it
    # Fantasist ~ teaching me how to get files from folder, and how to use bitmap to
    # png code
    # 66rpg ~ for their bitmap to png code
    #
    #================================================= ==============================
    =begin
    ================================================== ============================
    Bitmap to PNG By 轮回者
    ================================================== ============================

    对Bitmap对象直接使用

    bitmap_obj.make_png(name[, path])

    name:保存文件名
    path:保存路径

    感谢66、夏娜、金圭子的提醒和帮助!

    ================================================== ============================
    =end

    module Zlib
    class Png_File < GzipWriter
    #--------------------------------------------------------------------------
    # ● 主处理
    #--------------------------------------------------------------------------
    def make_png(bitmap_Fx,mode)
    @mode = mode
    @bitmap_Fx = bitmap_Fx
    self.write(make_header)
    self.write(make_ihdr)
    self.write(make_idat)
    self.write(make_iend)
    end
    #--------------------------------------------------------------------------
    # ● PNG文件头数据块
    #--------------------------------------------------------------------------
    def make_header
    return [0x89,0x50,0x4e,0x47,0x0d,0x0a,0x1a,0x0a].pack("C*")
    end
    #--------------------------------------------------------------------------
    # ● PNG文件情报头数据块(IHDR)
    #--------------------------------------------------------------------------
    def make_ihdr
    ih_size = [13].pack("N")
    ih_sign = "IHDR"
    ih_width = [@bitmap_Fx.width].pack("N")
    ih_height = [@bitmap_Fx.height].pack("N")
    ih_bit_depth = [8].pack("C")
    ih_color_type = [6].pack("C")
    ih_compression_method = [0].pack("C")
    ih_filter_method = [0].pack("C")
    ih_interlace_method = [0].pack("C")
    string = ih_sign + ih_width + ih_height + ih_bit_depth + ih_color_type +
    ih_compression_method + ih_filter_method + ih_interlace_method
    ih_crc = [Zlib.crc32(string)].pack("N")
    return ih_size + string + ih_crc
    end
    #--------------------------------------------------------------------------
    # ● 生成图像数据(IDAT)
    #--------------------------------------------------------------------------
    def make_idat
    header = "\x49\x44\x41\x54"
    case @mode # 请54~
    when 1
    data = make_bitmap_data#1
    else
    data = make_bitmap_data
    end
    data = Zlib:eflate.deflate(data, 8)
    crc = [Zlib.crc32(header + data)].pack("N")
    size = [data.length].pack("N")
    return size + header + data + crc
    end
    #--------------------------------------------------------------------------
    # ● 从Bitmap对象中生成图像数据 mode 1(请54~)
    #--------------------------------------------------------------------------
    def make_bitmap_data1
    w = @bitmap_Fx.width
    h = @bitmap_Fx.height
    data = []
    for y in 0...h
    data.push(0)
    for x in 0...w
    color = @bitmap_Fx.get_pixel(x, y)
    red = color.red
    green = color.green
    blue = color.blue
    alpha = color.alpha
    data.push(red)
    data.push(green)
    data.push(blue)
    data.push(alpha)
    end
    end
    return data.pack("C*")
    end
    #--------------------------------------------------------------------------
    # ● 从Bitmap对象中生成图像数据 mode 0
    #--------------------------------------------------------------------------
    def make_bitmap_data
    gz = Zlib::GzipWriter.open('hoge.gz')
    t_Fx = 0
    w = @bitmap_Fx.width
    h = @bitmap_Fx.height
    data = []
    for y in 0...h
    data.push(0)
    for x in 0...w
    t_Fx += 1
    if t_Fx % 10000 == 0
    Graphics.update
    end
    if t_Fx % 100000 == 0
    s = data.pack("C*")
    gz.write(s)
    data.clear
    #GC.start
    end
    color = @bitmap_Fx.get_pixel(x, y)
    red = color.red
    green = color.green
    blue = color.blue
    alpha = color.alpha
    data.push(red)
    data.push(green)
    data.push(blue)
    data.push(alpha)
    end
    end
    s = data.pack("C*")
    gz.write(s)
    gz.close
    data.clear
    gz = Zlib::GzipReader.open('hoge.gz')
    data = gz.read
    gz.close
    File.delete('hoge.gz')
    return data
    end
    #--------------------------------------------------------------------------
    # ● PNG文件尾数据块(IEND)
    #--------------------------------------------------------------------------
    def make_iend
    ie_size = [0].pack("N")
    ie_sign = "IEND"
    ie_crc = [Zlib.crc32(ie_sign)].pack("N")
    return ie_size + ie_sign + ie_crc
    end
    end
    end
    #================================================= =============================
    # ■ Bitmap
    #------------------------------------------------------------------------------
    #  关联到Bitmap。
    #================================================= =============================
    class Bitmap
    #--------------------------------------------------------------------------
    # ● 关联
    #--------------------------------------------------------------------------
    def make_png(name="like", path="",mode=0)
    make_dir(path) if path != ""
    Zlib::Png_File.open("temp.gz") {|gz|
    gz.make_png(self,mode)
    }
    Zlib::GzipReader.open("temp.gz") {|gz|
    $read = gz.read
    }
    f = File.open(path + name + ".png","wb")
    f.write($read)
    f.close
    File.delete('temp.gz')
    end
    #--------------------------------------------------------------------------
    # ● 生成保存路径
    #--------------------------------------------------------------------------
    def make_dir(path)
    dir = path.split("/")
    for i in 0...dir.size
    unless dir == "."
    add_dir = dir[0..i].join("/")
    begin
    Dir.mkdir(add_dir)
    rescue
    end
    end
    end
    end
    end
    module GameGuy
    def self.vxconvert(file)
    begin
    char = GameGuy.character(file, 0)
    rescue
    $skipped += 1
    return
    end
    width = char.width / 4
    height = char.height / 2
    vxwidth = width / 3
    index = 0
    xx = 0
    yy = 0
    unless FileTest.directory?("Converted/#{file}/")
    Dir.mkdir("Converted/#{file}/")
    end
    loop do
    bitmap = Bitmap.new(width + vxwidth, height)
    rect1 = Rect.new(xx+vxwidth, yy, vxwidth, height)
    bitmap.blt(0, 0, char, rect1)
    rect2 = Rect.new(xx, yy, width, height)
    bitmap.blt(vxwidth, 0, char, rect2)
    bitmap.make_png("#{file} #{index}", "Converted/#{file}/")
    bitmap.dispose
    bitmap = nil
    if index == 7
    $converted += 1
    break
    end
    index += 1
    case index
    when 0,4
    xx = width*0
    when 1,5
    xx = width*1
    when 2,6
    xx = width*2
    when 3,7
    xx = width*3
    end
    if index == 4
    yy = height
    end
    end
    end
    def self.svxconvert(file)
    begin
    char = GameGuy.scharacter(file, 0)
    rescue
    $skipped += 1
    return
    end
    width = char.width / 3
    height = char.height
    bitmap = Bitmap.new(width * 4, height)
    rect1 = Rect.new(width, 0, width, height)
    bitmap.blt(0, 0, char, rect1)
    rect2 = Rect.new(0, 0, width * 3, height)
    bitmap.blt(width, 0, char, rect2)
    unless FileTest.directory?("Converted/#{file}/")
    Dir.mkdir("Converted/#{file}/")
    end
    bitmap.make_png("#{file}", "Converted/#{file}/")
    $converted += 1
    end
    end
    module GameGuy
    @cache = {}
    def self.load_bitmap(folder_name, filename, hue = 0)
    path = folder_name + filename
    if not @cache.include?(path) or @cache[path].disposed?
    if filename != ""
    @cache[path] = Bitmap.new(path)
    else
    @cache[path] = Bitmap.new(32, 32)
    end
    end
    if hue == 0
    @cache[path]
    else
    key = [path, hue]
    if not @cache.include?(key) or @cache[key].disposed?
    @cache[key] = @cache[path].clone
    @cache[key].hue_change(hue)
    end
    @cache[key]
    end
    end
    def self.character(filename, hue)
    self.load_bitmap("Chars/12x8/", filename, hue)
    end
    def self.scharacter(filename, hue)
    self.load_bitmap("Chars/3x4/", filename, hue)
    end
    end

    begin

    unless FileTest.directory?("Converted")
    Dir.mkdir("Converted")
    end
    $time = Time.now
    $converted = 0
    $skipped = 0
    @names = []
    dir = Dir.new('Chars/12x8/')
    dir.entries.each {|file| next unless file.include?('.png')
    @names.push(file); GameGuy.character(file, 0)}
    for i in 0...@names.size
    GameGuy.vxconvert(@names[i])
    end
    @names = []
    dir = Dir.new('Chars/3x4/')
    dir.entries.each {|file| next unless file.include?('.png')
    @names.push(file); GameGuy.scharacter(file, 0)}
    for i in 0...@names.size
    GameGuy.svxconvert(@names[i])
    end
    print "Converted #{$converted} files in #{Time.now - $time} seconds" + "\n" +
    "Total Skipped Files: #{$skipped}"
    exit
    end


    Взято с chaos-project.com
    Последний раз редактировалось Рыб; 06.03.2011 в 17:38. Причина: Забыл поставить слово: "чарсеты"
    Twitch <- Тут иногда делаю вид, что умею играть или работать, в прямом эфире
    GitLab <- Тут иногда делаю вид, что умею программировать
    Github <- Еще какая-то дичь, тут иногда появляется, но с мукером не связана
    Notion<- Тут иногда делаю вид что умею планировать

  4. #4
    Авторитет Аватар для Hosse
    Информация о пользователе
    Регистрация
    23.03.2010
    Адрес
    Королёв
    Сообщений
    1,603
    Записей в дневнике
    54
    Репутация: 28 Добавить или отнять репутацию

    По умолчанию

    эээм... это ручками за 5 секунд делается...
    или тебе в плане роста нужно?
    Творчество, никак с играми не связанное:
    https://vk.com/amjee
    https://vk.com/r2space
    Моя рожа и всякий рэпчик живьём: https://www.instagram.com/rap_amjeenickyry/

  5. #5
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию

    В плане роста
    я делаю игру на вх и мне не нравяться чары.
    Но фейсы хочеться оставить


  6. #6
    Маститый Аватар для Nalia
    Информация о пользователе
    Регистрация
    18.09.2009
    Адрес
    Пенза
    Сообщений
    1,412
    Записей в дневнике
    105
    Репутация: 87 Добавить или отнять репутацию

    По умолчанию

    Скачай из фалового архива Чарозу (Charazou? В общем, как-то так навается, Чару-цукуро, одним словом). Там есть темплейты чаров в Мак-стиле. Они слегка другой комплекции, чем ХРшные, но размером с них. И есть аналоги почти всех чаров ВХ (собственно чего товарисч Мак и добивался-- создать библиотеку полноразмерых чаров на ХР).
    Я отрицаю вашу реальность и заменю её своей. (c) Джон Адам Севидж

    Надо работать, работать надо. Ремешки под касками затянуть потуже, шинели в порядок привести, в кобуру засунуть трудолюбие 36 калибра и марш за мейкер! (с) Tall Men

  7. #7
    Маститый Аватар для Nalia
    Информация о пользователе
    Регистрация
    18.09.2009
    Адрес
    Пенза
    Сообщений
    1,412
    Записей в дневнике
    105
    Репутация: 87 Добавить или отнять репутацию

    По умолчанию

    Впрочем, чего-то я сегодня добрая (а может, просто рада, что ты наконец-то начал использовать хоть точки и прочие знаки конца предложения), так что лови архив с маками: http://zalil.ru/30626517
    Я отрицаю вашу реальность и заменю её своей. (c) Джон Адам Севидж

    Надо работать, работать надо. Ремешки под касками затянуть потуже, шинели в порядок привести, в кобуру засунуть трудолюбие 36 калибра и марш за мейкер! (с) Tall Men

  8. #8
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию

    Ого, спасибо тебе большое.


  9. #9
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию

    Скрипт: Vx To Xp Char Converter
    Автор: game_guy
    Мейкер: Rpg Maker™ VX
    Описание: Скрипт конвертирует чарсеты формата VX(3х4 фрейма или 12х8 фреймов) в формат XP (4x4 фрейма)
    Скирншоты:


    Спойлер Скрипт:


    Взято с chaos-project.com
    А можно такой же, только наоборот(чары xp обрезаються как для вх)
    А то в фотошопе долго и сложно.(лучше прогу)


  10. #10
    Маститый Аватар для Nalia
    Информация о пользователе
    Регистрация
    18.09.2009
    Адрес
    Пенза
    Сообщений
    1,412
    Записей в дневнике
    105
    Репутация: 87 Добавить или отнять репутацию

    По умолчанию

    А то в фотошопе долго и сложно.
    C чего это? Ставишь сетку 32х32, обрезаешь крайний левый ряд-- и ВХ-чар готов.
    Я отрицаю вашу реальность и заменю её своей. (c) Джон Адам Севидж

    Надо работать, работать надо. Ремешки под касками затянуть потуже, шинели в порядок привести, в кобуру засунуть трудолюбие 36 калибра и марш за мейкер! (с) Tall Men

Страница 1 из 2 12 ПоследняяПоследняя

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

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

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

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

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

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

Ваши права

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