flash as3制作小球碰撞游戏(下)
第4步计算小球测试碰撞位置
修改这里代码如下
if(ball_mc.hitTestObject(paddle_mc))
{
yDirection *= -1;
ball_mc.y = paddle_mc.y - ball_mc.height - paddle_mc.height/2;
checkHitLocation(paddle_mc);//增加的
}
第4步计算小球测试碰撞位置
修改这里代码如下
if(ball_mc.hitTestObject(paddle_mc))
{
yDirection *= -1;
ball_mc.y = paddle_mc.y - ball_mc.height - paddle_mc.height/2;
checkHitLocation(paddle_mc);//增加的
}
第一步制作一个鼠标点击后开始游戏然后移动小球,到边界改变方向
主要增加这个事件
ball_mc.addEventListener(Event.ENTER_FRAME, moveBall);
ActionScript 书一本
ActionScript for Multiplayer Games and Virtual Worlds
中文名:基于ActionScript开发多人游戏和虚拟世界,书+源码下载如下:
flex 3如何创建ActionScript 3项目并延伸
下班回来看电视的时候睡着了,醒来凌晨0:30分,再睡已经尝试无法睡着,起来搞搞兴趣爱好,
前一段时间知道了flex也能创建AS 3项目的,并且在原来fla文件中把类库中的影片剪辑可以导出swc文件,
AS项目如何导入swc,这个东西在项目属性 ActionScript BuidPath中 切换到Library path 里面的Add Swc文件。
步骤创建ActionScript,File->new ActionScript
创建as文件,File->ActionScript class 输入Name ,继承类Superclass->Browse->输入Sprite
1.this 表示这个方法调用当前对象的方法货对象的私有变量。
优点:当对象私有型方法中的参数(parameter)或局部变量(local parameter)和
对象私有属性重名,可以使用this区分对象私有型属性和局部变量
另外在flex中输入this,显示一些私有变量和函数
2.super是用于表示父类中能够 被访问的私有属性和方法。最大的作用是在方法覆盖中
,让当前对象类型的私有方法能够访问父类中的可被访问和被当前方法覆盖的方法。
总之可以访问父类的变量和函数,在覆盖方法里也能访问父类的变量和函数
类型共享(static)属性和方法是不能被子类所继承,就是说静态变量和静态函数都是不能被继承的。
ActionScript 3允许对象类型定义与类型共享型属性和方法同名的私有型或方法。就是说可以定义静态变量和非静态变量,而且命名可以相同,函数也是类似的
举例子test目录下创建SimpleObject.as
===与==操作符的区别如下:
1.全然(strict)相等的比较操作符(===)的操作只对数字类型变量的惊醒数据类型转换,
而一般相等的比较操作符(==)的操作符对所有基本数据类型进行转换。
2.使用===相等比较符来比较null和undefined,它总是返回flase(不成立)。
!==与!=操作符的区别如下:
ActionScript 3中 动态函数的定义和使用语法
ActionScript 3函数定义有2种情况,一种是一般正常的函数,另外中是动态函数的定义,
特别是动态函数是区别于其他语言比如c#,java等的主要特性
ActionScript 3中for(..in..)与for each(..in..)区别比较
for(..in..)的用途是对一个对象中所有的属性名称(注意是属性名称,而不是属性值)
进行逐个访问或者对数组中的每一个下标进行逐个访问。for each(..in..)结构的用途
是对一个对象中的所有属性值(此处是属性值而不是属性名称)或者对数组中的每一个
元素值进行逐个访问。
以下是数组方法
其它:
画圆 square.graphics.drawCircle(300,100,50); //300,100是坐标,50是半径
画椭圆 square.graphics.drawEllipse(180,150,50,80)//180,150是坐标,50,80是上半和下半
画矩形 square.graphics.drawRect(50,50,300,200);前面2个仍然是坐标,300是长200是宽如果相等就是正方形
带圆角的矩形 square.graphics.drawRoundRect(50,50,300,200,30,30)前面参数跟矩形一样,后2位30,30控制圆角
drawRoundRectComplex()是画出复合矩形