【发布时间】:2011-07-15 09:13:06
【问题描述】:
我有一个 .swf,我在互联网上下载了它是一个动画,我非常希望将它放在我的 .swf 中,但是,当我加载它并尝试控制 .swf 时出现错误代码。 TypeError:错误 #1034:类型强制失败:无法将 flash.display::AVM1Movie@10d52701 转换为 flash.display.MovieClip。
我在网上搜索了这个错误,这是因为 .swf 是在 as1/2 中编译的,因此我无法获取它的“对象”并对其进行控制。
我也反编译了 .swf 并阅读了代码,但代码大多在 as1/2 中完成,我不知道它是做什么的,因为我刚开始学习 as3,从未接触过 as1/2。
任何人都知道我能做什么?下面是反编译的代码,据我了解,它用于“移动”动画的各个部分。这是一个“鱼”的身体部位,创造出非常流畅的游泳动作。我已尝试将其转换为 as3 代码,但在找不到变量的地方出现错误。
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);
}
;
【问题讨论】:
-
反编译代码...你可以随时联系原(法语)程序员:-)
-
是的,我做到了,但我认为他的英语不是很好,我很难理解他给我打的内容。
-
你在哪里可以理解他是否同意你反编译和重用它?
标签: flash actionscript-3 actionscript-2