Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-10-2004, 11:43   #1 (permalink)
AS = A + S
 
Registriert seit: Jun 2004
Beiträge: 53
Preloader Deluxe

Hallo Flasher,


es ist gerade Samstag Morgen und ich habe mir vorgenommen mir ein wenig mehr ActionScript Verständnis anzueignen

Hier das Projekt:
Ich möchte einen ähnlichen Preloader (nur andere Skalierungen und Maße) wie der auf http://www.stratocucine.com/ erstellen.

Die Porbelmatik dieses Preloaders liegt darin das mir unbegreiflich ist wie man diesen Ladeeffekt,
1.So "smoothig" macht (also das er so schön weich tweent)
2.In der Mitte plötzlich langsamer wird und dann die Zahlen einbaut

Ich habe mir den Action Script angeschaut, aus welchem ich aber nicht besonders schlau geworden bin. Ich poste ihn euch selbstverständlich zur Hilfe!
ActionScript:
  1. // Action script...
  2.  
  3. // [onClipEvent of sprite 5 in frame 25]
  4. onClipEvent (load)
  5. {
  6.     cTV = true;
  7.     bTSTTL = _root.getBytesTotal();
  8.     ePX = -967;
  9.     nRS = new Array();
  10.     lVL = 0;
  11. }
  12.  
  13. onClipEvent (enterFrame)
  14. {
  15.     if (cTV && !dN)
  16.     {
  17.         if (bTSTTL > 500)
  18.         {
  19.             bTSLDD = _root.getBytesLoaded();
  20.             plDD = 960 - (480 + Math.round(bTSLDD / bTSTTL * 20));
  21.             if (_x < -500)
  22.             {
  23.                 ePX = -460;
  24.             }
  25.             else if (_x < -290)
  26.             {
  27.                 if (ePX + 6 < plDD)
  28.                 {
  29.                     ePX = ePX + 6;
  30.                 } // end if
  31.                 for (i = nRS.length; i < Math.abs(_x + 500) / 20; i++)
  32.                 {
  33.                     if (!nRS[i] && i < 10)
  34.                     {
  35.                         tMP = "iniTEM" + i;
  36.                         _parent.iniTEM.duplicateMovieClip(tMP, lVL++);
  37.                         tMP = _parent[tMP];
  38.                         tMP._x = 480 + i * 20;
  39.                         tMP.tXT.tXT.vALUE = (i + 1) * 10;
  40.                         tMP.gotoAndPlay("oN");
  41.                         nRS[i] = true;
  42.                     } // end if
  43.                 } // end of for
  44.             }
  45.             else
  46.             {
  47.                 ePX = 0;
  48.                 cTV = false;
  49.             } // end if
  50.             xPOS(10, 2);
  51.         }
  52.         else
  53.         {
  54.             bTSTTL = _root.getBytesTotal();
  55.         } // end if
  56.     }
  57.     else
  58.     {
  59.         if (_x > -5)
  60.         {
  61.             dN = true;
  62.             _root.gotoAndPlay("dNlDD");
  63.         } // end if
  64.         xPOS(10, 1.600000);
  65.     } // end if
  66. }
  67.  
  68. // [Action in Frame 1]
  69. system.useCodepage = true;
  70. vOL = 70;
  71. lNG = 2;
  72. devel = false;
  73. if (devel)
  74. {
  75.     hdIR = "http://90.0.0.2/Strato_060/site_now/";
  76. }
  77. else
  78. {
  79.     hDIR = "";
  80. } // end if
  81. iDIR = hdIR + "img/";
  82. MovieClip.prototype.xPOS = function (a, d)
  83. {
  84.     this.xD = this.ePX - this._x;
  85.     this.xA = (this.xD / a + this.xA) / d;
  86.     this._x = this._x + this.xA;
  87.     if (Math.abs(this.xA) < 0.500000 && Math.abs(this.xD) < 0.500000)
  88.     {
  89.         this.xD = this.xA = 0;
  90.         this._x = this.ePX;
  91.         this.xCTV = false;
  92.     } // end if
  93. };
  94. Movieclip.prototype.dGTS = function (iN, lNGTH)
  95. {
  96.     for (iN = String(iN); iN.length < lNGTH; iN = "0" + iN)
  97.     {
  98.     } // end of for
  99.     return(iN);
  100. };
  101.  
  102. // [Action in Frame 2]
  103. play();
  104. if (devel)
  105. {
  106.     gotoAndPlay(205);
  107. } // end if
  108.  
  109. // [Action in Frame 3]
  110. if (_framesloaded > 25)
  111. {
  112.     play();
  113. }
  114. else
  115. {
  116.     prevFrame();
  117. } // end if
  118.  
  119. // [Action in Frame 26]
  120. stop();
  121.  
  122. // [Action in Frame 27]
  123. bOT_sND.loadMovie(_root.iDIR + "sND.swf");
  124. for (i = 0; i < 10; i++)
  125. {
  126.     this["iniTEM" + i].removeMovieClip();
  127. } // end of for
  128. play();
  129.  
  130. // [Action in Frame 202]
  131. nM2.vALUE = "EXPLORE";
  132.  
  133. // [Action in Frame 209]
  134. function nXT(nDX)
  135. {
  136.     if (nTRO && nDX != "c")
  137.     {
  138.         nTRO = false;
  139.         aCT = "";
  140.         nextFrame();
  141.     } // end if
  142.     if (aCT != nDX)
  143.     {
  144.         oLD = aCT;
  145.         aCT = nDX;
  146.         cNTNT["c" + oLD].cTV = false;
  147.         cNTNT["c" + oLD]._y = 1000;
  148.         cNTNT["c" + oLD].oUT();
  149.         cNTNT["c" + aCT].cTV = true;
  150.         cNTNT["c" + aCT].gotoAndPlay("oN");
  151.         cNTNT["c" + aCT]._y = 0;
  152.         if (nDX != "c")
  153.         {
  154.             sND_aR = _root.bOT_dATA.mENU[aCT].sND;
  155.             cHNGsND(sND_aR[0], sND_aR[1], sND_aR[2], sND_aR[3]);
  156.         }
  157.         else
  158.         {
  159.             cHNGsND(0, 0, 0, 100);
  160.         } // end if
  161.     } // end if
  162.     tNAV.gotoAndPlay("eND");
  163.     bNAV.gotoAndPlay("eND");
  164. } // End of the function
  165. aCT = 0;
  166. nTRO = true;
  167. oLD = -1;
  168. stop();
Also ich fasse zusammen.
Ich würde mich darüber super freuen wenn jemand den AS schön durchkommentiert und es mir anhand eines nicht aufwendigen Beispiels erklärt.


Vielen Dank, Schöne Grüße
Sonja

Geändert von NoxFloW (02-10-2004 um 11:44 Uhr)
NoxFloW ist offline   Mit Zitat antworten
Alt 02-10-2004, 11:49   #2 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Was findest du an dem Preloader so besonders? Nur, dass er in der Mitte langsamer ist (das kann übrigens auch daran liegen, dass der Server für entsprechende Daten langsamer ist)?

Dass ab ca. der Hälfte diese Zahlen eingeblendet werden, ist ja nicht so schwer. Wieso baust du dir vom Prinzip her keinen normalen Preloader. Der kann noch etwas ausgebaut werden, und schon hast du dir *selbst* dein AS gebaut ;-)

Im Anhang ein einfacher Preloader (hat Rusty als Tut gepostet).
MfG, Johannes
Angehängte Dateien
Dateityp: zip extern_loader.zip (5,5 KB, 48x aufgerufen)
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 02-10-2004, 11:54   #3 (permalink)
AS = A + S
 
Registriert seit: Jun 2004
Beiträge: 53
Ja, das ist nicht schlecht aber wo kann ichs da einstellen das der eben so langsam vorläuft? Das ist sicher nicht der Server sondern beabsichtigt.

Klar ich möchte mir ja auch meinen eigenen Bauen aber ich möchte es anhand von Beispielen, Testereien ersmal richtig begreifen, um eine gewisse Basis von Preloader Versionen zu haben die mir besonders gefallen.

Danke Sonja
NoxFloW ist offline   Mit Zitat antworten
Alt 02-10-2004, 16:34   #4 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
aber wenn du den Verlauf des Preloaders veränderst, dann gibt du dem Ganzen ja eigenltich einen neuen Sinn. Preloader sind dazu da, dass ich weiß, wie viel schon geladen wurde - nicht dass sie irgendwie toll verlaufen!
__________________
Mediendesign-Student
johanness 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:24 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele