游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3598|回复: 16

[讨论] 求救啊!!!!

[复制链接]

43

主题

540

帖子

540

积分

高级会员

Rank: 4

积分
540
发表于 2009-6-3 11:53:00 | 显示全部楼层 |阅读模式
最近很头痛两个问题

首先 如何实现攻击敌人后敌人显示掉了的hp量  好像是个for循环 用最初的hp量减被攻击后的hp量得出的结果再赋予一个变量    将变量减去下一次被攻击后所剩的hp量   print这些结果?????

还有就是显示掉hp量的范围判定  系统是自动以攻击角色开始攻击来作为计算hp减少的开关 也就是说如果你站在很远的地方释放飞镖  飞彪打到敌人需要一定时间  但系统并不以这段时间做开关判定  于是最后出现了飞镖还没攻击到敌人敌人就开始显示掉的hp量了  如何解决呢 。。。。好像是延迟一段时间再显示文本信息。。。可是这就要个范围判定才能做到很准确的当飞镖攻击到敌人就显示文本信息。  最后的问题是 几个范围的优先级怎么设定 用什么语句判断 什么时候以 离敌人350的时候的时间延迟为标准  什么时候又以另一个离敌人的范围为标准?  (不能在event那里做范围设定不然只要一靠近了敌人就开始出现bug了)

如何解决啊


19

主题

2360

帖子

2384

积分

金牌会员

Rank: 6Rank: 6

积分
2384
发表于 2009-6-3 11:56:00 | 显示全部楼层

Re:求救啊!!!!

这不是程序问题么?

28

主题

3250

帖子

3262

积分

论坛元老

Rank: 8Rank: 8

积分
3262
QQ
发表于 2009-6-3 11:58:00 | 显示全部楼层

Re:求救啊!!!!

回楼上,不是

70

主题

2251

帖子

2283

积分

金牌会员

Rank: 6Rank: 6

积分
2283
QQ
发表于 2009-6-3 12:01:00 | 显示全部楼层

Re:求救啊!!!!

后来的HP是怎么根据原始HP算的? 难道不是原HP-伤害=后来HP么?

为什么不能是被攻击角色被攻击做开关呢

0

主题

271

帖子

271

积分

中级会员

Rank: 3Rank: 3

积分
271
发表于 2009-6-3 12:09:00 | 显示全部楼层

Re:求救啊!!!!

第一个问题不回答
第二个问题我说些思路
服务器往目标身上加伤害,可以判断造成这次伤害的魔法状态.
根据魔法状态来判断类型,是不是飞行类的魔法
同时通知客户端两个信息,1是否要延时扣血(飞行类魔法延时)2是谁放了这个法术

然后根据施法者与目标之间的距离(格子数),算出需要延时的时间
-------
这个...很难

149

主题

4781

帖子

5094

积分

版主

Rank: 7Rank: 7Rank: 7

积分
5094
QQ
发表于 2009-6-3 12:22:00 | 显示全部楼层

Re:求救啊!!!!

lz终于到了只能自己做个小游戏的地步了么

25

主题

667

帖子

698

积分

高级会员

Rank: 4

积分
698
发表于 2009-6-3 13:04:00 | 显示全部楼层

Re:求救啊!!!!

围观~! 好强大啊~!

11

主题

903

帖子

914

积分

高级会员

Rank: 4

积分
914
发表于 2009-6-3 13:11:00 | 显示全部楼层

Re:求救啊!!!!

参考wow……进度条到2/3位置已经在发包,本地开始记录下一次按键
如果服务器没响应,则看到这人一直在搓火球就是不扔出去。非等到服务器响应了、计算出了boss掉血多少,发回到本地,客户端才让搓了半天的这个火球飞出去并且显示出boss掉血。至于飞行时间,都是在客户端判定所以没什么大问题。

3

主题

935

帖子

981

积分

高级会员

Rank: 4

积分
981
发表于 2009-6-3 13:51:00 | 显示全部楼层

Re:求救啊!!!!

可以做一个最简单的碰撞检测撒= =0比如BoundBox或者sphere....
话说LZ这话看着怎么这么奇怪= =0
难道是传说中的控制台程序?....

还文字版?....

厄= =0
建议继续啃C/C++...

1

主题

106

帖子

110

积分

注册会员

Rank: 2

积分
110
发表于 2009-6-3 13:52:00 | 显示全部楼层

Re:求救啊!!!!

我也来猜猜
服务器会维持一个角色状态列表,其中就有角色的当前hp信息撒,
第一个:伤害是最先在服务器上计算出来了,先计算,才会有掉血,所以直接把这个结果发送给客户端显示不就行了么,当然如果客户端发现这个值超过角色当前血量,就会只掉当前血量
远程攻击技能
在客户端会有子弹飞行速度,施法者和目标的距离,这个掉hp的时间延迟是可以计算出来的,只要服务器能够在那个时间延迟,也就是子弹到达目标之前把结果返回给客户端,而客户端收到结果,在子道到达目标才显示,就行了
如果客户端延迟过大,服务器在客户端子弹到达目标后还未返回伤害结果,那就是常见的卡了。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-10 13:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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