设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2217|回复: 8
打印 上一主题 下一主题

[事件教程-VA] 火铳子弹射击系统V2版(支持多人)

[复制链接]

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

跳转到指定楼层
1
发表于 2012-1-1 13:53:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 越前リョーマ 于 2012-1-27 00:09 编辑

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




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

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

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




http://115.com/file/be32z03p

顺便吐槽,VA自带3M的DLL导致范例文件剧增,上传不了附件,只能115出手了。
梦石
0
星屑
5463
在线时间
2562 小时
注册时间
2011-9-27
帖子
1120

极短23参与开拓者

2
发表于 2012-1-22 14:18:17 | 只看该作者
判定 没有子弹 这件事情 ,不能只放在 两个史莱姆这单一的敌群身上。 以后敌人越来越多,代码重复copy就有点荒唐了。
找个别的地方中判定吧。
从平淡走向更平淡。
回复 支持 反对

使用道具 举报

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

3
 楼主| 发表于 2012-1-22 14:21:00 | 只看该作者
怕鼠的猫 发表于 2012-1-22 14:18
判定 没有子弹 这件事情 ,不能只放在 两个史莱姆这单一的敌群身上。 以后敌人越来越多,代码重复copy就有 ...

复制起来也不费事吧,除非你敌群超级多 - -
回复 支持 反对

使用道具 举报

梦石
0
星屑
5463
在线时间
2562 小时
注册时间
2011-9-27
帖子
1120

极短23参与开拓者

4
发表于 2012-1-22 14:26:05 | 只看该作者
我的想法是:那个公共事件在消耗子弹之后,自动判断是否禁用技能。
即使买了子弹,也必须要(在平时)使用一次子弹(非消耗品),来恢复这两个技能。如果忘了,就只能到战场上,浪费一个回合,使用子弹,这两个技能就恢复了!
反正,从编程角度上说,代码重写就是很笨的事情。

点评

合还是要优先判断子弹够不够  发表于 2012-1-22 14:30
那就是另外一个效果了,变成【装备子弹】了,而且子弹够不够依然要在队伍里设置。就算在技能里带公共事件来判断也只能是下次能不能用,第一回  发表于 2012-1-22 14:29
从平淡走向更平淡。
回复 支持 反对

使用道具 举报

精灵族の天使

梦石
0
星屑
1697
在线时间
3038 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

5
发表于 2012-1-23 12:12:38 | 只看该作者
本帖最后由 精灵使者 于 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
公共事件:子弹判定

就可以完美的封掉此技能

同理,此种情况可以做一个技能消耗多个子弹的场合。
回复 支持 反对

使用道具 举报

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

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


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

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

总的来说,这种技能对于一个角色在队伍里还是可以轻松应对的,但是如果多个会此类技能的角色在队伍里,事件还是比较难控制的……
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

精灵族の天使

梦石
0
星屑
1697
在线时间
3038 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

7
发表于 2012-1-24 18:54:55 | 只看该作者
本帖最后由 精灵使者 于 2012-1-24 18:55 编辑

我考虑了同时有普通技能和火枪技能的可能性。
如果是考虑火枪技能的前后选择的话建议把判定加在选择项后了——这样的话就恐怕要在选择技能后执行公共事件了。
另外对于这种模型建议选择后立刻执行的无CP的RTAB系统,这样比较容易判断
回复 支持 反对

使用道具 举报

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

8
发表于 2012-1-24 19:37:10 | 只看该作者
精灵使者 发表于 2012-1-24 18:54
我考虑了同时有普通技能和火枪技能的可能性。
如果是考虑火枪技能的前后选择的话建议把判定加在选择项后了 ...

我是说你用修改occasion的方法太绕了……直接用状态屏蔽掉对应的法术就行了。

点评

只是有屏蔽单个技能的操作你没有发现而已…… =。=  发表于 2012-2-3 18:16
occasion可以做到对于一个法术的屏蔽  发表于 2012-2-3 17:12
另外,法术的屏蔽是屏蔽所有的法术,并不是针对单个法术的屏蔽  发表于 2012-2-3 17:11
状态屏蔽掉对应的法术……么……?  发表于 2012-2-3 17:04
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

9
 楼主| 发表于 2012-1-27 00:12:06 | 只看该作者
更新一下支持多人。
主要是把两种方法结合了一下,顺便简化了队伍里的公共事件,起码就一页了,复制起来也方便。

点评

赞小柯~  发表于 2012-1-29 08:55
回复 支持 反对

使用道具 举报

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-26 00:21

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表