C#上位机开发 01 - 一个小游戏

大家应该知道贪吃蛇这个游戏吧,这个游戏也是当时我们那个时代最风靡的一个小游戏,今天我会借这个讲解上位机开发思路来讲解下这个小游戏的开发思路。

 

一、开发Demo,请看动图

二、开发简介:

1、通过Start按钮触发一个时间启动线程,通过Time事件触发蓝色控件向向右移动,一旦碰到绿色控件就合并,这个就是贪吃蛇的思路。

2、橙色控件是可以用键盘事件触发改变位置的功能,仅供学习用。

 

三、该开发需要的基础:

1.C#语法基础

2.winform 界面开发基础

 

四、开发步骤

1.新建一个winform程序

2.新建一个启动按钮,这个按钮用来触发时间

private void Start_Click(object sender, EventArgs e)
        {
            timer1.Start();               //启动时间线程
            timer1.Interval = 300;  //设置时间间隔,也就是每隔500ms触发一次
        }

3.启动时间线程,用来改变蓝色控件的X值,如果这个X值等于绿色那个控件的X值就合并

 private void timer1_Tick(object sender, EventArgs e)
        {
            if (x == pictureBox3.Location.X-28  || x == pictureBox3.Location.X-29)
            {
                pictureBox3.Visible = false;
                pictureBox1.Width = 28 * 2;
            }
            this.pictureBox1.Location = new Point(x, y);
        }

4.添加橙色按钮的键盘事件

   private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            
            if (e.KeyCode == Keys.D)
            {
                x1 += 2;
                //做一个防护防止控件越界
                if (x1 >= 250)
                {
                    x1 = 250;
                    this.pictureBox2.Location = new Point(x1, y1);
                }
                else
                {
                    this.pictureBox2.Location = new Point(x1, y1);
                    Console.WriteLine("发送成功D");
                }
               
            }else if(e.KeyCode == Keys.A)
            {
                x1 -= 2;
                this.pictureBox2.Location = new Point(x1, y1);
                Console.WriteLine("发送成功A");
            }
            else if (e.KeyCode == Keys.W)
            {
                y1 -= 2;
                this.pictureBox2.Location = new Point(x1, y1);
                Console.WriteLine("发送成功W");
            }
            else if (e.KeyCode == Keys.S)
            {
                y1 += 2;
                this.pictureBox2.Location = new Point(x1, y1);
                Console.WriteLine("发送成功S");
            }
        }

完!

学习程序开发,最快的学习方式就是做小游戏开发,不仅学习进度快,而且对算法这一块会有深刻的认识。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值