赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 0 |
最后登录 | 2013-2-16 |
在线时间 | 24 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 505
- 在线时间
- 24 小时
- 注册时间
- 2011-1-19
- 帖子
- 1
|
本帖最后由 sinwulala 于 2012-8-4 15:02 编辑
提供你一些想法
(虽然尽力使用事件,但在某些情况下无可避免的还是得使用脚本)
流程: 使用技能→判断捉取对象→机率判断→(如果成功)获取敌人ID→获得宠物蛋(或直接加入)
1.使用技能
首先当然就是先做出抓宠技能(或是道具)
2.判断捉取对象
再来有个还挺麻烦的问题
就是游戏内建的选项中,没有办法让你得知你的技能(物品)选的是几号敌人
(战场上的编号)
这个问题如果不解决,之后的事也不用说了
不过幸好还是有其他比较迂回的方法能解决这问题
如果LZ有仔细看过条件分歧的第二页,有个敌人状态条件,可以从这里下手
创建一叫做”捉宠状态”的状态
然后让你的技能(物品)附上这个技能,记得敌人方面状态有效度必须调A才能保证必定附上这个状态
然后在公共事件中这么做
条件分歧 :[1.] 为[捉宠状态]
…
分歧结束
条件分歧 :[2.] 为[捉宠状态]
…
分歧结束
…
…
…做八个条件分歧
跑下来就知道选的是哪个敌人了
*公共事件结束后记得把状态解除
3.机率判断
不知道LZ的捉宠机率想怎么设
提供我的想法:
我想让机率与敌人损失血量呈正相关
所以在当前血量大于时50%必然失败
小于50%的话为{log[log(敌人MaxHP)-log(敌人HP)]^2+10]-1}*3500(校正常数)
我知道内建没有对数运算,要用脚本才做得到,但是这个公式的出的曲线还满漂亮的,而脚本其实也不难,可以参考一下
*公式中有两个变数” 敌人MaxHP”与” 敌人HP”
就在条件上面条件分歧设立,也是八次
也就是:
条件分歧 :[1.] 为[捉宠状态]
变数操作 : [敌人MaxHP] = [1.]的MaxHP
变数操作 : [敌人HP] = [1.]的HP
…
分歧结束
条件分歧 :[2.] 为[捉宠状态]
变数操作 : [敌人MaxHP] = [2.]的MaxHP
变数操作 : [敌人HP] = [2.]的HP
…
分歧结束
….
…
再设一个”随机”变数,范围为0~1000
若是比上面算出的机率小就是成功
P.S若是不用脚本,硬是要凑成当前血量与最大血量的关系,就会变得很奇怪,LZ可以试试看
4.
(1) 创立8个变数记载敌人ID
在资料库-队伍栏(有多少队伍以下动作就要做几次)中的战斗事件中
设立变数1→对应敌人1 的ID
变数2→对应敌人2 的ID…………以此类推
并且设定发生条件为第零回合
(2) 创建一个变数”最终敌人ID”,其目的为确定捕捉敌人ID
也就是
条件分歧 :[1.] 为[捉宠状态]
变数操作 : [敌人MaxHP] = [1.]的MaxHP
变数操作 : [敌人HP] = [1.]的HP
变数操作 : [最终敌人ID] = 变数1
…
分歧结束
条件分歧 :[2.] 为[捉宠状态]
变数操作 : [敌人MaxHP] = [2.]的MaxHP
变数操作 : [敌人HP] = [2.]的HP
变数操作 : [最终敌人ID] = 变数2
…
分歧结束
…
…
5.获得宠物蛋(或直接加入)
这个必定要靠脚本才能做到,因为内建不提供变数带入的队员更换
脚本: $game_party.add_actor(角色编号)
直接加入:脚本输入$game_party.add_actor($game_variables[最终敌人ID的变数编号])
*记得注意当前队伍人数
宠物蛋: 将”最终敌人ID”加入一个数组,需要时再访问即可
完成
补记:
如果还是执意要用事件也不是做不到,但是很麻烦
思考流程:
1. 要先为每个敌人量身订造一个宠物蛋 e.g 幽灵的宠物蛋天使的宠物蛋…..
2. 要如何判定加入哪个宠物蛋-----条件分歧!!
e.g
条件分歧 : 变数[最终敌人ID] == 2
增减物品 : [幽灵的宠物蛋] + 1
分歧结束
条件分歧 : 变数[最终敌人ID] == 3
增减物品 : [天使的宠物蛋] + 1
分歧结束
…
…
3.
再为每个敌人量身打造一个公共事件
例如在天使的公共事件中,输入一个指令---加入队员天使
4.
把宠物蛋执行效果配上相对应的公共事件,一个箩卜一个坑,也是可以达到相同的效果(不过很自虐就是了…)
直接加入也是差不多的方法(比较简单,只需要条件分歧)
暂时只有想到这个办法
|
|