Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-12-2006, 12:34   #1 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
initObject onLoad wird nicht ausgefuehrt

ActionScript:
  1. var oBackgroundItem:Object = new Object();
  2. oBackgroundItem.onLoad = function(){
  3.     trace(this._name+".onLoad:  "+getTimer());
  4. }
  5. oBackgroundItem.onData = function(){
  6.     trace(this._name+".onData:  "+getTimer());
  7. }
  8. oBackgroundItem.onRelease = function(){
  9.     trace(this._name+".onRelease:  "+getTimer());
  10. }
  11. var mcCurrent:MovieClip = this.attachMovie("mcInLib", "mcOnStage"+this.getNextHighestDepth(), this.getNextHighestDepth(), oBackgroundItem);
hi, der onRelease event wird ohne probleme
ausgefuehrt. onLoad und onData aber nicht...
koennt ihr mir da weiterhelfen? ich muss naemlich
jedem so erstellten mc eine farbe zuweisen. das
hab ich schon so gemacht:
ActionScript:
  1. var xPos:Number = 0;
  2. while (xPos<Stage.width) {
  3.     var mcCurrent:MovieClip = this.attachMovie("mcInLib", "mcOnStage"+this.getNextHighestDepth(), this.getNextHighestDepth());
  4.     mcCurrent._y = 100-mcCurrent._height;
  5.     mcCurrent._x = xPos;
  6.     var cFarbe:Color = new Color(mcCurrent);
  7.     cFarbe.setRGB(0xcccccc);
  8.     xPos = Math.floor(mcCurrent._x+mcCurrent._width);
  9. }
aber unter etwa 30-40 mc´s sind dann immer 2-3,
die die farbe nicht annehmen. ich hab mir gedacht,
das koennte daran liegen, dass diese mc´s halt
gerade etwas zu langsam geladen wurden, und
dadurch keine farbe zugewiesen bekommen haben.
wie kann ichs machen?
thx
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 08-12-2006, 12:47   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hmmm...

Also selbst, wenn ich da 110 MCs attache, werden die alle grau.

Das mit dem onLoad geht so nicht. Aus der Flashilfe:

onLoad (MovieClip.onLoad-Prozedur)
Diese Ereignisprozedur kann nur mit Movieclips mit einem Symbol in der Bibliothek verwendet werden, das einer Klasse zugeordnet ist.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 08-12-2006, 13:13   #3 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
Zitat:
Zitat von Der Frager Beitrag anzeigen
Hmmm...
Also selbst, wenn ich da 110 MCs attache, werden die alle grau.
vielleicht hab ich da noch anderweitig einen fehler. mal schaun. sollte aber so gehen, wie ich das im zweiten as geschrieben habe???
Zitat:
Zitat von Der Frager Beitrag anzeigen
Diese Ereignisprozedur kann nur mit Movieclips mit einem Symbol in der Bibliothek verwendet werden, das einer Klasse zugeordnet ist.
also ehrlich gesagt check ich das nicht. wie "einer klasse zugeordnet"??
thx
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 08-12-2006, 13:30   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Ja, sollte gehen. Du kanns im Zweifel zwischen attachen und umfärben mal eine Framewechsel reinpacken, damit Flash auf jeden Fall genug Zeit hat, die MCs zu "zeichnen".
PHP-Code:
var xPos:Number 0;
var 
mcs:Array = [];
while (
xPos<Stage.width) {
    var 
mcCurrent:MovieClip this.attachMovie("mcInLib""mcOnStage"+this.getNextHighestDepth(), this.getNextHighestDepth());
    
mcs.push(mcCurrent);
    
mcCurrent._y 100-mcCurrent._height;
    
mcCurrent._x xPos;
    
xPos Math.floor(mcCurrent._x+mcCurrent._width);
}
this.onEnterFrame = function() {
    
delete this.onEnterFrame;
    for (var 
i in mcs) {
        var 
cFarbe:Color = new Color(mcs[i]);
        
cFarbe.setRGB(0xcccccc);
    }
    
delete mcs;
}; 
Mal als Versuch...
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 08-12-2006, 14:08   #5 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
hab ich versucht..
hab sogar das oEF 10x laufen lassen.
selbst dann waren noch einige mc´s
farbig statt grau...
werd jetzt mein script mal nomml
genau durchschauen...
thx anyway.
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 08-12-2006, 14:28   #6 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
wenn ichs genau so (wie oben) schreibe gehts auch:
ActionScript:
  1. var xPos:Number = 0;
  2. while (xPos<Stage.width) {
  3.     var mcCurrent:MovieClip = this.attachMovie("mcInLib", "mcOnStage"+this.getNextHighestDepth(), this.getNextHighestDepth());
  4.     mcCurrent._y = 100-mcCurrent._height;
  5.     mcCurrent._x = xPos;
  6.     var cFarbe:Color = new Color(mcCurrent);
  7.     cFarbe.setRGB(0xcccccc);
  8.     xPos = Math.floor(mcCurrent._x+mcCurrent._width);
  9. }
ich will aber nicht, dass alle mc´s gleichmaessig aneinandergereiht sind, darum hab ich fuer mcCurrent._x das hier eingefuegt:
ActionScript:
  1. mcCurrent._x = xPos+Math.floor((Math.random()*mcCurrent._width*1.1)-mcCurrent._width);
daraufhin tritt der fehler auf, den ich genannt habe. also es werden eben manche mc´s nicht eingefaerbt.
hmm...
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 08-12-2006, 14:41   #7 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Haste mal die Datei parat - oder ein Beispiel? Wenn ich das nachbaue (also einfach einen MC "mcInLib" in die Bib schmeiße) geht's nämlich.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 08-12-2006, 15:47   #8 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
thx fuer deine hilfe!!
hab die items zu rechtecken machen muessen, wegen speicherplatz.
und eingefaerbt wird jetzt nach gruen, ums deutlicher zu machen...
Angehängte Dateien
Dateityp: zip Landschaft.zip (5,9 KB, 2x aufgerufen)
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 08-12-2006, 17:08   #9 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hmmm... Ja, komisch. Mit Math.ceil() anstelle Math.floor() bei nWert geht's auch.
Echt keinen Plan wieso... Aber dann errechne halt die Zufallsverschiebung einfach anders.
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 08-12-2006, 17:23   #10 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
Zitat:
Zitat von Der Frager Beitrag anzeigen
Mit Math.ceil() anstelle Math.floor() bei nWert geht's auch.
tatsaechlich?? eigenartig. werd ich am montag testen...
jetzt is erst mal wochenende.



thx!!!!!!!!!!!!!!
hf
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso ist offline   Mit Zitat antworten
Alt 13-12-2006, 14:08   #11 (permalink)
.
 
Benutzerbild von _kweso
 
Registriert seit: Aug 2001
Ort: wien/regensburg
Beiträge: 1.652
tatsaechlich!!
mit ceil gehts...
eigenartig.

danke
kws
__________________
350 * youtube

für alle, die noch keinen dropbox-account haben,
aber einen wollen: http://db.tt/wZ3S1pr
bringt uns beiden +500mb, thx!
_kweso 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:31 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele