Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-03-2009, 14:21   #16 (permalink)
Neuer User
 
Registriert seit: Dec 2008
Beiträge: 24
Aktueller Stand:

Hier mal mein aktueller Stand. Das Spiel funktioniert soweit... was noch fehlt ist n bisschen Sound und n paar coole Effekte... Einen habe ich schon von Adobe. In meinem Winterlevel kann man Schneeflocken einschalten.. Ich bin grade an einem Universum-Level und würde da gerne so einen Effekt haben wie in der angehangen .FLA Datei aber ich weiss nicht genau was alle befehle da bedeuten (sind insgesamt ca 50 Zeilen). Ich müsste das ja in ein Package verpacken ;-) Kann mir jemand dabei helfen? Und habt ihr gute Links für fertige Sound Dateien?

Als Anhang mein Spiel und die .FLA Datei mit dem Sterneneffekt. Falls Ihr selber spielen wollt einfach oben in der Datei Game die private var debugBewegung auf 0 setzen.

[WICHTIG] Spiel.FLA umbennen in Spiel.ZIP, wieso darf mann denn nur 97,7kb als .zip Datei hochladen?[/WICHTIG]

Edit: Schon 5x runtergeladen Irgendjemand ne gute Idee oder Kritik?
Angehängte Dateien
Dateityp: fla Spiel.fla (174,8 KB, 13x aufgerufen)
Dateityp: fla Sterneffekt.FLA (32,0 KB, 5x aufgerufen)

Geändert von mika81 (08-03-2009 um 15:36 Uhr)
mika81 ist offline   Mit Zitat antworten
Alt 10-03-2009, 14:06   #17 (permalink)
Neuer User
 
Registriert seit: Dec 2008
Beiträge: 24
Frage zu Events

ActionScript:
  1. /*
  2.     Author:  Michael Wendeln
  3.     Datei:    Bricklist.as
  4.     Zweck:   
  5.     Diese Datei beinhaltet die Klasse für die Bricks des Spiels.
  6.     Das sind die Steine die man mit dem Ball treffen muss. In
  7.     der XML Datei stehen sie unter "stones".
  8. */
  9.  
  10. package {
  11.     // Importieren benötigter Bibliotheken
  12.     import flash.display.MovieClip;
  13.     import flash.display.Loader;
  14.     import flash.events.Event;
  15.     import flash.events.IOErrorEvent;
  16.     import flash.net.URLLoader;
  17.     import flash.net.URLRequest;
  18.    
  19.     // Importieren eigener Bibliotheken 
  20.     import Brick;
  21.    
  22.     // Klassenrumpf
  23.     // :
  24.     public class Bricklist extends MovieClip{                  
  25.         // Debug
  26.         private var debugMeldungen: int = 0;
  27.         // Spielsteine
  28.         private var AnzahlSteine: int = 0;
  29.         private var Spielsteine: Array = new Array();
  30.        
  31.  
  32.         // Konstruktor dieser Klasse
  33.         // : Liste für die Spielsteine anlegen
  34.         public function Bricklist() {
  35.             if (debugMeldungen) {
  36.                 trace ("[DEBUG - Bricklist.as] Konstruktor wurde aufgerufen.");
  37.             }
  38.         }      
  39.        
  40.         // Spielstein hinzufügen
  41.         // : Einen Spielstein hinzufügen
  42.         public function addBrick(posX:int, posY:int, hoehe:int, breite:int, credits:int, bgImgUrl:String) {
  43.             if (debugMeldungen) {
  44.                 trace ("[DEBUG - Bricklist.as] Spielstein[] hinzugefügt.");
  45.             }
  46.  
  47.             var newBrick:Brick = new Brick(AnzahlSteine, posX, posY, hoehe, breite, credits, bgImgUrl);
  48.             newBrick.addEventListener("brick.ready", onBrickReady);
  49.             newBrick.addEventListener("brick.error", onBrickError);
  50.         }
  51.        
  52.         // Spielstein wurde geladen
  53.         // : Wenn alle Steine geladen wurden, Event dispatchen
  54.         private function onBrickReady(event:Event): void {
  55.             if (debugMeldungen) {
  56.                 trace ("[DEBUG - Bricklist.as] Spielstein[] geladen.");
  57.             }
  58.             AnzahlSteine++;
  59.             addChild(event.target);
  60.         }
  61.        
  62.         // Spielstein konnte nicht geladen werden
  63.         // : Event dispatchen um aufrufende Klasse zu informaieren
  64.         private function onBrickError(event:Event): void {
  65.             trace ("[ERROR - Bricklist.as] Fehler beim laden des Spielsteins[].");
  66.             dispatchEvent(new Event("bricklist.error"));
  67.         }
  68.        
  69.                
  70.     }
  71. }


ActionScript:
  1. /*
  2.     Author:  Michael Wendeln
  3.     Datei:    Brick.as
  4.     Zweck:   
  5.     Diese Datei beinhaltet die Klasse für einen Spielstein.
  6. */
  7.  
  8. package
  9. {
  10.     // Importieren benötigter Bibliotheken
  11.     import flash.display.MovieClip;
  12.     import flash.display.Loader;
  13.     import flash.events.Event;
  14.     import flash.events.IOErrorEvent;
  15.     import flash.net.URLLoader;
  16.     import flash.net.URLRequest;
  17.  
  18.     // Klassenrumpf
  19.     // :
  20.     public class Brick extends MovieClip {           
  21.         // Debug
  22.         private var debugMeldungen:int = 0;
  23.         // Übergebene Parameter
  24.         private var brNdx: int;
  25.         private var brPosX: int;
  26.         private var brPosY: int;
  27.         private var brHoehe: int;
  28.         private var brBreite: int;
  29.         private var brCredits: int;
  30.         private var brImgUrl: String;
  31.        
  32.    
  33.         // Konstruktor dieser Klasse
  34.         // : Liste für die Spielsteine anlegen
  35.         public function Brick(ndx:int, posX:int, posY:int, hoehe:int, breite:int, credits:int, bgImgUrl:String) {
  36.             if (debugMeldungen) {
  37.                 trace("[DEBUG - Brick.as] Konstruktor wurde aufgerufen mit Parametern:");
  38.                 trace("[DEBUG - Brick.as] ndx: "+ndx);
  39.                 trace("[DEBUG - Brick.as] posX: "+posX);
  40.                 trace("[DEBUG - Brick.as] posY: "+posY);
  41.                 trace("[DEBUG - Brick.as] Hoehe: "+hoehe);
  42.                 trace("[DEBUG - Brick.as] Breite: "+breite);
  43.                 trace("[DEBUG - Brick.as] Credits: "+credits);
  44.                 trace("[DEBUG - Brick.as] bgImgUrl: "+bgImgUrl);
  45.             }
  46.                
  47.             // Konstruktorparameter sichern
  48.             brNdx = ndx;
  49.             brPosX = posX;
  50.             brPosY = posY;
  51.             brHoehe = hoehe;
  52.             brBreite = breite;
  53.             brCredits = credits;
  54.             brImgUrl = bgImgUrl;
  55.                            
  56.             // Angegebenes Hintergrundbild laden
  57.             var bgImgLoader: Loader = new Loader();
  58.             bgImgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, brickImgLoaded)
  59.             bgImgLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, brickImgError);
  60.             bgImgLoader.load( new URLRequest(brImgUrl) );
  61.         }      
  62.        
  63.         // Hintergrundbild geladen
  64.         // : Das Hintergrundbild wurde geladen, also einfügen
  65.         private function brickImgLoaded(event:Event): void {
  66.             if (debugMeldungen) {
  67.                 trace ("[DEBUG - Brick.as] Hintergrundbild geladen.");
  68.             }
  69.             addChild(event.target.content);
  70.             dispatchEvent(new Event("brick.ready"));
  71.         }
  72.        
  73.         // FEHLER: Hintergrundbild konnte nicht geladen werden
  74.         // : Liste für die Spielsteine anlegen
  75.         private function brickImgError(event:Event): void {
  76.             trace ("[ERROR - Brick.as] Fehler beim laden des Hintergrundbilds: " + brImgUrl);
  77.             dispatchEvent(new Event("brick.error"));
  78.         }
  79.        
  80.        
  81.     }
  82. }

ich habe das ganze jetzt n bisschen umgeschrieben und mal ne Frage zu Events... Ich habe jetzt eine Klasse als Liste für alle Spielsteine und eine für einen Spielstein selber. Allerdings habe ich jetzt 2 Fragen...

1.) Wie füge ich den Spielstein der Liste (und damit der Anzeige) hinzu? event.target scheint nicht zu funktinieren. Zeile in Bricklist.onBrickReady();

2.) Wie mache ich das am besten das ich sehe wann alle Spielsteine geladen wurden? Ein Event dispatchen und merken welche Bricks bereits den Event gesendet haben?

Wäre für jede Hilfe sehr dankbar!
mika81 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 16:18 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele