Project1

标题: 灰常差劲的 地图上显示金钱 [打印本页]

作者: satgo1546    时间: 2012-3-4 13:09
标题: 灰常差劲的 地图上显示金钱
灰常差劲的 地图上显示金钱 for VXACE


需要"Show_Gold.png":

截图:

  1. # 设置部分:
  2. MAP_GOLD_FONT_NAME = ["Georgia","宋体"] # 字体列表
  3. MAP_GOLD_FONT_SIZE = 16 # 字体大小
  4. MAP_GOLD_X = 416 # X坐标
  5. MAP_GOLD_Y = 384 # Y坐标

  6. # 说明:
  7. # 需要附带Show_Gold图片文件在System文件夹中

  8. #==============================================================================
  9. # ■ Sprite_Gold_7
  10. #------------------------------------------------------------------------------
  11. #   金钱窗口的背景。
  12. #==============================================================================

  13. class Sprite_Gold_7 < Sprite_Base
  14.   def initialize
  15.     super
  16.     self.x = MAP_GOLD_X
  17.     self.y = MAP_GOLD_Y
  18.     self.z = 98991
  19.     self.bitmap = Cache.system("Show_Gold")
  20.   end
  21. end

  22. #==============================================================================
  23. # ■ Sprite_Gold_7_Num
  24. #------------------------------------------------------------------------------
  25. #   显示金钱窗口。
  26. #==============================================================================

  27. class Sprite_Gold_7_Num < Sprite_Base
  28.   def refresh
  29.     self.bitmap.clear
  30.     self.bitmap.draw_text(self.bitmap.rect,$game_party.gold.to_s + Vocab.currency_unit,2)
  31.   end
  32. end

  33. #==============================================================================
  34. # ■ Spriteset_Map
  35. #------------------------------------------------------------------------------
  36. #    处理地图的精灵堆。 (追加定义)
  37. #==============================================================================

  38. class Spriteset_Map
  39.   def initialize
  40.     create_viewports
  41.     create_tilemap
  42.     create_parallax
  43.     create_characters
  44.     create_shadow
  45.     create_weather
  46.     create_pictures
  47.     create_timer
  48.     create_gold
  49.     update
  50.   end
  51.   def create_gold
  52.     @gold_sprite = Sprite_Gold_7.new
  53.     @gold_sprite_num = Sprite_Gold_7_Num.new
  54.     @gold_sprite_num.x = @gold_sprite.x
  55.     @gold_sprite_num.y = @gold_sprite.y
  56.     @gold_sprite_num.z = 98992
  57.     @gold_sprite_num.bitmap = Bitmap.new(96,24)
  58.     @gold_sprite_num.bitmap.font.name = MAP_GOLD_FONT_NAME
  59.     @gold_sprite_num.bitmap.font.size = MAP_GOLD_FONT_SIZE
  60.     @gold_sprite_num.refresh
  61.   end
  62.   def dispose
  63.     dispose_tilemap
  64.     dispose_parallax
  65.     dispose_characters
  66.     dispose_shadow
  67.     dispose_weather
  68.     dispose_pictures
  69.     dispose_timer
  70.     dispose_gold
  71.     dispose_viewports
  72.   end
  73.   def dispose_gold
  74.     @gold_sprite.dispose
  75.     @gold_sprite_num.dispose
  76.   end
  77.   def update
  78.     update_tileset
  79.     update_tilemap
  80.     update_parallax
  81.     update_characters
  82.     update_shadow
  83.     update_weather
  84.     update_pictures
  85.     update_timer
  86.     update_gold
  87.     update_viewports
  88.   end
  89.   def update_gold
  90.     @gold_sprite_num.refresh
  91.   end
  92. end

复制代码

作者: Wind2010    时间: 2012-3-4 13:23
一直refresh不会卡么
作者: iisnow    时间: 2012-3-4 13:33
建议在加入refresh处加入判据,就是钱数改变才会重新clear再显示
作者: feizhaodan    时间: 2012-3-4 13:58
不alias冲突大丈夫?




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