| 赞 | 0  | 
 
| VIP | 0 | 
 
| 好人卡 | 2 | 
 
| 积分 | 2 | 
 
| 经验 | 2541 | 
 
| 最后登录 | 2023-7-22 | 
 
| 在线时间 | 173 小时 | 
 
 
 
 
 
Lv1.梦旅人 天空之神 
	- 梦石
 - 0 
 
        - 星屑
 - 156 
 
        - 在线时间
 - 173 小时
 
        - 注册时间
 - 2009-5-3
 
        - 帖子
 - 612
 
 
 
 | 
	
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员  
 
x
 
 本帖最后由 小鱼子 于 2010-9-24 10:22 编辑  
- #先声明一下,这属于一时胡写的,可能没有沉影的好,大家勿喷
 
  
- class Spriteset_Battle
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 生成敌人活动块
 
 -   #--------------------------------------------------------------------------
 
 -   def create_enemies
 
 -     @enemy_sprites = []
 
 -     @enemy_hpbar_sprites = []
 
 -     for enemy in $game_troop.members.reverse
 
 -       @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
 
 -       @enemy_hpbar_sprites.push(Sprite_Hpbar.new(@viewport1, enemy))
 
 -     end
 
 -   end
 
  
-   #--------------------------------------------------------------------------
 
 -   # ● 刷新敌人活动块
 
 -   #--------------------------------------------------------------------------
 
 -   def update_enemies
 
 -     for sprite in @enemy_sprites + @enemy_hpbar_sprites
 
 -       sprite.update
 
 -     end
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 释放敌人活动块
 
 -   #--------------------------------------------------------------------------
 
 -   def dispose_enemies
 
 -     for sprite in @enemy_sprites + @enemy_hpbar_sprites
 
 -       sprite.dispose
 
 -     end
 
 -   end
 
 -   
 
 -   
 
 -  end 
 
 - #==============================================================================
 
 - # ■ Sprite_Sprite_Hpbar
 
 - #------------------------------------------------------------------------------
 
 - #  血条显示
 
 - #==============================================================================
 
  
- class Sprite_Hpbar < Sprite_Base
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 定量
 
 -   #--------------------------------------------------------------------------
 
 -    #--------------------------------------------------------------------------
 
 -    # ● 定义实例变量
 
 -   #--------------------------------------------------------------------------
 
 -   attr_accessor :battler
 
 -    #--------------------------------------------------------------------------
 
 -    # ● 初始化对像
 
 -   #     viewport : 视口
 
 -   #     battler  : 战斗者 (Game_Battler)
 
 -    #--------------------------------------------------------------------------
 
 -   def initialize(viewport, battler = nil)
 
 -     super(viewport)
 
 -     @battler = battler
 
 -     @name = @battler.name
 
 -     @hp = @battler.hp
 
 -     self.bitmap = Bitmap.new(100,50)
 
 -     self.bitmap.draw_text(0,10,100,20,@battler.name ,1)
 
 -     draw_actor_hp_gauge(@battler, 0, 15, 50)
 
 -     
 
 -     self.x = @battler.screen_x - 30
 
 -     self.y = @battler.screen_y - self.bitmap.height / 2
 
 -     self.z = @battler.screen_z + 5
 
 -   end
 
  
-    #--------------------------------------------------------------------------
 
 -    # 获取文字色
 
 -   #     n : 文字色编号 (0~31)
 
 -    #--------------------------------------------------------------------------  
 
 -   def text_color(n)
 
 -     windowskin = Cache.system("Window")
 
 -     x = 64 + (n % 8) * 8
 
 -     y = 96 + (n / 8) * 8
 
 -     return windowskin.get_pixel(x, y)
 
 -   end
 
 -   
 
 -    #--------------------------------------------------------------------------
 
 -    # HP矩形的描画
 
 -   #     actor : 角色
 
 -   #     x     : 描画目标 X 坐标
 
 -   #     y     : 描画目标 Y 坐标
 
 -   #     width : 宽
 
 -   #--------------------------------------------------------------------------  
 
 -   def draw_actor_hp_gauge(actor, x, y, width = 432)
 
 -     gw = width * @hp / actor.maxhp
 
 -     gc1 = text_color(28)
 
 -     gc2 = text_color(24)
 
 -     self.bitmap.fill_rect(x+15, y + 24 - 8, width, 6, text_color(19))
 
 -     self.bitmap.gradient_fill_rect(x+15, y + 24 - 8, gw, 6, gc1, gc2)
 
 -   end
 
 -   
 
 -   
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 释放
 
 -   #--------------------------------------------------------------------------
 
 -   def dispose
 
 -     if self.bitmap != nil
 
 -       self.bitmap.dispose
 
 -     end
 
 -     super
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 刷新画面
 
 -   #--------------------------------------------------------------------------
 
 -   def update
 
 -     super
 
 -     if @battler == nil
 
 -       self.bitmap = nil
 
 -     else
 
 -       update_battler_bitmap
 
 -     end
 
 -   end
 
 -   #--------------------------------------------------------------------------
 
 -   # 刷新位图数据
 
 -   #--------------------------------------------------------------------------
 
 -   def update_battler_bitmap
 
 -     if @battler.dead? or @battler.hidden
 
 -        self.opacity = 0
 
 -      end
 
 -     if [email protected]? and [email protected] and self.opacity == 0
 
 -        self.opacity = 255
 
 -     end  
 
 -      
 
 -     if @hp != @battler.hp or @name != @battler.name
 
 -        @name = @battler.name
 
 -        @hp = @battler.hp
 
 -        self.bitmap.clear
 
 -        self.bitmap.draw_text(0,10,100,20,@battler.name ,1)
 
 -        draw_actor_hp_gauge(@battler, 0, 15, 50)
 
 -     end
 
 -   end
 
 - end
 
  复制代码 截图 
 
 |   
 
评分
- 
查看全部评分
 
 
 
 
 
 |