c#简单的金山打字游戏,也是飞机大战的雏形,是c#练习基础的项目
效果图如下
大致思路:
创建游戏区 :设置所需属性
创建字母生成:随机大小和字母
字母下落
创建飞机:添加事件,飞机跟随字母移动
创建子弹:子弹上升,碰到字母消失
其余小细节自己需要处理
注意:为了不使项目那么突兀,加了一个小的移动动画:
字母跟随鸟的移动创建字母
代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 金山打字
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Panel lb = new Panel();
Random r = new Random();
//字母生成
Timer zm = new Timer();
//字母下落
Timer xq = new Timer();
//动画移动
Timer move = new Timer();
//创建鸟盒子
PictureBox bird = new PictureBox();
//创建飞机
PictureBox plan = new PictureBox();
//创建动画计时器
Timer fly = new Timer();
//创建的得分的label
Label df = new Label(); int x = 0;
//实例化血条
Label xt = new Label();
Label xt1 = new Label();
int dl = 0;
private void Form1_Load(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Maximized;
this.Text = "金山打字";
this.BackgroundImage = Image.FromFile(@"../../img/2.jpg");
this.BackgroundImageLayout = ImageLayout.Stretch;
//游戏区域
lb.Width = 1300;
lb.Height = 780;
lb.BackColor = Color.Brown;
this.Controls.Add(lb);
//开始游戏
Label ks = new Label();
ks.Size = new Size(120, 20);
ks.BackColor = Color.White;
ks.Location = new Point(1380, 100);
ks.Tag = "ksyx";
ks.T