C#聊天+五子棋

简介:

此系统只是为了让自己多了解一下有关底层通信协议的相关知识。


聊天功能是通过Socket利用Tcp协议来实现。

聊天服务端:chatServer

聊天客户端:chatClient

---聊天,是通过聊天服务端监听,一旦有客户连接上此服务端,那么聊天服务端就保存这个客户端的Socket实例,并存放在一个IDictionnary内(全部的在线用户),然后将已经存在的用户信息发送给此聊天客户端(客户端显示在线列表),再将此客户端的信息发送给所有已经存在的客户端用户(及时更新客户端在线用户列表)。与此同时,在服务端为每个连接上服务器的客户端Socket实例,创建一个线程去监听客户端发来的信息。

 

五子棋游戏是通过Socket封装的TcpClient类来实现。

游戏服务端:每个聊天客户端都可以充当游戏服务端(邀请者=游戏服务端)

游戏客户端:那就是接收邀请的用户了

--五子棋游戏,首先通过聊天的功能发送邀请给指定用户(作为游戏服务端开始监听),用户如果接受邀请,那么就创建连接。之后利用游戏建立的通信来发送五子棋的坐标。

 

个人觉得需要注意的方面:
1、操作不同线程的控件。
解决方式:利用委托或者直接声明线程间的控件可以互用。参考:http://www.cnblogs.com/cadlife/articles/2425820.html

2、画棋盘方面,例:当窗体程序最小化,再打开时,棋盘会自动重绘。
解决方式:重绘棋盘的同时,再让其重绘棋子即可。(期待有好的方法)

3、判断胜利

View Code

 

4、资源的释放。

   源码下载  存在问题之处请指正....

 

 


本文转自武沛齐博客园博客,原文链接:http://www.cnblogs.com/wupeiqi/archive/2013/05/01/3053170.html,如需转载请自行联系原作者

目录
相关文章
|
4月前
|
开发者
什么是分享?游戏中的自制关卡如何分享给朋友?
什么是分享?游戏中的自制关卡如何分享给朋友?
22 0
|
4月前
|
开发者
游戏中的关卡分享功能如何实现
游戏中的关卡分享功能如何实现
28 0
|
7月前
|
Python
猜拳游戏
用Python编写猜拳游戏。
63 0
|
7月前
|
Python
项目猜拳游戏
用Python语言,编写出猜拳游戏。
44 0
|
8月前
关于游戏的笔记
关于游戏的笔记
|
11月前
|
开发工具 Android开发 图形学
微信小游戏是个人尝试做游戏最好的选择
我自己现在正在做微信小游戏,而且也在教很多的学员做微信小游戏。你可能会觉得我这样说是有一定的动机的,但其实不然,如果我自己不相信这个平台的话,那其实我是没有必要自己做的,只需要忽悠让别人相信就可以了。但是现在我自己也正在致力于做这件事,这也证明了我对它的认可。不是有这么一句话吗?不要轻易相信一个人说了什么,而要看他做了什么
99 0
|
11月前
|
算法 索引 容器
如何做一个俄罗斯方块游戏(二)
嗨!大家好,我是小蚂蚁。今天我们继续学习如何做一个俄罗斯方块游戏。整个系列教程计划按照这个流程图开展,这也是我制作整个游戏的过程,今天我们就来看一下“随机生成形状”这个模块。想要实现随机的生成形状,首先必须要知道在俄罗斯方块中一共有多少种形状(也就是我们上一节中留下的第二个问题)。
124 0
|
11月前
|
定位技术 开发者
如何做一个俄罗斯方块游戏(一)
从今天开始,我将开启一个新的游戏,并且顺带着会写一个新的系列教程,这个游戏就是人人都知道的——俄罗斯方块。 我一直都在做消除类型的游戏,在所有消除类型的游戏里,俄罗斯方块可以称得上是“鼻祖”了,所以,不论怎样这个系列里都不能少的了它。
103 0
|
算法 Java
Java实现五子棋对战小游戏
Java实现五子棋对战小游戏
Java实现五子棋对战小游戏
10:超级玛丽游戏
10:超级玛丽游戏
77 0