首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

讨论,如何在游戏中加入成就系统

2013-06-19 
讨论,怎么在游戏中加入成就系统最近在想这个成就系统比如一个贪吃蛇游戏。想加入以下几个成就:吃了十个豆,

讨论,怎么在游戏中加入成就系统
最近在想这个成就系统

比如一个贪吃蛇游戏。
想加入以下几个成就:吃了十个豆,在边处吃十个豆,在角处吃十个豆,跑了一百步,在10秒内连续吃3个豆 等等

这样的成就该怎么做。
我现在想到的一个方法是每吃一个豆就判断一次是否满足成就条件,或每跑一步判断一次。

但这样是否会影响运行效率,如果成就比较多,种类也比较多,那岂不是每做一件事就要判断一次?这样是不是又点影响效率了。 游戏 成就系统
[解决办法]
你只要能把你的所谓成就归纳成范式,让各种动作去处理他们对应的成就积分的累加,就可以得到一个清晰和高效的设计,这有什么复杂的呢?
[解决办法]
这些本质上就是对游戏过程中的数据进行统计.

拿你举的例来说:

吃了十个豆=被吃掉的豆子计数>=10
在边处吃十个豆=坐标在四边处被吃掉的豆子计数>=10
在角处吃十个豆=坐标在四角处被吃掉的豆子计数>=10
跑了一百步=用户击键次数>=100?(这个不确定,说得有些不清楚.)
在10秒内连续吃3个豆=当前被吃掉的豆子的时间戳-向前三个被吃掉的豆子的时间戳<=10秒

这些都是基本的判断语句,不会对性能有什么影响的,除非你判断的方式不正确.

而你的游戏中,豆子的数据结构肯定都是包含这些参数的,比如时间戳,这个是最基本的,然后是坐标,这个肯定也有,不然你咋显示豆子.
[解决办法]
我想出来两种办法:
1:实时判断, 就像前面几楼说的那样, 每吃一个豆子就拿不同的成就判断规则一个一个套一遍看看是否满足

2: 只记录时间,(如果还有其他方面的成就判断条件也一同记录),每一局游戏结束的时候根据这个游戏记录来"总结"一下获得的成就.

这两种方式应该都被不同的游戏采用的吧,你可以挑一个试试

热点排行