PDA

Volledige versie bekijken : hoe return ik dat de functie klaar is


clan-kill3r
%Europe/Berlin %476 %2007, 12:25
Onderstaande functie kan een object verplaatsen,
ik wil deze functie aanroepen met een andere functie, deze functie moet alleen weten wanneer het object zijn positie heeft berijkt.
Ik weet dat het met een return moet zijn en dat deze na de regel delete this.onEnterframe moet staan.

Verder zal de andere functie elk frame moeten checken toch?

kan iemand simpel voorbeeld scriptje maken.

MovieClip.prototype.goto = function(xPos, yPos, xScale, yScale, frames) {
this.frames = frames;
Xafstand = xPos-this._x;
Yafstand = yPos-this._y;
this.Xspeed = Xafstand/frames;
this.Yspeed = Yafstand/frames;
this.XscaleStep = ((this._xscale-xScale)/frames);
this.YscaleStep = ((this._yscale-yScale)/frames);
this.i = 0;
this.onEnterFrame = function() {
this.i++;
this._x += this.Xspeed;
this._y += this.Yspeed;
this._xscale -= this.XscaleStep;
this._yscale -= this.YscaleStep;
if (this.i == this.frames) {
delete this.onEnterFrame;
}
};
};

Laiverd
%Europe/Berlin %480 %2007, 12:32
Kijk eens naar Object.watch()

madweener
%Europe/Berlin %531 %2007, 13:45
je kan het ook doen d.m.v van een boolean toetevoegen deze true zetten als hij erdoorheen is gelopen.

clan-kill3r
%Europe/Berlin %756 %2007, 19:09
ik heb naar de object.watch zitten kijken, ik denk dat het me daar mee wel gaat lukken ik heb alleen een vraag over het voorbeeld script.
Ik snap niet wat de nut van de return doet in het script.

// Create a new object
var myObject:Object = new Object();

// Add a property that tracks speed
myObject.speed = 0;

// Write the callback function to be executed if the speed property changes
var speedWatcher:Function = function(prop, oldVal, newVal, speedLimit) {
// Check whether speed is above the limit
if (newVal > speedLimit) {
trace ("You are speeding.");
}
else {
trace ("You are not speeding.");
}

// Return the value of newVal.
return newVal;
}
// Use watch() to register the event handler, passing as parameters:
// - the name of the property to watch: "speed"
// - a reference to the callback function speedWatcher
// - the speedLimit of 55 as the userData parameter
myObject.watch("speed", speedWatcher, 55);
trace (myObject.speed);//0
// set the speed property to 54, then to 57
myObject.speed = 54; // output: You are not speeding
myObject.speed = 57; // output: You are speeding
// unwatch the object
myObject.unwatch("speed");
myObject.speed = 54; // there should be no output

clan-kill3r
%Europe/Berlin %982 %2007, 00:34
Ik heb flink zitten kloten maar ik vind het verschil met het obj.watch voorbeeld en mijn functie te groot, als iemand snel weet hoe het moet zou hij dit dan kunnen delen.