
Tweening für Anfänger
Herzlich Willkommen beim zweiten Teil des LineRider-Tutorials für Tutorials.de!
Es hat einige Zeit gedauert, nachdem ich mich zu einem neuen Tutorial aufraffen konnte. Diesesmal geht es wieder um ein Spiel, allerdings bei weitem nicht so simpel wie beim letzten (also dem Weltraumshooter). Ich werde im folgenden nicht zeigen, wie man mit Flash umgeht. Ich werde nicht jede einzelne Codezeile erklären. Dieses Tutorial wendet sich ganz klar an fortgeschrittene Benutzer; wenn man so will an jene, welche sich durch mein älteres Weltraumshooter-Tutorial hindurchgearbeitet haben. Ich werde keine Grundlagenfunktionen erklären geschweige denn wie man das Design aufbaut o.ä.
Dieses Tutorial wurde im Original 2005 geschrieben und im August 2010 komplett neu aufgesetzt.
Dieses Tutorial zeigt wie man eine Windows ähnliche Navigation erstellen kann.
Hallo und Herzlich Willkommen zu meinem zweiten Tutorial für Tutorials.de!

). (s. Abb. 3 in der angehängten Zipdatei: Hier liegt ein weißer, ein Pixel großer Rahmen um die Grafik)
MovieClip.prototype.wabbern = function(x_end, y_end, multiplikator, ratio) {
// Initialisierung
if (this.sX == undefined) this.sX = 0;
if (this.sY == undefined) this.sY = 0;
// Berechnung
this.sX = this.sX*multiplikator+(x_end-this._xscale)*ratio;
this.sY = this.sY*multiplikator+(y_end-this._yscale)*ratio;
// Umsetzung auf den jeweils betroffene MovieClip-Instanz
this._xscale += this.sX;
this._yscale += this.sY;
};
// Ausführung
this.onEnterFrame = function() {
mc.wabbern(200,200,0.8,0.7);
}
// In Flash 5 und MX (Funktionsfähige Schreibweisen)
movieclip
MovieClip
Movieclip
// In Flash MX 2004 (Funktionsfähige schreibweise)
MovieClip
// AnalogUhr
function initUTCUhr(posX,posY,radius,pzone,pstadt,pname,ptiefe) {
// Variablen Initialisierung
var radiant, start_x, start_y, end_x, end_y;
var zeit,std,mins,sek;
var sek_winkel,min_winkel,std_winkel;
var sek_radiant,min_radiant,std_radiant;
var sek_x,sek_y,min_x,min_y,std_x,std_y;
// Winkel in Bogenmass
function winkelBogen(winkel) {
return winkel/180*Math.PI;
}
// MovieClip für AnalogUhr erzeugen
this.createEmptyMovieClip(pname,ptiefe);
// Textfeld für Statdanzeige erzeugen
this[pname].createTextField("anzeige_txt",ptiefe+1,posX,posY+radius,0,0);
this[pname].anzeige_txt.autoSize = "center";
this[pname].anzeige_txt.text = pstadt;
// Ziffernblatt zeichnen
for(var i=1; i<=60; i++) {
radiant = winkelBogen(i*6);
if (i%5 == 0) {
start_x = Math.cos(radiant)*(radius-10);
start_y = Math.sin(radiant)*(radius-10);
end_x = Math.cos(radiant)*radius;
end_y = Math.sin(radiant)*radius;
this.lineStyle(2, 0, 100);
this.moveTo(posX+start_x, posY+start_y);
this.lineTo(posX+end_x, posY+end_y);
} else {
start_x = Math.cos(radiant)*(radius-5);
start_y = Math.sin(radiant)*(radius-5);
end_x = Math.cos(radiant)*radius;
end_y = Math.sin(radiant)*radius;
this.lineStyle(1, 0, 100);
this.moveTo(posX+start_x, posY+start_y);
this.lineTo(posX+end_x, posY+end_y);
}
}
this[pname].onEnterFrame = function() {
// Zeiger entfernen
this.clear();
// Uhrzeit ermitteln
zeit = new Date();
sek = zeit.getUTCSeconds();
mins = zeit.getUTCMinutes();
std = zeit.getUTCHours()+pzone;
// AM/PM ermitteln
if (std >= 24) {
std = std - 24;
}
if (std < 12) {
this.anzeige_txt.text = pstadt + " / am";
} else {
this.anzeige_txt.text = pstadt + " / pm";
}
// Zeigerwinkel Berechnen
sek_winkel = sek*6-90;
min_winkel = mins*6-90;
std_winkel = std*30+mins/60*30-90;
// die winkel werden in bogenmaße umgerechnet
sek_radiant = winkelBogen(sek_winkel);
min_radiant = winkelBogen(min_winkel);
std_radiant = winkelBogen(std_winkel);
// Zeigerpunkte via Sin/Cos berechnen
// Sekunden
sek_x = posX + Math.cos(sek_radiant)*radius;
sek_y = posY + Math.sin(sek_radiant)*radius;
// Minuten
min_x = posX + Math.cos(min_radiant)*(radius*1);
min_y = posY + Math.sin(min_radiant)*(radius*1);
// Sekunden
std_x = posX + Math.cos(std_radiant)*(radius*.75);
std_y = posY + Math.sin(std_radiant)*(radius*.75);
// Zeiger zeichnen
// Sekunden
this.lineStyle(1, 0xff0000, 100);
this.moveTo(posX, posY);
this.lineTo(sek_x, sek_y);
// Minuten
this.lineStyle(2, 0, 100);
this.moveTo(posX, posY);
this.lineTo(min_x, min_y);
// Stunden
this.lineStyle(3, 0, 100);
this.moveTo(posX, posY);
this.lineTo(std_x, std_y);
}
}
// Städte und Zeitzonen
var x=0,y=0;
stadtliste = new Array("Berlin","Istanbul","New York","Moskau","Tokyo","Sydney");
zonenliste = new Array(2,3,-5,4,9,10);
// Uhren erzeugen
for (var j=0; j < stadtliste.length; j++) {
startpos = 150;
x++;
pX = startpos + 120*x;
if (j%3 == 0) {
x=0;
y++;
pX = startpos;
pY = 120*y;
}
initUTCUhr(pX,pY,50,zonenliste[j],stadtliste[j],"uhr"+j,j);
}
/*
// Uhren (UTC)
// Berlin (+01:00)
initUTCUhr(Stage.width/2,Stage.height/2,50,2,"Berlin","uhr",1);
// Istanbul (+02:00)
initUTCUhr(Stage.width/2,75,50,3,"Istanbul","uhr2",2);
// New York (-05:00)
initUTCUhr(Stage.width/2,325,50,-5,"New York","uhr3",3);
// Moskau (+03:00)
//initUTCUhr(100,100,50,3,"Moskau","uhr4",4);
*/
// Uhren (UTC)
// Berlin (+01:00)
initUTCUhr(Stage.width/2,Stage.height/2,50,1,"Berlin","uhr",1);
// Istanbul (+02:00)
initUTCUhr(Stage.width/2,75,50,2,"Istanbul","uhr2",2);
// New York (-05:00)
initUTCUhr(Stage.width/2,325,50,-5,"New York","uhr3",3);
Kategorien
Forum - Webmaster & InternetBitte sehr:
1 | var arr = $('a').map(function() {return this.href}).get(); |
Ja, das geht mit JavaScript.
Du hast einfach beide Elemente direkt schon im Script. Das normale Input-Feld ist nur versteckt am Anfang.
Hallo,
wie kann ich bei parallels confixx einen cronjob erstellen? Was genau gebe ich als Pfad an?
| tut orials.de | tut verbinden | tut dir helfen | tut kooperieren |
|
©2000-2012 tutorials.de Alle Rechte vorbehalten |
tut informieren
|
|


Hab`s nicht richtig gelesen, du packst die Radiobuttons noch in ein Div färbst das dann ein so klappst.
Ich dachte man kann die Radiobuttons direkt
AW: Radiobutton stylen
strukturart 10.02.12, 00:48