Project1

标题: 为什么我的血槽拉不出来? [打印本页]

作者: 缺牙de兔子    时间: 2009-1-22 05:49
标题: 为什么我的血槽拉不出来?
为什么这个图片不能拉宽啊?

  1. class Arpg_Actor
  2. #--------------------------------------------------------------------------
  3. # ● 定义实例变量
  4. #--------------------------------------------------------------------------
  5.   attr_accessor :Actor_id                 # 角色ID
  6.   attr_accessor :Actor_action             # 角色动作 0:什么都不做 1:移动 2:攻击 3:跳跃 4:中击 5:吟唱 6:死亡   
  7.   attr_accessor :Actor_look               # 角色的面向
  8.   attr_accessor :Actor_MapId              # 角色所在地图
  9.   attr_accessor :Actors_x                 # 角色的x坐标
  10.   attr_accessor :Actors_y                 # 角色的y坐标
  11. #--------------------------------------------------------------------------
  12. # ● 初始化对像
  13. #--------------------------------------------------------------------------
  14.   def initialize
  15.    
  16.     @Actor_id = $game_party.actors[0].id
  17.     @Actor_action=0
  18.     @Actor_look=8
  19.     @Actor_MapId=1
  20.     @Actors_x=0
  21.     @Actors_y=0
  22.   end  
  23.   def Actor_message
  24.     @actor_ms=Window_Selectable.new(0,0,0,0)
  25.     @actor_ms.update
  26.     @devil = Sprite.new
  27.     @devil.x = 0
  28.     @devil.y = 310
  29.     @devil.bitmap = RPG::Cache.picture("状态栏")
  30.     @[email protected]
  31.     message_refresh
  32.     RPG::Cache.clear
  33.     Graphics.update
  34.   end
  35.   #--------------------------------------------------------------------------
  36. # ● 获得状态栏信息
  37. #--------------------------------------------------------------------------
  38.   def message_refresh
  39.     @b = Sprite.new
  40.     @b.x = -30
  41.     @b.y = 380
  42.     @b.bitmap = Bitmap.new("Graphics/Battlers/"+$game_actors[@Actor_id].battler_name.to_s)
  43.     @actor_ms.windowskin.draw_text(1, 30, 120, 32,$game_actors[@Actor_id].name, 0)
  44.     @actor_ms.windowskin.draw_text(90, 120, 120, 32,"HP:", 0)
  45.     @actor_ms.windowskin.draw_text(90, 140, 120, 32,"SP:", 0)
  46.     @actor_ms.windowskin.draw_text(122, 120, 120, 32,$game_actors[@Actor_id].hp.to_s+"\\"+$game_actors[@Actor_id].maxhp.to_s, 0)
  47.     @actor_ms.windowskin.draw_text(122, 140, 120, 32,$game_actors[@Actor_id].sp.to_s+"\\"+$game_actors[@Actor_id].maxsp.to_s.to_s, 0)
  48.     #显示血槽
  49.     @bitmap=Bitmap.new("Graphics/Pictures/hp")
  50.     @actor_ms.windowskin.blt(122,40,@bitmap,Rect.new(0,0,9999,50))

  51.   end
  52. #--------------------------------------------------------------------------
  53. # ● 描绘血槽
  54. #--------------------------------------------------------------------------  
  55.   def showHP
  56.      
  57.   end

  58. end
复制代码

就是这个地方@actor_ms.windowskin.blt(122,40,@bitmap,Rect.new(0,0,9999,50))
我设置了9999的宽度 但是图片还是没有被拉宽
工程
http://rpg.blue/upload_program/d ... ��槽_113003295.rar
作者: 200878242    时间: 2009-1-22 06:14
看了一下工程不明白什么血槽拉宽啊,不懂截张图吧
作者: 小轩domo    时间: 2009-1-22 06:20
提示: 作者被禁止或删除 内容自动屏蔽
作者: 缺牙de兔子    时间: 2009-1-22 18:21
以下引用小轩domo于2009-1-21 22:20:19的发言:

呃……脚本是自己写的么= =~错漏百出啊,SP条又没有,还有你那脚本里@actor_ms.windowskin.blt(122,40,@bitmap,Rect.new(0,0,99,50))这句是用作显示多少图片,而不是用来拉伸的,因为我也是刚学,所以也不懂解决方法= =~

那句是用来显示@bitmap这个图片的
@bitmap里面有个hp.png的图片 这个图片只有10像素的高 1像素的宽
但是我使用windowskin.blt来拉宽矩形 图片的宽度并没有发生改变
虽然我用color来描绘血槽了 但是color不好更新]

  1. class Arpg_Actor
  2. #--------------------------------------------------------------------------
  3. # ● 定义实例变量
  4. #--------------------------------------------------------------------------
  5.   attr_accessor :Actor_id                 # 角色ID
  6.   attr_accessor :Actor_action             # 角色动作 0:什么都不做 1:移动 2:攻击 3:跳跃 4:中击 5:吟唱 6:死亡   
  7.   attr_accessor :Actor_look               # 角色的面向
  8.   attr_accessor :Actor_MapId              # 角色所在地图
  9.   attr_accessor :Actors_x                 # 角色的x坐标
  10.   attr_accessor :Actors_y                 # 角色的y坐标
  11. #--------------------------------------------------------------------------
  12. # ● 初始化对像
  13. #--------------------------------------------------------------------------
  14.   def initialize
  15.    
  16.     @Actor_id = $game_party.actors[0].id
  17.     @Actor_action=0
  18.     @Actor_look=8
  19.     @Actor_MapId=1
  20.     @Actors_x=0
  21.     @Actors_y=0
  22.   end  
  23.   def Actor_message
  24.     @actor_ms=Window_Selectable.new(0,0,0,0)
  25.     @actor_ms.update
  26.     @devil = Sprite.new
  27.     @devil.x = 0
  28.     @devil.y = 310
  29.     @devil.bitmap = RPG::Cache.picture("状态栏")
  30.     @[email protected]
  31.     message_refresh
  32.     RPG::Cache.clear
  33.     Graphics.update
  34.   end
  35.   #--------------------------------------------------------------------------
  36. # ● 获得状态栏信息
  37. #--------------------------------------------------------------------------
  38.   def message_refresh
  39.     @b = Sprite.new
  40.     @b.x = -30
  41.     @b.y = 380
  42.     @b.bitmap = Bitmap.new("Graphics/Battlers/"+$game_actors[@Actor_id].battler_name.to_s)
  43.     @actor_ms.windowskin.draw_text(1, 30, 120, 32,$game_actors[@Actor_id].name, 0)
  44.     @actor_ms.windowskin.draw_text(90, 120, 120, 32,"HP:", 0)
  45.     @actor_ms.windowskin.draw_text(90, 140, 120, 32,"SP:", 0)
  46.     #显示血槽显示SP
  47.     @actor_ms.windowskin.fill_rect(124,130,100,12,Color.new(0,0,0,255))
  48.     @actor_ms.windowskin.fill_rect(124,150,100,13,Color.new(0,0,0,255))
  49.     @actor_ms.windowskin.fill_rect(124,130,100,10,Color.new(255,0,0,255))
  50.     @actor_ms.windowskin.fill_rect(124,150,100,10,Color.new(0,0,255,255))
  51.     #显示HP和SP文字
  52.     @actor_ms.windowskin.draw_text(122, 120, 120, 32,$game_actors[@Actor_id].hp.to_s+"\\"+$game_actors[@Actor_id].maxhp.to_s, 0)
  53.     @actor_ms.windowskin.draw_text(122, 140, 120, 32,$game_actors[@Actor_id].sp.to_s+"\\"+$game_actors[@Actor_id].maxsp.to_s.to_s, 0)
  54.    
  55.    
  56.   end
  57. #--------------------------------------------------------------------------
  58. # ● 描绘血槽
  59. #--------------------------------------------------------------------------  
  60.   def showHP
  61.      
  62.   end
  63. #--------------------------------------------------------------------------
  64. # ● 描绘SP槽
  65. #--------------------------------------------------------------------------   
  66.   def showSP
  67.      
  68.   end
  69. end

复制代码

这是用矩形内填充颜色来描绘血槽的脚本





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