| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| _ Registriert seit: Mar 2004
Beiträge: 67
| kleine frage (x/y probleme)
hallo, ich habe nun endlich was eccentris-ähnliches aber nun stellt sich das nächste problem im wege: Frage1: ich habe nun einen clip der seitlich eingeblendet wird (von unsichtbar zu sichtbar) , also von links nach rechts. ich habe durch verändern der koordinaten versucht die richtung zu wechseln, aber dann bleibt die aniamtion nach kurzem stehen und nix geht mehr. ActionScript:
wie muss es lauten damit es statt von links nach rechts von unten nach oben eingeblendet wird? Frage 2: ich hätte dann also eine animation die von unten nach oben eingeblendet wird und möchte dass wenn die animation entladen wird der selbe effekt eintrifft nur halt von sichtbar zu unsichtbar. Das sollte am ende also so sein, wenn jemand auf einen button (about) klickt dann startet der effekt, die animation wird unsichtbar von unten eingeblendet bis sie sichtbar ist und bleibt dann bei sichtbar stehen. klickt der user jetzt auf einen anderen button (photos) dann wird die animation(about) ausgeblendet mit dem selben effekt wie sie eingeblendet wurde aber halt eben von sichtbar zu unsichtbar und im gleichen moment wird dann aber auch noch die animation (photos) mit selben effekt wieder eingeblendet. Ich habe zwar schon einen ansatz wie ich das alles mache, würde aber sehr gerne eure ratschläge hören da ich ja nicht der erfahrenste flash-benutzer bin. kann mir jemand mit konstruktiven tipps und ratschlägen weiterhelfen bitte? im anhang aktueller stand (wurde nicht von mir gebastelt!) danke eure
__________________ enya |
| | |
| | #5 (permalink) |
| . Registriert seit: May 2003 Ort: bayern
Beiträge: 1.117
|
na das würde mir an deiner stelle ja zu denken geben, spass beiseite, ist ein seltsames script was du da vorlegst, sieht aber gut aus! ich hab es dir mal von oben nach unten leicht umgemodelt, du brauchst nen anderen maskenfilm, den hab ich maskY genannt, der ist im gegensatz zu deinem 200px breit und 20px hoch, gibst ihm den verknüpfungsnamen "maskY", nimmst folgendes script und schon sollte das funktionieren; dein onEnterFrame hab ich begrenzt, damit er auch mal aufhört function addStripe(nr) { stripe = this.attachMovie("bild", "bild"+nr, nr, {_x:20, _y:50, ID:nr}); maske = this.stripe.attachMovie("maskY", "mask",1, {ziel:nr*20}) stripe.setMask(maske) maske.onEnterFrame = function() { this.ypos += this.vy this.vy = (this.vy + (this.ziel - this.ypos)/40)/1.08 this._y = this.ypos; if(Math.abs(this._y - this.ziel)<0.05)delete this.onEnterFrame; } } bild_welle = function(i,max_stripes) { if (i<=max_stripes) { this.addStripe(i) } else { clearInterval(t) } } t = setInterval( function(){ _root.bild_welle(i,9);i++ }, 100 ); na, das ist doch schon mal was, matsch fun!!! |
| | |
| | #6 (permalink) |
| Farbe ist Luxus Registriert seit: May 2003 Ort: Köln
Beiträge: 2.405
|
Hi, es gibt nunmal keine Garantie dafür, dass hier Fragen beantwortet werden. Das ganze geschieht freiwillig, oder zahlst du irgendwelche Beiträge?! Möglicherweise liegt es daran, dass es recht aufwendig ist, sich in deine Problematik einzudenken. Du hast ein Skript, dass du weder geschrieben hast noch verstehst und erwartest nun, dass sich andere damit beschäftigen. Dein eigener Ansatz wäre vielleicht auch interessant. Anhand dessen kann man dir evtl. konkreter erklären, wie du was erreichen kannst. Ich unterstelle dir mal, dass du hier auch was lernen willst und nicht nur dein Skript anpassen lassen möchtest... Vielleicht versuchst du erstmal selbst, das Skript zu verstehen. Du übergibst nr in aufsteigender Reihenfolge an das Prototype. Die jeweilige Maske bekommt als Ziel diese nr * 20, das erste also 20, das letzte 180. Versuche, dass das erste auf 180 landet und das letzte auf 20. Dazu musst du nur die Reihenfolge umkehren, also i mit 9 starten und dekrementieren (i--). Deine if-Abfrage musst du dann nat. auch ändern. Außerdem benötigt dein Masken-oEF noch den neuen Startwert für xpos, also 180. Den kannst du mit hier: maske = this.stripe.attachMovie("mask", "mask",1, {xpos: 180, ziel nr)*20})mit übergeben. Wenn du das verstehst, kommst du sicherlich auch selbst auf die Lösung, das Ganze von unten nach oben aufbauen zu lassen. Grüße Sascha
__________________ 12:15, press return |
| | |
| | #7 (permalink) |
| _ Registriert seit: Mar 2004
Beiträge: 67
|
hallo ihr beiden, erstmals danke für eure beiträge! @mooseMash ich habe nun genau deine anweisungen ausgeführt aber leider scheint das bild zwar auf bleibt aber dann ohne animation so stehen und rührt sich nicht. eine neue maske "maskY" habe ich erstellt (hab auch versucht statt ("maskY", "mask",1, {ziel:nr*20}) -> ("maskY", "maskY",1, {ziel:nr*20}) , nur das vorweg). @ludabruda hätte ich eine garantie dass meine fragen beantwortet werden, dann würde ich sehr gerne einen beitrag dafür bezahlen. aber du hast schon recht, mir gehts neben der lösung auch hauptäschlich ums lernen da ich bisher sehr wenig mit actionscript animiert/gesteuert habe. ich versuche momentan anhand von as-büchern und ausführlichen tutorials wo jede zeile kommentiert wird mein as-wissen etwas aufzubessern. den ersten teil deines vorschlags habe ich nicht wirklich verstanden (die jeweilige.... ändern)vielen dank und liebe grüsse enya
__________________ enya |
| | |
| | #8 (permalink) |
| Farbe ist Luxus Registriert seit: May 2003 Ort: Köln
Beiträge: 2.405
|
Hi, überleg doch mal, was da passiert: es wird neunmal das Bild attacht, jedesmal mit einer Maske, die ein anderes Ziel erhält. Alle Masken starten an der gleichen Position. Das jeweilige Ziel ist nr*20, nr beginnt bei 0. Willst du es von rechts nach links umdrehen, müssen alle Masken bei 180 (also 9*20) starten, das Ziel muss dann erst beim letzten auf 0 stehen. Verusuch das mal: ActionScript:
Damit kannst du dein SetInterval auch so lassen, wie es ist. Beim vertikalen Einblenden musst du den Masken-MC ändern und das onEnterFrame der Maske von _x auf _y ändern. Grüße Sascha
__________________ 12:15, press return |
| | |
| | #10 (permalink) |
| _ Registriert seit: Mar 2004
Beiträge: 67
|
@ludabruda das funktioniert jetzt auch (es flattert zwar etwas komisch links) aber ich hab schon mal den grundgedanken verstanden. für die vertikal aniamtion muss ich also die maske mal horizontal (also 200px breite, 20px höhe) erstellen, der geb ich den namen MaskY. wenn ich die onenterframe umändere wie du es beschreibst läuft die animation aber dann wieder von links nach rechts (mit maskY gehts dann net.. ).... @moosemash das läuft ja spitze! nur halt von oben nach unten statt unten nach oben. ich habe nochmals kontrolliert was bei meiner nicht funktionierenden version und deiner funktionierenden unterschiedlich ist. bei meiner heisst es ActionScript:
bei deiner heisst es ActionScript:
__________________ enya |
| | |
| | #11 (permalink) |
| . Registriert seit: May 2003 Ort: bayern
Beiträge: 1.117
|
kleine ergänzung zum thema hier kommt eine leicht aber deutlich modifizierte version die es ermöglicht diesen effekt sowohl wagerecht als auch senkrecht von links nach rechts oder umgekehrt, von oben nach unten oder umgekehrt zu setzen |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |