本帖最后由 电车之熊 于 2016-11-16 10:46 编辑 各位大大有什么办法吗
module Cache # 图片路径 def self.equip_image(filename) load_bitmap("Graphics/System/EquipImage/", filename) endend# 更新图片窗口通用的方法module Equip_Image_Window attr_accessor :image_window # 设置图片窗口绘制的物品 def update_help super @image_window.set_item(item) endend# 大图片窗口类class Window_Equip_Image < Window_Base def set_item(item) if item != @item @item = item refresh end end def refresh contents.clear draw_image(@item) end # 绘制图片 def draw_image(item) return unless item #正则匹配一下备注栏,获取备注的文件名,或者你也可以改成直接用 #装备名字来命名大图的文件名: image = item.name image = $1 if item.note =~ /<image[: ](.+)>/i return unless image bitmap = Cache.equip_image(image) rect = Rect.new(0, 0, bitmap.width, bitmap.height) contents.blt(0, 0, bitmap, rect) bitmap.dispose endend class Scene_Equip < Scene_MenuBase alias vip_20161115_start start def start vip_20161115_start create_equipImage_window end # 生成大图片窗口 def create_equipImage_window width = height = @item_window.height @item_window.width -= width @item_window.create_contents # 改了大小所以重制一下画布 x, y = @item_window.width, @item_window.y @equipImage_window = Window_Equip_Image.new(x, y, width, height) @slot_window.extend Equip_Image_Window #引入更新图片窗口通用的方法 @item_window.extend Equip_Image_Window #引入更新图片窗口通用的方法 @slot_window.image_window = @equipImage_window @item_window.image_window = @equipImage_window endend
module Cache # 图片路径 def self.equip_image(filename) load_bitmap("Graphics/System/EquipImage/", filename) end end # 更新图片窗口通用的方法 module Equip_Image_Window attr_accessor :image_window # 设置图片窗口绘制的物品 def update_help super @image_window.set_item(item) end end # 大图片窗口类 class Window_Equip_Image < Window_Base def set_item(item) if item != @item @item = item refresh end end def refresh contents.clear draw_image(@item) end # 绘制图片 def draw_image(item) return unless item #正则匹配一下备注栏,获取备注的文件名,或者你也可以改成直接用 #装备名字来命名大图的文件名: image = item.name image = $1 if item.note =~ /<image[: ](.+)>/i return unless image bitmap = Cache.equip_image(image) rect = Rect.new(0, 0, bitmap.width, bitmap.height) contents.blt(0, 0, bitmap, rect) bitmap.dispose end end class Scene_Equip < Scene_MenuBase alias vip_20161115_start start def start vip_20161115_start create_equipImage_window end # 生成大图片窗口 def create_equipImage_window width = height = @item_window.height @item_window.width -= width @item_window.create_contents # 改了大小所以重制一下画布 x, y = @item_window.width, @item_window.y @equipImage_window = Window_Equip_Image.new(x, y, width, height) @slot_window.extend Equip_Image_Window #引入更新图片窗口通用的方法 @item_window.extend Equip_Image_Window #引入更新图片窗口通用的方法 @slot_window.image_window = @equipImage_window @item_window.image_window = @equipImage_window end end
查看全部评分
折叠内容标题(非必须)
折叠内容
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2025-7-19 14:03
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.