Welkom!

Deel je kennis met anderen in deze Flashgemeenschap!
Gebruikersnaam:
Wachtwoord:
Wachtwoord opslaan?
Wachtwoord vergeten?

ASD / Build-in Objects & Classes / MovieClip & Button

MovieClip.prototype.slideTo
61 downloads, 6065 keer gelezen
(December 22, 2003)
Formaat: 18 KB
Waardering: 10 keer gestemd 
 4 van de 5
Flash wordt pas leuk wanneer je met functies en prototypes gaat werken,
dit is een voorbeeld van één der envoudigste prototypes.

Bedoeling :
Een mc laten sliden naar een bepaalde x en y waarde.

Uitvoering :
Prototype. (frame action)

Bespreking stap voor stap :

MovieClip.prototype.slideTo = function(newx, newy, speed) {
    // Aanmaken van prototype, we noemen het SlideTo
    // We categoriseren het onder MovieClip object, daarom MovieClip.prototype
    // newx, newy en speed zijn waarden die we nodig hebben om het prototype uit te voeren
    var mc = this;
    // Om het onszelf makkelijk te maken
    mc.createEmptyMovieClip("ctrl", 1);
    // We maken een nieuwe, lege mc aan binnen de huidige mc (een controller)
    // Waarom ? Omdat we deze controller achteraf gaan unloaden wanneer de eindpositie is bereikt
    // zodat deze mc zijn onEnterFrame niet blijft lopen (vreet geheugen)
    mc.ctrl.onEnterFrame = function() {
        if (Math.round(mc._x) == Math.round(newx) && Math.round(mc._y) == Math.round(newy)) {
            // Math.round dient om decimale getallen af te ronden, als we dit niet gebruiken
            // kunnen we niet precies genoeg berekenen en mislukt de if functie
            mc.ctrl.unloadMovie();
        } else {
            // /Als de eindpositie nog niet is bereikt
            mc._x -= (mc._x-newx)/speed;
            mc._y -= (mc._y-newy)/speed;
            // Dan wordt de mc geslide naar zijn einddoel, de speed kan je zels instellen,
            // neem je 1 voor speed, dan zal je geen "easy" merken
        }
    };
};
_root.onMouseDown = function() {
    // Als er geklikt wordt
    mc.slideTo(_root._xmouse, _root._ymouse, 5);
    // Dan slide de mc met instance naam "mc" naar de muispositie (_root._xmouse, _root._ymouse)
    // met een speed van 5 (is een leuke standaard)
};


Have fun,
en probeer zelf ook je eigen prototypes te schrijven .

Geef hier je waardering: Matig 1 2 3 4 5 Geweldig!
  Waardering:
Download ( meld je eerst aan om te kunnen downloaden! )
Plagiaat! :P Klote Streek (06 January 2004, 19:09)

Hey leuk dat je deze proto hebt toegevoegd maar zoiets staat hier allang ... http://www.flashfocus.nl/ShowDetail.asp?NewsId=6017

En de mijne is ook een stuk korter en minder omslachtig want ik unLoad geen mc's ... ik maak zelfs geen mc's aan ...


1-1