你画我猜之初步构想

其实很早以前就像写个这样的小程序了,但是一直没有付出实践。这次正好写这样一个社交类的小游戏,练练手。 因为是从头开始写,中间肯定会遇到写问题,程序也可能不大完善。希望有经验的同学们,能给出好的建议以及解决问题的方法。。。
[quote] 游戏的初步构思:
1.游戏具有一个大厅,大厅里面有多个房间,每个房间可以容纳6个玩家。
2.在大厅中,房间里面,玩家都可以相互聊天。
3.玩家在房间里聊天,信息只会发给房间里面的其它玩家,如果在大厅里面聊天,也只是会发给大厅里面其它玩家
4.当房间里面的人数大于等于2人时,游戏自动开始。并按顺序选择painter
5.猜对了的人获得积分[/quote]

游戏一些类的一些安排:
玩家类:主要有帐号,密码,昵称,积分等信息。
[img]https://img-my.csdn.net/uploads/201204/18/1334717070_5854.png[/img]
游戏房间类:房间编号,是否有密码,状态,房间里面的玩家等信息。
[img]https://img-my.csdn.net/uploads/201204/18/1334717074_8201.png[/img]
游戏大厅类:有玩家的List和游戏房间的List。游戏大厅需要显示在线玩家的信息。
[img]https://img-my.csdn.net/uploads/201204/18/1334717066_2434.png[/img]


[size=large]难点:[/size]
1,问题一:如何处理Client和Server之间的通讯。因为传递的信息有很多,如:玩家进入大厅,玩家进入游戏,玩家进行绘画、聊天等等。。。先要建立一个完善的协议.

在给Server发具体的操作信息之前,发送标记。Server端接受到标记之后,将根据这个标记,采用对应的接收方式。如Client发送具体的操作信息:出发点,结束点,画笔的颜色和尺寸等。。。Server只要也按照对应的顺序接收就好了。

同理Server给客户端发送消息的时候,也先发个标记,然后再发送具体的信息。。。


2,问题二:因为有多个用户,这可能导致,客户端连续两次接受到的都是标记信息。这就会导致本应该接受具体操作的那个方法,接受到的参数却是另外一个操作的标记信息。。。就会造成混乱。

解决方法是应该设置“锁”的机制,在一个方法没有执行完毕的情况下,不允许服务器再次接受文件头(标记)信息,只能在执行完当前方法再接收。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值