資源簡介
C#貪食蛇全能版 越吃越長的貪食蛇
已實現:分數統計 開始 暫停 結束 空格暫停 屏蔽其它按鍵的事件
簡單易懂 有興趣的童鞋可以參考 不懂可以隨時Q我285679784 我很樂意給你解答

代碼片段和文件信息
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?WinSnakeGame
{
????public?partial?class?frmSnake?:?Form
????{
????????private?int?OneScore?=?10;//一個食物分數
????????private?int?Score?=?0;//初始分數
????????private?int?snakeSize?=?15;//蛇與食物的大小
????????private?const?int?snakeLen?=?2;//蛇身初始長度
????????private?int?snakeNowLen?=?snakeLen;
????????private?Point[]?snakeArr?=?new?Point[1000];//蛇身集合?最多可以吃1000-1個食物。
????????private?const?int?footLen?=?10;//每次生成食物數量
????????private?List?FootArr?=?new?List();//食物集合
????????private?Keys?onkey?=?Keys.Right;//控制的方向
????????public?frmSnake()
????????{
????????????InitializeComponent();
????????????this.timeSnakeMove.Stop();
????????????this.KeyPreview?=?true;
????????????this.PnlsnakeHome.Focus();
????????????this.CreateSnakeArr(snakeLen);
????????}
????????private?void?btnStart_Click(object?sender?EventArgs?e)
????????{
????????????this.timeSnakeMove.Start();
????????}
????????private?void?btnStop_Click(object?sender?EventArgs?e)
????????{
????????????this.timeSnakeMove.Stop();
????????}
????????private?void?btnClose_Click(object?sender?EventArgs?e)
????????{
????????????this.ReSetControl();
????????????this.DrawElipseArr();
????????????this.DrawFoot();
????????}
????????private?void?PnlsnakeHome_Paint(object?sender?PaintEventArgs?e)
????????{
????????????this.DrawElipseArr();
????????????this.DrawFoot();
????????}
????????private?void?frmSnake_KeyDown(object?sender?KeyEventArgs?e)
????????{
????????????if?(e.KeyCode?==?Keys.Up?||?e.KeyCode?==?Keys.Down?||?e.KeyCode?==?Keys.Left?||?e.KeyCode?==?Keys.Right)
????????????{
????????????????onkey?=?e.KeyCode;
????????????????this.timeSnakeMove.Start();
????????????}
????????????else?if?(e.KeyCode?==?Keys.Space)
????????????{
????????????????this.timeSnakeMove.Stop();
????????????}
????????}
????????private?void?timeSnakeMove_Tick(object?sender?EventArgs?e)
????????{
????????????//??4??????3?????2??????1??????0
????????????//150???300???450???600???750
????????????this.SetSnakeSelf();
????????????switch?(onkey)
????????????{
????????????????case?Keys.Up:
????????????????????snakeArr[0].Y?-=?snakeSize;
????????????????????break;
????????????????case?Keys.Down:
????????????????????snakeArr[0].Y?+=?snakeSize;
????????????????????break;
????????????????case?Keys.Left:
????????????????????snakeArr[0].X?-=?snakeSize;
????????????????????break;
????????????????case?Keys.Right:
????????????????????snakeArr[0].X?+=?snakeSize;
????????????????????break;
????????????}
????????????if?(this.CheckSnackStart()?&&?this.CheckSnakeSelf())
????????????{
????????????????//消除已吃食物
????????????????int?del?=?FootArr.RemoveAll(n?=>?n.X?==?snakeArr[0].X?&&?n.Y?==?snakeArr[0].Y);
????????????????//消除食物數量>0
????????????????if?(del?>
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-05-14?13:44??WinSnakeGame\
?????目錄???????????0??2015-05-14?13:44??WinSnakeGame\bin\
?????目錄???????????0??2015-05-14?17:43??WinSnakeGame\bin\Debug\
?????文件???????13824??2015-05-16?14:55??WinSnakeGame\bin\Debug\WinSnakeGame.exe
?????文件???????32256??2015-05-16?14:55??WinSnakeGame\bin\Debug\WinSnakeGame.pdb
?????文件???????22472??2015-05-16?14:57??WinSnakeGame\bin\Debug\WinSnakeGame.vshost.exe
?????文件?????????490??2012-06-06?02:06??WinSnakeGame\bin\Debug\WinSnakeGame.vshost.exe.manifest
?????目錄???????????0??2015-05-14?13:44??WinSnakeGame\bin\Release\
?????文件????????9426??2015-05-16?14:57??WinSnakeGame\frmSnake.cs
?????文件????????5818??2015-05-16?14:23??WinSnakeGame\frmSnake.Designer.cs
?????文件????????6018??2015-05-16?14:23??WinSnakeGame\frmSnake.resx
?????目錄???????????0??2015-05-14?13:42??WinSnakeGame\obj\
?????目錄???????????0??2015-05-16?14:55??WinSnakeGame\obj\Debug\
?????文件????????1451??2015-05-14?17:43??WinSnakeGame\obj\Debug\DesignTimeResolveAssemblyReferences.cache
?????文件????????6779??2015-05-14?13:44??WinSnakeGame\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????目錄???????????0??2015-05-14?13:42??WinSnakeGame\obj\Debug\TempPE\
?????文件?????????573??2015-05-16?14:57??WinSnakeGame\obj\Debug\WinSnakeGame.csproj.FileListAbsolute.txt
?????文件?????????978??2015-05-16?14:23??WinSnakeGame\obj\Debug\WinSnakeGame.csproj.GenerateResource.Cache
?????文件????????2209??2015-05-14?17:49??WinSnakeGame\obj\Debug\WinSnakeGame.csprojResolveAssemblyReference.cache
?????文件???????13824??2015-05-16?14:55??WinSnakeGame\obj\Debug\WinSnakeGame.exe
?????文件?????????180??2015-05-16?14:23??WinSnakeGame\obj\Debug\WinSnakeGame.frmSnake.resources
?????文件???????32256??2015-05-16?14:55??WinSnakeGame\obj\Debug\WinSnakeGame.pdb
?????文件?????????180??2015-05-14?17:19??WinSnakeGame\obj\Debug\WinSnakeGame.Properties.Resources.resources
?????文件?????????496??2015-05-14?13:44??WinSnakeGame\Program.cs
?????目錄???????????0??2015-05-14?13:42??WinSnakeGame\Properties\
?????文件????????1362??2015-05-14?13:42??WinSnakeGame\Properties\AssemblyInfo.cs
?????文件????????2876??2015-05-14?13:42??WinSnakeGame\Properties\Resources.Designer.cs
?????文件????????5612??2015-05-14?13:42??WinSnakeGame\Properties\Resources.resx
?????文件????????1099??2015-05-14?13:42??WinSnakeGame\Properties\Settings.Designer.cs
?????文件?????????249??2015-05-14?13:42??WinSnakeGame\Properties\Settings.settings
?????文件????????3752??2015-05-14?13:46??WinSnakeGame\WinSnakeGame.csproj
............此處省略2個文件信息
- 上一篇:C# 爬蟲接口
- 下一篇:HtmlToXaml轉換源碼
評論
共有 條評論