设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2261|回复: 5
打印 上一主题 下一主题

[已经解决] VX横版战斗系统里怎么显示敌人血条气条和HP,MP值

[复制链接]

Lv1.梦旅人

梦石
0
星屑
627
在线时间
10 小时
注册时间
2012-5-31
帖子
4
跳转到指定楼层
1
发表于 2012-6-2 02:37:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

就像这样,还有我方人物排列纵向对齐
{:2_263:} 求救啊!
E

Lv1.梦旅人

梦石
0
星屑
50
在线时间
106 小时
注册时间
2012-4-13
帖子
278
2
发表于 2012-6-6 20:41:37 | 只看该作者
反正敌人血条基本都对横版有冲突……
←别人那偷来的签名
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
199 小时
注册时间
2012-2-18
帖子
482
3
发表于 2012-6-7 13:14:48 | 只看该作者
直接在此站搜索……建议用RMXP.你要的脚本RMXP都有。
回复

使用道具 举报

Lv3.寻梦者

死亡颂唱者

梦石
0
星屑
1159
在线时间
1795 小时
注册时间
2011-10-21
帖子
2245

开拓者

4
发表于 2012-6-7 19:14:12 | 只看该作者
本帖最后由 acn00269 于 2012-6-7 19:21 编辑

为帮到LZ 我不惜把游戏都破解了
下面就发上显 示敌人HP,MP的脚本
  1. #先声明一下,这属于一时胡写的,可能没有沉影的好,大家勿喷

  2. class Spriteset_Battle
  3. #Sideview 2 的1331行有定义
  4. =begin
  5.   #--------------------------------------------------------------------------
  6.   # ● 生成敌人活动块
  7.   #--------------------------------------------------------------------------
  8.   def create_enemies
  9.     @enemy_sprites = []
  10.     @enemy_hpbar_sprites = []
  11.     for enemy in $game_troop.members.reverse
  12.       @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
  13.       @enemy_hpbar_sprites.push(Sprite_Hpbar.new(@viewport1, enemy))
  14.     end
  15.   end
  16. =end  
  17.   #--------------------------------------------------------------------------
  18.   # ● 刷新敌人活动块
  19.   #--------------------------------------------------------------------------
  20.   def update_enemies
  21.     for sprite in @enemy_sprites + @enemy_hpbar_sprites
  22.       sprite.update
  23.     end
  24.   end  
  25.   #--------------------------------------------------------------------------
  26.   # ● 释放敌人活动块
  27.   #--------------------------------------------------------------------------
  28.   def dispose_enemies
  29.     for sprite in @enemy_sprites + @enemy_hpbar_sprites
  30.       sprite.dispose
  31.     end
  32.   end
  33. end
  34. #==============================================================================
  35. # ■ Sprite_Sprite_Hpbar
  36. #------------------------------------------------------------------------------
  37. #  血条显示
  38. #==============================================================================

  39. class Sprite_Hpbar < Sprite_Base
  40.   #--------------------------------------------------------------------------
  41.   # ● 定量
  42.   #--------------------------------------------------------------------------
  43.    #--------------------------------------------------------------------------
  44.    # ● 定义实例变量
  45.   #--------------------------------------------------------------------------
  46.   attr_accessor :battler
  47.    #--------------------------------------------------------------------------
  48.    # ● 初始化对像
  49.   #     viewport : 视口
  50.   #     battler  : 战斗者 (Game_Battler)
  51.    #--------------------------------------------------------------------------
  52.   def initialize(viewport, battler = nil)
  53.     super(viewport)
  54.     @battler = battler
  55.     @name = @battler.name
  56.     @hp = @battler.hp
  57.     @mp = @battler.mp
  58.     self.bitmap = Bitmap.new(100,50)
  59.     self.bitmap.font.size = 12
  60.     self.bitmap.font.color = @battler.hp <= @battler.maxhp / 4 ? text_color(17) : text_color(24)
  61.     self.bitmap.draw_text(0,22,100,20,@battler.hp ,2)
  62.     self.bitmap.font.color = text_color(23)
  63.     self.bitmap.draw_text(0,31,100,20,@battler.mp ,2)
  64.     draw_enemy_hp_gauge(@battler, 0, 15, 50)
  65.     draw_enemy_mp_gauge(@battler, 0, 23, 50)
  66.     self.x = @battler.screen_x - 45
  67.     self.y = @battler.screen_y - self.bitmap.height / 2 - 5
  68.     self.z = @battler.screen_z + 5000
  69.   end
  70.    #--------------------------------------------------------------------------
  71.    # 获取文字色
  72.    #     n : 文字色编号 (0~31)
  73.    #--------------------------------------------------------------------------  
  74.   def text_color(n)
  75.     windowskin = Cache.system("Window")
  76.     x = 64 + (n % 8) * 8
  77.     y = 96 + (n / 8) * 8
  78.     return windowskin.get_pixel(x, y)
  79.   end
  80.   #--------------------------------------------------------------------------
  81.   # HP矩形的描画
  82.   #     actor : 角色
  83.   #     x     : 描画目标 X 坐标
  84.   #     y     : 描画目标 Y 坐标
  85.   #     width : 宽
  86.   #--------------------------------------------------------------------------  
  87.   def draw_enemy_hp_gauge(enemy, x, y, width = 432)
  88.     gw = width * @hp / enemy.maxhp
  89.     gc1 = text_color(28)
  90.     gc2 = text_color(24)
  91.     self.bitmap.fill_rect(x+15, y + 24 - 8, width, 6, text_color(19))
  92.     self.bitmap.gradient_fill_rect(x+15, y + 24 - 8, gw, 6, gc1, gc2)
  93.   end
  94.   #--------------------------------------------------------------------------
  95.   # MP矩形的描画
  96.   #     actor : 角色
  97.   #     x     : 描画目标 X 坐标
  98.   #     y     : 描画目标 Y 坐标
  99.   #     width : 宽
  100.   #--------------------------------------------------------------------------  
  101.   def draw_enemy_mp_gauge(enemy, x, y, width = 432)
  102.     if enemy.maxmp > 0
  103.       gw = width * @mp / enemy.maxmp
  104.     else
  105.       gw = 0
  106.     end  
  107.     gc1 = text_color(1)
  108.     gc2 = text_color(23)
  109.     self.bitmap.fill_rect(x+15, y + 24 - 8, width, 6, text_color(19))
  110.     self.bitmap.gradient_fill_rect(x+15, y + 24 - 8, gw, 6, gc1, gc2)
  111.   end
  112.   #--------------------------------------------------------------------------
  113.   # ● 释放
  114.   #--------------------------------------------------------------------------
  115.   def dispose
  116.     if self.bitmap != nil
  117.       self.bitmap.dispose
  118.     end
  119.     super
  120.   end
  121.   #--------------------------------------------------------------------------
  122.   # ● 刷新画面
  123.   #--------------------------------------------------------------------------
  124.   def update
  125.     super
  126.     if @battler == nil
  127.       self.bitmap = nil
  128.     else
  129.       update_battler_bitmap
  130.     end
  131.   end
  132.   #--------------------------------------------------------------------------
  133.   # 刷新位图数据
  134.   #--------------------------------------------------------------------------
  135.   def update_battler_bitmap
  136.     if @battler.dead? or @battler.hidden
  137.        self.opacity = 0
  138.      end
  139.     if [email protected]? and [email protected] and self.opacity == 0
  140.        self.opacity = 255
  141.     end      
  142.     if @hp != @battler.hp or @mp != @battler.mp or @name != @battler.name
  143.        @name = @battler.name
  144.        @hp = @battler.hp
  145.        @mp = @battler.mp
  146.        self.bitmap.clear
  147.        self.bitmap.font.color = @battler.hp <= @battler.maxhp / 4 ? text_color(17) : text_color(24)
  148.        self.bitmap.draw_text(0,24,100,20,@battler.hp ,2)
  149.        self.bitmap.font.color = text_color(23)
  150.        self.bitmap.draw_text(0,34,100,20,@battler.mp ,2)
  151.        draw_enemy_hp_gauge(@battler, 0, 15, 50)
  152.        draw_enemy_mp_gauge(@battler, 0, 25, 50)
  153.     end
  154.   end
  155. end
复制代码
为尊重作者 我就只发这一个脚本

点评

你你你你你……  发表于 2012-6-8 13:28

评分

参与人数 1星屑 -100 收起 理由
Luciffer -100 你不说出来我还不好意思扣分。。。.

查看全部评分

这家伙很懒,什么也没有留下
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
627
在线时间
10 小时
注册时间
2012-5-31
帖子
4
5
 楼主| 发表于 2012-6-8 12:26:42 | 只看该作者
灰肠感谢各位朋友们!!
E
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
242 小时
注册时间
2011-12-10
帖子
238
6
发表于 2012-6-10 08:34:46 | 只看该作者
本帖最后由 sd592078335 于 2012-6-10 08:35 编辑

额.........破解游戏....这你也敢说..
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-25 01:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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