停车场贪吃蛇游戏实训报告剖析.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
停车场贪吃蛇游戏实训报告剖析

郑州轻工业学院网络编程基础实训报告实训名称:停车场游戏、贪吃蛇游戏指导教师:姓名:学号:班级:提交日期:实训一实训目的通过开发一款停车场游戏程序,熟练掌握C#编程语言、面向对象程序设计方法和可视化技术。实训题目使用C#编程语言,开发一款停车场游戏程序。功能描述1) 停车场有5 种颜色的汽车和6 个车位。2) 每一辆汽车对应颜色的车位。3) 车位之间有的有通道,有的没有。4) 最初5 种颜色的汽车未停在对应颜色的车位。5) 玩家点击汽车,实现将该汽车沿通道移动到空闲的车位上;当该汽车与空间的车位之间没有通道时,则不移动汽车。6) 玩家可以点击按钮“自来一次”,重新开始游戏。7) 当所有的汽车都听到对应颜色的车位上时,游戏成功。需求分析根据功能描述可知,停车场游戏的定义数据字典如下:1) 车(Car):在停车场游戏中,车是玩家操纵的对象。车具有位置和颜色等属性。在游戏中,玩家可以将汽车沿通道移动到空闲的车位上。2) 车位(Space):在停车场游戏中,车位是汽车停留的空间。车位具有位置、大小和颜色等属性。3) 通道(Road):在停车场游戏中,通道是汽车移动的路径。通道具有起始点等属性。当某两个车位间有通道时,汽车可以直接再这两个车位间移动。当某两个车位间没有通道时,汽车不可以直接在这两个车位间移动。设计说明根据需求分析可知,车位具有位置、大小和颜色等属性,定义1)Space类用于描述车位的信息。通道具有起点和终点两个属性,定义2)Road类用于描述通道的信息以及通道与车位之间的关系。车具有位置和颜色等属性,定义Car类用于描述车的信息以及车停留在哪个车位,并实现车的移动功能。3)为了使游戏的运行更易于控制,定义Game类用于启动游戏、控制游戏和结束游戏。4)综上所述,在停车场游戏中,有Space(车位)、Road(通道)、Car(车)、Game(游戏)和MainForm(用户接口)六个类。源代码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 ParkingLot{publicpartialclassForm1 : Form {public Form1() { InitializeComponent(); game = newGame();for (int i = 0; i 5; i++) {string name = pictureBox + i.ToString();PictureBox pBox = (PictureBox)this.Controls.Find(name,false)[0]; pBox.Location = newPoint(game.cars[i].center.X - pictureBox0.Width / 2, game.cars[i].center.Y -pictureBox0.Height / 2); pBox.Visible = true; } }privateGame game;privatevoid pictureBox0_Click(object sender, EventArgs e) {PictureBox pBox = (PictureBox)sender;if (game.MoveCar(0, game.cars[0].spaceNum,game.freeSpaceNum)) { pBox.Location = newPoint(game.cars[0].center.X - pBox.Width / 2, game.cars[0].center.Y - pBox.Height / 2);if (game.Success()) {MessageBox.Show(恭喜!成功了); } }else {MessageBox.Show(不能移动); } }privatevoid pictureBox1_Click(object sender, EventArgs

您可能关注的文档

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档