如何解决重复变量定义的错误?必须有 单独的命名空间和用于每个定义,但我只是没有看到它。
我没有写这个,但我一直试图解包它并更改类似乎已经打破了它。我想用它来缩放电影的播放时间。这里有很酷的数学时间缩放。
//time-scaling script
import flash.display.*;
import flash.events.Event.*;
var _time_scale:Number = .25;
var _frames_elapsed:int = 0;
var _clip:MovieClip;
function Main():void {
_clip = new SomeClip;
addEventListener(Event.ENTER_FRAME, handleEnterFrame);
//integer??
function handleEnterFrame(e:Event):void {
_frames_elapsed ++;
}
// we multiply the "real" time with our timescale to get the scaled time
// we also need to make sure we give an integer as a parameter, so we use Math.round() to round the value off
_clip.gotoAndStop(Math.round(_clip.totalFrames * _frames_elapsed * _time_scale ));
}
var myTimer:Timer = new Timer(10);
myTimer.addEventListener(TimerEvent.TIMER, timerListener);
function timerListener (e:TimerEvent):void{
ball1.rotationY += 5;/////////replace function///////////
}
myTimer.start();
**3596**
Warning: Duplicate variable definition.
**1151**
A conflict exists with definition _clip in namespace internal
整数,非嵌套循环
答案 0 :(得分:2)
这是因为你错过了构造函数的结尾“} ”,在这一行之后:
addEventListener(Event.ENTER_FRAME, handleEnterFrame);
以下两行应该在你的构造函数中,而不仅仅是在类声明中:
var myTimer:Timer = new Timer(10);
myTimer.addEventListener(TimerEvent.TIMER, timerListener);
如果您使用的是Timer和TimerEvent类,则应导入它们:
import flash.utils.Timer;
import flash.events.TimerEvent;
此外,您不需要在事件导入结束时使用。*。
另一个“也”。您应该在您的成员上拥有访问修饰符,即。变量和功能。所以你应该说:
private var _clip:MovieClip;
听起来我需要了解AS3的基础知识。这是一个非常好的起点:http://www.actionscript.org/resources/articles/611/1/Getting-started-with-Actionscript-3/Page1.html
答案 1 :(得分:-1)
_clip
是保留的关键字,您必须使用其他内容。