《眼疾手快》游戏设计说明书和使用说明
班级10游戏动画2  姓名王永  学号 106301238
一.游戏设计说明
A设计背景:
网络休闲累游戏的大量流行导致自己想根据所学习的专业做一个游戏试玩一下,想通过自己设计的游戏明白一些游戏设计的过程同时增加自己对于游戏动画专业的理解。
B设计主题:
游戏主要设计的是中国风的风格,运用了浓郁的中国风的风格,主要是通过在背景上面使用各种不同水墨化效果。
C设计作品构思:
本款游戏是根据网上的cs单机射击类游戏改变掉的游戏,虽然和那样的大型游戏不能比,但是可以通过其中的一些运行程序明白一些游戏制作的过程。希望主要通过程序代码实现元件的运行,从而形成整个游戏的风格。
D制作思路:
本游戏不属于原创,是根据他人制作的游戏基础上面改变的,为了使游戏更加符合游戏的界面,设计了游戏的初始界面,同时在第二个场景上面增加了游戏的选项卡按钮,在
场景三上面设计了一个基本的游戏运行的操作,对于场景四上面是主要程序集合展现,其中运行的界面程序是设计的最丰富的。
E制作方法:
1.制作场景1上面的按钮文件有开始按钮,选项卡按钮以及帮助文本按钮主要通过创建新建元件按钮实现的;
2.通过文本工具制作提示文本的文字说明,同时添加一个返回按钮进行动作的添加在按钮上面添加一段返回的程序代码;
3.制作一个场景2,其里面主要是对于下面游戏进行设计的关卡选项主要通过的设置两个按钮实现的,在其动作面板上面添加返回其他场景的代码;
4.制作场景3,里面有一个是被目标函数控制的变量实现物体的飞转,同时通过创建形状补间动画实现了物体消失的过程,最终程序的运行还是通过最上面一帧的动作代码实现的;
5.制作场景4,主要的场景动画展示,开始帧上面创建了一个readly函数引导的开始读取运行,第二帧上面则是添加了一个鸟飞的逐帧动画,还有一个是鸟被击中后坠落的鸟的动画还有一个就是辅助场景的鸟在水面进行游动的动画,最后一帧上面是对于场景进行设置的返回动画,通过创建的输入文本对齐进行点击从而实现其返回;
6.每个图层上面都设置了一个鼠标跟随按钮,为了实现其可以不断更新变化,对齐进行了代码的添加;
F过程中使用的技术:
1. 通过逐帧动画实现子弹的射击以及消失的动画实现
2. 通过创建传统补间动画实现了被射中以后人物的消失以及鸟的相关动画
3. 通过设置按钮实现场景之间的使用
4. 通过添加相关的程序代码实现整个游戏的运行
二.使用说明
玩家通过直接点击鼠标进行选项以及目标的射击,有些文本可能因为位置的大小,点击可能会显得不方便。
三附:程序中使用到的代码
场景三中基础训练的游戏程序代码
function firstPos()
{
_root.bird._x = 50 + random(450);
_root.bird._y = 370;
dirX = random(5) - random(6);
} // End of the function
stop ();
mybg.setVolume(80);
Mouse.hide();
score = 0;
_root.target.onMouseMove = function ()
{
this._x = _root._xmouse;
this._y = _root._ymouse;
updateAfterEvent();
};
_root.target.onEnterFrame = function ()
{
++time;
_root.timer = 20 - int(time / 20);
if (_root.timer == 0)
{
gotoAndStop(\"场景3\
}
};
_root.target.onMouseDown = function ()
{
_root.tan._x = _root._xmouse;
_root.tan._y = _root._ymouse;
_root.tan.play();
_root.onEnterFrame = function ()
{
if (_root.tan._currentframe == 10)
{
hit = _root.tan.hitTest(_root.bird);
if (hit)
{
firstPos();
++_root.score;
} // end if
} // end if
};
};
_root.bird.onEnterFrame = function ()
{
if (_root.bird._y < 0 || _root.bird._x < 0 || _root.bird._x > 550)
{
firstPos();
}
else
{
_root.bird._y = _root.bird._y - (5 + random(2));
_root.bird._x = _root.bird._x + dirX;
} // end else if
};
场景四中是主要的一个程序展现,以下是其中使用到的程序代码:
Readly函数的定义程序:
getURL(\"FSCommand:allowscale\
stop ();
readytime = 0;
ready = 3;
timer = 0;
time = 0;
_root.onEnterFrame = function ()
{
++readytime;
ready = 3 - int(readytime / 5);
if (ready == 0)
{
gotoAndStop(2);
delete _root.onEnterFrame;
} // end if
};
主函数的定义以及调用
function firstPos()
{
_root.bird._x = 50 + random(450);
_root.bird._y = 370;
dirX = random(5) - random(6);
} // End of the function
stop ();
mybg = new Sound();
mybg.setVolume(80);
Mouse.hide();
score = 0;
_root.target.onMouseMove = function ()
{
this._x = _root._xmouse;
this._y = _root._ymouse;
updateAfterEvent();
};
_root.target.onEnterFrame = function ()
{
++time;
_root.timer = 30 - int(time / 30);
if (_root.timer == 0)
{
gotoAndStop(\"场景4\
} // end if
};
_root.target.onMouseDown = function ()
{
mySound = new Sound();
_root.tan._x = _root._xmouse;
_root.tan._y = _root._ymouse;
_root.tan.play();
_root.onEnterFrame = function ()
{
if (_root.tan._currentframe == 10)
{
hit = _root.tan.hitTest(_root.bird);
if (hit)
{
firstPos();
++_root.score;
with (_root.diebird)
{
_x = _root.tan._x;
_y = _root.tan._y;
gotoAndPlay(2);
} // End of with
} // end if
} // end if
};
};
_root.bird.onEnterFrame = function ()
{
if (_root.bird._y < 0 || _root.bird._x < 0 || _root.bird._x > 550)
{
firstPos();
}
else
{
_root.bird._y = _root.bird._y - (5 + random(2));
_root.bird._x = _root.bird._x + dirX;
} // end else if
};
返回场景的定义函数
stop ();
_root.replay.onEnterFrame = function ()
{
if (_root.tan._currentframe == 10)
{
hit2 = _root.replay.hitTest(_root.tan);
if (hit2)
{
_root.gotoAndStop(1);
} // end if
} // end if
};