View Full Version : syntax error
lelales
12-02-2005, 05:23 PM
I have the following code:elasticScale = function(tar, accel, convert) {
xScale = xScale*accel+(tar-this._xscale)*convert;
yScale = yScale*accel+(tar-this._yscale)*convert;
this._xscale += xScale;
this._yscale += yScale;
};
mc.onClipEvent=function (enterFrame) {
this.elasticScale(100, 0.5, 0.4);
}
and I get the following syntax error:**Error** Scene=Scene 1, layer=Action, frame=1:Line 25: Expected a field name after '.' operator.
mc.onClipEvent=function (enterFrame) {
Total ActionScript Errors: 1 Reported Errors: 1
If I remove the "mc." before "onClipEvent," I get the following error:
**Error** Scene=Scene 1, layer=Action, frame=1:Line 25: Clip events are permitted only for movie clip instances
onClipEvent=function (enterFrame) {
Total ActionScript Errors: 1 Reported Errors: 1
what am I doing wrong?
thanks
elasticScale = function(tar, accel, convert) {
xScale = xScale*accel+(tar-this._xscale)*convert;
yScale = yScale*accel+(tar-this._yscale)*convert;
this._xscale += xScale;
this._yscale += yScale;
};
onEnterFrame=function () {
elasticScale(100, 0.5, 0.4);
}
change it to:
mc.onEnterFrame=function(){
this.elastic....;
}
lelales
12-02-2005, 05:58 PM
I thought if I simplified the problem I could get it to work, but I'm still stuck.
I'm using a loop for mc1, mc2 etc, they load just fine but don't do the elasticScale function. Here's my code in full:
#include "com.qlod.LoaderClass.as"
//
var maxColumn = 5;
//
elasticScale = function(tar, accel, convert) {
xScale = xScale*accel+(tar-this._xscale)*convert;
yScale = yScale*accel+(tar-this._yscale)*convert;
this._xscale += xScale;
this._yscale += yScale;
};
myLoader = new com.qlod.LoaderClass();
for (var i = 0; i<15; i++) {
var rowNum = Math.floor(i/maxColumn);
var mc = createEmptyMovieClip("mc"+i, i);
mc._x = 24+44*(i-rowNum*maxColumn);
mc._y = 24+44*rowNum;
var url = "thumbs/image"+i+".jpg";
out_txt.text += "url = "+url+"\n";
mc._xscale = mc._yscale=100;
mc.onEnterFrame=function () {
elasticScale(100, 2, 0.4);
}
myListener_obj = new Object();
myListener_obj.onLoadComplete = function(success, loaderObj) {
loaderObj.getTargetObj().onRelease = function() {
var pID = this._name.substr(2);
var pName = "lgimages/BigImage"+pID+".jpg";
trace(pID+" : "+pName);
loadMovie("lgimages/BigImage"+pID+".jpg", "_root.lgImages_mc");
// Your Loading sequence starts here!!!
};
};
myLoader.addListener(myListener_obj);
myLoader.load(mc, url);
}
here's what I get: http://www.caillouette.com/susanbowers10
click on "ceramics"
any ideas?
thakns
don't do mc.onEnterFrame... because its giving another scope so it can't see the function
just do onEnterFrame.. and everything should work fine, as long as everything in the elasticScale function is correct
lelales
12-02-2005, 06:20 PM
I changed the elasticScale to elasticScale = function(tar, accel, convert) {
mc1.xScale = mc1.xScale*accel+(tar-this._xscale)*convert;
mc1.yScale = mc1.yScale*accel+(tar-this._yscale)*convert;
mc1._xscale += mc1.xScale;
mc1._yscale += mc1.yScale;
};
so hopefully mc1 would go elastic like.
but it doesn't work.
Can you have another look at my code and tell me what I'm missing?
I'm loosing my mind, I've read so many books and can't accomplish this.
thanks
elasticScale = function(tar, accel, convert) {
xScale = xScale*accel+(tar-mc._xscale)*convert;
yScale = yScale*accel+(tar-mc._yscale)*convert;
mc._xscale += xScale;
mc._yscale += yScale;
};
myLoader = new com.qlod.LoaderClass();
for (var i = 0; i<15; i++) {
var rowNum = Math.floor(i/maxColumn);
var mc = createEmptyMovieClip("mc"+i, i);
mc._x = 24+44*(i-rowNum*maxColumn);
mc._y = 24+44*rowNum;
var url = "thumbs/image"+i+".jpg";
out_txt.text += "url = "+url+"\n";
mc._xscale = mc._yscale=100;
onEnterFrame=function () {
elasticScale(100, 2, 0.4);
}
lelales
12-02-2005, 07:19 PM
I get the following syntax errors:
**Error** Scene=Scene 1, layer=Action, frame=1:Line 6: Syntax error.
yScale=yScale*accel+(tar-mc._yscale)*convert;
**Error** Scene=Scene 1, layer=Action, frame=1:Line 7: Syntax error.
mc._xscale+=xScale;
**Error** Scene=Scene 1, layer=Action, frame=1:Line 8: Syntax error.
mc._yscale+=yScale;
Total ActionScript Errors: 4 Reported Errors: 4
I deleted all the white space on my second try, and even tried to change the code a bit, but no luck. Is my Flash acting funny, or am I missing something here?
thanks again.
|
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.