第二章 ActionScript 3.0 动画基础Ⅰ[FL 基理译]
2009-05-30 12:08:59 来源:WEB开发网ball.x += 5;
“+=”操作符:把右边的值与左边的变量相加,相加的结果再赋值给该变量。以下是更多的高级规则,日后会学到:
var dx:Number = mouseX - ball.x;
var dy:Number = mouseY - ball.y;
var ax:Number = dx * spring;
var ay:Number = dy * spring;
vx += ax;
vy += ay;
vy += gravity;
vx *= friction;
vy *= friction;
ball.x += vx;
ball.y += vy;
graphics.clear();
graphics.lineStyle(1);
graphics.moveTo(ball.x, ball.y);
graphics.lineTo(mouseX, mouseY);
这段现在看不懂没关系,大家只要知道 Flash 会在每一帧中生成这段代码,并不断地执行。
怎样让它循环执行?看看我第一次的尝试,这也是很多 AS 初学者都会犯的错误。这是在很多程序设计语言中都存在的循环结构,如 for 和 while。用循环结构使代码重复执行,这就是我曾写的那段:
for (i = 0; i < 500; i++) {
ball.x = i;
}
看起来相当简单。变量 i 从 0 开始,所以小球 X 坐标移动到 0——舞台最左边。i++ 让i 的值每次增长1,即:0~1~2~3~4…,每次这个值都会做为 ball.x 的值,把小球从左向右移动。当值为500时,表达式 i<500 值为假(false),循环结束。
如果你也犯过同样的错误,就会知道,小球没有在舞台上发生移动——只是一下子出现在了舞台的右边而已。为什么没有移动到中间的那些点上?其实它移动了,只是我们没有看到,因为我们没有让 Flash 去刷新屏幕。图2-6 为另一个流程图,看看实际都发生了什么。
Tags:第二章 ActionScript 动画
编辑录入:爽爽 [复制链接] [打 印]- ››ActionScript 2.0中的! 逻辑 NOT 运算符
- ››动画制作之&按位AND 运算符
- ››动画* 、*= 乘法赋值运算符
- ››ActionScript 3.0 性能方面优化小知识整理收集
- ››动画的前制与制程
- ››第二章 ActionScript 3.0 动画基础Ⅰ[FL 基理译]
- ››第二章 ActionScript 3.0 动画基础Ⅱ[FL 基理译]
- ››ActionScript中文本字段的透明度缓动
- ››ActionScript 3.0 Step By Step系列(一):工欲其善...
- ››ActionScript 3.0 Step By Step系列(二):建立扎实...
- ››ActionScript 3.0 Step By Step系列(三):学学流程...
- ››ActionScript 3.0 Step By Step系列(四):来自面向...
更多精彩
赞助商链接