| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) | |
| Neuer User Registriert seit: Jan 2012
Beiträge: 8
| Movieclip nach Mauszeiger rotieren lassen
Hallo zusammen, das wird wahrscheinlich ein etwas längerer Beitrag, aber hoffe trotzdem dass sich jemand kurz die Zeit nehmen könnte und sich mein Problem mal anschaut. ich versuche ein Auge (Movieclip) in AS3 je nach Position des Mauszeigers rotieren zu lassen. habe folgenden Code (im www gefunden) in Frame 1 des zu rotierenden mc's (auge) kopiert und funktioniert einwandfrei: ActionScript:
hier mal meine Klassen (nur mit dem dafür relevanten Code): Main: ActionScript:
ViewStart: ActionScript:
ControllerAuge: ActionScript:
DataAuge: ActionScript:
bekomme jetzt immer folgende fehlermeldung und weiß nicht mehr weiter Zitat:
DANKE schon mal im voraus! Geändert von Martin Kraft (07-01-2012 um 15:11 Uhr) | |
| | |
| | #2 (permalink) |
| Flash-Designer Registriert seit: May 2006 Ort: Wiesbaden
Beiträge: 6.164
|
Lösch mal das »stage.« in Zeile 17 von ControllerAuge! Ansonsten solltest Du überall dort, wo Du MovieClips verwendest, besser auf Sprites zurückgreifen. MovieClips benötigt man in AS3 nämlich nur noch, wenn sie wirklich Zeitleisten Animationen enthalten.
__________________ Viele Grüße // Martin Martin Kraft // Interaktionsdesign Hilfreiche Websites: // Hilfe zur Adobe Flash Plattform // ActionScript 2 Referenz // ActionScript 3 Referenz // ActionScript 3 Arbeitshandbuch // weitere Flash Ressourcen Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da! Geändert von Martin Kraft (07-01-2012 um 15:17 Uhr) |
| | |
| | #3 (permalink) | |
| Neuer User Registriert seit: Jan 2012
Beiträge: 8
|
Hallo Martin, DANKE für die schnelle Antwort! habe das "stage" gelöscht und bekomme jetzt folgenden Fehler: Zitat:
aber danke für den Tipp!sollte aber doch eigentlich so auch schon funktionieren, oder? Viele Grüße | |
| | |
| | #4 (permalink) |
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
|
umständlich, in mehrerlei Hinsicht. mal davon abgesehen, dass man diese Berechnung in AS3 auch als einzeiler formulieren kann, folgendes: - deine Controller-Klasse ist momentan völlig überflüssig, und dient höchstens der Verwirrung - dafür kapselt DataAuge den View und spielt selber controller. - ViewStart ist eine Komposition aus View und Controller. später durchaus mal sinvoll, aber jetzt solltest du sie erstmal weglassen, bis der restliche Code läuft. - ist dir eigentlich aufgefallen, dass du 2 DataAugen erzeugst? einen in ViewStart, und einen in ControllerAuge. und da kommt jetzt dieser Fehler her: bei dem in ControllerAuge rufst du zwar rotate() auf (Event-Listener), aber du initialisierst das Objekt nicht mit addauge(). und bei dem in ViewStart rufst du zwar addauge() auf, aber rotate() nicht. hier mal ein Beispiel: PHP-Code: (kann natürlich auch animiert sein, nur solltest du darauf achten, dass die Animation sich nicht mit dem Controller beisst) PHP-Code: PHP-Code: |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jan 2012
Beiträge: 8
|
hallo thomas also dein code hat mir schon mal sehr geholfen. DANKE!! auch wenn dein einzeiler bei der berechnung mein "auge" um den Nullpunkt der Bühne dreht und nicht um seinen eigenen Mittelpunkt. aber da kann ich ja meine Berechnung wieder verwenden. das mit den verschiedenen klassen und verkapselungen ist durchaus beabsichtigt. ich weiß dass es alles etwas umständlich ist und würde es am liebsten auch einfacher machen. aber es handelt sich um eine semesterarbeit und das ist alles so vorgegeben (besteht ja nicht nur aus diesen 4 klassen, sondern soll demnächst ein spiel mit mehreren leveln werden). gruß |
| | |
| | #6 (permalink) | ||
| Keine Panik Registriert seit: Apr 2010 Ort: Düsseldorf (im ernst)
Beiträge: 1.868
| Zitat:
Öffne das Symbol mal in der Bibliothek, und schau mal wo da sein Nullpunkt angezeigt wird (müsste ein kleines graues Kreuz sein). Zitat:
und vor allen Dingen wollte ich dir zeigen, dass nicht alle Objekte in die Anzeigeliste gehören/müssen. Controler bspw. noch zwei Anmerkungen zur zukünftigen Performance deines Spiels: - ENTER_FRAME kann ein absoluter performance-killer sein. benutze den Event-listener nicht öfters als nötig. am besten du machst einen main-loop, der dann alles andere aufruft PHP-Code: - du solltest versuchen die Anzahl der Objekte in der Anzeigeliste zu reduzieren, und die Verschachtelungstiefe auch möglichst flach zu halten. in deinem Code oben hattest du 4 Objekte ineinander verschachtelt, um dieses Auge zu bewegen. das bedeutet, dass 4 Objekte gerendert werden müssen für dieses eine Auge. | ||
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Bilder rotieren lassen | hexakymion | Flash Einsteiger | 3 | 07-04-2009 11:03 |
| Movieclip nach bestätigen zu ende laufen lassen | Jay-alai | Flash Einsteiger | 10 | 08-02-2006 16:51 |
| bild rotieren lassen ?! | sonicwave3 | Flash 4 und Flash 5 | 1 | 08-04-2004 17:15 |
| nach Movieclip Hauptfilm automatisch weiterlaufen lassen | der_maddes | Flash 4 und Flash 5 | 2 | 03-11-2003 13:28 |