Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-08-2007, 20:55   #1 (permalink)
wau
 
Benutzerbild von Circushund
 
Registriert seit: Jan 2006
Ort: Hamburch
Beiträge: 404
onEnterFrame und delete

hi,
ich steck grad wieder fest. Ich hab die Zeile:
Code:
delete this.onEnterFrame
in einer Funktion.

Gibt es eine Möglichkeit, das onEnterFrame irgendwie wieder zu "aktivieren" ?
__________________
Say no to Internet Explorer 6!
Circushund ist offline   Mit Zitat antworten
Alt 15-08-2007, 09:16   #2 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
nope, gelöscht ist gelöscht. Theoretisch gibts die Möglichkeit ein oEF zu pausieren, über eine true/false Chackvariable, das ist aber aus Performancesicht eine eher zweifelhafte Vorgehensweise.
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 15-08-2007, 09:30   #3 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.138
Du könntest sowas machen:
ActionScript:
  1. var square_mc:MovieClip = this.createEmptyMovieClip("square_mc", this.getNextHighestDepth());
  2. square_mc.init = function(width:Number, height:Number, color:Number):Void  {
  3.     this.color = color;
  4.     this.height = height;
  5.     this.width = width
  6.     this.draw = function(width:Number, height:Number, color:Number):Void  {
  7.         this.beginFill(color);
  8.         this.moveTo(0, 0);
  9.         this.lineTo(width, 0);
  10.         this.lineTo(width, height);
  11.         this.lineTo(0, height);
  12.         this.lineTo(0, 0);
  13.         this.endFill();
  14.     };
  15.     this.moveRight = function():Void  {
  16.         this.onEnterFrame = function():Void {
  17.             this._x += 10;
  18.             if (this._x>=Stage.width-this._width) {
  19.                 delete this.onEnterFrame;
  20.                 this.moveLeft();
  21.             }
  22.         };
  23.     };
  24.     this.moveLeft = function():Void  {
  25.         this.onEnterFrame = function() {
  26.             this._x -= 10;
  27.             if (this._x<=0) {
  28.                 delete this.onEnterFrame;
  29.                 this.moveRight();
  30.             }
  31.         };
  32.     };
  33.     this.toString = function():Void {
  34.         for (var i:String in this) {
  35.             trace(i+": "+typeof(this[i]));
  36.         }
  37.     }
  38.     this.draw(this.width, this.height, this.color);
  39.     this.moveRight();
  40. };
  41. square_mc.init(10, 10, 0xFF0000);
  42. square_mc.toString();
Nach dem edit: das sieht vielleicht etwas oversized aus... aber es mag dir vllt helfen, Code generell zu verstehen und zu strukturieren.

Geändert von Omega Psi (15-08-2007 um 10:14 Uhr)
Omega Psi ist offline   Mit Zitat antworten
Alt 15-08-2007, 11:22   #4 (permalink)
wau
 
Benutzerbild von Circushund
 
Registriert seit: Jan 2006
Ort: Hamburch
Beiträge: 404
hi,
@readme.txt
ja dachte ich mir! Ich hab das rausgenomen und stattdessen :
Code:
var circle:Boolean=true;
function updateDigi(){
if(nahrung<0){
if(circle){
_root.mag.aktion.gotoAndPlay("dead");	
_root.figDead = true;
circle=false;
}
nahrung=0;
}
..
@omega Psi
ok, du machst es so, das du den MC zur Laufzeit generierst und die verschiedenen Eigenschaften "init", "moveleft" ect vergibst (ich glaub ähnlich wie mit dem prototype?).
Bei dem kleinen Game was ich mache, hatte ich mir nun mal gedacht, denn Code auch in die einzelnen MC zu schreiben und nicht so viel Code auf der Hauptzeitleiste zu haben. Aber wenn du magst omega, kann ich dir meine .fla ja mal schicken, dann siehste was ich meine.
Ich versuch schon auch generell guten Code zu machen, doch manchmal im Zuge des Bastelns macht man auf die Schnelle mal was, wo man sich im Nachhinein wieder dransetzt und es optimiert.
__________________
Say no to Internet Explorer 6!
Circushund ist offline   Mit Zitat antworten
Alt 15-08-2007, 11:28   #5 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.138
Ne, du brauchst mir nichts schicken... ich verstehe was du meinst und was läuft das läuft. Ich code auch gar nciht auf diese Weise. Das war nur ein Beispiel, wie man Code strukturiert und Gültigkeitsbereiche nutzen kann. Ich nutze die dynamic Deklaration der MovieClip-Klasse um zusätzliche Funktionalitäten für die Instanz (!) zu ermöglichen. Prototype erweitert die gesamte Klasse.
Omega Psi 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:20 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele