У меня есть этот скрипт для случайного зацикливания букв ниже.Я хочу, чтобы эта функция выполнялась при определенном щелчке или метке кадра, но когда я вызываю ее с помощью tweenmax, я получаю ошибку во время выполнения.Может кто-нибудь объяснить мне, как вызвать эту функцию на определенных мероприятиях.Я знаю, что это определенно не лучшая практика, но нужно где-то попробовать, и вот что я сделал:
var targetWord:String = 'home';
var wordSoFar:String = '';
var possibleCharacters:Array = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
var ticksBetweenLetters:int = 15;
var currentTick:int = 0;
addEventListener(Event.ENTER_FRAME, eFrame);
function eFrame(e:Event):void{
if(currentTick >= ticksBetweenLetters){
wordSoFar = targetWord.substr(0, wordSoFar.length + 1);
currentTick = 0;
ticksBetweenLetters = int(Math.random() * 15);
if(wordSoFar == targetWord){
removeEventListener(Event.ENTER_FRAME, eFrame);
home.home_title.field.text = targetWord;
return;
}
}
home.home_title.field.text = wordSoFar + possibleCharacters[int(Math.random() * possibleCharacters.length)];
currentTick++;
}
Я хочу, чтобы событие началось, когда я его здесь разместил:
tl.append(TweenMax.from(home.home_title.field, 1, {onStart:eFrame}));
но я получаю это:
ArgumentError: Error #1063: Argument count mismatch on sncc_fla::website_1/eFrame(). Expected 1, got 0.
at Function/http://adobe.com/AS3/2006/builtin::apply()
at com.greensock::TweenMax/renderTime()
at com.greensock::TimelineMax/renderTime()
at com.greensock.core::TweenCore/setTotalTime()
at com.greensock::TimelineMax/set currentTime()
at com.greensock::TweenLite/renderTime()
at com.greensock.core::SimpleTimeline/renderTime()
at com.greensock::TweenLite$/updateAll()