Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 06-02-2012, 14:20   #1 (permalink)
Neuer User
 
Benutzerbild von Woelfchen
 
Registriert seit: Feb 2012
Beiträge: 62
Variablen in Funktionen global machen?

Hi, ich hab ein Problem... ich mach grad ein Spiel und ich es werden einige Childs nicht entfernt... könnt ihr mir helfen?

Im Speziellen geht es um das Disaster ab 403 und die beiden in 470. Könnt ihr mir helfen? Fehlermeldung:

PHP-Code:
ArgumentErrorError #2025: Das angegebene DisplayObject muss ein untergeordnetes Element des Aufrufers sein.
    
at flash.display::DisplayObjectContainer/removeChild()
    
at MethodInfo-557() 
Mir ist schon klar, dass der (wer auch immer) irgendwie nicht drauf zugreifen kann, weil die in der anderen Funktion aufgerufen worden sind, aber wie schaff ich denn das zu umgehen?

PHP-Code:



import flash
.events.Event;
import flash.events.MouseEvent;
import flash.sampler.NewObjectSample;


stop();


// Variablen festlegen


var richtungX:int 1;
var 
richtungY:int 1;
var 
speed:Number 5;
var 
hits:Number 0;
var 
strafe:int = -5;


var 
startkugel_instanz:startkugel = new startkugel();

// Paddles anlegen, aber noch nicht auf Bühne packen

// mauspaddle fuer LINKS / RECHTS 
var mauspaddle_instanz:mauspaddle = new mauspaddle();
// mauspaddle_instanz fuer OBEN / UNTEN 
var mauspaddleou_instanz:mauspaddleou = new mauspaddleou();
//tastaturpaddle für LINKS / RECHTS
var tastaturpaddlelire_instanz:tastaturpaddlelire = new tastaturpaddlelire();
//tastaturpaddle für OBEN / UNTEN 
var tastaturpaddleou_instanz:tastaturpaddleou = new tastaturpaddleou();


// Anzeige für Geschwindigkeit auf Screen -> wird überdeckt, wenn Pause ist

stage.addEventListener(Event.ENTER_FRAMEGeschwindigkeitsanzeige);

function 
Geschwindigkeitsanzeige(evt:Event)
{
    
speed_txt.text "Geschwindigkeit: " String(speed);
}

// Sounds initialisieren

var poksound:pok = new pok();
var 
poksoundchannel:SoundChannel poksound.play();

var 
saegensound:saegen = new saegen();
var 
saegensoundchannel:SoundChannel saegensound.play();




// Kontrolle von Tastaturpaddles
stage.addEventListener(KeyboardEvent.KEY_DOWNstatusKeyDown);

function 
statusKeyDown(evt:KeyboardEvent)
{

    if (
evt.keyCode == Keyboard.LEFT)
    {
        
trace("Pfeil links");
        
tastaturpaddlelire_instanz.tastaturpaddlelire_instanz.50;
    }
    else if (
evt.keyCode==Keyboard.RIGHT)
    {
        
trace("Pfeil rechts");
        
tastaturpaddlelire_instanz.tastaturpaddlelire_instanz.50;
    }
    else if (
evt.keyCode==Keyboard.DOWN)
    {
        
trace("Pfeil unten");
        
tastaturpaddleou_instanz.tastaturpaddleou_instanz.40;

    }
    else if (
evt.keyCode==Keyboard.UP)
    {
        
trace("Pfeil unten");
        
tastaturpaddleou_instanz.tastaturpaddleou_instanz.50;

    }
    else if (
speed <= 0)
    {
        
speed 0;
    }



}

// Kontrolle von Mauspaddles


stage.addEventListener(MouseEvent.MOUSE_MOVEmausbewegen);
function 
mausbewegen(evt:MouseEvent)
{
    
mauspaddle_instanz.stage.mouseX;
}



stage.addEventListener(MouseEvent.MOUSE_MOVEmausbewegen2);
function 
mausbewegen2(evt:MouseEvent)
{
    
mauspaddleou_instanz.stage.mouseY;
}


// STARTSCREEN


var holzhintergrund_instanz:holzhintergrund = new holzhintergrund();
addChild(holzhintergrund_instanz);
holzhintergrund_instanz.0;
holzhintergrund_instanz.0;

var 
weiss_instanz:weiss = new weiss();
addChild(weiss_instanz);
weiss_instanz.105;
weiss_instanz.80;

var 
starttext_instanz:starttext = new starttext();
addChild(starttext_instanz);
starttext_instanz.100;// unter vorbehalt
starttext_instanz.100;// unter vorbehalt



// Startbutton anlegen

var startbutton_instanz:startbutton = new startbutton();
addChild(startbutton_instanz);
startbutton_instanz.400;// unter vorbehalt
startbutton_instanz.530;// unter vorbehalt


// Startbutton aktivieren

startbutton_instanz.addEventListener(MouseEvent.CLICKlevel1);
startbutton_instanz.addEventListener(MouseEvent.CLICKbuehneleeren1);


// Bühne aufräumen;

function buehneleeren1(evt:MouseEvent):void
{
    
removeChild(holzhintergrund_instanz);
    
removeChild(weiss_instanz);
    
removeChild(starttext_instanz);
    
removeChild(startbutton_instanz);
}

// Ende Startscreen



// LEVEL 1 initiieren


function level1(evt:MouseEvent):void
{
    
trace("Level 1");

    
speed 0;

    
// Startbutton (Problem nochnicht behoben: Paddle lässt sich erst bewegen, wenn mit Maus auf Bühne geklickt wurde)


    
addChild(startkugel_instanz);
    
startkugel_instanz.400;
    
startkugel_instanz.100;


    
startkugel_instanz.addEventListener(MouseEvent.CLICKstartkugelfunktion);
    function 
startkugelfunktion(evt:MouseEvent):void
    
{
        
speed 5;
        
removeChild(startkugel_instanz);

    }


    
// 

    // holzkugel auf Bühne bringen

    
var holzkugel_instanz:holzkugel = new holzkugel();
    
addChild(holzkugel_instanz);
    
holzkugel_instanz.400;
    
holzkugel_instanz.320;

    
//tastaturpaddle für LINKS / RECHTS auf die Bühne bringen

    // schon oben festgelegt var tastaturpaddlelire_instanz:tastaturpaddlelire = new tastaturpaddlelire();
    
addChild(tastaturpaddlelire_instanz);
    
tastaturpaddlelire_instanz.400;
    
tastaturpaddlelire_instanz.510;

    
// LOOSE Begrenzung unten

    
var begrenzung_unten_loose:begrenzung_loose = new begrenzung_loose();
    
addChild(begrenzung_unten_loose);
    
begrenzung_unten_loose.0;
    
begrenzung_unten_loose.640;
    
begrenzung_unten_loose.height 1;


    
// Begrezungsrahmen für ABPRALLEN auf die Bühne bringen (oben + links + rechts)


    
var begrenzung_oben_abprallen:begrenzung_abprallen = new begrenzung_abprallen();
    
addChild(begrenzung_oben_abprallen);
    
begrenzung_oben_abprallen.1;
    
begrenzung_oben_abprallen.1;
    
begrenzung_oben_abprallen.height 1;


    var 
begrenzung_links_abprallen:begrenzung_abprallen = new begrenzung_abprallen();
    
addChild(begrenzung_links_abprallen);
    
begrenzung_links_abprallen.1;
    
begrenzung_links_abprallen.1;
    
begrenzung_links_abprallen.rotation 90;
    
begrenzung_links_abprallen.height 1;


    var 
begrenzung_rechts_abprallen:begrenzung_abprallen = new begrenzung_abprallen();
    
addChild(begrenzung_rechts_abprallen);
    
begrenzung_rechts_abprallen.799;
    
begrenzung_rechts_abprallen.1;
    
begrenzung_rechts_abprallen.rotation 90;
    
begrenzung_rechts_abprallen.height 1;

    
// Kreissägen unten
    
var kreissaege_instanz1:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz1);
    
kreissaege_instanz1.100;
    
kreissaege_instanz1.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation1);
    function 
kreissaegerotation1(e:Event)
    {
        
kreissaege_instanz1.rotation +=  -1;
    }


    var 
kreissaege_instanz2:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz2);
    
kreissaege_instanz2.300;
    
kreissaege_instanz2.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation2);
    function 
kreissaegerotation2(e:Event)
    {
        
kreissaege_instanz2.rotation +=  -2;
    }


    var 
kreissaege_instanz3:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz3);
    
kreissaege_instanz3.500;
    
kreissaege_instanz3.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation3);
    function 
kreissaegerotation3(e:Event)
    {
        
kreissaege_instanz3.rotation +=  -3;
    }


    var 
kreissaege_instanz4:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz4);
    
kreissaege_instanz4.700;
    
kreissaege_instanz4.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation4);
    function 
kreissaegerotation4(e:Event)
    {
        
kreissaege_instanz4.rotation +=  -2;
    }


    
// Verschwinden von Paddles verhindern


    
stage.addEventListener(Event.ENTER_FRAMEbalkenbremselire);

    function 
balkenbremselire(evt:Event)
    {
        if (
tastaturpaddlelire_instanz.<= 0)
        {
            
trace(tastaturpaddlelire_instanz.x);
            
tastaturpaddlelire_instanz.0;
        }
        else if (
tastaturpaddlelire_instanz.>= 620)
        {
            
trace(tastaturpaddlelire_instanz.x);
            
tastaturpaddlelire_instanz.620;
        }

    }

    
// HITTEST Mit Tastaturpaddle LINKS / RECHTS
    
holzkugel_instanz.addEventListener(Event.ENTER_FRAMEkoordinaten);
    function 
koordinaten(evt:Event)
    {
        if (
holzkugel_instanz.hitTestObject(tastaturpaddlelire_instanz))
        {

            if (
richtungY == 1)
            {
                
trace(holzkugel_instanz.hitTestObject(tastaturpaddlelire_instanz));
                
richtungY = -1;
                
poksoundchannel poksound.play();
                
hits hits 1;
                
speed speed 1;

                
trace("hits = " hits);
                
trace("speed = " speed);
            }
        }

        
holzkugel_instanz.+=  speed richtungX;
        
holzkugel_instanz.+=  speed richtungY;
    }

    
// HITTEST mit LOOSE unten

    
stage.addEventListener(Event.ENTER_FRAMEloose_unten);
    function 
loose_unten(e:Event)
    {

        if (
holzkugel_instanz.hitTestObject(begrenzung_unten_loose))
        {
            
trace("looser unten!");
            
richtungY = -1;
            
saegensoundchannel saegensound.play();
            
speed 5;
            
hits 0;

        }
        
hits_txt.text "Punkte: " String(hits);

    }


    
// HITTESTS mit ABPRALLEN-Begrenzungen oben + links + rechts
    
stage.addEventListener(Event.ENTER_FRAMEabprallen_oben);


    function 
abprallen_oben(evt:Event)
    {
        if (
holzkugel_instanz.hitTestObject(begrenzung_oben_abprallen))
        {
            
trace("abprallen oben!");
            
richtungY 1;
            
poksoundchannel poksound.play();
            
hits_txt.text "Punkte: " String(hits);
        }

    }




    
stage.addEventListener(Event.ENTER_FRAMEabprallen_links);
    function 
abprallen_links(e:Event)
    {
        if (
holzkugel_instanz.hitTestObject(begrenzung_links_abprallen))
        {
            
trace("abprallen links!");
            
richtungX 1;
            
poksoundchannel poksound.play();

        }
        
hits_txt.text "Punkte: " String(hits);
    }


    
stage.addEventListener(Event.ENTER_FRAMEabprallen_rechts);
    function 
abprallen_rechts(e:Event)
    {
        if (
holzkugel_instanz.hitTestObject(begrenzung_rechts_abprallen))
        {
            
trace("abprallen rechts!");
            
richtungX = -1;
            
poksoundchannel poksound.play();

        }

        
hits_txt.text "Punkte: " String(hits);
    }


// Level 1 beenden (Zwischenscreen zw. 1 und 2)

stage.addEventListener(Event.ENTER_FRAMEendelevel1);

function 
endelevel1(e:Event)
{

    if (
hits >= 1// höher stellen wenn spiel fertig
    
{
        
// Bühne leer machen - funktioniert nicht richtig, Fehler ?!
        /*ArgumentError: Error #2025: Das angegebene DisplayObject muss ein untergeordnetes Element des Aufrufers sein.
    at flash.display::DisplayObjectContainer/removeChild()
    at MethodInfo-557() */
    
        
removeChild(holzkugel_instanz);
        
removeChild(tastaturpaddlelire_instanz);
        
removeChild(begrenzung_unten_loose);
        
removeChild(begrenzung_oben_abprallen);
        
removeChild(begrenzung_links_abprallen);
        
removeChild(begrenzung_rechts_abprallen);
        
removeChild(kreissaege_instanz1);
        
removeChild(kreissaege_instanz2);
        
removeChild(kreissaege_instanz3);
        
removeChild(kreissaege_instanz4);
        
        

        
// Bühne wieder füllen

        
addChild(holzhintergrund_instanz);
        
holzhintergrund_instanz.0;
        
holzhintergrund_instanz.0;


        
addChild(weiss_instanz);
        
weiss_instanz.105;
        
weiss_instanz.80;


        var 
level1zu2text_instanz = new level1zu2text();
        
addChild(level1zu2text_instanz);
        
level1zu2text_instanz.100;
        
level1zu2text_instanz.100;

        
// weiterbutton anlegen

        
var level1zu2button_instanz:level1zu2button = new level1zu2button();
        
addChild(level1zu2button_instanz);
        
level1zu2button_instanz.400;
        
level1zu2button_instanz.300;

        
// weiter button aktivieren

        
level1zu2button_instanz.addEventListener(MouseEvent.CLICKlevel2);
        
    }
 }




}
///////////////////// Ende Level 1





// BEGINN LEVEL 2


function level2(evt:MouseEvent)
{
    
    
    
removeChild(holzhintergrund_instanz);
    
removeChild(weiss_instanz);
    
// Diese hier lassen sich nicht entfernen
    //removeChild(level1zu2text_instanz);
    //removeChild(level1zu2button_instanz); 
    
    
    
trace("Level 1");

    
speed 0;

    
// Startbutton, weil Bildschirm aktiviert werden muss


    
addChild(startkugel_instanz);
    
startkugel_instanz.400;
    
startkugel_instanz.100;


    
startkugel_instanz.addEventListener(MouseEvent.CLICKstartkugelfunktion);
    function 
startkugelfunktion(evt:MouseEvent):void
    
{
        
speed 5;
        
removeChild(startkugel_instanz);

    }


    
// 

    // holzkugel auf Bühne bringen

    
var holzkugel_instanz:holzkugel = new holzkugel();
    
addChild(holzkugel_instanz);
    
holzkugel_instanz.400;
    
holzkugel_instanz.320;

    
//tastaturpaddle für LINKS / RECHTS auf die Bühne bringen

    // schon oben festgelegt var tastaturpaddlelire_instanz:tastaturpaddlelire = new tastaturpaddlelire();
    
addChild(tastaturpaddlelire_instanz);
    
tastaturpaddlelire_instanz.400;
    
tastaturpaddlelire_instanz.510;

    
// Kontrolle von Mauspaddle LINKS / RECHTS


    
stage.addEventListener(MouseEvent.MOUSE_MOVEmausbewegen);
    function 
mausbewegen(evt:MouseEvent)
    {
        
mauspaddle_instanz.stage.mouseX;
    }

    
// LOOSE Begrenzung unten und oben

    
var begrenzung_unten_loose:begrenzung_loose = new begrenzung_loose();
    
addChild(begrenzung_unten_loose);
    
begrenzung_unten_loose.0;
    
begrenzung_unten_loose.640;
    
begrenzung_unten_loose.height 1;

    var 
begrenzung_oben_loose:begrenzung_loose = new begrenzung_loose();
    
addChild(begrenzung_oben_loose);
    
begrenzung_oben_loose.0;
    
begrenzung_oben_loose.640;
    
begrenzung_oben_loose.height 1;

    
// Begrezungsrahmen für ABPRALLEN auf die Bühne bringen (links + rechts)




    
var begrenzung_links_abprallen:begrenzung_abprallen = new begrenzung_abprallen();
    
addChild(begrenzung_links_abprallen);
    
begrenzung_links_abprallen.1;
    
begrenzung_links_abprallen.1;
    
begrenzung_links_abprallen.rotation 90;
    
begrenzung_links_abprallen.height 1;


    var 
begrenzung_rechts_abprallen:begrenzung_abprallen = new begrenzung_abprallen();
    
addChild(begrenzung_rechts_abprallen);
    
begrenzung_rechts_abprallen.799;
    
begrenzung_rechts_abprallen.1;
    
begrenzung_rechts_abprallen.rotation 90;
    
begrenzung_rechts_abprallen.height 1;

    
// Kreissägen unten
    
var kreissaege_instanz1:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz1);
    
kreissaege_instanz1.100;
    
kreissaege_instanz1.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation1);
    function 
kreissaegerotation1(e:Event)
    {
        
kreissaege_instanz1.rotation +=  -1;
    }


    var 
kreissaege_instanz2:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz2);
    
kreissaege_instanz2.300;
    
kreissaege_instanz2.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation2);
    function 
kreissaegerotation2(e:Event)
    {
        
kreissaege_instanz2.rotation +=  -2;
    }


    var 
kreissaege_instanz3:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz3);
    
kreissaege_instanz3.500;
    
kreissaege_instanz3.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation3);
    function 
kreissaegerotation3(e:Event)
    {
        
kreissaege_instanz3.rotation +=  -3;
    }


    var 
kreissaege_instanz4:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz4);
    
kreissaege_instanz4.700;
    
kreissaege_instanz4.670;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation4);
    function 
kreissaegerotation4(e:Event)
    {
        
kreissaege_instanz4.rotation +=  -2;
    }


    
// Kreissägen oben
    
var kreissaege_instanz5:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz5);
    
kreissaege_instanz5.100;
    
kreissaege_instanz5.= -30;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation5);
    function 
kreissaegerotation5(e:Event)
    {
// e.target is the reference to the MovieClip calling the event
        
kreissaege_instanz5.rotation +=  -1;
    }


    var 
kreissaege_instanz6:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz6);
    
kreissaege_instanz6.300;
    
kreissaege_instanz6.= -30;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation6);
    function 
kreissaegerotation6(e:Event)
    {
        
kreissaege_instanz6.rotation +=  -2;
    }


    var 
kreissaege_instanz7:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz7);
    
kreissaege_instanz7.500;
    
kreissaege_instanz7.= -30;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation7);
    function 
kreissaegerotation7(e:Event)
    {
        
kreissaege_instanz7.rotation +=  -3;
    }


    var 
kreissaege_instanz8:kreissaege = new kreissaege();
    
addChild(kreissaege_instanz8);
    
kreissaege_instanz8.700;
    
kreissaege_instanz8.= -30;

    
stage.addEventListener(Event.ENTER_FRAMEkreissaegerotation8);
    function 
kreissaegerotation8(e:Event)
    {
        
kreissaege_instanz8.rotation +=  -2;
    }


    
// Verschwinden von Paddles verhindern


    
stage.addEventListener(Event.ENTER_FRAMEbalkenbremselire);

    function 
balkenbremselire(evt:Event)
    {
        if (
tastaturpaddlelire_instanz.<= 0)
        {
            
trace(tastaturpaddlelire_instanz.x);
            
tastaturpaddlelire_instanz.0;
        }
        else if (
tastaturpaddlelire_instanz.>= 620)
        {
            
trace(tastaturpaddlelire_instanz.x);
            
tastaturpaddlelire_instanz.620;
        }

    }

    
stage.addEventListener(Event.ENTER_FRAMEbalkenbremsemaus);
    function 
balkenbremsemaus(evt:Event)
    {

        if (
mauspaddle_instanz.<= 0)
        {
            
trace(mauspaddle_instanz.x);
            
mauspaddle_instanz.0;
        }
        else if (
mauspaddle_instanz.>= 620)
        {
            
trace(mauspaddle_instanz.x);
            
mauspaddle_instanz.620;
        }
    }




    
// HITTEST Mit Tastaturpaddle LINKS / RECHTS
    
holzkugel_instanz.addEventListener(Event.ENTER_FRAMEkoordinaten);
    function 
koordinaten(evt:Event)
    {
        if (
holzkugel_instanz.hitTestObject(tastaturpaddlelire_instanz))
        {

            if (
richtungY == 1)
            {
                
trace(holzkugel_instanz.hitTestObject(tastaturpaddlelire_instanz));
                
richtungY = -1;
                
poksoundchannel poksound.play();
                
hits hits 1;
                
speed speed 1;

                
trace("hits = " hits);
                
trace("speed = " speed);
            }
        }

        
holzkugel_instanz.+=  speed richtungX;
        
holzkugel_instanz.+=  speed richtungY;
    }

    
// HITTEST mit LOOSE unten und oben

    
stage.addEventListener(Event.ENTER_FRAMEloose_unten);
    function 
loose_unten(e:Event)
    {

        if (
holzkugel_instanz.hitTestObject(begrenzung_unten_loose))
        {
            
trace("looser unten!");
            
richtungY = -1;
            
saegensoundchannel saegensound.play();
            
speed 5;
            
hits 0;

        }
        
hits_txt.text "Punkte: " String(hits);

    }
    
        
stage.addEventListener(Event.ENTER_FRAMEloose_oben);
    function 
loose_oben(e:Event)
    {

        if (
holzkugel_instanz.hitTestObject(begrenzung_oben_loose))
        {
            
trace("looser oben!");
            
richtungY = -1;
            
saegensoundchannel saegensound.play();
            
speed 5;
            
hits 0;

        }
        
hits_txt.text "Punkte: " String(hits);

    }


    
// HITTESTS mit ABPRALLEN-Begrenzungen oben + links + rechts
    



    
stage.addEventListener(Event.ENTER_FRAMEabprallen_links);
    function 
abprallen_links(e:Event)
    {
        if (
holzkugel_instanz.hitTestObject(begrenzung_links_abprallen))
        {
            
trace("abprallen links!");
            
richtungX 1;
            
poksoundchannel poksound.play();

        }
        
hits_txt.text "Punkte: " String(hits);
    }


    
stage.addEventListener(Event.ENTER_FRAMEabprallen_rechts);
    function 
abprallen_rechts(e:Event)
    {
        if (
holzkugel_instanz.hitTestObject(begrenzung_rechts_abprallen))
        {
            
trace("abprallen rechts!");
            
richtungX = -1;
            
poksoundchannel poksound.play();

        }

        
hits_txt.text "Punkte: " String(hits);
    }








Geändert von Woelfchen (06-02-2012 um 14:23 Uhr)
Woelfchen ist offline   Mit Zitat antworten
Alt 06-02-2012, 14:27   #2 (permalink)
Neuer User
 
Registriert seit: Dec 2005
Ort: Oldenburg
Beiträge: 2.408
Habe den Code jetzt nur überflogen, aber es wäre sicherlich hilfreich, wenn Du mal Funktionen benutzen würdest. (Außerhalb von einem Event Listener)


Zudem ist der beschriebene Fehler eigentlich nicht darauf zurückzuführen, dass eine Variable nicht vorhandne ist.

Der Fehler entsteht wenn Du:

MovieClip1 . addChild (MovieClip2)
MovieClip3 . addChild (MovieClip4)

machst und dann versuchst:
MovieClip1.removeChild(MovieClip4)

funktioniert das natürlich nicht.


Mit Funktionen benutzen meine ich übrigens, dass Du Deine Variablen alle an einer Stelle deklarierst und dann sowas wie:


ActionScript:
  1. init();
  2.  
  3.  
  4. function init():void
  5. {
  6. setupUI();
  7. setupLogic();
  8. startGame();
  9.  
  10. }


Dann ist das alles etwas übersichtlicher und evtl. sinnvoller strukturiert.
__________________
Mein Blog
Freue mich über jeden Besucher. :)

Geändert von Nico B. (06-02-2012 um 14:31 Uhr)
Nico B. ist offline   Mit Zitat antworten
Alt 06-02-2012, 14:31   #3 (permalink)
Neuer User
 
Benutzerbild von Woelfchen
 
Registriert seit: Feb 2012
Beiträge: 62
Es gibt Funktionen ohne Event Listener?
Woher wissen die dann, worauf sie reagieren sollen Sorry, bin ganz neu dabei und beschäftige mich erst seit ein paar Tagen so richtig damit.

Und ich hab ja keine Angaben vor dem removeChild, also dürfte ja so eine Verwechslung nicht passieren?

Die Variablen hab ich ja alle am Anfang definiert (glaub ich )

Geändert von Woelfchen (06-02-2012 um 14:32 Uhr)
Woelfchen ist offline   Mit Zitat antworten
Alt 06-02-2012, 14:40   #4 (permalink)
Neuer User
 
Registriert seit: Dec 2005
Ort: Oldenburg
Beiträge: 2.408
Willkommen in der Flashwelt ;-)


Wie Du an meinem Beispiel sehen kannst, ist der Aufruf einer Funktion ziemlich einfach.

ActionScript:
  1. // Und das ruft Deine Funktion einmal auf
  2. deineFunktion();
  3.  
  4.  
  5. // Das ist Deine Funktion
  6. function deineFunktion():void
  7. {
  8. // Mach irgendwas
  9. }


Der Fehler kann nicht nur bei removeChildren auftauchen (wovon du übrigens sehr wohl mehrmals Gebrauch machst ) - sondern auch durch andere Funktionen. Bsp. swapChildren.
__________________
Mein Blog
Freue mich über jeden Besucher. :)

Geändert von Nico B. (06-02-2012 um 14:42 Uhr)
Nico B. ist offline   Mit Zitat antworten
Alt 06-02-2012, 14:42   #5 (permalink)
Neuer User
 
Benutzerbild von Woelfchen
 
Registriert seit: Feb 2012
Beiträge: 62
Achso... dann versuch ich mal ein bisschen umzubauen, vielleicht tut es ja dann? Danke dir!!
Woelfchen ist offline   Mit Zitat antworten
Alt 06-02-2012, 14:48   #6 (permalink)
Neuer User
 
Registriert seit: Dec 2005
Ort: Oldenburg
Beiträge: 2.408
Ist bei der Fehlersuche sicherlich nicht schlecht. ;-)


Versuche einfach, den Aufbau möglichst logisch aufzubauen. Das heißt Du hast eine Funktion (bsp. "init") die weitere Funktionen aufruft. In diesen werden dann bsp. alle Spieler platziert. In einer anderen alle Gegner usw.

Jede Funktion sollte einen speziellen Sinn haben.
__________________
Mein Blog
Freue mich über jeden Besucher. :)
Nico B. 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
script global machen zeyno Flash MX 10 18-07-2005 12:52
komplexe funktionen global ausstellen? Mr.Twister ActionScript 1 2 07-07-2004 15:57
onRelease-funktionen global verwenden mokkinger ActionScript 1 11 29-02-2004 01:29
Variabel global machen Roemen Flash MX 2004 6 18-02-2004 18:27
Wie global sind globale Variablen & Funktionen ?! PatrickKByte Flash MX 2 01-03-2003 18:19


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:39 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele