FLASH的跳跃动作的代码

来源:百度知道 编辑:UC知道 时间:2024/05/28 06:49:01
onEnterFrame=function(){
rubbit._y-=v;

if(v==-50){
delete onEnterFrame;
trace(v);}
v-=10;
}
谁能对这段代码进行详细的说明下。简单的说明不用了。
onEnterFrame=function(){
rubbit._y-=v;

if(v==-50){
delete onEnterFrame;
trace(v);}
v-=10;
}
谢谢1楼的回答,我理解了下。最后问下
var v=50;
那总共会执行10帧是不?
onEnterFrame是一个循环,只不过是一帧一帧执行。
是这样的么?

onEnterFrame=function(){ // 进入针重复运行该函数
rubbit._y-=v; //(rubbit 球的事例名称) 的Y 轴坐标 为V ,V 是个变量

if(v==-50){
delete onEnterFrame;
trace(v);}
//IF语句,如果V 的直等于 -50 消除执行onEnterFrame=function(){ 命令
输出 V 的直!
v-=10; //给V设置变量为10 ,每次运行的时候由 V-10,第2次运行就是 (V-10)-10,直到运行到 -50的时候,这球就不跳跃了!
}
对的,是执行10次,和针无关的,每次运行就是再 -10,你这代码应该还有个给V 定义量的代码!

我来解释下。
onEnterFrame 是一个函数,它得作用是在动画每跳过一帧时,执行一次后面{}内的程序。
===============================
程序总的翻译是:

逐帧执行以下语句:
令rubbit 的Y坐标等于rubbit的当前Y坐标减去V
当V等于-50时候:
停止onEnterFrame 函数,并输出V的值。
最后令V的值等于V的当前值减去10

=================================
这样,整个程序出来的效果应该是:(假设V=50)
V的值每帧过后少10,所以rubbit每次的移动距离应该是越来越小
而当V变负数后距离又越来越大直到V等于-50停止,也就是10次移动。