Project1
标题:
谁有比较简单的方法作出双倍经验道具
[打印本页]
作者:
九夜神尊
时间:
2009-9-19 15:12
标题:
谁有比较简单的方法作出双倍经验道具
本帖最后由 凌辰 于 2009-9-23 18:50 编辑
提示:*倍经验一词由于经常出现在广告贴中,已被设为过滤词,含有此字段的回帖将需要被审核通过后才能显示,请广大会员慎重回帖。
更多过滤词汇请下载
论坛过滤词汇一览
饿,我邪念,要是我自己做肯定可以慢慢做出来。
但是……
废话不多说,谁有比较简单的方法作出双倍经验道具
效果是使用后 ,一段时间内战斗获得的经验*2
事件+脚本都无关,给思路就好。
但愿详细点[line]1[/line]
请在标题处写明问题此乃版规谢谢合作。
凌辰留
作者:
enter9009
时间:
2009-9-21 13:08
事件+脚本都无关.那就改敌人咯!某敌复制相同的.只经验加多.
作者:
九夜神尊
时间:
2009-9-21 13:22
我说的事件脚本都无关的意思是,事件脚本都可以!
作者:
白鬼
时间:
2009-9-21 14:20
【关于N倍经验】
Scene_Battle 2 中
117行 last_level = actor.level
复制代码
后面插入
exp *= $game_variables[44]
复制代码
(44是变量ID,可以修改)
在游戏中,用44号变量来控制经验倍数
这是很简便的改法,变量=几,就是几倍经验
你也可以这样:
在
exp *= $game_variables[44]
复制代码
的后面再添加一行
exp /= 100
复制代码
这样,44号变量设置成150,就是1.5倍经验。
但是!!!!
要注意!
第一种设置方法的话,一进入游戏就要把这个变量设置为1。
第二种方法的话,当然就要设置成100了。
如果要做复杂点,推荐第二种方法,这样可以设置一个“疲劳”的状态,来达到80%经验效果。
【关于N倍经验道具】
还是两种方法,一是计时器。不多说了。
二是用变量控制
结合方法一,我直接写出来吧:
if $game_variables[45] > 0
exp *= $game_variables[44]
$game_variables[45] -= 1
end
复制代码
把上面的插入到 Scene_Battle 2
171行 last_level = actor.level
172行 actor.exp += exp
复制代码
这两行中间。
每次战斗后,45号变量减1
如果45号变量大于0,战斗后经验=正常经验*44号变量
44号变量,游戏开始要立刻设置为1,否则就不得经验了。
作者:
goahead
时间:
2009-9-21 17:27
提示:
作者被禁止或删除 内容自动屏蔽
作者:
Eienshinken
时间:
2009-9-21 17:45
实验了
思路给出.
设置一个物品 使用时调用一个公共事件
开关XX 打开
然后用计时器时间设置物品持续的时间.
再设置一个公共事件为并行 条件是上面的开关打开时我的内容是
等待 1 帧
条件分歧 计时器 0分01秒下时
开关XX 关闭
计时器停止
结束
然后在scene_battle2里获得经验的地方加上判断就行了
# 获得 EXP、增加金钱
if $game_switches[1] == true
exp += enemy.exp * 2
else
exp += enemy.exp
end
复制代码
作者:
传说中di
时间:
2009-9-21 18:55
$data_enemies[id].exp *= 2
作者:
沉默的米饭团
时间:
2009-9-21 21:53
5楼的办法好
作者:
白鬼
时间:
2009-9-23 13:51
5楼的办法
如何判定2倍经验时间已过呢?
用计时器吗?
作者:
九夜神尊
时间:
2009-9-23 18:42
谢谢楼上帮我提出这个问题,可别叫我用并行事件哦。
我对算法还是喜欢优化的好
作者:
霜冻之狼
时间:
2009-9-23 18:45
5楼的办法
如何判定2倍经验时间已过呢?
用计时器吗?
白鬼 发表于 2009-9-23 13:51
其实那个方法还是得用并行事件来判断计时器关闭……
作者:
九夜神尊
时间:
2009-9-23 22:19
实际上也不是必要非要准时关闭啊!
只要在一定时间后,再战斗获得经验的时候关闭,就可以大大减少运算量
我有的就这一点点思路,说实话,我不会用计时器。
作者:
goahead
时间:
2009-9-25 15:48
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1