栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

VS编写简单的网游客户端

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

VS编写简单的网游客户端

目录
  • 一.测试连接服务器
  • 二.设计客户端
  • 三.连接服务器
    • 1.在Form中初始化进入游戏:
    • 2.设置播放背景音乐
    • 3.实现游戏背景图片变换
  • 四.运行结果
  • 五.总结
  • 六.参考文献

一.测试连接服务器

1.打开cmd,输入ping 10.1.230.74

2.输入telnet,进入telnet界面,输入set localecho,打开本地回显:

4.连接服务器,输入命令open 10.1.230.74 3900

二.设计客户端

1.新建项目
打开VS2022选择新建Windows窗体应用

2.使用控件设计界面如下


3.右击工具箱内的常规,点击选择项:


4.勾选COM 组件下的Windows Media Player:

三.连接服务器 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 = "rn";
            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.设置播放背景音乐

将要展示的音乐文件放入bin→Debug文件夹中

在代码开头添需要引入using System.Media;

30秒转换一次,参数为30000

3.实现游戏背景图片变换

拖入一个timer,设置其Enable为True:


双击timer,编写代码:

int flag = 0;
private void timer1_Tick(object sender, EventArgs e)
{
    flag++;
    string picturePath = @"C:Users16438Desktopgame1game1game1binDebugimg" + flag + ".jpg";
    pictureBox1.Image = Image.FromFile(picturePath);
    if (flag == 3)
    {
        flag = 0;
    }
}
四.运行结果

game1

五.总结

使用VS中的控件设计窗口能够快速拖动布置,相比于代码生成控件,方便许多。为控件增添事件也只需双击控件,添加相应操作即可。

六.参考文献

https://blog.csdn.net/weixin_46628481/article/details/121445716.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/603819.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号