Avatar billede eikhorsholm Nybegynder
08. maj 2007 - 11:28 Der er 3 kommentarer og
1 løsning

Følg mus med AS3.

Jeg har kodet lidt i Action Script 2, men er nu skiftet til AS3 og det volder lidt problemer :-(
Jeg har før haft noget kode som bevægede tre lag ihh. til musen:

var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
Layer3.x += (-mouseX-Layer3.x)/4;
Layer3.y += (-mouseY-Layer3.y)/4;
Layer2.x += (-mouseX/4-Layer2.x)/4;
Layer2.y += (-mouseY/4-Layer2.y)/4;
Layer1.x += (-mouseX/16-Layer1.x)/4;
Layer1.y += (-mouseY/16-Layer1.y)/4;
    updateAfterEvent();
};
Mouse.addListener(mouseListener);

Nu brokker den sig over min addListener bl.a. Nogen idéer?
Avatar billede barklund Nybegynder
08. maj 2007 - 13:21 #1
Grundlæggende kan du ikke bruge AS2 kode i AS3. Det er simpelthen noget helt andet. Især når det kommer til callbacks.

Skal du gøre hen af hvad du vil, så er det noget med mouseMove-event fra InteractiveObject[1] og MouseEvent-objektet[2]:

import flash.events.MouseEvent;
class Foo extends Sprite {
  function Foo() {
      this.addEventListener(MouseEvent.MOVE, onMouseMove);
  }
  function onMouseMove(me:MouseEvent):void {
      Layer3.x += (-mouseX-Layer3.x)/4;
      Layer3.y += (-mouseY-Layer3.y)/4;
      Layer2.x += (-mouseX/4-Layer2.x)/4;
      Layer2.y += (-mouseY/4-Layer2.y)/4;
      Layer1.x += (-mouseX/16-Layer1.x)/4;
      Layer1.y += (-mouseY/16-Layer1.y)/4;
  }
}

[1] http://livedocs.adobe.com/flex/201/langref/flash/display/InteractiveObject.html
[2] http://livedocs.adobe.com/flex/201/langref/flash/events/MouseEvent.html
Avatar billede eikhorsholm Nybegynder
08. maj 2007 - 15:00 #2
Ok. Super mange tak.
Findes der noget sted, hvor man kan læse om de generelle forskelle mellem AS2 og AS3?

Der må vel være noget sammenhæng, deraf navnet AS3?
Et lille svar og pointene er dine.
Avatar billede barklund Nybegynder
08. maj 2007 - 15:15 #3
Selvfølgelig er der sammenhænge, men hele klassehierarkiet er lavet om, samt alle event-modeller og tilsvarende. Grundlæggende syntaks og så videre er der ikke pillet ved, ligesom man så vidt muligt har forsøgt at bevare de gamle klasser og pakker.

Jeg har ikke lige en oversigt, men det kan du garanteret findes somewhere i ovenstående langref :)
Avatar billede barklund Nybegynder
09. maj 2007 - 07:58 #4
Tark for points :)
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