Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-11-2005, 14:03   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2005
Beiträge: 7
attachMovie Problem

Hallo, mein Ziel ist es sobald ich auf die SPACE-Taste drücke, soll eine neue Instanz des Movieclips "schuss" erzeugt werden.
Der neue Movieclip soll dann in -Y Richtung wandern( tut er auch)

Mein Problem, sobald ich die Leertaste drücke wird der vorher erzeugt MC nicht mehr fertig abgespielt bzw. er wird wieder zurückgesetzt.
Es soll also so sein, dass alle erzeugte MovieClips fertig abgespielt werden und mit der Leertaste ein neuer erzeugt wird, der den anderen "verfolgt".

Hier mein Code und die FLA ist im Anhang:

onClipEvent (enterFrame){
if (Key.isDown (Key.SPACE)) {
_root.attachMovie("schuss","s1"+i,i);
_root["s1"+i]._y=_root.ship1._y;
_root["s1"+i]._x=_root.ship1._x+30;
}// End IF


_root["s1"+i]._y-=3;


}//End EnterFrame

onClipEvent(load){
i=600;
}//End Load
Angehängte Dateien
Dateityp: zip schuss.zip (4,5 KB, 5x aufgerufen)
keulche ist offline   Mit Zitat antworten
Alt 17-11-2005, 15:14   #2 (permalink)
Freizeitflasher
 
Benutzerbild von Alphanimal
 
Registriert seit: Jun 2004
Ort: Niederösterreich
Beiträge: 615
"i" ist bei dir konstant 600
warum gerade 600??

du brauchst für jeden erstellten MC eine eigene tiefe, wenn du einen MC auf einer Tiefe erzeugst auf der sich schon ein anderer MC befindet wird dieser gelöscht und mit dem neuen überschieben.

d.h. du müsstest i bei jedem schuss ändern

ein i++ nach dem attachMovie und nachdem du alle eigenschaften (_x, _y) des neuen MCs gesetzt hast reicht dafür!

jetzt musst du noch alle bisher erzeugten schüsse einzelt bewegen, am besten mit einer schleife.

oder du baust den Code zum Bewegen in den Schuss-MC selbst ein
__________________
Some Flash Worx
Alphanimal ist offline   Mit Zitat antworten
Alt 18-11-2005, 14:28   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2005
Beiträge: 7
hab ich jetzt alles so hibekommen, jetzt müßte ich nur noch jeder instanz eine funktion bewegen zuweisen.
Ich kann doch bestimmt in dem Movieclip "schuss" den ich instanziere mit konstruktoren, destruktoren bzw. methoden implementieren.

Also in "schuss" soll folgendes drinstehen:

... Konstruktor evtl _x=_root.ship1._x;
... Destruktor

und folgende methode:

function bewegen(){

this._x-=this._x;

}

hat da jemand ne ahnung wie ich das lösen könnte, problem ist halt, dass sich die instanz nur solange bewegt bis eine neue instanz erzeugt wird.
Irgendwie muß ich die Funktion doch ableiten können.
keulche ist offline   Mit Zitat antworten
Alt 18-11-2005, 15:18   #4 (permalink)
Neuer User
 
Benutzerbild von the binary
 
Registriert seit: Jul 2001
Ort: Berlin | Friedrichshain
Beiträge: 3.561
hier mal ein vorschlag..

ein symbol schuss erstellen und die klasse 'Schuss' zuweisen.

PHP-Code:
class Schuss
    
extends MovieClip
{
    private var 
ix Number 0;
    private var 
iy Number 30;


    
// public static var libID : String = "__Packages.Schuss";
    // private static var _isSymbolLinked : Boolean = Object.registerClass( libID, Schuss );

    
public var speed Number 5;

    function 
Schuss()
    {
        
initShoot();
        
fly();
    }

    private function 
initShoot() : Void
    
{
        
this._x ix;
        
this._y iy;
    }

    private function 
fly() : Void
    
{
        
this.onEnterFrame = function()
        {
            
this._y -= speed;
        }
    }

    public function 
remove() : Void
    
{
        
this.removeMovieClip();
    }


zum test.
in den ersten frame deiner hzl kommt dann dass...
PHP-Code:

onMouseDown 
= function()
{
    
trigger();
}

onMouseUp = function()
{
    
release();
}

function 
trigger()
{
    
_root.onEnterFrame mx.utils.Delegate.createthisshoot );
}

function 
release()
{
    
delete _root.onEnterFrame;
}

function 
shoot()
{
    
_root.attachMovie('Schuss''s'_root.getNextHighestDepth(), { ix:_root._xmouseiy:_root._ymouse } );


die remove-methode ist noch nicht implementiert...


gruss
__________________
8bm | join ff@BOINC
formpackage.org | audiohunter.de | problematica.de | 8ball-media.de/blog | taikonauten.cn

Geändert von the binary (18-11-2005 um 15:20 Uhr)
the binary 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 14:23 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele