| 
 
| 赞 | 4 |  
| VIP | 0 |  
| 好人卡 | 0 |  
| 积分 | 8 |  
| 经验 | 9460 |  
| 最后登录 | 2025-2-6 |  
| 在线时间 | 85 小时 |  
 Lv2.观梦者 
	梦石0 星屑846 在线时间85 小时注册时间2005-11-21帖子85 | 
| 
本帖最后由 黑夜守望者 于 2012-6-22 21:41 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 说明:
 玩过PSP上面皇家骑士团-命运之轮的人应该知道,里面的不死系单位有个特性,就是被打到HP=0的时候会转为假死状态,3回合后HP完全回复再次复活。并且有个“除灵”的技能,能将假死中的不死系敌人完全消灭。
 接下来是自己研究出来的一种实现方法:
 先设置数据库:
 1.不死状态:我设置是30号状态(此状态最好是设置一下闪烁的色调,以便区分不死系敌人)
 2.假死状态:我设置是31号状态,限制:不行动,3回合(可在数据库中设定回合数)后100%概率解除
 3.除灵技能:效果:去除31号假死状态,真正清除不死系敌人
 4.开关:假死状态复活还原色调用,我是设置20号开关
 更改几处脚本:
 第一处:Game_Battler 1
 #--------------------------------------------------------------------------
 # ● 战斗不能判定 + 去除不死情况
 #--------------------------------------------------------------------------
 def dead?
 return (@hp == 0 and not @immortal and not self.state?(30) and not self.state?(31))
 end
 #--------------------------------------------------------------------------
 # ● 存在判定 + 假死中的不死系
 #--------------------------------------------------------------------------
 def exist?
 return (not @hidden and (@hp > 0 or @immortal or self.state?(31)))
 end
 
 
 第二处:Game_Battler 2
 #--------------------------------------------------------------------------
 # ● 状态自然解除 (回合改变时调用)
 #--------------------------------------------------------------------------
 def remove_states_auto
 for i in @states_turn.keys.clone
 if @states_turn > 0
 @states_turn -= 1
 elsif rand(100) < $data_states.auto_release_prob
 #===================达到假死状态设定的回合数后复活========
 if self.state?(31)
 remove_state(31)
 add_state(30)
 @hp = self.maxhp#复活后加满HP
 Audio.se_play("Audio/SE/"+"139-Darkness02",100,100)#复活的音效
 $game_switches[20] = true#20号开关开启,用于还原假死状态设置的色调
 end
 #=========================================================
 remove_state(i)
 end
 end
 end
 
 
 第三处:Sprite_Battler
 
 # korapusu
 if @battler.damage == nil and @battler.dead?
 if @battler.is_a?(Game_Enemy)
 $game_system.se_play($data_system.enemy_collapse_se)
 else
 $game_system.se_play($data_system.actor_collapse_se)
 end
 collapse
 @battler_visible = false
 end
 #=========进入假死状态==================
 if @battler.damage == nil and @battler.hp == 0 and @battler.state?(30)
 @battler.remove_state(30)
 @battler.add_state(31)
 $game_system.se_play($data_system.enemy_collapse_se)#死亡(假死)的音效
 self.color.set(0, 0, 0, 255)#假死状态色调
 end
 #====================================
 #=============假死状态复活后还原色调(开关编号:20)========
 if $game_switches[20]
 self.color.set(255, 255, 255, 0)
 $game_switches[20] = false
 #self.opacity = 80
 end
 #=====================================
 end
 # 设置活动块的坐标
 self.x = @battler.screen_x
 self.y = @battler.screen_y
 self.z = @battler.screen_z
 end
 end
 
 
 如此,附加有30号不死状态的丧尸敌人或角色在被打死后3回合后复活,要想完全消灭必须用技能“除灵”解除假死状态中的单位。
 注意:不死这个状态对己方角色也有用,建议设置一个技能(necromancy之类的……附加上31号状态),用在己方HP=0的角色身上,可以体验到做死灵法师的快感……
 | 
 |