基本信息
源码名称:C# 闯关小游戏实例源码下载(上下左右箭头操作)
源码大小:0.05M
文件格式:.zip
开发语言:C#
更新时间:2014-11-28
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

看了就知道了,根据键盘操作正确与否决定是否过关,如图

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Main : Form
    {
        public Main()
        {
            InitializeComponent();
        }
        int[] ran = null;
        public List<Level> list = new List<Level>();
        public Player player = new Player();
        int dqkey = 0;
        int dqg = 0;
        public void load()
        {
            player.lever = 1;
            player.cuurscore = 0;
            //1
            Level l = new Level();
            l.levelno = 1;
            l.perscore = 1;
            l.strtime = 10;
            l.strlength = 2;
            l.timelimit = 5;
            list.Add(l);
            //2
            l = new Level();
            l.levelno = 2;
            l.perscore = 2;
            l.strtime = 9;
            l.strlength = 3;
            l.timelimit = 4;
            list.Add(l);
            //3
            l = new Level();
            l.levelno = 3;
            l.perscore = 5;
            l.strtime = 8;
            l.strlength = 4;
            l.timelimit = 4;
            list.Add(l);
            //4
            l = new Level();
            l.levelno = 4;
            l.perscore = 8;
            l.strtime = 7;
            l.strlength = 5;
            l.timelimit = 5;
            list.Add(l);
            //5
            l = new Level();
            l.levelno = 5;
            l.perscore = 10;
            l.strtime = 6;
            l.strlength = 6;
            l.timelimit = 8;
            list.Add(l);
            //6
            l = new Level();
            l.levelno = 6;
            l.perscore = 15;
            l.strtime = 99999;
            l.strlength = 7;
            l.timelimit = 7;
            list.Add(l);
        }
        public int[] random()
        {
            Random random = new Random();
            Level l = list[player.lever - 1];
            ran = new int[l.strlength];
            for (int i = 0; i < l.strlength; i  )
            {
                int rand = random.Next(37, 40);
                ran[i] = rand;
            }
            return ran;
        }
        public void ranzf(int[] ran)
        {
            this.groupBox1.Controls.Clear();
            int x = 20;
            for (int i = 0; i < ran.Length; i  )
            {
                Label lb = new Label();
                lb.AutoSize = true;
                lb.Location = new System.Drawing.Point(x, 17);
                lb.Name = "lb"   (i   1);
                if (ran[i] == 37)
                {
                    lb.Text = "←";
                }
                if (ran[i] == 38)
                {
                    lb.Text = "↑";
                }
                if (ran[i] == 39)
                {
                    lb.Text = "→";
                }
                if (ran[i] == 40)
                {
                    lb.Text = "↓";
                }
                this.groupBox1.Controls.Add(lb);
                x = x   25;
            }
        }
        private void Main_Load(object sender, EventArgs e)
        {
             load();

        }
        public void colorupdate()
        {
            for (int i = 0; i < ran.Length; i  )
            {

            }
        }
        public void gg()
        {
            for (int i = 0; i < this.groupBox1.Controls.Count; i  )
            {
                this.groupBox1.Controls[i].ForeColor = Color.Black;
            }
        }


        private void Main_KeyDown(object sender, KeyEventArgs e)
        {
            MessageBox.Show(e.KeyValue.ToString());
        }

        private void button1_KeyUp(object sender, KeyEventArgs e)
        {
            label1.Text = "第" player.lever "-" (dqg 1) "关";
            if(dqkey==0)
            {
                player.starttime = DateTime.Now;
            }
            if (ran[dqkey] == e.KeyValue)
            {               
                this.groupBox1.Controls[this.groupBox1.Controls.IndexOfKey("lb"   (dqkey   1))].ForeColor = Color.Red;
               
                if(ran.Length-1==dqkey)
                {
                    player.elapsedtime = DateTime.Now;
                    TimeSpan sjc = player.elapsedtime - player.starttime;
                    if (list[player.lever - 1].timelimit >= sjc.Seconds)
                    {
                        player.cuurscore = player.cuurscore   list[player.lever - 1].perscore;//分数累加
                        label2.Text = "积分:"   player.cuurscore;
                        list[player.lever - 1].strtime=list[player.lever - 1].strtime-1;
                        dqkey = 0;
                        dqg  ;
                        if (list[player.lever - 1].strtime==0) 
                        {
                            dqg = 0;
                            MessageBox.Show("过关成功正在跳转下一关...");
                            player.lever  ;
                        }
                        ran = random();
                        ranzf(ran);
                        return;
                    }
                    else 
                    {
                        MessageBox.Show("时间超过闯关失败");
                        Application.Exit();
                    }
                }
                dqkey  ;
            }
            else
            {
                if (!(e.KeyValue >= 37 && e.KeyValue<=40)) 
                {
                    return;
                }
                MessageBox.Show("输入有误闯关失败");
                dqkey = 0;
                gg();
                Application.Exit();
            }
        }

        private void button1_Click_1(object sender, EventArgs e)
        {
            ran = random();
            ranzf(ran);
            
        }
    }
}