本帖最后由 soulsaga 于 2020-12-19 13:16 编辑 楼主还是没说有什么BUG.. |
srwjrevenger 发表于 2020-12-19 12:14 其实是有位群友在群里问, 能不能把MOG BOSS血条由一条改成多条, 我就挑战一下自己的能力来试著修改修改, 结果慘不忍睹啦~~ |
soulsaga 发表于 2020-12-16 13:56 1.关于一堆nil class Game_Enemy < Game_Battler attr_accessor :boss_hp_meter attr_accessor :boss_hp_number attr_accessor :level 上面生成了每个敌人“各自独立”的变量 但是楼主把敌人@level 变成了数组,中间当然都是nil 2.关于绘制血条方面的问题 刷新是全部血条一起,并且使用的数据都是最后能调用的那人 这都是把原脚本改成类似下面那样的锅 #------------------------------------原脚本-------------------------------------- #~ # ● Create Boss HP Meter #~ #-------------------------------------------------------------------------- #~ def create_boss_hp_meter(i) #~ $game_system.boss_hp_meter[2] = true #~ $game_system.boss_hp_meter[3] = i.name #~ $game_system.boss_hp_meter[4] = i.hp #~ $game_system.boss_hp_meter[5] = i.mhp #~ $game_system.boss_hp_meter[6] = i.hp #~ $game_system.boss_hp_meter[7] = i.level rescue nil #~ $game_system.boss_hp_meter[8] = 0 #~ $game_system.boss_hp_meter[9] = i.boss_hp_number #~ $game_system.boss_hp_meter[10] = i.enemy_id #~ refresh_hp_meter #~ create_layout #~ create_meter #~ create_name #~ create_face #~ create_level #~ create_hp_number #~ end #~ #~ #-------------------------------------------------------------------------- #~ # ● Create Layout #~ #-------------------------------------------------------------------------- #~ def create_layout #~ return if @layout != nil #~ @layout = Sprite.new #~ @layout.bitmap = $game_temp.cache_boss_hp[0] #~ @layout.x = $game_system.boss_hp_meter[0] #~ @layout.y = $game_system.boss_hp_meter[1] #~ @layout.viewport = @hp_vieport #~ @layout.z = PRIORITY_Z #~ end #~ #lz脚本 # ● Create Boss HP Meter########## #-------------------------------------------------------------------------- def create_boss_hp_meter(i, e) $game_system.boss_hp_meter[2] = true $game_system.boss_hp_meter[3] = e.name $game_system.boss_hp_meter[4] = e.hp $game_system.boss_hp_meter[5] = e.mhp $game_system.boss_hp_meter[6] = e.hp $game_system.boss_hp_meter[7] = e.level rescue nil $game_system.boss_hp_meter[8] = 0 $game_system.boss_hp_meter[9] = e.boss_hp_number $game_system.boss_hp_meter[10] = e.enemy_id refresh_hp_meter(i) create_layout(i) create_meter(i) create_name(i) create_face(i) create_level(i) create_hp_number(i) end #-------------------------------------------------------------------------- # ● Create Layout########## #-------------------------------------------------------------------------- def create_layout(i) return if @layout != nil @layout = Sprite.new @layout.bitmap = $game_temp.cache_boss_hp[0] @layout.x = $game_system.boss_hp_meter[0] @layout.y = $game_system.boss_hp_meter[1] + 32 * i @layout.viewport = @hp_vieport @layout.z = PRIORITY_Z end 无奈自己绘制方面没有研究,即使试着改了改原脚本, 只有刚进入战斗时有效,之后就各种呵呵呵了 看哪位有兴趣,帮楼主帮忙改改吧? |
本帖最后由 KB.Driver 于 2020-12-22 23:49 编辑 代码 顺便一说,楼主对面向对象仅从语法上有所了解, 对细节的设计就像小孩子搭出来的积木一样,缺少平衡感。 还有一些问题就不一一指出了,毕竟解决问题是第一要务,下面这些当作思考题留给楼主吧。 1、 2. |
站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作
GMT+8, 2024-5-12 02:06
Powered by Discuz! X3.1
© 2001-2013 Comsenz Inc.