| 赞 | 7 |
| VIP | |
| 好人卡 | |
| 积分 | 6 |
| 经验 | |
| 最后登录 | 2026-3-6 |
| 在线时间 | 165 小时 |
- 梦石
- 0
- 星屑
- 647
- 在线时间
- 165 小时
- 注册时间
- 2012-4-18
- 回帖
- 237
|
发表于 2013-11-1 12:00:29
|
显示全部楼层
本帖最后由 salvareless 于 2013-11-1 12:42 编辑
话说我突然有个想法,不知道能不能这么弄。
首先,在默认的普通攻击脚本那里添加一行判断,判断是不是双持职业(或者判断角色职业ID也行),如果是使用“攻击”的时候不发动1号技能,而是用另一个技能(例如100号技能)。
class Game_Action
#--------------------------------------------------------------------------
# ● 设置普通攻击
#--------------------------------------------------------------------------
def set_attack
if 双持职业(或者职业ID)
使用100号技能
else
set_skill(subject.attack_skill_id)
end
self
end
end
然后100号技能的设置和1号技能一样,只不过技能公式那一栏空白。
然后在横版战斗里面定义一种新的技能施展类型。并将这种技能的其他地方设置成和普通攻击一样,只有伤害计算部分另外写成下面这样。
class SideView
def skill_action
case skill_id # スキルIDで指定
when 1 # スキル1番は通常攻撃なので、上の武器アクションを実行します
return weapon_action
………………
when 100
return "双持平砍"
end
end
然后把下面这个定义加到横版设定的合适位置。
"计算左手武器伤害" => [造成伤害=(总攻击力-右手武器攻击)*(1-(目标防御/目标防御+目标幸运*4+400)),]
"计算右手武器伤害" => [造成伤害=(总攻击力-左手武器攻击)*(1-(目标防御/目标防御+目标幸运*4+400)),]
"双持平砍" => ["敵前移動","コラプス禁止","個別開始","武器振りL","计算左手武器伤害","対象アニメ武器LWT","武器振りR","计算右手武器伤害","死亡確認","対象アニメ武器WT","個別終了","コラプス禁止解除","次の行動者へ","座標リセットカーブ" ]
不知道这种想法对不对,还有就是代码的完善。让我改代码还可以,让我自己写就= =捉襟见肘了。
发上来之后才想到,还可以这样。就是不知道能不能行得通。
还只判断是不是二刀,如果是,返回100号技能和101号技能,就是二刀的平砍相当于同时发动两个技能。不知道能不能这么做。
100号技能的伤害公式是(总攻击力-右手武器攻击)*(1-(目标防御/目标防御+目标幸运*4+400))
101号技能的伤害公式是(总攻击力-左手武器攻击)*(1-(目标防御/目标防御+目标幸运*4+400))
然后还是定义动画
when 100
return "双持平砍左"
when 101
return "双持平砍右"
然后定义
"双持平砍左" => ["敵前移動","コラプス禁止","個別開始","武器振りL","计算伤害","対象アニメ武器LWT","死亡確認",] #左手砍了不回原位,除非砍死了
"双持平砍右" => ["武器振りR","计算伤害","死亡確認","対象アニメ武器WT","個別終了","コラプス禁止解除","次の行動者へ","座標リセットカーブ" ] #右手砍了再回原位
这是一种神奇的想法,不知道现实不现实啊。
|
|