Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-03-2004, 10:11   #1 (permalink)
paranoid
 
Registriert seit: Jan 2004
Beiträge: 133
onArrival sollte film laden

hallo leute,

vielleicht kann mir wer von euch weiterhelfen.

ich habe drei fenster die wunderbar über die bühne sliden und mein ziel wäre es das wenn ich einen meiner 5 links anklicke und die fenster ihre position eingenommen haben sich ein externes swf reinladet.
leider waren meine bisherigen versuche alle vergebens.
vielleicht weis ja wer von euch wie das geht.. ich bin schon am verzweifeln.

ich sag schonmal danke zu allen die es versuchen.

ActionScript:
  1. // --> receiver passt auf, wenn der MC schreit...
  2. var receiver = new Object();
  3. receiver.onArrival = function(who, x, y) {
  4.     trace(who + " ist bei " + x + "/" + y + " angekommen");
  5.     //--> mach ma noch eine Abfrage rein, dass eben nur fenster1 das fenster2 steuert
  6.     //who == "fenster" ? fenster2.move(fenster2._x, 67, 12, 2) : null;
  7. //leider funkt die zeile unten auch nicht so wirklich - ladet zwar aber total unkontrolliert
  8.     who == "fenster" ? onArrival(420, 60, 15, 1) & loadContent(_root.leer,"extern.swf") : null;
  9.  
  10. };
  11. //--> der receiver wird bei den Fenstern angemeldet:
  12. fenster.addListener(receiver);
  13. fenster2.addListener(receiver);
  14. fenster3.addListener(receiver);
__________________
liebe grüsse

.:das_sirius:.
das_sirius ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:19   #2 (permalink)
der mit der Axt
 
Benutzerbild von ANTICHRIST
 
Registriert seit: Mar 2003
Ort: Mighty Mighty Ruhrpott
Beiträge: 449
Die haben aber eine fixe Zielposition, ja ???

Dann mach das doch so, das du onClick des Menüpunktes ein Prüfungsinterval startest in dem die gewünschten Positionen abgefragt werden und dann der Film geladen wird.... Quasi :


ActionScript:
  1. function Horst() {
  2.     if (fenster1._x == ZIELX1 && fenster2._x == ZIELX2 && fenster3._x == ZIELX3) {
  3.     if(fenster1._y == ZIELY1 && fenster2._y == ZIELY2 && fenster3._y == ZIELY3) {
  4.      clearInterval(Jochen);
  5.      loadMovie(laberlaber);
  6. }
  7. }
  8. }
  9.  
  10. Menu1.onRelease = function() {
  11. Jochen = setInterval(Horst, 10);
  12. }
ANTICHRIST ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:33   #3 (permalink)
paranoid
 
Registriert seit: Jan 2004
Beiträge: 133
danke für die antwort.
leider funkt das so bei mir nicht. es werden für jeden link externe files reingeladen (unterschieliche logischerweise).

vielleich hast du oder wer anders noch einen anderen lösungsvorschlag für mich zur hand.
__________________
liebe grüsse

.:das_sirius:.
das_sirius ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:34   #4 (permalink)
Neuer User
 
Registriert seit: Mar 2002
Ort: D'dorf
Beiträge: 765
hi,

ich verstehe die Zeile nicht:
ActionScript:
  1. who == "fenster" ? onArrival(420, 60, 15, 1) & loadContent(_root.leer,"extern.swf") : null;
Was genau soll die machen?
Wieso rufst du da noch mal onArrival auf (und dann mit 4 Parametern)?
Willst du ein bestimmtes Fenster noch mal verschieben?

Nur das Laden sollte einfach so funktionieren:
ActionScript:
  1. if(who == "fenster") _root.leer.loadMovie("extern.swf");
gruß,
roman

@antichrist: was hat Horst mit Jochen zu tun?
romän ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:36   #5 (permalink)
der mit der Axt
 
Benutzerbild von ANTICHRIST
 
Registriert seit: Mar 2003
Ort: Mighty Mighty Ruhrpott
Beiträge: 449
A) Was heißt externe Files ???
B) Was hat das damit zu tun ???

C) Horst und Jochen sind schwul, arbeiten im Düsseldorfer Medienhafen bei einer Werbeagentur und leben zusammen
ANTICHRIST ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:43   #6 (permalink)
paranoid
 
Registriert seit: Jan 2004
Beiträge: 133
okok .... also das ganze script schaut bislang so aus.
das mit dem lösungsansatz von romän ist schon ganz ok nur bei 5 links muss ich die zielkoordinaten irgendwie mit ins spiel bringen, denke ich mir. da ich ja nicht sagen kann das fenster1 soll mal das mal das einladen.
das ganze script schaut bislang so aus. vielleicht ist es damit verständlicher erklärt was ich beabsichtige.

ActionScript:
  1. //--> jeder MC darf ab sofort rumschreien...
  2. ASBroadcaster.initialize(MovieClip.prototype);
  3. //--> ...und sich bewegen:
  4. MovieClip.prototype.move = function(x, y, delay, ID) {
  5.     var mc = this;
  6.     clearInterval(mc["moveInt" + ID]);
  7.     mc["moveInt" + ID] = setInterval(function () {
  8.         // trace("Interval running for " + mc._name);
  9.         mc._x += (-mc._x + x) / delay;
  10.         mc._y += (-mc._y + y) / delay;
  11.         if (Math.abs(Math.floor(-mc._x + x)) <= 1 && Math.abs(Math.floor(-mc._y + y)) <= 1) {
  12.             clearInterval(mc["moveInt" + ID]);
  13.             mc._x = Math.round(mc._x);
  14.             mc._y = Math.round(mc._y);
  15.             mc.broadcastMessage("onArrival", mc._name, mc._x, mc._y);
  16.         }
  17.     }, 10);
  18. };
  19. // --> receiver passt auf, wenn der MC schreit...
  20. var receiver = new Object();
  21. receiver.onArrival = function(who, x, y) {
  22.     trace(who + " ist bei " + x + "/" + y + " angekommen");
  23.     //--> mach ma noch eine Abfrage rein, dass eben nur fenster1 das fenster2 steuert
  24.     //who == "fenster" ? fenster2.move(fenster2._x, 67, 12, 2) : null;
  25. //leider funkt die zeile unten auch nicht so wirklich - ladet zwar aber total unkontrolliert
  26.  
  27.     //who == "fenster" ? "onArrival"(420, 60, 15, 1) & loadContent(_root.leer,"extern.swf") : null;
  28. //ladet aber ich kann dann nicht pro link ein anderes swf einladen
  29.     if(who == "fenster") _root.leer.loadMovie("extern.swf");
  30.  
  31.  
  32. };
  33. //--> der receiver wird bei den Fenstern angemeldet:
  34. fenster.addListener(receiver);
  35. fenster2.addListener(receiver);
  36. fenster3.addListener(receiver);
  37. //legt die Startposition der Fenster fest
  38. fenster.move(420, 67, 10, 1);
  39. fenster2.move(61, 67, 10, 2);
  40. fenster3.move(465, 230, 10, 3);
  41. //++++++++++++++++++++++++++++++++++Button-mc´s+++++++++++++++++++++++++++++++++++++
  42. var dly = 15;
  43.  
  44. this.fenster3.btn1.onRelease = function() {
  45.     fenster.move(420, 60, dly, 1);
  46.     fenster2.move(61, -320, dly, 2);
  47.     fenster3.move(465, 223, dly, 3);   
  48. };
  49. this.fenster3.btn2.onRelease = function() {
  50.     fenster.move(420, 460, dly, 1);
  51.     fenster2.move(61, -320, dly, 2);
  52.     fenster3.move(465, 430, dly, 3);
  53. };
  54. this.fenster3.btn3.onRelease = function() {
  55.     fenster.move(245, -100, dly, 1);
  56.     fenster2.move(-230, 67, dly, 2);
  57.     fenster3.move(290, 60, dly, 3);
  58. };
  59. this.fenster3.btn4.onRelease = function() {
  60.     fenster.move(-250, 177, dly, 1);
  61.     fenster2.move(270, 450, dly, 2);
  62.     fenster3.move(315, 420, dly, 3);
  63. };
  64. this.fenster3.btn5.onRelease = function() {
  65.     fenster.move(750, 177, dly, 1);
  66.     fenster2.move(245, -320, dly, 2);
  67.     fenster3.move(290, 60, dly, 3);
  68. };
__________________
liebe grüsse

.:das_sirius:.

Geändert von das_sirius (24-03-2004 um 10:45 Uhr)
das_sirius ist offline   Mit Zitat antworten
Alt 24-03-2004, 10:55   #7 (permalink)
Neuer User
 
Registriert seit: Mar 2002
Ort: D'dorf
Beiträge: 765
wenn du die onRelease-Handler dynamisch setzt, kannst du zu dem Zeitpunkt auch das File bestimmen, das geladen werden soll:
ActionScript:
  1. this.fenster3.btn1.onRelease = function() {
  2. fenster._file = "extern1.swf";
  3.         fenster.move(420, 60, dly, 1);
  4.         fenster2.move(61, -320, dly, 2);
  5.         fenster3.move(465, 223, dly, 3);
  6. };
  7. this.fenster3.btn2.onRelease = function() {
  8. fenster._file = "extern2.swf";
  9.         fenster.move(420, 460, dly, 1);
  10.         fenster2.move(61, -320, dly, 2);
  11.         fenster3.move(465, 430, dly, 3);
  12. };
  13. // usw...
  14.  
  15. // und onArrival so umändern
  16. receiver.onArrival = function(who, x, y) {
  17.         trace(who + " ist bei " + x + "/" + y + " angekommen");
  18.         if(who == "fenster") _root.leer.loadMovie(_root.fenster._file);
  19. };
gruß,
roman

@anitchrist:
romän ist offline   Mit Zitat antworten
Alt 24-03-2004, 11:02   #8 (permalink)
paranoid
 
Registriert seit: Jan 2004
Beiträge: 133
hey!! genial!!!

das funktioniert prima... 1000 dank für deine hilfe romän und dank auch an den halter des hundes mit der kettensäge
__________________
liebe grüsse

.:das_sirius:.
das_sirius ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 23:12 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele