C#网游客户端

news/2024/10/20 20:56:37/

C#网游客户端

  • 一、项目创建以及页面设置
    • (一)新建项目
    • (二)界面设计
  • 二、连接服务器
  • 三、客户端向服务器发送数据
  • 四、播放背景音乐
  • 五、切换游戏背景图片
  • 六、总结
  • 七、参考资料

一、项目创建以及页面设置

(一)新建项目

1.创建新项目控制台应用(.NET Framework)->下一步在这里插入图片描述
2.选择合适的存储位置命名,点击创建
在这里插入图片描述

(二)界面设计

1.总的页面
在这里插入图片描述
2.图片PictureBox设置
(1)Imge背景设置
在这里插入图片描述
从本地导入图片
在这里插入图片描述

(2)SizeMode选择StrechImage,会把PictureBox图片框铺满,自适应图片框的大小。
在这里插入图片描述

二、连接服务器

1.在Form中初始化进入游戏:

private NetworkStream stream;
private TcpClient tcpClient = new TcpClient();
public Form1()
{InitializeComponent();try{//向指定的IP地址的服务器发出连接请求tcpClient.Connect("10.1.230.74", 3900);listBox1.Items.Add("连接成功!");stream = tcpClient.GetStream();byte[] data = new byte[1024];//判断网络流是否可读            if (stream.CanRead){int len = stream.Read(data, 0, data.Length);//Encoding ToEncoding = Encoding.GetEncoding("UTF-8");//Encoding FromEncoding = Encoding.GetEncoding("GB2312");//data=Encoding.Convert(FromEncoding, ToEncoding, data);//string msg = Encoding.UTF8.GetString(data, 0, data.Length);string msg = Encoding.Default.GetString(data, 0, data.Length);string str = "\r\n";char[] str1 = str.ToCharArray();string[] msg1 = msg.Split(str1);for (int j = 0; j < msg1.Length; j++){listBox1.Items.Add(msg1[j]);}}}catch{listBox1.Items.Add("服务器未启动!");}
}

2.运行结果

三、客户端向服务器发送数据

1.双击button12
在这里插入图片描述

2.在Form1.cs加入代码

 private void button12_Click(object sender, EventArgs e){//判断连接是否断开if (tcpClient.Connected){//向服务器发送数据string msg = textBox1.Text;Byte[] outbytes = System.Text.Encoding.Default.GetBytes(msg + "\n");stream.Write(outbytes, 0, outbytes.Length);byte[] data = new byte[1024];//接收服务器回复数据if (stream.CanRead){int len = stream.Read(data, 0, data.Length);string msg1 = Encoding.Default.GetString(data, 0, data.Length);string str = "\r\n";char[] str1 = str.ToCharArray();string[] msg2 = msg1.Split(str1);for (int j = 0; j < msg2.Length; j++){listBox1.Items.Add(msg2[j]);}}}else{listBox1.Items.Add("连接已断开");}}

3.运行结果
在这里插入图片描述

四、播放背景音乐

1.设置音乐按钮如下,一个Lable和两个Button
在这里插入图片描述

2.添加WindowsMediaPlayer控件,工具箱->常规右键->选择项
在这里插入图片描述
3.勾选COM组件中的Windows Media Player
在这里插入图片描述

4.添加成功如下
在这里插入图片描述
5.双击Button13(播放键)设置代码.如下

private void button13_Click(object sender, EventArgs e){string s = @"C:\Users\86199\Music\xz\Something just like this.mp3";axWindowsMediaPlayer1.URL = s;}private void button14_Click(object sender, EventArgs e){//用于暂停正在播放的背景音乐axWindowsMediaPlayer1.Ctlcontrols.pause();}

五、切换游戏背景图片

1.添加Timer组件
在这里插入图片描述
2.t

2.Timer的属性Enable设置True
在这里插入图片描述

3.添加代码如下

int flag = 0;private void timer1_Tick(object sender, EventArgs e){flag++;string picturePath = @"F:\game\pictures\" + flag + ".jpg";pictureBox1.Image = Image.FromFile(picturePath);if (flag ==3){flag = 0;}}

4.运行结果
在这里插入图片描述

六、总结

本次实验用到C#编写客户端网游,过程中学习到了一些基本组件的方法,了解了他们的属性,客户端网游感觉更多的是界面的设计。

七、参考资料

编写一个网游客户端
C#编写网游客户端


http://www.ppmy.cn/news/665359.html

相关文章

编写网游客户端

编写网游客户端 一、目的二、项目完成1. 新建项目2.界面3.客户端发送数据4.播放背景音乐5.实现游戏背景图片变换 三、总结四、参考 一、目的 编写一个网游客户端&#xff0c;游戏服务器的校园内网IP地址为 10.1.230.41&#xff0c;端口为3900&#xff0c;采用TCP连接。 1.连接…

国产免费大型手机网游《龙印》新版、新服全新开启,聚焦四大看点

4月19日&#xff0c;由乐逗游戏代理运营的手机游戏《龙印》&#xff0c;开启新服、新版本。《龙印》作为国产免费大型手机网游&#xff0c;一直倍受关注。在几个月的公测里&#xff0c;获得了广大玩家的好评。 在经历了漫长的研发期和内测期&#xff0c;《龙印》无论在剧情、系…

免费的手游联运系统可以使用吗?

在手游联运系统方面&#xff0c;发展并不是一成不变&#xff0c;不但每家每户都积极推出“差异化”的产品&#xff0c;市场上还有一大批“免费”的品牌产品&#xff0c;吸引了众多消费者的眼球。 很多人都会问小编的一个问题就是能不能使用免费的手游联运系统&#xff1f;小编…

html5游戏挂机,10款能挂机自动战斗的手机网游

9、传世挂机 《传世挂机》是为玩家潜心打造的放置类热血RPG&#xff0c;精品的传世题材&#xff0c;经典的战法道三职业、传统的MMO成长线、正统的传世视觉体系&#xff0c;高度还原了《传奇世界》。行会集结、热血攻沙、杀人爆物、元神养成&#xff0c;再现热血PK世界&#xf…

云游戏的1.0和2.0

纵观历史&#xff0c;基础科学和基础设施的发展都会开创新的时代。比如说造纸技术的发明&#xff0c;直接大幅提升了知识的传播速度&#xff1b;指南针的发明开启了大航海时代&#xff1b;瓦特改良了蒸汽机&#xff0c;直接将人类带入了蒸汽时代&#xff1b;法拉利发明了发电机…

valorant皮肤怎么获得_瓦罗兰特Valorant白女票任务出来啦!免费皮肤,特工任你选!...

各位已入坑与即将入坑的玩家们大家好! 也许在封测中或透过其他渠道,你已经见过开发中的《VALORANT》商店、一些武器造型,和其他造型内容。 我们团队希望玩家在进行游戏时,可以透过收集造型与个人化装饰,来更加凸显玩法风格、激发更好的对战表现,或单纯彰显个人对于武器造…

开源linux网游服务端,一款免费的相当精致的网游..REGNUM ONLINE FOR LINUX

└─(23:35:%)── ./RegnumOnlineInstall_64 ──(六, 5月28)─┘ application-specific initialization failed: Cant find a usable init.tcl in the following directories: /installkitvfs/lib/tcl /installkitvfs/lib/tcl8.6 /home/damon/src/installkit-1.3.0/out/lib/t…

vivo 游戏中心低代码平台的提效秘诀

作者&#xff1a;vivo 互联网服务器团队- Chen Wenyang 本文根据陈文洋老师在“2022 vivo开发者大会"现场演讲内容整理而成。公众号回复【2022 VDC】获取互联网技术分会场议题相关资料。 在互联网流量见顶和用户需求分层的背景下&#xff0c;如何快速迭代产品功能&#xf…