Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-11-2007, 14:54   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Beiträge: 144
Question denkfehler? oder bug?

ok, ich muss immer gleich den teufel an die wand malen
aber vielleicht stimmts ja sogar...

ich sitz nun seid einiger zeit an dem gleichen problem und egal wie ich das script gestalte es bleibt einfach zickig.

vielleicht hab ich ja nen totalausfall und checks echt nicht, aber von der logik her müsste es passen.

schaut bitte mal drüber und banned mich bitte nicht gleich wegen der quali des scripts


also zur erklärung:
ich lasse von anfang an mehrere movies attachen und gebe ein input-textfeld mit der anzahl der movies mit. sobald in dem textfeld was geändert wird, erscheinen zwei buttons. set und cancel. klickt man auf cancel passiert nix dolles.
erhöht man aber die zahl und drückt auf set. soll die function changer abwägen ob die zahl höher oder niedriger ist. mit den if anweisungen.

der start ist 10 Mc`s. ändere ich die zahl auf 5 und klicke auf set. nimmt er auch fünf weg. ändere ich die zahl dann auf 10. nimmt er auch 10 weg anstatt wieder 5 hinzuzufügen. wo ist der hacken?


PHP-Code:
goo 1;
var 
anzahl:Number 10;
var 
differ:Number 0;
onoff(false);
producer();

function 
onoff (g){
    
set_btn._visible g;
    
cancel_btn._visible g;
}

function 
reducer(){
for(
i=_root.differi<=_root.anzahli++){
    
_root["uno"+i].removeMovieClip();
}
}

function 
producer(){
for(
i=_root.differi<=_root.anzahli++){
    
_root.attachMovie("uno""uno"+i50+i);
    
_root["uno"+i]._y random(650)+50;
    
_root["uno"+i]._x random(550)+50;
    
_root["uno"+i]._xscale random(300)+80;
    
_root["uno"+i]._yscale _root["uno"+i]._xscale;
    
_root["uno"+i]._alpha random(100);
    
_root["uno"+i].dx random(900)-100;
    
_root["uno"+i].dy random(800)-100;
    
_root["uno"+i].ff 1;
    
_root["uno"+i].ffs 0;
    
_root["uno"+i].id i;
    
_root["uno"+i].onEnterFrame = function(){
        if(
_root.goo == 1){
        if(
Math.round(this._x) != this.dx){
            
this._x += (this.dx-this._x)/8;
            
this._y += (this.dy-this._y)/8;
        }else{
            
this.ff random(500)+25;
            
this.dx += random(100)-40;
            
this.dy += random(100)-40;
            
this.ffs 0;
        }
        }
    }
    
}
}
this.createTextField("anzahl_txt"19910103020);
anzahl_txt.border true;
anzahl_txt.type "input";
anzahl_txt.text _root.anzahl;
anzahl_txt.maxChars 2;

anzahl_txt.onChanged = function(anzahl_txt:TextField) {
    
onoff(true);
};
function 
changer(d,r){
    
trace("d="+d+",r="+r);
    if(
r){
        
trace("mehr ist "+(r));
        
_root.differ r;
        
_root.anzahl d;
        
trace("anzahl="+_root.anzahl+",differ="+_root.differ);
        
_root.producer();
    }else if(
r){
        
trace("weniger ist "+(d));
        
_root.differ d;
        
_root.anzahl d;
        
trace("anzahl="+_root.anzahl+",differ="+_root.differ);
        
_root.reducer();
    }
}
cancel_btn.onRelease = function(){
    
_root.anzahl_txt.text _root.anzahl;
    
_root.onoff(false);
}
set_btn.onRelease = function(){
    
trace(_root.anzahl_txt.text+","+_root.anzahl);
    
_root.changer(_root.anzahl_txt.text,_root.anzahl);
    
_root.onoff(false);


thx for advice
aeon
aeon_g ist offline   Mit Zitat antworten
Alt 23-11-2007, 15:16   #2 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Nimm mal anstatt i beim attachen, lieber so etwas:
PHP-Code:
var depth _root.getNextHighestDepth();
_root.attachMovie("uno""uno"+depth50+depth); 
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 23-11-2007, 15:56   #3 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Beiträge: 144
@rendner[i]: warum? ich hab das bisher immer so gemacht und hatte nie probleme. und wenn ich i weglasse, ist der masterplan futsch.
aeon_g ist offline   Mit Zitat antworten
Alt 23-11-2007, 16:46   #4 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Weil du neue mc's erstellst die genauso heißen wie bereits erstellte.
Da aber nur ein mc mit dem gleichen Namen in einem anderen existieren kann, gibt es da natürlich Probleme.

Zumindest denke ich das es daran liegen könnte, probiere es einfach aus.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 23-11-2007, 19:38   #5 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Beiträge: 144
ok, das klingt plausibel. aber ist es nicht so, das ich die namen durch removeMovieClip wieder freigebe?

es funktioniert ja auch nur eben in eine richtung. heisst ich kann die zahl der mc`s immer weiter veringen/vergrößern, aber sobald ich das gegenteil versuche klappts nicht...

trotzdem schon mal danke
aeon_g ist offline   Mit Zitat antworten
Alt 23-11-2007, 21:20   #6 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Stimmt, das hatte ich ganz übersehen, da hast du natürlich Recht.
Sehe da gerade auch keinen Fehler, lade doch mal ne fla dazu hoch wenn es geht.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 23-11-2007, 23:55   #7 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Beiträge: 144
sicher, vielleicht findest du ja was...
Angehängte Dateien
Dateityp: rar denkfehler.rar (5,6 KB, 2x aufgerufen)
aeon_g ist offline   Mit Zitat antworten
Alt 26-11-2007, 09:38   #8 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Lag an deinem Script...
Habe den leicht umgeschrieben, kannst du dir ja dann so wie du es brauchst wieder umschreiben.
Angehängte Dateien
Dateityp: txt Script.txt (1,9 KB, 4x aufgerufen)
__________________
ERROR: Signature is too large

Geändert von rendner[i] (26-11-2007 um 10:27 Uhr)
rendner[i] ist offline   Mit Zitat antworten
Alt 26-11-2007, 16:19   #9 (permalink)
Neuer User
 
Registriert seit: Dec 2001
Beiträge: 144
hey, das liest sich ja schon mal flüssiger
vielen dank für deine mühe. werde es später mal antesten sobald ich die zeit habe und gebe dir dann feedback.

bin mal gespannt ob die performance nun auch besser ist, da der code sich ja ein bisschen vereinfacht hat.

also muchas gracias
aeon
aeon_g 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 02:09 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele