Làm sao để vẽ Char

IchiharaShoukoIchiharaShouko Posts: 840Registered
Em thấy cái tool vẽ char trong RPG VXA làm em không ưng ý lắm, vậy thì làm sao để vẽ char ạ?
Mà làm sao để hiện ảnh đại diện của nhân vật như trong Angel Of Death ạ? Ý là ảnh toàn thân của nhân vật ấy....
«1

Comments

  • NagiNagi Posts: 589Registered
    Mấy cái đó người ta tự vẽ hết đó ạ. Photoshop, Paintools SAI, v.v... :D
  • HydraHydra Posts: 1,004Moderators
    Không có kinh nghiệm vẽ Char lắm.
    Nhưng vẽ Char thì phải để ý đến cái mặt nạ của anh. Vì Char có cái mặt nạ là điểm nhấn.

    latest?cb=20150710020137
  • HydraHydra Posts: 1,004Moderators
    Ảnh toàn thân thì chắc phải dùng lệnh Show Pictures rồi canh cho nó đứng ở hai bên lời thoại thôi
  • IchiharaShoukoIchiharaShouko Posts: 840Registered
    Hydra wrote:
    Ảnh toàn thân thì chắc phải dùng lệnh Show Pictures rồi canh cho nó đứng ở hai bên lời thoại thôi

    Không, ý em là mở mục Item hay Save thì nó hiện ra ý :V Như game Angel Of Death
  • NagiNagi Posts: 589Registered
    Hydra wrote:
    Ảnh toàn thân thì chắc phải dùng lệnh Show Pictures rồi canh cho nó đứng ở hai bên lời thoại thôi

    Không, ý em là mở mục Item hay Save thì nó hiện ra ý :V Như game Angel Of Death
    Như game AoD thì xài script của AoD,  trong bản Việt Hóa có chứa 2 script như sau:
    Cái đầu là cho Menu, cái sau là Save:
    Sử dụng thì xài translate của google để dịch nhé. 
    [php]#==============================================================================
    # ■ メニュー画面改造
    #
    # 立ち絵を中心にしたメニュー画面です
    #
    # 立ち絵は Graphics/Pictures の
    # Actor+アクターID のファイルを使用します(例:アクター1 なら Actor1.png)
    #
    # 立ち絵の標準サイズは 4人表示用なら、136 × 324 です。
    # これより大きい場合は左右(または上下)が削られ、小さい場合は余白が出来ます。
    #==============================================================================

    class Scene_Menu
     #
     # ● 開始処理
     #
     alias :_ktakaki00_start :start
     def start
       _ktakaki00_start
       create_map_name_window
     end
     #
     # ● ゴールドウィンドウの作成
     #
     def create_gold_window
       @gold_window = Window_Gold.new
       @gold_window.x = Graphics.width  - @gold_window.width
       @gold_window.y = Graphics.height - @gold_window.height
       @gold_window.z = 200
     end
     #
     # ● ステータスウィンドウ(アクターウィンドウ)の作成
     #
     def create_status_window
       @status_window = Window_HorzActorStatus.new(0, @command_window.height)
     end
     #
     # ● 地名表示ウィンドウの作成
     #
     def create_map_name_window
       @map_name_window  = Window_MenuMapName.new(600, @gold_window.y)
     end
    end

    class Window_MenuMapName < Window_Base
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       super(x, y, Graphics.width - 160, fitting_height(1))
       refresh
     end
     #
     # ● リフレッシュ
     #
     def refresh
       contents.clear
       draw_text(4, 0, contents_width, line_height, $game_map.display_name)
     end
    end

    class Window_MenuCommand
     #
     # ● 桁数の取得
     #
     def col_max
       3
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● コマンドリストの作成
     #    持ち物、セーブ、終了の3つのみ表示
     #
     def make_command_list
       add_command(Vocab::item, :item, main_commands_enabled)
       add_save_command
       add_game_end_command
     end
    end

    class Game_Actor
     #
     # ● 公開インスタンス変数
     #
     attr_accessor :m_picture             # 立ち絵
     #
     # ● セットアップ
     #
     alias :_ktakaki00_setup :setup
     def setup(actor_id)
       _ktakaki00_setup(actor_id)
       @m_picture = "Actor#{actor_id}"
     end
    end

    class Window_HorzActorStatus < Window_HorzCommand
     #
     # ● 公開インスタンス変数
     #
     attr_reader   :pending_index            # 保留位置(並び替え用)
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       @pending_index = -1
       @org_y = y
       super
       self.opacity = 0
       unselect
       deactivate
     end
     #
     # ● 項目数の取得
     #
     def item_max
       $game_party.members.size
     end
     #
     # ● 桁数の取得
     #
     def col_max
       2
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● 横に項目が並ぶときの空白の幅を取得
     #
     def spacing
       0
     end
     #
     # ● 標準パディングサイズの取得
     #
     def standard_padding
       0
     end
     #
     # ● 先頭の桁の設定
     #
     def top_col=(col)
       col = 0 if col < 0
       if col > (item_max / visible_line_number) - 1
         col = (item_max / visible_line_number) - 1
       end
       self.ox = col * (item_width + spacing)
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width - standard_padding * 2
     end
     #
     # ● ウィンドウ高さの取得
     #
     def window_height
       Graphics.height - (@org_y + fitting_height(1) + standard_padding * 2)
     end
     #
     # ● 項目の高さを取得
     #
     def item_height
       self.height - standard_padding * 2
     end
     #
     # ● 選択項目の有効状態を取得
     #
     def current_item_enabled?
       true
     end
     #
     # ● 背景色の取得
     #
     def back_color
       Color.new(0, 0, 0)
     end
     #
     # ● 決定ボタンが押されたときの処理
     #
     def process_ok
       super
       $game_party.menu_actor = $game_party.members[index]
     end
     #
     # ● 前回の選択位置を復帰
     #
     def select_last
       select($game_party.menu_actor.index || 0)
     end
     #
     # ● 保留位置(並び替え用)の設定
     #
     def pending_index=(index)
       last_pending_index = @pending_index
       @pending_index = index
       redraw_item(@pending_index)
       redraw_item(last_pending_index)
     end
     #
     # ● 項目の描画
     #
     def draw_item(index)
       actor = $game_party.members[index]
       rect = item_rect_for_text(index)
       draw_item_background(index)
       draw_actor_menu_picture(actor, rect.x, rect.y - 16,
        rect.width + 8, rect.height - rect.y + 8)
     end
     #
     # ● 項目の背景を描画
     #
     def draw_item_background(index)
       if index == @pending_index
         contents.fill_rect(item_rect(index), pending_color)
       end
     end
     #
     # ● アクターの立ち絵描画
     #
     def draw_actor_menu_picture(actor, x, y, width, height)
       bmp = Cache.picture(actor.m_picture)
       src_x = (bmp.width  > width)  ? (bmp.width - width) / 2 : 0
       src_y = (bmp.height > height) ? (bmp.height - height) / 2 : 0
       src_w = (bmp.width  > width)  ? width : bmp.width
       src_h = (bmp.height > height) ? height : bmp.height
       src_rect = Rect.new(src_x, src_y, src_w, src_h)
       dest_x = (bmp.width  > width)  ? x : x + (width - bmp.width) / 2
       dest_y = (bmp.height > height) ? y : y + (height - bmp.height) / 1
       contents.blt(dest_x, dest_y, bmp, src_rect, 255)
       bmp.dispose
     end
    end
    [/php]

    [php]#==============================================================================
    # ■ セーブ画面改良
    #
    # キャラクタの代わりに、顔グラフィックを表示するセーブ画面です。
    # 顔のサイズを広げるため、従来の一画面4行から3行になっています。
    #==============================================================================

    class Scene_File
     #
     # ● 画面内に表示するセーブファイル数を取得
     #
     def visible_max
       return 3
     end
    end

    class << DataManager
     #
     # ● セーブヘッダの作成
     #
     alias :_ktakaki00_make_save_header :make_save_header
     def make_save_header
       header = _ktakaki00_make_save_header
       header[:faces] = $game_party.faces_for_savefile
       header
     end
    end

    class Game_Party
     #
     # ● セーブファイル表示用の顔グラフィック画像の作成
     #
     def faces_for_savefile
       battle_members.map do |actor|
         [actor.face_name, actor.face_index]
       end
     end
    end

    class Window_SaveFile < Window_Base
     #
     # ● パーティキャラの描画
     #
     def draw_party_characters(x, y)
       header = DataManager.load_header(@file_index)
       return unless header
       # 顔グラフィックの設定がある場合
       if header[:faces]
         header[:faces].each_with_index do |data, i|
           y = (contents_height - 96) / 2
           draw_face(data[0], data[1], 100 + i * 108, y)
         end
         return
       end
       # キャラクタを描画する場合
       header[:characters].each_with_index do |data, i|
         draw_character(data[0], data[1], x + i * 48, y)
       end
     end
    end
    [/php]
  • IchiharaShoukoIchiharaShouko Posts: 840Registered
    Nagi wrote:

    Không, ý em là mở mục Item hay Save thì nó hiện ra ý :V Như game Angel Of Death
    Như game AoD thì xài script của AoD,  trong bản Việt Hóa có chứa 2 script như sau:
    Cái đầu là cho Menu, cái sau là Save:
    Sử dụng thì xài translate của google để dịch nhé. 
    [php]#==============================================================================
    # ■ メニュー画面改造
    #
    # 立ち絵を中心にしたメニュー画面です
    #
    # 立ち絵は Graphics/Pictures の
    # Actor+アクターID のファイルを使用します(例:アクター1 なら Actor1.png)
    #
    # 立ち絵の標準サイズは 4人表示用なら、136 × 324 です。
    # これより大きい場合は左右(または上下)が削られ、小さい場合は余白が出来ます。
    #==============================================================================

    class Scene_Menu
     #
     # ● 開始処理
     #
     alias :_ktakaki00_start :start
     def start
       _ktakaki00_start
       create_map_name_window
     end
     #
     # ● ゴールドウィンドウの作成
     #
     def create_gold_window
       @gold_window = Window_Gold.new
       @gold_window.x = Graphics.width  - @gold_window.width
       @gold_window.y = Graphics.height - @gold_window.height
       @gold_window.z = 200
     end
     #
     # ● ステータスウィンドウ(アクターウィンドウ)の作成
     #
     def create_status_window
       @status_window = Window_HorzActorStatus.new(0, @command_window.height)
     end
     #
     # ● 地名表示ウィンドウの作成
     #
     def create_map_name_window
       @map_name_window  = Window_MenuMapName.new(600, @gold_window.y)
     end
    end

    class Window_MenuMapName < Window_Base
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       super(x, y, Graphics.width - 160, fitting_height(1))
       refresh
     end
     #
     # ● リフレッシュ
     #
     def refresh
       contents.clear
       draw_text(4, 0, contents_width, line_height, $game_map.display_name)
     end
    end

    class Window_MenuCommand
     #
     # ● 桁数の取得
     #
     def col_max
       3
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● コマンドリストの作成
     #    持ち物、セーブ、終了の3つのみ表示
     #
     def make_command_list
       add_command(Vocab::item, :item, main_commands_enabled)
       add_save_command
       add_game_end_command
     end
    end

    class Game_Actor
     #
     # ● 公開インスタンス変数
     #
     attr_accessor :m_picture             # 立ち絵
     #
     # ● セットアップ
     #
     alias :_ktakaki00_setup :setup
     def setup(actor_id)
       _ktakaki00_setup(actor_id)
       @m_picture = "Actor#{actor_id}"
     end
    end

    class Window_HorzActorStatus < Window_HorzCommand
     #
     # ● 公開インスタンス変数
     #
     attr_reader   :pending_index            # 保留位置(並び替え用)
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       @pending_index = -1
       @org_y = y
       super
       self.opacity = 0
       unselect
       deactivate
     end
     #
     # ● 項目数の取得
     #
     def item_max
       $game_party.members.size
     end
     #
     # ● 桁数の取得
     #
     def col_max
       2
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● 横に項目が並ぶときの空白の幅を取得
     #
     def spacing
       0
     end
     #
     # ● 標準パディングサイズの取得
     #
     def standard_padding
       0
     end
     #
     # ● 先頭の桁の設定
     #
     def top_col=(col)
       col = 0 if col < 0
       if col > (item_max / visible_line_number) - 1
         col = (item_max / visible_line_number) - 1
       end
       self.ox = col * (item_width + spacing)
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width - standard_padding * 2
     end
     #
     # ● ウィンドウ高さの取得
     #
     def window_height
       Graphics.height - (@org_y + fitting_height(1) + standard_padding * 2)
     end
     #
     # ● 項目の高さを取得
     #
     def item_height
       self.height - standard_padding * 2
     end
     #
     # ● 選択項目の有効状態を取得
     #
     def current_item_enabled?
       true
     end
     #
     # ● 背景色の取得
     #
     def back_color
       Color.new(0, 0, 0)
     end
     #
     # ● 決定ボタンが押されたときの処理
     #
     def process_ok
       super
       $game_party.menu_actor = $game_party.members[index]
     end
     #
     # ● 前回の選択位置を復帰
     #
     def select_last
       select($game_party.menu_actor.index || 0)
     end
     #
     # ● 保留位置(並び替え用)の設定
     #
     def pending_index=(index)
       last_pending_index = @pending_index
       @pending_index = index
       redraw_item(@pending_index)
       redraw_item(last_pending_index)
     end
     #
     # ● 項目の描画
     #
     def draw_item(index)
       actor = $game_party.members[index]
       rect = item_rect_for_text(index)
       draw_item_background(index)
       draw_actor_menu_picture(actor, rect.x, rect.y - 16,
        rect.width + 8, rect.height - rect.y + 8)
     end
     #
     # ● 項目の背景を描画
     #
     def draw_item_background(index)
       if index == @pending_index
         contents.fill_rect(item_rect(index), pending_color)
       end
     end
     #
     # ● アクターの立ち絵描画
     #
     def draw_actor_menu_picture(actor, x, y, width, height)
       bmp = Cache.picture(actor.m_picture)
       src_x = (bmp.width  > width)  ? (bmp.width - width) / 2 : 0
       src_y = (bmp.height > height) ? (bmp.height - height) / 2 : 0
       src_w = (bmp.width  > width)  ? width : bmp.width
       src_h = (bmp.height > height) ? height : bmp.height
       src_rect = Rect.new(src_x, src_y, src_w, src_h)
       dest_x = (bmp.width  > width)  ? x : x + (width - bmp.width) / 2
       dest_y = (bmp.height > height) ? y : y + (height - bmp.height) / 1
       contents.blt(dest_x, dest_y, bmp, src_rect, 255)
       bmp.dispose
     end
    end
    [/php]

    [php]#==============================================================================
    # ■ セーブ画面改良
    #
    # キャラクタの代わりに、顔グラフィックを表示するセーブ画面です。
    # 顔のサイズを広げるため、従来の一画面4行から3行になっています。
    #==============================================================================

    class Scene_File
     #
     # ● 画面内に表示するセーブファイル数を取得
     #
     def visible_max
       return 3
     end
    end

    class << DataManager
     #
     # ● セーブヘッダの作成
     #
     alias :_ktakaki00_make_save_header :make_save_header
     def make_save_header
       header = _ktakaki00_make_save_header
       header[:faces] = $game_party.faces_for_savefile
       header
     end
    end

    class Game_Party
     #
     # ● セーブファイル表示用の顔グラフィック画像の作成
     #
     def faces_for_savefile
       battle_members.map do |actor|
         [actor.face_name, actor.face_index]
       end
     end
    end

    class Window_SaveFile < Window_Base
     #
     # ● パーティキャラの描画
     #
     def draw_party_characters(x, y)
       header = DataManager.load_header(@file_index)
       return unless header
       # 顔グラフィックの設定がある場合
       if header[:faces]
         header[:faces].each_with_index do |data, i|
           y = (contents_height - 96) / 2
           draw_face(data[0], data[1], 100 + i * 108, y)
         end
         return
       end
       # キャラクタを描画する場合
       header[:characters].each_with_index do |data, i|
         draw_character(data[0], data[1], x + i * 48, y)
       end
     end
    end
    [/php]

    Cảm ơn bác <3 <3
  • CryingWOLFCryingWOLF Posts: 1,766Registered
    Dùng Paint. Easy  ;)
  • StupidDonutStupidDonut Posts: 1,196Registered
    Đây là script chứ vẽ char liên quan gì ? ???:D???
  • Dang_KhoaDang_Khoa Posts: 3,861Administrators
    Ơ, thế cuối cùng là dùng script để vẽ char lên màn hình chứ không phải "vẽ" hả
    :my: :my: :my:
  • IchiharaShoukoIchiharaShouko Posts: 840Registered
    Dang_Khoa wrote:
    Ơ, thế cuối cùng là dùng script để vẽ char lên màn hình chứ không phải "vẽ" hả
    :my: :my: :my:

    Một cái là vẽ, còn cái còn lại là để hiện ảnh đại diện trong một system như Angel Of Death ạ
  • IchiharaShoukoIchiharaShouko Posts: 840Registered
    Nagi wrote:

    Không, ý em là mở mục Item hay Save thì nó hiện ra ý :V Như game Angel Of Death
    Như game AoD thì xài script của AoD,  trong bản Việt Hóa có chứa 2 script như sau:
    Cái đầu là cho Menu, cái sau là Save:
    Sử dụng thì xài translate của google để dịch nhé. 
    [php]#==============================================================================
    # ■ メニュー画面改造
    #
    # 立ち絵を中心にしたメニュー画面です
    #
    # 立ち絵は Graphics/Pictures の
    # Actor+アクターID のファイルを使用します(例:アクター1 なら Actor1.png)
    #
    # 立ち絵の標準サイズは 4人表示用なら、136 × 324 です。
    # これより大きい場合は左右(または上下)が削られ、小さい場合は余白が出来ます。
    #==============================================================================

    class Scene_Menu
     #
     # ● 開始処理
     #
     alias :_ktakaki00_start :start
     def start
       _ktakaki00_start
       create_map_name_window
     end
     #
     # ● ゴールドウィンドウの作成
     #
     def create_gold_window
       @gold_window = Window_Gold.new
       @gold_window.x = Graphics.width  - @gold_window.width
       @gold_window.y = Graphics.height - @gold_window.height
       @gold_window.z = 200
     end
     #
     # ● ステータスウィンドウ(アクターウィンドウ)の作成
     #
     def create_status_window
       @status_window = Window_HorzActorStatus.new(0, @command_window.height)
     end
     #
     # ● 地名表示ウィンドウの作成
     #
     def create_map_name_window
       @map_name_window  = Window_MenuMapName.new(600, @gold_window.y)
     end
    end

    class Window_MenuMapName < Window_Base
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       super(x, y, Graphics.width - 160, fitting_height(1))
       refresh
     end
     #
     # ● リフレッシュ
     #
     def refresh
       contents.clear
       draw_text(4, 0, contents_width, line_height, $game_map.display_name)
     end
    end

    class Window_MenuCommand
     #
     # ● 桁数の取得
     #
     def col_max
       3
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● コマンドリストの作成
     #    持ち物、セーブ、終了の3つのみ表示
     #
     def make_command_list
       add_command(Vocab::item, :item, main_commands_enabled)
       add_save_command
       add_game_end_command
     end
    end

    class Game_Actor
     #
     # ● 公開インスタンス変数
     #
     attr_accessor :m_picture             # 立ち絵
     #
     # ● セットアップ
     #
     alias :_ktakaki00_setup :setup
     def setup(actor_id)
       _ktakaki00_setup(actor_id)
       @m_picture = "Actor#{actor_id}"
     end
    end

    class Window_HorzActorStatus < Window_HorzCommand
     #
     # ● 公開インスタンス変数
     #
     attr_reader   :pending_index            # 保留位置(並び替え用)
     #
     # ● オブジェクト初期化
     #
     def initialize(x, y)
       @pending_index = -1
       @org_y = y
       super
       self.opacity = 0
       unselect
       deactivate
     end
     #
     # ● 項目数の取得
     #
     def item_max
       $game_party.members.size
     end
     #
     # ● 桁数の取得
     #
     def col_max
       2
     end
     #
     # ● 表示行数の取得
     #
     def visible_line_number
       1
     end
     #
     # ● 横に項目が並ぶときの空白の幅を取得
     #
     def spacing
       0
     end
     #
     # ● 標準パディングサイズの取得
     #
     def standard_padding
       0
     end
     #
     # ● 先頭の桁の設定
     #
     def top_col=(col)
       col = 0 if col < 0
       if col > (item_max / visible_line_number) - 1
         col = (item_max / visible_line_number) - 1
       end
       self.ox = col * (item_width + spacing)
     end
     #
     # ● ウィンドウ幅の取得
     #
     def window_width
       Graphics.width - standard_padding * 2
     end
     #
     # ● ウィンドウ高さの取得
     #
     def window_height
       Graphics.height - (@org_y + fitting_height(1) + standard_padding * 2)
     end
     #
     # ● 項目の高さを取得
     #
     def item_height
       self.height - standard_padding * 2
     end
     #
     # ● 選択項目の有効状態を取得
     #
     def current_item_enabled?
       true
     end
     #
     # ● 背景色の取得
     #
     def back_color
       Color.new(0, 0, 0)
     end
     #
     # ● 決定ボタンが押されたときの処理
     #
     def process_ok
       super
       $game_party.menu_actor = $game_party.members[index]
     end
     #
     # ● 前回の選択位置を復帰
     #
     def select_last
       select($game_party.menu_actor.index || 0)
     end
     #
     # ● 保留位置(並び替え用)の設定
     #
     def pending_index=(index)
       last_pending_index = @pending_index
       @pending_index = index
       redraw_item(@pending_index)
       redraw_item(last_pending_index)
     end
     #
     # ● 項目の描画
     #
     def draw_item(index)
       actor = $game_party.members[index]
       rect = item_rect_for_text(index)
       draw_item_background(index)
       draw_actor_menu_picture(actor, rect.x, rect.y - 16,
        rect.width + 8, rect.height - rect.y + 8)
     end
     #
     # ● 項目の背景を描画
     #
     def draw_item_background(index)
       if index == @pending_index
         contents.fill_rect(item_rect(index), pending_color)
       end
     end
     #
     # ● アクターの立ち絵描画
     #
     def draw_actor_menu_picture(actor, x, y, width, height)
       bmp = Cache.picture(actor.m_picture)
       src_x = (bmp.width  > width)  ? (bmp.width - width) / 2 : 0
       src_y = (bmp.height > height) ? (bmp.height - height) / 2 : 0
       src_w = (bmp.width  > width)  ? width : bmp.width
       src_h = (bmp.height > height) ? height : bmp.height
       src_rect = Rect.new(src_x, src_y, src_w, src_h)
       dest_x = (bmp.width  > width)  ? x : x + (width - bmp.width) / 2
       dest_y = (bmp.height > height) ? y : y + (height - bmp.height) / 1
       contents.blt(dest_x, dest_y, bmp, src_rect, 255)
       bmp.dispose
     end
    end
    [/php]

    [php]#==============================================================================
    # ■ セーブ画面改良
    #
    # キャラクタの代わりに、顔グラフィックを表示するセーブ画面です。
    # 顔のサイズを広げるため、従来の一画面4行から3行になっています。
    #==============================================================================

    class Scene_File
     #
     # ● 画面内に表示するセーブファイル数を取得
     #
     def visible_max
       return 3
     end
    end

    class << DataManager
     #
     # ● セーブヘッダの作成
     #
     alias :_ktakaki00_make_save_header :make_save_header
     def make_save_header
       header = _ktakaki00_make_save_header
       header[:faces] = $game_party.faces_for_savefile
       header
     end
    end

    class Game_Party
     #
     # ● セーブファイル表示用の顔グラフィック画像の作成
     #
     def faces_for_savefile
       battle_members.map do |actor|
         [actor.face_name, actor.face_index]
       end
     end
    end

    class Window_SaveFile < Window_Base
     #
     # ● パーティキャラの描画
     #
     def draw_party_characters(x, y)
       header = DataManager.load_header(@file_index)
       return unless header
       # 顔グラフィックの設定がある場合
       if header[:faces]
         header[:faces].each_with_index do |data, i|
           y = (contents_height - 96) / 2
           draw_face(data[0], data[1], 100 + i * 108, y)
         end
         return
       end
       # キャラクタを描画する場合
       header[:characters].each_with_index do |data, i|
         draw_character(data[0], data[1], x + i * 48, y)
       end
     end
    end
    [/php]


    Mà cái này dán vô mục nào được...Em mở mục Script ra mà đau mắt quá
  • BướmBướm Posts: 1,220Registered
    Dùng tay...Yes i'm showing off
    untitled_by_buombuomchua-db5f52d.png
  • IchiharaShoukoIchiharaShouko Posts: 840Registered
    Cảm ơn bác bướm =))
  • StupidDonutStupidDonut Posts: 1,196Registered
    À mà cho hỏi, bác bướm vẽ bằng chuột à ? hay bằng viết cảm ứng gì đó ?
  • Quang TrầnQuang Trần Posts: 258Registered
    mr.rpg.700 wrote:
    À mà cho hỏi, bác bướm vẽ bằng chuột à ? hay bằng viết cảm ứng gì đó ?

    Ổng vẽ bằng chuột bấy lâu nay mà bác ko biết à  :exclamation: :exclamation: Chuột is da bezt :v
Sign In or Register to comment.