Avatar billede fredud Nybegynder
25. februar 2009 - 15:27 Der er 10 kommentarer

Float, movieclip, flyde.

Hej, nogen som har et simpelt actionscript liggende som kan få ens movieclip eller object til at float, altså flyde. Forstil dig et stykke papir som ligger på en vandoverflade, og random flyder rundt.

Vil sætte stor pris på det.
Avatar billede Vezul Nybegynder
25. februar 2009 - 19:43 #1
Det er forholdsvis simplet. Du laver bare et bevægelsesscript som flytter dit movieclip til et random point...

Kan jeg fixe et script, skal det flyde rundt over hele screenen? eller indenfor et bestemt område?
Avatar billede fredud Nybegynder
26. februar 2009 - 11:43 #2
Ehm, vel flyde rundt på skærmen dog stadig indenfor et lille område, hvis det giver mening.
Avatar billede fredud Nybegynder
26. februar 2009 - 12:27 #3
Mere præcis, hvis man har et movieclip så skal det flyde rundt indenfor nogle få pixels.
Avatar billede Vezul Nybegynder
26. februar 2009 - 13:24 #4
Okay, prøver lige at fixe noget kode til dig. Kommer nok først imorgen, da jeg har rimelig tætpakket program idag :)
Avatar billede fredud Nybegynder
26. februar 2009 - 13:38 #5
Mange tak. Vil helst gerne have det i dag med i morgen er også cool.
Avatar billede Vezul Nybegynder
27. februar 2009 - 09:34 #6
Så fik jeg lavet det. Du skal lave et movieclip og sætte dets instancename til box_mc. Eller ændre i koden ;)

var speed:int = 8

box_mc.x = 100 + (Math.random() * ((stage.stageWidth-200) - box_mc.width));
box_mc.y = 50 + (Math.random() * ((stage.stageHeight-100) - box_mc.height));

var dx:Number = Math.round(100 + (Math.random() * ((stage.stageWidth-200) - box_mc.width)));
var    dy:Number = Math.round(50 + (Math.random() * ((stage.stageHeight-100) - box_mc.height)));

box_mc.addEventListener(Event.ENTER_FRAME, mover);

function mover(e:Event):void {
    e.target.x += (dx-e.target.x)/speed;
    e.target.y += (dy-e.target.y)/speed;
        trace(dx + ":" + dy);

    if(Math.round(e.target.x) == dx){
        dx = Math.round(100 + (Math.random() * ((stage.stageWidth-200) - box_mc.width)));
        dy = Math.round(50 + (Math.random() * ((stage.stageHeight-100) - box_mc.height)));
    }
}


Koden er opsat sådan et den floater inden for et afgrænset område.
Avatar billede fredud Nybegynder
27. februar 2009 - 09:43 #7
Er der ikke en måde man kan lave et script som kan smides direkte oven på et movieclip?
Avatar billede fredud Nybegynder
27. februar 2009 - 09:46 #8
Så man kan ligge det på flere movieclips og ændre lidt i parameterne?
Avatar billede fredud Nybegynder
27. februar 2009 - 09:59 #9
For resten er det kodet til AS 2 eller 3?
Avatar billede Vezul Nybegynder
27. februar 2009 - 10:38 #10
Det er kodet til AS3. Og jo, hvis det skal virke "ovenpå" et movieclip, skal du bare slette de steder der står box_mc...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester