Project1

标题: 火铳子弹射击系统V2版(支持多人) [打印本页]

作者: 越前リョーマ    时间: 2012-1-1 13:53
标题: 火铳子弹射击系统V2版(支持多人)
本帖最后由 越前リョーマ 于 2012-1-27 00:09 编辑

【V2版更新内容】
支持队伍里有多个火枪手。
如果只剩一颗子弹,而两个火枪手都选择射击,那么后发的人当前回合不做任何行动。




忧雪说她最想写的是子弹系统……于是我先做了一个事件版的,应该会有很大区别。

这个事件版的,其实还是有点小问题的。就不改脚本来说,虽然VA提供给角色一个【攻击】技能,但是我们却不能让不同的角色有不同的【攻击】,所以我只能把【攻击】设置为威力小的近身,然后用技能额外做了火铳的攻击和一个技能,都是需要装备抢以及消耗子弹的。
若是前面的版本的RM来做,也许会比这个更麻烦以及效果不好(只能删除技能却不能封印,还要一堆判断……),另外也不确定到底能不能做了。

这个范例也可以拿来当做熟悉VA于之前不同的一些地方吧。




http://115.com/file/be32z03p

顺便吐槽,VA自带3M的DLL导致范例文件剧增,上传不了附件,只能115出手了。
作者: 怕鼠的猫    时间: 2012-1-22 14:18
判定 没有子弹 这件事情 ,不能只放在 两个史莱姆这单一的敌群身上。 以后敌人越来越多,代码重复copy就有点荒唐了。
找个别的地方中判定吧。
作者: 越前リョーマ    时间: 2012-1-22 14:21
怕鼠的猫 发表于 2012-1-22 14:18
判定 没有子弹 这件事情 ,不能只放在 两个史莱姆这单一的敌群身上。 以后敌人越来越多,代码重复copy就有 ...

复制起来也不费事吧,除非你敌群超级多 - -
作者: 怕鼠的猫    时间: 2012-1-22 14:26
我的想法是:那个公共事件在消耗子弹之后,自动判断是否禁用技能。
即使买了子弹,也必须要(在平时)使用一次子弹(非消耗品),来恢复这两个技能。如果忘了,就只能到战场上,浪费一个回合,使用子弹,这两个技能就恢复了!
反正,从编程角度上说,代码重写就是很笨的事情。
作者: 精灵使者    时间: 2012-1-23 12:12
本帖最后由 精灵使者 于 2012-1-23 12:23 编辑

精灵:
技能可是完全可以封印的。
$data_skill[id].occasion = 0..3
0 正常时候可以用
1 战斗中
2 菜单中
3 不能使用
那个封印掉这个技能只需要等于3即可。
另外,使用此脚本必须要同时使用“运行时修改数据库_保存存档内容”
以前我做过这个
其实技能可以挂公共事件。
默认的范例:
范例:
变量 0001 = 子弹 的持有数
条件分歧:变量 0001 大于 0
增减物品[子弹]  - 1
敌人伤害:500
除此以外的场合
显示文章:子弹不足,无法发动此技能
分歧结束

完美的范例:
或者是战斗初始化的时候执行公共事件:子弹判定
变量:0001 = 子弹的持有数
条件分歧:变量 0001 大于0
$data_skill[1].occasion = 2 #战斗时可以使用1号技能
除此以外的场合
$data_skill[1].occasion = 3 #封印1号技能
end

1号技能里面做如下公共事件:
增减物品[子弹]  - 1
敌人伤害:500
公共事件:子弹判定

就可以完美的封掉此技能

同理,此种情况可以做一个技能消耗多个子弹的场合。

作者: 亿万星辰    时间: 2012-1-24 09:54
本帖最后由 亿万星辰 于 2012-1-24 10:07 编辑
精灵使者 发表于 2012-1-23 12:12
精灵:
技能可是完全可以封印的。
$data_skill.occasion = 0..3


太绕了吧……
直接通过技能挂公共事件判定是否有子弹,然后给全体附加技能封印的状态即可,可以在附加状态后文字提示一句子弹用尽了。

但这样解决不了的问题依旧是两个会火枪技能的角色都在队伍中,而只剩一颗子弹时的情况,如果说选择技能时让两个角色都可以选择对应的火枪技能,但是在释放时,就会出问题。如果按楼主的范例在回合判断,那么一颗子弹能够放两个技能;如果按上面我说的那种判断方法,则后放技能的角色会因为被附加了状态而无法继续释放,这样也不太厚道,毕竟选技能的时候你是让玩家选了,也没有出什么提示。

总的来说,这种技能对于一个角色在队伍里还是可以轻松应对的,但是如果多个会此类技能的角色在队伍里,事件还是比较难控制的……
作者: 精灵使者    时间: 2012-1-24 18:54
本帖最后由 精灵使者 于 2012-1-24 18:55 编辑

我考虑了同时有普通技能和火枪技能的可能性。
如果是考虑火枪技能的前后选择的话建议把判定加在选择项后了——这样的话就恐怕要在选择技能后执行公共事件了。
另外对于这种模型建议选择后立刻执行的无CP的RTAB系统,这样比较容易判断
作者: 亿万星辰    时间: 2012-1-24 19:37
精灵使者 发表于 2012-1-24 18:54
我考虑了同时有普通技能和火枪技能的可能性。
如果是考虑火枪技能的前后选择的话建议把判定加在选择项后了 ...

我是说你用修改occasion的方法太绕了……直接用状态屏蔽掉对应的法术就行了。
作者: 越前リョーマ    时间: 2012-1-27 00:12
更新一下支持多人。
主要是把两种方法结合了一下,顺便简化了队伍里的公共事件,起码就一页了,复制起来也方便。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1