Flash 1071错误,预期定义关键字

时间:2013-02-11 13:01:41

标签: actionscript-3 air compilation flash-cs6 greensock

尝试使用GreenSock在Flash AS3,AIR 3.2 for iOS中使用它。我已经尝试将它定义为变量,函数等,但无济于事。在线搜索没有任何结果。

代码行TweenMax tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});出现以下错误:

1071:语法错误:在属性TweenMax之后需要定义关键字(例如函数),而不是补间。
1084:语法错误:在leftbrace之前期待rightbrace 1084:语法错误:在rightparen之前期待标识符。

var middle:Boolean = false;

public function run():void {
    TweenMax tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
    tween.addEventListener(TweenEvent.UPDATE, updateListener);
    tween.addEventListener(TweenEvent.REPEAT, repeatListener);
}

function updateListener(e:TweenEvent):void {
    if(tween.currentProgress > 0.5 && middle == false)
    {
        TweenMax.to(textOne, 7, {ease:SlowMo.ease.config(1, 0), repeat:-1, autoAlpha:0});
        middle = true;
    }
}

function repeatListener(e:TweenEvent):void {
    textOne.alpha = 1.0;
    middle = false;
}

编辑:错误的行已替换为var tween:TweenMax = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
出现的其他错误有:
1120:访问未定义的属性TweenMax 1046:未找到类型或不是编译时常量:TweenMax 1120:访问未定义的属性补间。
1120:访问未定义的属性中。

我的GreenSock进口情况如下:

import com.greensock.easing.*;
import com.greensock.plugins.*;
import com.greensock.events.TweenEvent;

甚至尝试import com.greensock.*;

编辑:添加第import com.greensock.TweenMax;行已删除错误:
1120:访问未定义的属性TweenMax 1046:未找到类型或不是编译时常量:TweenMax。

其他两个错误仍然存​​在。

1 个答案:

答案 0 :(得分:1)

@Vesper是绝对正确的。

var tween:TweenMax = TweenMax.to(...)

As3使用名称:Type notation。至于你的进一步错误,它们可能来自错误地引用greensock代码,但它们是朝着正确方向迈出的一步。请将它们发布到编辑中。

好吧,让我们看看:

private var _middle:Boolean = false;
private var _tween:TweenMax;

public function run():void {
    _tween = TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
    _tween.addEventListener(TweenEvent.UPDATE, updateListener);
    _tween.addEventListener(TweenEvent.REPEAT, repeatListener);
}

private function updateListener(e:TweenEvent):void {
    if(_tween.totalProgress() > 0.5 && _middle == false) {
        TweenMax.to(textOne, 7, {ease:SlowMo.ease.config(1, 0), repeat:-1, autoAlpha:0});
        _middle = true;
    }
}

private function repeatListener(e:TweenEvent):void {
    textOne.alpha = 1.0;
    _middle = false;
}

我不确定功能性,但只要textOne实际存在,此代码不应抛出错误。