赛车游戏文档
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告
课程设计名称:图像与二维动画制作作品名称:休闲小赛车
专业:09数字媒体技术学院:物电学院
姓名:冷添耀
学号:090804005
指导老师:卢震辉刘伟军
一、开发背景
考虑到大家的时间比较宝贵,没有多少的时间用来玩游戏,只有偶尔的坐公交,等火车等时间里彩有一些时间哟过来玩游戏,就个人认为这款游戏还是比较适合大众的,很容易,所以可以带给大家的胜利感,让大家在学习与工作过程中烦恼忘却。
二、开发工具
Photoshop Adobe Flash CS4
三、设计原理
当今的人们忙于工作,很少有时间静下心来享受一下赛车的乐趣,因此电脑版赛车,手机版赛车便开始受到人们的关注。
四、设计思路
玩游戏的人应该知道向上键是前进,左右键控制方向,在指定的路上才是最快的,车离开了路面的时候就会变慢。
五、流程图
1、开始界面;
2、游戏开始界面;
3、游戏进行界面;
4、胜利重来界面;
六、基本代码
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.geom.*;
import flash.utils.getTimer;
import flash.media.Sound;
import flash.media.SoundChannel;
public class Racing extends MovieClip {
static const maxSpeed:Number = .3;
static const accel:Number = .0002;
static const decel:Number = .0003;
static const turnSpeed:Number = .18;
private var arrowLeft, arrowRight, arrowUp, arrowDown:Boolean;
private var lastTime:int;
private var gameStartTime:int;
private var speed:Number;
private var gameMode:String;
private var waypoints:Array;
private var currentSound:Object;
static const theBrakestopSound:BrakestopSound = new BrakestopSound(); static const theDriveSound:DriveSound = new DriveSound();
static const theGoSound:GoSound = new GoSound();
static const theOffroadSound:OffroadSound = new OffroadSound();
static const theReadysetSound:ReadysetSound = new ReadysetSound();
static const theSideSound:SideSound = new SideSound();
private var driveSoundChannel:SoundChannel;
public function startRacing() {
findWaypoints();
this.addEventListener(Event.ENTER_FRAME,gameLoop);
stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownFunction);
stage.addEventListener(KeyboardEvent.KEY_UP,keyUpFunction);
speed = 0;
gameMode = "wait";
timeDisplay.text = "";
gameStartTime = getTimer()+3000;
centerMap();
}
public function findWaypoints() {
waypoints = new Array();
for(var i=0;i var mc = gamesprite.getChildAt(i); if (mc is Waypoint) { waypoints.push(new Point(mc.x, mc.y)); mc.visible = false; } } } public function keyDownFunction(event:KeyboardEvent) { if (event.keyCode == 37) { arrowLeft = true; } else if (event.keyCode == 39) { arrowRight = true; } else if (event.keyCode == 38) { arrowUp = true; } else if (event.keyCode == 40) { arrowDown = true; } } public function keyUpFunction(event:KeyboardEvent) { if (event.keyCode == 37) { arrowLeft = false; } else if (event.keyCode == 39) { arrowRight = false;