Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-08-2003, 10:16   #1 (permalink)
Megaman
Gast
 
Beiträge: n/a
Pause

Hi!
Ich habe in einer Mc einen Buchstaben eingebunden:
ActionScript:
  1. onClipEvent(load) {
  2. bstb="W"
  3. }
Und will das dieser Buchstabe fällt, an einer bestimmten Stelle für einige Sekunden stehen bleibt und dann weiter fällt!
Bis jetzt fällt der Buchstabe bis y=65 und bleibt stehen!
Wie bekomme ich es hin, dass er nach einigen Sekunden weiterfällt?

ActionScript:
  1. stop();
  2. Movieclip.prototype.setGravi = function(gravitation, boden) {
  3.  this.yTempo+= gravitation*30;
  4.  this._y += this.yTempo/300;
  5.  if (this._y >= boden) {
  6.   this._y = boden;
  7.  }
  8. };
  9.  
  10. mc1.onEnterFrame = function() {
  11.  this.setGravi(25, 65);
  12. };
  Mit Zitat antworten
Alt 01-08-2003, 10:21   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
und die frage ist
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 01-08-2003, 10:22   #3 (permalink)
Megaman
Gast
 
Beiträge: n/a
@Hay! Hab zu früh losgeschickt! War ein versehen, sorry!
  Mit Zitat antworten
Alt 01-08-2003, 11:47   #4 (permalink)
.
 
Registriert seit: May 2003
Ort: bayern
Beiträge: 1.117
vielleicht so?!

Movieclip.prototype.setGravi = function(gravitation, boden, mc){
mc.onEnterFrame = function(){
mc.yTempo+= gravitation*30;
mc._y += mc.yTempo/300;
if (mc._y >= boden) {
mc._y = boden;
delete mc.onEnterFrame;
}
}
if(finalBstb)clearInterval(finalBstb);
};

setGravi(25,65,mc1);
finalBstb = setInterval(setGravi,2000,25,150,mc1);
mooseMash ist offline   Mit Zitat antworten
Alt 01-08-2003, 14:40   #5 (permalink)
Megaman
Gast
 
Beiträge: n/a
@mooseMash
Irgendwie tut sich dann gar nichts mehr!
Ach ja, da hab ich noch was vergessen zu sagen, die Buchtaben sollen wieder langsam anfangen zu fallen und dann immer schneller werden! Quasi das gleiche wie jetzt, aber halt rückwärts und in die andere Richtung!
  Mit Zitat antworten
Alt 02-08-2003, 16:05   #6 (permalink)
Megaman
Gast
 
Beiträge: n/a
Neue Frage!

Hi!
Wieder mal ne Frage!
Warum kann ich das:
ActionScript:
  1. mc1.onEnterFrame = function() {
  2.  this.setGravi(25, 65);
  3. };
  4. mc2.onEnterFrame = function() {
  5.  this.setGravi(24, 65);
  6. };
  7. mc3.onEnterFrame = function() {
  8.  this.setGravi(23, 65);
  9. };
  10. mc4.onEnterFrame = function() {
  11.  this.setGravi(22, 65);
  12. };
  13. mc5.onEnterFrame = function() {
  14.  this.setGravi(21, 65);
  15. };
  16. mc6.onEnterFrame = function() {
  17.  this.setGravi(20, 65);
  18. };
  19. mc7.onEnterFrame = function() {
  20.  this.setGravi(19, 65);
  21. };
  22. mc8.onEnterFrame = function() {
  23.  this.setGravi(18, 65);
  24. };
  25. mc9.onEnterFrame = function() {
  26.  this.setGravi(17, 65);
  27. };
  28. mc10.onEnterFrame = function() {
  29.  this.setGravi(16, 65);
  30. };
Nicht so ändern?:
ActionScript:
  1. for(i=1;i<10;i++){
  2.         mc[i].onEnterFrame = function() {
  3.                 this.setGravi(25-i, 65);
  4.         };
  5. }
  Mit Zitat antworten
Alt 02-08-2003, 16:18   #7 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
ActionScript:
  1. mc[i].onEnterFrame = function() {
  2.                 this.setGravi(25-i, 65);
  3.         };

das i bei (25-i... gibt es in der Funktion nicht.
du muss erst dein einzlenen mcs sagen was sie für ein i haben, also:

ActionScript:
  1. mc[i].i = i;
  2. mc[i].onEnterFrame = function() {
  3.                 this.setGravi(25-this.i, 65);
  4.         };
Janoscharlipp ist offline   Mit Zitat antworten
Alt 02-08-2003, 16:18   #8 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
weil i in der onEnterframe nicht definiert ist.
auserdem ist das ganz schlechte performence die variable
setGravi mit onenterframe zu setzten.läuft ja ständig.
ActionScript:
  1. for(i=1;i<10;i++){
  2.        mc[i].setGravi(25-i, 65);
  3.  }

sorry sind ja funktionen es ist zu heiß
__________________
gruß Harry

Geändert von HAY (02-08-2003 um 16:24 Uhr)
HAY ist offline   Mit Zitat antworten
Alt 02-08-2003, 16:55   #9 (permalink)
Megaman
Gast
 
Beiträge: n/a
@Janoscharlipp
Soll ich etwa jedem Mc einen i Wert zuweisen?
Für mc1:
ActionScript:
  1. onClipEvent(load) {
  2.         bstb="W"
  3.         i=1;
  4. }
usw. und dann in einem Frame:????
ActionScript:
  1. for(i=1;i<10;i++){
  2. mc[i].i = i;
  3. mc[i].onEnterFrame = function() {
  4.         this.setGravi(25-this.i, 65);
  5. };
  6. }
Verstehe leider nicht was mc[i].i =i; macht! Warum *.i ??


  Mit Zitat antworten
Alt 02-08-2003, 19:41   #10 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
du hast genau richtig verstanden.

die Variable i existiert während der Schleife. Jeder MC bekommt jetzt also diese Aktion:

this.setGravi(25-i, 65);

allerdings existiert i nicht, wenn diese Aktion ausgeführt wird, bzw. steht noch von der Schleife auf 10.
Damit jeder Movieclip weiß, was sein i ist, musst du ihm noch eine Variable geben. Und das macht man am besten mit:

mc[i].i = i;

//MovieClip nummer i bekommt die Variable i, sie ist gleich i.

alles klar?
Janoscharlipp ist offline   Mit Zitat antworten
Alt 03-08-2003, 10:47   #11 (permalink)
Megaman
Gast
 
Beiträge: n/a
@Janoscharlipp!
Sorry, hat immernoch nicht geklappt! Hab es genauso gemacht, wie ich denke es vestenden zu haben!
Kannst Du es dir mal bitte angucken!
Angehängte Dateien
Dateityp: zip bstb.zip (5,9 KB, 2x aufgerufen)
  Mit Zitat antworten
Alt 03-08-2003, 12:54   #12 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
habe an deiner fla mal einbischen gebastellt.
kannst du noch weiter anpassen.
wenn fragen,fragen!!!!!
Angehängte Dateien
Dateityp: zip bstb.zip (5,6 KB, 4x aufgerufen)
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 03-08-2003, 20:47   #13 (permalink)
Megaman
Gast
 
Beiträge: n/a
Vielen, vielen DANK!
Hier im Forum lern ich ja mehr, als von meinen Eltern!
Danke!
  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 00:19 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele