Project1
标题:
增加攻击力防御力(非百分比)的技能怎么做。
[打印本页]
作者:
he11120
时间:
2012-4-4 01:34
标题:
增加攻击力防御力(非百分比)的技能怎么做。
如题,特技使用者的魔力越高,加得越高,怎么实现? dsu_plus_rewardpost_czw
作者:
fonky
时间:
2012-4-4 15:53
虽然不能完全实现,但是可以这样做:
设置一个技能为:防御上升,威力设为-1,对象自己定。
然后设置一个公共事件,第三页左边一列有一个增减能力值,可以增减能力,但是不能随着魔力大小增减能力大小,如果需要随着魔力大小增加,那就自己去实验吧。
作者:
kangxi0109
时间:
2012-4-4 18:10
本帖最后由 kangxi0109 于 2012-4-4 18:57 编辑
这个特技是加状态提升攻防的还是其他什么的,比如按攻防损伤之类?
=================================
应用状态的办法:
1.设置状态X,编号为1,除了名字之外不设置其他属性变化。当然了,动画、限制、能否抵抗、持续失血、定量、持续时间什么的自由设置。
2.还是在Game_Battler 3改,老地方了:
#--------------------------------------------------------------------------
# ● 应用通常攻击效果
# attacker : 攻击者 (battler)
#--------------------------------------------------------------------------
def attack_effect(attacker)
# 清除会心一击标志
self.critical = false
# 第一命中判定
hit_result = (rand(100) < attacker.hit)
# 命中的情况下
if hit_result == true
# 计算基本伤害
=================================
if attacker.states.include?(1)#攻击方状态为1号的场合
atk = [attacker.atk *(100+attacker.int/10)/100- self.pdef / 2, 0].max#这里的攻击力提升率为魔力(int)除以1000
elsif self.states.include?(1)#被攻击方状态为1号的场合
atk = [attacker.atk - self.pdef*(100+self.int/10)/100 / 2, 0].max#这里的物理防御提升率为魔力(int)除以1000
else
atk = [attacker.atk - self.pdef / 2, 0].max
end
=================================
self.damage = atk * (20 + attacker.str) / 20
复制代码
注意:这个方法提升的攻防只在战斗的那一瞬间得到提升,平时在状态栏是看不见的。而且,攻防的提升是按照得到状态的那个人的魔力进行提升的,与施法者无关...当然,如果这个状态是自己加给自己的话,请无视这段话。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1