最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
上下左右光标控制物体跳动
时间:2008-06-18 编辑:简简单单 来源:一聚教程网
//物体左右跳跃的类as2.0
//水平速度
var xsd:Number = 10;
//重力
var numg:Number = 5;
//垂直速度
var ysd:Number = -18;
//声明对象
//对象名称obj_实例名称,
var obj_mc = new jump (mc, xsd, numg, ysd);
_root.onEnterFrame = function ()
{
obj_mc.onEnterFrame ();
};
var keyListener:Object = new Object ();
keyListener.onKeyUp = function ()
{
switch (Key.getCode ()) {
case 37 :
//trace ("<");
obj_mc.go(-1);
break;
case 39 :
//trace (">");
obj_mc.go(1);
break;
}
};
Key.addListener (keyListener);
类文件:##########################################
{
//mc目标影片
var mc:MovieClip;
//水平速度
var xsd:Number;
//重力
var numg:Number;
//垂直速度
var ysd:Number;
var iniYsd:Number;
//地面的位置
var iniY:Number;
private var jumpx:Number;
//是不是第一次开始跳跃
private var isFirst:Boolean = true;
//是否开始跳
private var isJump:Boolean = false;
//初使化
function jump (mc:MovieClip, xsd:Number, numg:Number, ysd:Number)
{
this.mc = mc;
this.xsd = xsd;
this.numg = numg;
//
this.iniYsd = ysd;
this.ysd = ysd;
//
iniY = mc._y;
}
//跳
function go (jumpx:Number)
{
if (!isJump) {
isJump = true;
this.jumpx = jumpx;
}
}
// 检测是否跳,并作跳的处理
function jumping ()
{
if (!isJump) {
return 0;
}
//
if (isFirst) {
ysd += numg;
mc._y += ysd;
mc._x += xsd * jumpx;
isFirst = false;
}
else {
if ((mc._y + ysd + numg) < iniY) {
ysd += numg;
mc._y += ysd;
mc._x += xsd * jumpx;
}
else {
mc._y = iniY;
isFirst = true;
isJump = false;
this.ysd = this.iniYsd;
}
}
}
//要循环都统一放在这里。
function onEnterFrame ()
{
jumping ();
}
}
-
上一个: 单个图片角色动作化处理
-
下一个: flash常见问题
相关文章
- “誉丰集团”拖欠员工工资 3个月左右没发工资了 11-14
- 小新Air13、Air12、Air13pro左右侧接口说明 10-17
- 三千元左右的笔记本哪款好 3000左右的笔记本推荐 06-15
- as TweenLite、TweenMax 实现抖动效果、左右抖动、上线抖动示例 09-30
- 左右列表内容交换传递 01-16
- 禁用鼠标左右键 01-16