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

Project1

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

[已经解决] 新手刚学脚本,求测试求修改求指导

[复制链接]

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

跳转到指定楼层
1
发表于 2013-10-19 20:07:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 taroxd 于 2013-11-9 19:05 编辑

新手几乎没有编程基础,只会瞎改改。RGSS3的书写规范也不是很清楚。如果看到有问题,希望能不吝赐教!

1.修改自这里的脚本,使得只显示HP条,且地图上HP发生变化时可以及时更新。问一下,这样判断是否合理?
RUBY 代码复制
  1. #============================================================================
  2. #  〇 地图显示血条
  3. #============================================================================
  4. class Scene_Map < Scene_Base
  5.   #--------------------------------------------------------------------------
  6.   # ● 开始处理
  7.   #--------------------------------------------------------------------------
  8.   alias hp_window_start start
  9.   def start
  10.     hp_window_start
  11.     @hp_window = Window_hp.new
  12.     @hp_window.refresh
  13.     @hp_window.hide
  14.   end
  15.   alias hp_window_update update
  16.   def update
  17.     hp_window_update
  18.     @hp_window.refresh if @hp_window.need_refresh?
  19.     @hp_window.visible = true
  20. #~     @hp_window.visible = $game_switches[1] #控制开关
  21.   end
  22. end
  23.  
  24. class Window_hp < Window_Base
  25.   #--------------------------------------------------------------------------
  26.   # ● 初始化对象
  27.   #--------------------------------------------------------------------------
  28.   def initialize
  29.     @party_hp_rate = []
  30.     super(-12, -16, 544 + 12, 416 + 16)
  31.     self.opacity = 0
  32.     update
  33.   end
  34.   #--------------------------------------------------------------------------
  35.   # ● 绘制 HP
  36.   #--------------------------------------------------------------------------
  37.   def notext_draw_actor_hp(actor, x, y, width = 124)
  38.     draw_gauge(x, y, width, actor.hp_rate, hp_gauge_color1, hp_gauge_color2)
  39.     change_color(system_color)
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 绘制全队 HP
  43.   #--------------------------------------------------------------------------
  44.   def notext_draw_party_hp
  45.     $game_party.all_members.each_with_index do |actor, i|
  46.       notext_draw_actor_hp(actor, 0, 16 * i)
  47.     end
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 获取全队 HP 的比率
  51.   #--------------------------------------------------------------------------
  52.   def party_hp_rate
  53.     $game_party.all_members.collect {|actor| actor.hp_rate}
  54.   end
  55.   #--------------------------------------------------------------------------
  56.   # ● 刷新
  57.   #--------------------------------------------------------------------------
  58.   def refresh
  59.     contents.clear
  60.     notext_draw_party_hp
  61.     @party_hp_rate = party_hp_rate
  62.   end
  63.   #--------------------------------------------------------------------------
  64.   # ● 判定是否需要刷新
  65.   #--------------------------------------------------------------------------
  66.   def need_refresh?
  67.     !(party_hp_rate == @party_hp_rate)
  68.   end
  69. end

点评

另外新人一来就改数据结构倒是有点令人吃惊…………一般都是从Scene入手向上学习的  发表于 2013-10-20 11:56
太长了所以没看……时间不够…………建议不要一题多问,很晃眼…………不过大致上应该没有什么问题…………细节就需要自己测试了  发表于 2013-10-20 11:55
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-5-31 21:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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