找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: 小天

如何在战斗画面某处显示一个图啊

[复制链接]
发表于 2004-10-16 12:49:48 | 显示全部楼层
#==============================================================================
# ■ Window_Status
#------------------------------------------------------------------------------
#  显示状态画面、完全规格的状态窗口。
#==============================================================================
class Window_Status < Window_Base
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #     actor : 角色
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 640+32, 480+32)
    self.contents = Bitmap.new(width - 32, height - 32)
    @actor = actor
    # 以下追加-----------------------------
    self.back_opacity = 0 #使得原本的背景skin不再显示
    @_backbitmap = RPG::Cache.picture(\"\") #装入新的图片背景位图
# 以上追加-----------------------------
    refresh
  end
  #--------------------------------------------------------------------------
  # ● 刷新
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    # 以下追加-------------------------------
    self.contents.blt(0,0,@_backbitmap,Rect.new(0, 0, 640, 480))
    #使用新的位图覆盖背景
# 以上追加-------------------------------
    draw_actor_graphic(@actor, 40, 112)
    draw_actor_name(@actor, 4, 0)
    draw_actor_class(@actor, 4 + 144, 0)
    draw_actor_level(@actor, 96, 32)
    draw_actor_state(@actor, 96, 64)
    draw_actor_hp(@actor, 96, 112, 140)
    draw_actor_sp(@actor, 96, 144, 140)
    draw_actor_parameter(@actor, 96, 192, 0)
    draw_actor_parameter(@actor, 96, 224, 1)
    draw_actor_parameter(@actor, 96, 256, 2)
    draw_actor_parameter(@actor, 96, 304, 3)
    draw_actor_parameter(@actor, 96, 336, 4)
    draw_actor_parameter(@actor, 96, 368, 5)
    draw_actor_parameter(@actor, 96, 400, 6)
    self.contents.font.color = system_color
    self.contents.draw_text(320, 48, 80, 32, \"EXP\")
    self.contents.draw_text(320, 80, 80, 32, \"NEXT\")
    self.contents.font.color = normal_color
    self.contents.draw_text(320 + 80, 48, 84, 32, @actor.exp_s, 2)
    self.contents.draw_text(320 + 80, 80, 84, 32, @actor.next_rest_exp_s, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(320, 160, 96, 32, \"装备\")
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 16, 208)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 16, 256)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 16, 304)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 16, 352)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 16, 400)
  end
  def dummy
    self.contents.font.color = system_color
    self.contents.draw_text(320, 112, 96, 32, $data_system.words.weapon)
    self.contents.draw_text(320, 176, 96, 32, $data_system.words.armor1)
    self.contents.draw_text(320, 240, 96, 32, $data_system.words.armor2)
    self.contents.draw_text(320, 304, 96, 32, $data_system.words.armor3)
    self.contents.draw_text(320, 368, 96, 32, $data_system.words.armor4)
    draw_item_name($data_weapons[@actor.weapon_id], 320 + 24, 144)
    draw_item_name($data_armors[@actor.armor1_id], 320 + 24, 208)
    draw_item_name($data_armors[@actor.armor2_id], 320 + 24, 272)
    draw_item_name($data_armors[@actor.armor3_id], 320 + 24, 336)
    draw_item_name($data_armors[@actor.armor4_id], 320 + 24, 400)
  end
end
楼上的不会是懒得去看吧...都说得那么清楚了...
不过要加背景的话不如使用这个...在def initialize这个函数里加上
@sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.picture(\"\")
因为是和TITLE一样的背景图,应该不会影响到选择窗口...
时间等的窗口,在WINDOW_什么什么的里面
def initialize
    super(0, 0, 160, 96)
0,0,160,96分别是X,Y坐标和窗口的长宽
carol3 该用户已被删除
发表于 2005-1-6 23:03:28 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|幻想森林

GMT+8, 2026-10-31 15:02 , Processed in 0.012610 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表