精华内容
下载资源
问答
  • C#小游戏之疯狂字母
    千次阅读
    2022-04-20 16:58:39

    练手玩的小游戏,超级容易编写。 

    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 englishWorld
    {
        public partial class Form1 : Form
        {
            Random ra = new Random();
            public Form1()
            {
                InitializeComponent();
            }
            int count = 0;
            char num = '0';
            Label l = null;
            private void Form1_Load(object sender, EventArgs e)
            {
                this.label2.Text = "准备开始计分";
                ShowWorld();
            }
            public void ShowWorld()
            {
                int x = ra.Next(this.Width - 100);
                int y = ra.Next(this.Height - 100);
                l = new Label();
                l.Width = 25;
                l.Height = 25;
                num = (char)(ra.Next(26) + 97);
                l.Text = num + "";
                l.Font = new Font("黑体", 19, FontStyle.Bold);
                l.Location = new Point(x, y);
                this.Controls.Add(l);
            }
    
            private void Form1_KeyDown(object sender, KeyEventArgs e)
            {
                if ((e.KeyValue + 32) == (num + 0))
                {
                    count += 100;
                    this.label2.Text = "正确+100分";
                }
                else
                {
                    count -= 100;
                    this.label2.Text = "错误-100分";
                }
                this.label1.Text = count + "";
                this.Controls.Remove(l);
                ShowWorld();
            }
        }
    }
    

    源码链接:

    https://download.csdn.net/download/feng8403000/85188160

    更多相关内容
  • c#小游戏合集

    2018-05-14 21:22:23
    c#小游戏合集,包含数字游戏,斗地主等。c#小游戏合集,包含数字游戏,斗地主等。
  • 推箱子小游戏 c#初学者所写,代码简单,结构清晰,但也能体会学习c#的乐趣
  • c#小游戏开发
  • C#小游戏 飞机大战 C#游戏入门教程
  • C#各类小游戏源码

    2019-04-23 15:00:36
    有 1.棋牌小游戏 2.益智类游戏 3.控制类游戏 4.其他类游戏
  • 一个简易弹球小游戏:游戏开始,下球从上方随机位置下落,下方有一块木板,按键盘方向键可左右移动控制小木板,接住小球即可。
  • 内容索引:C#源码,游戏开发,拯救大行动游戏下载 拯救大行动C#版的,源码非常完整,工作累了还可以休闲一下哦,本人编程新手,希望高手提出意见。
  • C#小 游戏(猜大小)

    2017-06-22 09:19:54
    对于新手的代码,代码中实现了面向对象的三大特征
  • c#小游戏猜数字

    2015-02-10 23:37:28
    让初学者了解下刚开始的c#,自己可以可以改写,很简单,慢慢了解
  • 五子棋C#小游戏 1.0

    2021-05-01 13:09:42
    五子棋C#小游戏,有完整版注释,好玩的双人五子棋游戏,使用简单,界面美观,速度快,该游戏特别适合情侣、朋友在一起无聊时打发时间用。注意事项:1、开发环境为Visual Studio 2010,使用.net 4.0开发。
  • 压缩包里面有21点、百变方块、打字游戏、单机坦克、对对碰、俄罗斯方块、拱猪、汉诺塔、黑白棋、华容道、计算器、连连看、七巧板、人物拼图游戏、扫雷游戏、贪吃蛇、坦克大战、停车场、涂鸦游戏、推箱子、网络军旗、...
  • 多年前学习C#编程时,写的一个简单小游戏,模仿当时一款叫北京浮生记的游戏设计,用C#实现了北京浮生记的全部功能,并拓展了部份功能,不过拓展功能尚未完善。
  • 五子棋C#小游戏 v1.0

    2021-04-23 23:17:27
    五子棋C#小游戏 简介五子棋C#小游戏,有完整版注释,好玩的双人五子棋游戏,使用简单,界面美观,速度快,该游戏特别适合情侣、朋友在一起无聊时打发时间用。注意事项:1、开发环境为Visual Studio 2010,使用.net ...
  • C#小游戏-记忆翻牌

    2021-09-19 03:01:12
    记忆翻牌是一个记忆游戏,翻开一张牌,再翻开另一张牌,如果两张牌一样,那么就成显示状态,否则两张牌都重新盖回去。并不是最简洁的,只是功能的实现。
  • C#小游戏:飞行棋

    千次阅读 2022-01-28 15:39:38
    最近在学习c#在看:B站的这个视频 在学到飞行棋时先自己写了一个。下面是运行结果: 我也是新手代码还有很多不完善的地方,但目前功能还没发生什么错误,大家可以来玩一下。 using System; namespace 飞行棋 { class...

    最近在学习c#在看:B站的这个视频
    在学到飞行棋时先自己写了一个。下面是运行结果:
    这里是游戏开始的玩家输入,一共两名玩家
    游戏运行中
    游戏结束

    我也是新手代码还有很多不完善的地方,但目前功能还没发生什么错误,大家可以来玩一下。

     using System;
    
    namespace 飞行棋
    {
        class Program
        {
            public struct Player {
                public int _playlocation;
                public string _playerName;
                public int _playValue;
            }
    
            static void Main(string[] args)
            {
    
                GameShow();
                Console.ForegroundColor = ConsoleColor.White;
                int[] map = new int[200];// □
                int[] luckturn = {1,20,61,84,90,999};// ◎幸运转盘位置数组  因为自己写的方法的原因,这里几个数组得从大到小排列,最后一个起限制作用
                int[] bomb = {6,24,27,44,80,98,999};//● 炸弹位置数组
                int[] transfer = {5,11,30,36,77,83,999};//∩ 传送门位置数组 传送门比较特殊,相关代码就要调用该数组。而方法之间存在相互关联,因此有些方法也要传入该数组
                int[] stop = { 12, 31, 59, 66, 88,999};//▽ 暂停位置数组 
                MapValue(map, luckturn, bomb, transfer, stop);
                MapPaint(map);
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("请输入玩家A的姓名");
                Player playerA = PlayerIni();
                Console.WriteLine("初始化成功!\n玩家A的姓名是:{0}\n\n请输入玩家B的姓名", playerA._playerName);
                Player playerB = PlayerIni();
                Console.WriteLine("玩家B的昵称是{0}\n按任意键开始游戏:", playerB._playerName);
                Console.ReadKey();
                Console.Clear();
                playerB._playValue = 200;//方便区分玩家A、B
                Player winner = GameStart(map,playerA,playerB,transfer);//主要运行的内容都在这个方法里了
                Console.WriteLine("游戏结束玩家{0}胜利!", winner._playerName);
                GameEnd(winner);
            }
            public static void playerActionMove(int[] map,ref Player x,ref Player y,int[] transfer)//玩家行动 x代表当前行动玩家 y代表另一位玩家
            {
                Console.ForegroundColor = ConsoleColor.White;
                map[x._playlocation] -= x._playValue;
                Console.WriteLine("按任意键,玩家{0}投色子",x._playerName);
                Console.ReadKey();
                Console.Clear();
                Random r = new Random();
                int rNumber = r.Next(1, 7);
                Console.WriteLine("玩家{0}掷出了{1}向前移动了{2}格\n",x._playerName,rNumber,rNumber);
                x._playlocation += rNumber;
                map[x._playlocation] += x._playValue;
                PlayerTread(map,ref x,ref y);
                while (true)
                {             
                    if (map[x._playlocation] == x._playValue + 1)//这边本来打算用switch——case的 但不能 case x.playlocation(我也不知道为啥)就没用。
                    {
                        MapFunctionLuck(map,ref x, ref y);
                        continue;
                    }
                    if (map[x._playlocation] == x._playValue + 2)
                    {
                        MapFunctionBomb(map, ref x);
                        continue;
                    }
                    break;
                }
                MapFunctionTransfer(map, ref x,transfer);
            }
            public static Player GameStart(int[] map,Player x,Player y,int[] transfer)
            {
                map[0] = 300;
                MapPaint(map);
                while (true)
                {
                    if(!MapFuctionStop(map,x))
                    {
                        playerActionMove(map, ref x, ref y, transfer);
                        if (x._playlocation >= 99)
                        {
                            return x;
                        }
                        MapPaint(map);
                    }
                    if (!MapFuctionStop(map,y))
                    {
                        playerActionMove(map, ref y, ref x, transfer);
                        if (y._playlocation >= 99)
                        {
                            return y;
                        }
                        MapPaint(map);
                    }
                }
            }//游戏开始 
            public static void MapFunctionLuck(int[] map, ref Player x,ref Player y)
            {
                Console.WriteLine("恭喜你踩到了幸运转盘,你可以选择\n1.让自己前进随机1-6格\n2.让对方后退随机1-6格");
                string s = Console.ReadLine();
                Random r = new Random();
                int rNumber = r.Next(1, 7);
                if (s == "1")
                {
                    map[x._playlocation] -= x._playValue;
                    Console.WriteLine("干得漂亮,你向前移动了{0}格",rNumber);
                    x._playlocation += rNumber;
                    map[x._playlocation] += x._playValue;
                }
                else if (s == "2")
                {
                    map[y._playlocation] -= (y._playValue+1);
                    Console.WriteLine("芜湖~对方向后移动了{0}", rNumber);
                    y._playlocation -= rNumber;
                    map[y._playlocation] += y._playValue;
                }
                else if (s == "李杨太帅了")
                {
                    x._playlocation += 100;
                    Console.WriteLine("说的好!一看就是赢的料!");
                }
                else
                {
                    Console.WriteLine("输入错误,请重新输入");
                    MapFunctionLuck(map,ref x,ref y);
                }
            }//幸运轮盘代码 让玩家选择 1.自己前进1-6格 2.让对方后退1-6格
            public static void MapFunctionBomb(int[] map,ref Player x)//炸弹代码 让踩到的玩家后退三格
            {
                map[x._playlocation] -= x._playValue;
                x._playlocation -= 3;
                map[x._playlocation] += x._playValue;
                Console.WriteLine("玩家{0}被炸弹炸退了三格", x._playerName);
            }
            public static void MapFunctionTransfer(int[] map, ref Player x, int[] transfer)//传送门代码  让玩家传送到下一个传送门上 传送门记得一个玩家不能踩一个来回移动
            {
                if (map[x._playlocation] == x._playValue + 3)
                {
                    for (int i = 0; i < transfer.Length - 1; i++)
                    {
                        if (transfer[i] == x._playlocation)
                        {
                            if (i == 5)
                            {
                                map[x._playlocation] -= x._playValue;
                                x._playlocation = transfer[i - 1];
                                map[x._playlocation] += x._playValue;
                                Console.WriteLine("一股神秘力量将你带回了上一个传送门");
                                break;
                            }
                            map[x._playlocation] -= x._playValue;
                            x._playlocation = transfer[i + 1];
                            map[x._playlocation] += x._playValue;
                            Console.WriteLine("你成功传送到了下一个传送门");
                            break;
                        }
                    }
                }
            }
            public static bool MapFuctionStop(int[] map,Player x)//暂停代码 让玩家暂停一回合 目前还没想清楚怎么让它跳过这一回合,只能改为踩过之后暂停这个方块就消失了
            {
                bool isStop = false;
                if (map[x._playlocation] == x._playValue + 4)
                {
                    isStop = true;
                    map[x._playlocation] -= 4;
                }
                return isStop;
                Console.WriteLine("你被暂停啦");
            }
            public static void PlayerTread(int[] map, ref Player x,ref Player y)//一名玩家踩到另一名玩家导致其后退6格
            {
                if(x._playlocation == y._playlocation)
                {
                    map[y._playlocation] -= y._playValue;
                    y._playlocation -= 6;
                    if(y._playlocation < 0) //防止在前六格踩到超出地图边界
                    {
                        y._playlocation = 0;
                    }
                    map[y._playlocation] += y._playValue;
                    Console.WriteLine("漂亮!{0}踩到了{1},使{2}后退了六格", x._playerName, y._playerName, y._playerName);
                }
            }
            public static Player PlayerIni()
            {
                Player player = new Player();
                player._playlocation = 0;
                player._playerName = Console.ReadLine();
                player._playValue = 100;
                return player;
            }//初始化玩家
            public static void MapPaint(int[] map)
            {
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("□:表示空格  ◎:表示幸运转盘  ●:表示炸弹  ∩:表示传送门  ▽:表示暂停  A、B:表示玩家  ‖:表示两玩家在同一位置");
                Console.ForegroundColor = ConsoleColor.Cyan;
                string s1 = "";
                for(int i = 0;i < 30; i++)//这里我还不知道Console.write()可以不自动换行输出,因此改变了我整个代码的结构,这里我分了五段分别赋给s1让它输出五遍得到完整地图
                {
                    switch (map[i]){
                        case 0:s1 += "□"; break;
                        case 1:s1 += "◎"; break;
                        case 2:s1 += "●"; break;
                        case 3:s1 += "∩"; break;
                        case 4:s1 += "▽"; break;
                        case 100: case 101:case 102:case 103:case 104: s1 += "A";break;
                        case 200: case 201:case 202:case 203:case 204: s1 += "B";break;
                        case 300: case 302:case 304:case 306:case 308: s1 += "‖";break;
                    }
                }
                Console.WriteLine(s1);
                s1 = "";
                for(int i = 30; i < 35; i++)
                {
                    switch (map[i])
                    {
                        case 0: s1 = "□"; break;
                        case 1: s1 = "◎"; break;
                        case 2: s1 = "●"; break;
                        case 3: s1 = "∩"; break;
                        case 4: s1 = "▽"; break;
                        case 100: case 101: case 102: case 103: case 104: s1 = "A"; break;
                        case 200: case 201: case 202: case 203: case 204: s1 = "B"; break;
                        case 300: case 302: case 304: case 306: case 308: s1 = "‖"; break;
                    }
                    Console.WriteLine("                                                          {0}",s1);
                }
                s1 = "";
                for (int i = 64; i > 34; i--)
                {
                    switch (map[i])
                    {
                        case 0: s1 += "□"; break;
                        case 1: s1 += "◎"; break;
                        case 2: s1 += "●"; break;
                        case 3: s1 += "∩"; break;
                        case 4: s1 += "▽"; break;
                        case 100: case 101: case 102: case 103: case 104: s1 += "A"; break;
                        case 200: case 201: case 202: case 203: case 204: s1 += "B"; break;
                        case 300: case 302: case 304: case 306: case 308: s1 += "‖"; break;
                    }
                }
                Console.WriteLine(s1);
                s1 = "";
                for (int i = 65; i < 70; i++)
                {
                    switch (map[i])
                    {
                        case 0: s1 = "□"; break;
                        case 1: s1 = "◎"; break;
                        case 2: s1 = "●"; break;
                        case 3: s1 = "∩"; break;
                        case 4: s1 = "▽"; break;
                        case 100: case 101: case 102: case 103: case 104: s1 = "A"; break;
                        case 200: case 201: case 202: case 203: case 204: s1 = "B"; break;
                        case 300: case 302: case 304: case 306: case 308: s1 = "‖"; break;
                    }
                    Console.WriteLine("{0}", s1);
                }
                s1 = ""; for (int i = 70; i < 100; i++)
                {
                    switch (map[i])
                    {
                        case 0: s1 += "□"; break;
                        case 1: s1 += "◎"; break;
                        case 2: s1 += "●"; break;
                        case 3: s1 += "∩"; break;
                        case 4: s1 += "▽"; break;
                        case 100: case 101: case 102: case 103: case 104: s1 += "A"; break;
                        case 200: case 201: case 202: case 203: case 204: s1 += "B"; break;
                        case 300: case 302: case 304: case 306: case 308: s1 += "‖"; break;
                    }
                }
                Console.WriteLine(s1);
            }//地图绘制
            public static void MapValue(int[] map,int[] luckturn,int[] bomb,int[] transfer,int[] stop)//给map赋值用
            {
                int l = 0, b = 0, t = 0, s = 0;
                for(int i =0;i < map.Length; i++)
                {
                    if(i == luckturn[l])
                    {
                        map[i] = 1;
                        l++;
                    }
                    if(i == bomb[b])
                    {
                        map[i] = 2;
                        b++;
                    }
                    if(i == transfer[t])
                    {
                        map[i] = 3;
                        t++;
                    }
                    if(i == stop[s])
                    {
                        map[i] = 4;
                        s++;
                    }
                }
            }
            public static void GameShow()//游戏头
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("*****飞行棋游戏,芜湖!*******");
                Console.ForegroundColor = ConsoleColor.DarkBlue;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.DarkGray;
                Console.WriteLine("******************************");
            }
            public static void GameEnd(Player winner)//游戏尾
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("*****恭喜{0}获得胜利!********",winner._playerName);
                Console.ForegroundColor = ConsoleColor.DarkBlue;
                Console.WriteLine("******************************");
                Console.ForegroundColor = ConsoleColor.DarkGray;
                Console.WriteLine("******************************");
            }
        }
    }
    
    
    展开全文
  • C#小游戏拼图

    2013-05-20 23:07:04
    C#小游戏拼图
  • 吃豆子、打砖块、翻牌游戏、满堂红、判颜色、拼图游戏、三线一点游戏、、、、、、、
  • c#小游戏源码

    2013-04-08 13:52:52
    一些经典游戏c#源码
  • C#小游戏集合源代码

    2010-09-08 19:16:08
    内有贪吃蛇 俄罗斯方块 拼图 翻牌 吃豆子 打砖头
  • C#小游戏源码

    2017-07-17 16:54:46
    有三个简单的游戏源码,黑白棋、扫雷和贪吃蛇,VS2010开发
  • C#五子棋小游戏课程设计,包含文档,程序能运行,原创,运行环境为vc2008,本课程设计是在之前c++版本基础上改进出来的,界面美观,做了一个多月,10分实在不算多
  • c#小游戏2048

    2018-07-09 00:51:15
    基于vs开发的小游戏2048。区别于大多数坐标实现的方法,是通过自定义函数遍历所有i情况实现。
  • C#小游戏俄罗斯方块

    2018-05-06 20:03:01
    C#小游戏之俄罗斯方块,简单易懂的操作,舒适的画面,场景,在游戏中回忆童年
  • 你要的全部都在里面,特别适合新手学习用,废话就不都说了········,下吧····
  • c# 小游戏代码

    2011-09-23 11:15:20
    适合初学者哦,赶紧过来看看吧,做任务中,怎么还还差几个字呢
  • C#小游戏连连看

    2017-06-20 15:18:18
    完整的连连看代码,想学习游戏开发的可以去研究一下
  • C#写的RPG小游戏,代码简单,类似魔塔的玩法。适合初学者学习参考。
  • 摘要:C#源码,游戏开发,C#游戏源码 C#编写的变色球小游戏源代码,通过游戏你可以学习下小球绘图、寻找鼠标坐标、得到小球绘图区的宽度和高度、找到标题绘图区高度、最大半径和摩擦力、滞留文字控制类集合、小球线程...
  • 俄罗斯方块c#小游戏

    2015-10-22 08:58:56
    桌面程序,安装方便,简单好玩,自学方便,代码详细。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 52,382
精华内容 20,952
关键字:

c#小游戏

c# 订阅
友情链接: lander_wifi.zip