C# Winform贪吃蛇小游戏源码


文章目录

作者:xcLeigh

文章地址:https://blog.csdn.net/weixin_43151418/article/details/144062503


C# Winform贪吃蛇小游戏源码,贪吃蛇小游戏源码,窗体应用程序贪吃蛇小游戏源码,界面风格干净整洁,内容条理清晰,贪吃蛇小游戏分为四个等级,一般难度,中等难度,困难难度,疯狂模式难度。难度越大,小蛇跑的越快,还记录游戏最高分,快来体验吧,这个源码让你快速搭建自己的应用程序,注释完整,代码规范,各种风格都有,代码上手简单,代码独立,可以直接用程序打开,运行使用。也可直接点击EXE运行程序。

1.设计来源

本文章是分类专栏下的【C#实战案例

】里面的一篇,专栏里面包括网站,窗体应用程序的源码,技术点解析等案列源码,让你更加掌握C#。持续更新中,欢迎大家关注,一起学习交流。

✂ 点击快速进入专栏

贪吃蛇小游戏讲解

游戏规则:

《贪食蛇》(也叫贪吃蛇)是1976年推出的一款街机游戏游戏。

‌‌《贪食蛇》中玩家控制一条不断移动的蛇,在屏幕上吃掉出现的食物。每吃掉一个食物,蛇的身体就会变长。游戏的目标是尽可能长时间地生存下去,同时避免蛇头撞到自己的身体或屏幕边缘。游戏最初是像素风格,后来发展出了3D版本和多人对战模式。玩家需要灵活操作,利用策略在有限的空间内避免碰撞,挑战高分。

1.1 主界面

贪吃蛇小游戏游戏开始效果,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,头部导航菜单分为常规操作(里面有开始游戏,游戏说明等相关操作),难度配置(里面有一般难度,中等难度,困难难度,疯狂模式难度四种模式),最高分(里面有清除最高分和查看最高分操作)三个大项,通过WASD或者上下左右箭头操作蛇的方向。

1.2 难度配置演示

贪吃蛇小游戏游戏开始效果,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,头部导航菜单分为常规操作(里面有开始游戏,游戏说明等相关操作),难度配置(里面有一般难度,中等难度,困难难度,疯狂模式难度四种模式),最高分(里面有清除最高分和查看最高分操作)三个大项,通过WASD或者上下左右箭头操作蛇的方向。

1.3 游戏开始效果

贪吃蛇小游戏游戏开始效果,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,头部导航菜单分为常规操作(里面有开始游戏,游戏说明等相关操作),难度配置(里面有一般难度,中等难度,困难难度,疯狂模式难度四种模式),最高分(里面有清除最高分和查看最高分操作)三个大项,通过WASD或者上下左右箭头操作蛇的方向。

1.4 游戏结束效果

贪吃蛇小游戏游戏游戏结束效果,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),点击开始游戏图标进入游戏界面,头部导航菜单分为常规操作(里面有开始游戏,游戏说明等相关操作),难度配置(里面有一般难度,中等难度,困难难度,疯狂模式难度四种模式),最高分(里面有清除最高分和查看最高分操作)三个大项,通过WASD或者上下左右箭头操作蛇的方向。

2.效果和源码

2.1 动态效果

这里是完整的效果演示,可在此代码基础上更加完善功能,支持扩展自己的风格,可以删减内容,打造属于自己的贪吃蛇小游戏。

C# Winform贪吃蛇小游戏源码

2.2 源代码

这里是部分技术点的代码演示,更多代码,资源文件,见下面的 源码下载 ,里面有所有代码资源和相关说明。或者直接在这里 下载源码,如有其他技术问题,请私信博主,博主看到后第一时间回复。

  • Snake 绘制蛇

    //定义颜色大小坐标
    private Color color;
    private int size;
    private Point point;
    //实例化类时的初始化数值
    public snake(Color color, int size, Point p)
    {
        this.color = color;
        this.size = size;
        this.point = p;
    }
    //获取坐标的方法
    public Point getpoint
    {
        get
        {
            return point;
        }
    }
    //绘制蛇身体的长方体块
    public virtual void Paint(Graphics g)
    {
        SolidBrush sb = new SolidBrush(color);
        lock (g)
        {
            try
            {
                g.FillRectangle(sb, point.X * size, point.Y * size, size - 1, size - 1);
            }
            catch { }
        }
    }
    
  • 按键操作处理

    //wasd或上下左右控制移动方向
    if(e.KeyCode==Keys.W||e.KeyCode==Keys.Up)
    {
    p.Direction = palette.directions.up;
    }
    else if(e.KeyCode==Keys.S||e.KeyCode==Keys.Down)
    {
    p.Direction = palette.directions.down;
    }
    else if(e.KeyCode==Keys.A||e.KeyCode==Keys.Left)
    {
    p.Direction = palette.directions.left;
    }
    else if(e.KeyCode==Keys.D||e.KeyCode==Keys.Right)
    {
    p.Direction = palette.directions.right;
    }
    label2.Text = "当前得分:" + Convert.ToString(p.score)+" 分";
    if(p.score>highest_score)
    {
    highest_score = p.score;
    RegistryKey regkey = Registry.CurrentUser.CreateSubKey("new_high_score");//注册表记录最高分
    regkey.SetValue("highscore", Convert.ToString(highest_score));
    regkey.Close();
    }


源码下载

注:源码下载在文章头部也可以点击下载,跟这里的是一样的

C# Winform贪吃蛇小游戏源码(源码) 点击下载

万套模板,程序开发,在线开发,在线沟通


--------------- 业精于勤,荒于嬉 ---------------


--------------- 行成于思,毁于随 ---------------


💢 关注博主 带你实现畅游前后端

🏰 大屏可视化 带你体验酷炫大屏

💯 神秘个人简介 带你体验不一样得介绍

💘 为爱表白 为你那个TA,体验别致的浪漫惊喜

🎀 酷炫邀请函 带你体验高大上得邀请


① 🉑提供云服务部署 (有自己的阿里云);

② 🉑提供前端、后端、应用程序、H5、小程序、公众号、大作业等相关业务;

如🈶合作请联系我,期待您的联系。

:本文撰写于CSDN平台,作者:xcLeigh(所有权归作者所有),https://blog.csdn.net/weixin_43151418,如果相关下载没有跳转,请查看这个地址,相关链接没有跳转,皆是抄袭本文,转载请备注本文原地址。


亲,码字不易,动动小手,欢迎 点赞 ➕ 收藏 ,如 🈶 问题请 留言(私信或评论),博主看见后一定及时给您答复,💌💌💌


原文地址:https://blog.csdn.net/weixin_43151418/article/details/144062503(防止抄袭,原文地址不可删除)

相关推荐
三天不学习5 分钟前
C#.Net筑基-类型系统
c#·.net
夏子曦9 分钟前
java虚拟机——频繁发生Full GC的原因有哪些?如何避免发生Full GC
java·开发语言
Thomas_YXQ16 分钟前
Unity3D Lua如何支持面向对象详解
开发语言·游戏·junit·性能优化·lua·unity3d
MYBOYER21 分钟前
Kotlin DSL Gradle 指南
android·开发语言·kotlin
武昌库里写JAVA25 分钟前
SpringCloud+SpringCloudAlibaba学习笔记
java·开发语言·算法·spring·log4j
夏天吃哈密瓜27 分钟前
用Scala来解决成绩排名的相关问题
开发语言·后端·scala
subject625Ruben28 分钟前
代码美学:MATLAB制作渐变色
开发语言·matlab
IRevers38 分钟前
使用Python和Pybind11调用C++程序(CMake编译)
开发语言·c++·人工智能·python·深度学习
csdn_aspnet43 分钟前
C# 程序来计算三角形的面积(Program to find area of a triangle)
算法·c#
cdut_suye1 小时前
C++11新特性探索:Lambda表达式与函数包装器的实用指南
开发语言·数据库·c++·人工智能·python·机器学习·华为