class Scene_Battle
#--------------------------------------------------------------------------
# ● 定义实例变量
#--------------------------------------------------------------------------
attr_reader :animation1_id # 行动方动画ID
end
class Sprite_Battler < RPG::Sprite
#--------------------------------------------------------------------------
# ● 处理角色动作
#--------------------------------------------------------------------------
def update_actor_animation
if @battler.is_a?(Game_Actor)
if @battler.show_damage_value != nil
self.damage(@battler.show_damage_value, false)
@battler.show_damage(nil)
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[3], 1)
@battler.setup_battler_hurt_ani(1)
end
if @battler.current_action.kind == 0 and @battler.current_action.basic == 1
######################################################################
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[2], 1)
@battler.setup_battler_hurt_ani(1)
####################################################################
else
if @hits == 1 and not @battler.dead? and @battler.battler_hurt_ani != 1 and @battler.damage.is_a?(Numeric) and @battler.damage > 0 and $fangyu != 1
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[3], 1)
@battler.setup_battler_hurt_ani(1)
########################################################################
elsif @hits == 1 and not @battler.dead? and @battler.battler_hurt_ani != 1 and @battler.damage.is_a?(Numeric) and @battler.damage > 0 and $fangyu == 1
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[2], 1)
@battler.setup_battler_hurt_ani(1)
#################################################################
elsif @frame_index == @last_frame and @battler.dead? and @battler.battler_dead_ani != 1
for actor in $game_party.actors
if @battler != actor
actor.add_state(6)
end
end
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[4], 1)
@battler.setup_battler_dead_ani(1)
end
end
end
end
#--------------------------------------------------------------------------
# ● 处理敌人动作
#--------------------------------------------------------------------------
def update_enemy_animation
if @battler.is_a?(Game_Enemy)
if @battler.show_damage_value != nil
self.damage(@battler.show_damage_value, false)
@battler.show_damage(nil)
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[3], 1)
@battler.setup_battler_hurt_ani(1)
end
if @battler.current_action.kind == 0 and @battler.current_action.basic == 1
else
if @hits == 1 and not @battler.dead? and @battler.battler_hurt_ani != 1 and @battler.damage.is_a?(Numeric) and @battler.damage > 0
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[3], 1)
@battler.setup_battler_hurt_ani(1)
elsif @frame_index == @last_frame and @battler.dead? and @battler.battler_dead_ani != 1
@battler.setup_battler_ani(@battler.battler_name.split(/★/)[4], 1)
@battler.setup_battler_dead_ani(1)
collapse
end
end
end
end
end
在本站找到这个脚本,真是爱不释手,应用到游戏当中却发现个比较严重的问题,使得这个脚本无法使用下去。问题如下:
当战斗中主角的人数达到2个或2个以上时,当其中一个角色死亡,就会出现战斗混乱,未死的主角就会遭到死去同伴的攻击,或发去的攻击打在自己身上,有时敌人还不停的连续攻击,知道角色全部死亡。
如上所述,望高手修正,感激不尽。
范例工程就存在这样的问题。下载地址:ftp://[email protected]/个人文件夹/whbm(61)/Fighting!.rar作者: 皓影清风 时间: 2009-7-31 10:47
这问题请看传送门http://rpg.blue/web/index.php?doc-view-4117作者: 死亡的交响曲 时间: 2009-7-31 10:54
- -!我那个怎么可以,配合45度的话,天衣无缝- -!