Flash 将旧式as1/2代码转换为as3
我在互联网上下载了一个.swf,这是一个动画,我非常想把它放在我的.swf中。然而,当我加载它并试图控制.swf时,我得到了一个错误代码。 TypeError:错误#1034:类型强制失败:无法转换闪存。显示::AVM1Movie@10d52701要闪烁.display.MovieClip 我在网上搜索了这个错误,因为.swf是在as1/2中编译的,所以我无法获取它的“对象”并控制它 我还反编译了.swf并阅读了代码,但是代码大部分是在as1/2中完成的,我不知道它是做什么的,因为我刚刚开始学习as3,从未接触过as1/2 有人知道我能做什么吗?下面是反编译的代码,据我所知,它用于“移动”动画的各个部分。这是一个“鱼”身体的一部分,创造一个非常顺利,游泳的行动。我尝试将其转换为as3代码,但在找不到变量的地方出现错误Flash 将旧式as1/2代码转换为as3,flash,actionscript-3,actionscript-2,Flash,Actionscript 3,Actionscript 2,我在互联网上下载了一个.swf,这是一个动画,我非常想把它放在我的.swf中。然而,当我加载它并试图控制.swf时,我得到了一个错误代码。 TypeError:错误#1034:类型强制失败:无法转换闪存。显示::AVM1Movie@10d52701要闪烁.display.MovieClip 我在网上搜索了这个错误,因为.swf是在as1/2中编译的,所以我无法获取它的“对象”并控制它 我还反编译了.swf并阅读了代码,但是代码大部分是在as1/2中完成的,我不知道它是做什么的,因为我刚刚开始学习
function corps(objet)
{
i = 0;
for (;;)
{
if (i >= 8)
{
return;
}
tourne = Math.cos(i + getTimer() / (400 - m)) * 9;
objet["p" + i]._rotation = (0 - tourne) / 2;
objet.p5["p" + i]._rotation = 0 - tourne;
objet.p5.p4["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3.p2["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3.p2.p1["p" + i]._rotation = (0 - tourne) / 2;
++i;
}
}
function fish(objeti)
{
if (objeti._x && objeti._y)
{
corps(objeti);
}
}
var j = Math.random(20) * 7 - 5;
var m = Math.random(50) * 2;
j = 4;
m = 4;
k = 0;
u = 0;
v = 1;
this.poisson.s = 1;
this.poisson.vari = this.poisson._width / 10 + this.poisson._height / 10;
this.onEnterFrame = function ()
{
fish(this.poisson);
}
;
您需要将以
开头的所有属性更改为其对应的AS3属性。也就是说,\u width
应该是width
和\u rotation
应该是rotation
,对\u width、\u height、\u x、\u y、\u rotation
执行此操作时,您需要在舞台上放置一个poisson
实例并命名。它在图书馆吗?确保将实例命名为poisson
反编译代码。。。你可以随时联系原始(法语)程序员:-)是的,但我认为他的英语不是很好,我很难理解他给我键入的内容。你能理解他是否同意你反编译和重用它吗?嗨,我这样做了,但对于var字母,我不知道它是如何出现的,此代码位于文件的主时间线上。