Project1

标题: 如何实现 变量值 显示到 画面的图片上 [打印本页]

作者: z2z4    时间: 2013-2-9 10:34
标题: 如何实现 变量值 显示到 画面的图片上
本来可以用对话框 显示变量的   这个不实际  有没有其他办法
作者: 945127391    时间: 2013-2-10 15:25
用一个精灵吧……
在main上插入:
  1. #------------------------------------------------------------------------------
  2. # ** 设定
  3. #------------------------------------------------------------------------------
  4. Variable_XY = [0, 0]  # 变量显示的xy坐标
  5. #------------------------------------------------------------------------------
  6. # ** 精灵
  7. #------------------------------------------------------------------------------
  8. class Sprite_Variable < Sprite
  9.   #----------------------------------------------------------------------------
  10.   # * 初始化
  11.   #----------------------------------------------------------------------------
  12.   def initialize(variable)
  13.     super(nil)
  14.     self.x = Variable_XY[0]
  15.     self.y = Variable_XY[1]
  16.     self.bitmap = Bitmap.new(Graphics.width - Variable_XY[0], 24)
  17.     @variable = variable
  18.     refresh
  19.   end
  20.   #----------------------------------------------------------------------------
  21.   # * 更新内容
  22.   #----------------------------------------------------------------------------
  23.   def refresh
  24.     self.bitmap.clear
  25.     self.bitmap.draw_text(self.bitmap.rect, @variable)
  26.   end
  27.   #----------------------------------------------------------------------------
  28.   # * 修改变量
  29.   #----------------------------------------------------------------------------
  30.   def variable=(nv)
  31.     @variable = nv
  32.     refresh
  33.   end
  34. end
  35. #------------------------------------------------------------------------------
  36. # ** 地图
  37. #------------------------------------------------------------------------------
  38. class Game_Map
  39.   #----------------------------------------------------------------------------
  40.   # * 定义实例变量
  41.   #----------------------------------------------------------------------------
  42.   attr_accessor :map_variable
  43.   #----------------------------------------------------------------------------
  44.   # * 重命名方法
  45.   #----------------------------------------------------------------------------
  46.   alias oi initialize
  47.   #----------------------------------------------------------------------------
  48.   # * 初始化
  49.   #----------------------------------------------------------------------------
  50.   def initialize
  51.     oi
  52.     @map_variable = 0
  53.   end
  54. end
  55. class Scene_Map < Scene_Base
  56.   #----------------------------------------------------------------------------
  57.   # * 重命名方法
  58.   #----------------------------------------------------------------------------
  59.   alias os start
  60.   alias ou update
  61.   #----------------------------------------------------------------------------
  62.   # * 开始处理
  63.   #----------------------------------------------------------------------------
  64.   def start
  65.     os
  66.     @map_variable = $game_map.map_variable
  67.     @map_variable_sprite = Sprite_Variable.new($game_map.map_variable)
  68.   end
  69.   #----------------------------------------------------------------------------
  70.   # * 释放
  71.   #----------------------------------------------------------------------------
  72.   def dispose
  73.     super
  74.     @map_variable_sprite.dispose
  75.   end
  76.   #----------------------------------------------------------------------------
  77.   # * 刷新画面
  78.   #----------------------------------------------------------------------------
  79.   def update
  80.     ou
  81.     @map_variable_sprite.update
  82.     if @map_variable != $game_map.map_variable
  83.       @map_variable_sprite.variable = $game_map.map_variable
  84.       @map_variable = $game_map.map_variable
  85.     end
  86.   end
  87. end
复制代码
在事件=>脚本中输入:
$game_map.map_variable = x
来修改显示的值.
(以上未经测试)




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1