Project1
标题:
技能事件学习方法
[打印本页]
作者:
xiaoxiyp
时间:
2014-10-26 18:07
标题:
技能事件学习方法
我想设计一个技能,这个技能在角色80级及以上时使用第x号技能15次后才能获得。
作者:
taroxd
时间:
2014-10-26 18:49
如果只有一个角色,那么第x号技能触发一个公共事件,如果该角色等级在80级以上则某变量+1,如果某变量大于等于15则该角色习得技能
如果有多个角色,那么就每个角色对应不同的“第x号技能”、不同的公共事件、不同的变量
作者:
VIPArcher
时间:
2014-10-26 18:51
我提供一个并不怎么优秀的做法的思路吧
用技能挂钩公共事件做到
第X号技能伤害公式这么写$use_id = a.id;原公式
第X号技能使用效果里加一个公共事件,
分歧条件-脚本:$use_id == 1
变量1号角色使用次数 += 1
分歧结束
分歧条件-脚本:$use_id == 2
变量2号角色使用次数 += 1
分歧结束
............
这里继续添加所有可以学会这个技能的角色分歧
............
分歧条件1号角色等级>=80
分歧条件变量1号角色使用次数 >= 15
1号角色学会某技能
分歧结束
分歧结束
分歧条件2号角色等级>=80
分歧条件变量2号角色使用次数 >= 15
2号角色学会某技能
分歧结束
分歧结束
...........
这里继续添加可以学会该技能的角色
只是思路未测试
作者:
三途亚梦
时间:
2014-10-26 19:12
本帖最后由 三途亚梦 于 2014-10-26 19:25 编辑
你可以直接到 game_battler
大概第358行的
value = apply_guard(value)
下面加上这么一段就搞定了
请留出1号变量用来积累使用次数
if item.is_a?(RPG::Skill)
case item.id
when 15 #这个数字使用的技能的id
$game_variables[1] += 1 if user.level >= 80 #这里的变量就是累计次数用的了(但是准确的说是技能造成伤害的次数)。
if $game_variables[1] >= 15
$game_actors[user.id].skill_learn?($data_skills[16]) ? nil : $game_actors[user.id].learn_skill(16)
#上面的两个16就是将会学会的技能,前面的16是判断是否已经学会了16号技能
end
end
end
复制代码
我觉得这个思路十分酷炫(正色
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1