Project1
标题:
关于持续加血
[打印本页]
作者:
an1ji1er1
时间:
2012-4-6 18:30
标题:
关于持续加血
请问,怎么做持续回复血的技能呀?
听说改持续伤害负值可以,但是这样的话毒的效果不久没有了么?
以下有个脚本说是可以做到,但是我小白,看不明白怎么弄,什么地方写技能编号,什么地方写状态,请高人们指点一下,谢谢了!
Q:我想设置一直回复技能,使用后可以在战斗中每回合自动回血,也可以做成一种持续回血的状态
A:Scene_Battle 4里的连续伤害处覆盖为下边代码,此状态不要选连续伤害。
# 连续伤害
if @active_battler.hp > 0 and @active_battler.slip_damage?
@active_battler.slip_damage_effect
@active_battler.damage_pop = true
end
if @active_battler.state?(状态ID) and @active_battler.hp >0 #-恢复魔法
@active_battler.damage=-@active_battler.maxhp/10 #恢复生命百分比,这里设置为10%,也可设置固定值
@active_battler.damage=@active_battler.damage.to_i
@active_battler.hp-=@active_battler.damage
@active_battler.animation_id = 21 #自动补血动画编号
@active_battler.damage_pop = true
end
如果要每回合补精神的话,上面脚本的
@active_battler.damage=-@active_battler.maxhp/10 #恢复生命百分比,这里设置为10%,也可设置固定值
里面的.maxhp改为maxsp,然后下面
@active_battler.hp-=@active_battler.damage的.hp改为.sp即可。
dsu_plus_rewardpost_czw
作者:
陆娘
时间:
2012-4-6 18:39
= =你模仿毒然后多做一个状态不就好了吗?听说改持续伤害负值可以~
作者:
kangxi0109
时间:
2012-4-6 21:50
1.Game_Battler 3(战斗中的持续恢复)
#--------------------------------------------------------------------------
# ● 应用连续伤害效果
#--------------------------------------------------------------------------
def slip_damage_effect
#=====================
if self.state?(1)#当目标状态为1号时
self.damage -= self.maxhp / 10#持续恢复10%
else
# 设置伤害
self.damage = self.maxhp / 10#持续失血10%
end
#=====================
# 分散
if self.damage.abs > 0
amp = [self.damage.abs * 15 / 100, 1].max
self.damage += rand(amp+1) + rand(amp+1) - amp
end
# HP 的伤害减法运算
self.hp -= self.damage
# 过程结束
return true
end
复制代码
2.Game_Party(地图中的持续恢复)
#--------------------------------------------------------------------------
# ● 检查连续伤害 (地图用)
#--------------------------------------------------------------------------
def check_map_slip_damage
for actor in @actors
#==========================
if actor.state?(1) #状态为1号时
actor.hp += [actor.maxhp / 100, 1].max#持续恢复1%
elsif actor.hp > 0 and actor.slip_damage?
actor.hp -= [actor.maxhp / 100, 1].max#持续失血1%
#==========================
if actor.hp == 0
$game_system.se_play($data_system.actor_collapse_se)
end
$game_screen.start_flash(Color.new(255,0,0,128), 4)
$game_temp.gameover = $game_party.all_dead?
end
end
end
复制代码
3.这两段脚本可以不同时用,这样就会形成一种战斗时加血(失血),非战斗时失血(加血)的状态,可灵活使用。
作者:
1584927450
时间:
2012-4-6 23:29
像柳柳大人的新手教程里教的制做毒性技能那样编:持续,威力要负数,就这样简单。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1