Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-11-2003, 09:31   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Zoom Karte

Hallo,

diese Datei ist von http://www.2-serious.de (Tutorials -> Advanced -> 32/35)

Auf deren Seite funktionierts ja auch super, aber bei der downgeloadeten Version zoomt die Karte einfach ins Unendliche weg. Weiss jemand, woran das liegen könnte? Die Karte ist für und mit Flash 5 erstellt worden, vielleicht verträgt sich das Script nicht mit Flash MX?

Das ist ein schöner Karteneffekt, den ich gerne irgendwie nutzen möchte...

Jens
Angehängte Dateien
Dateityp: zip zoom.zip (17,6 KB, 280x aufgerufen)
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 09:54   #2 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Da ja offenbar niemand die Datei runterladen will hier das AS

Folgendes liegt in Frame 1 auf der Zeitleiste

ActionScript:
  1. // Ursprungskoordinatenfunktion
  2. movieclip.prototype.getOrigin = function () {
  3.     targetX = startX;
  4.     targetY = startY;
  5.     targetXs = startXs;
  6.     targetYs = startYs;
  7. }
  8. // Zielkoordinatenfunktion
  9. movieclip.prototype.getTarget = function (factor) {
  10.     targetX = startX+(startX-_parent._xmouse)*factor;
  11.     targetY = startY+(startY-_parent._ymouse)*factor;
  12.     targetXs = startXs*factor;
  13.     targetYs = startYs*factor;
  14. }
  15. // Zoomfunktion
  16. movieclip.prototype.zoom = function (delay, targetX, targetY) {
  17.     difX = targetX-_x;
  18.     difY = targetY-_y;
  19.     difXs = targetXs-_xscale;
  20.     difYs = targetYs-_yscale;
  21.     _x += (difX/delay);
  22.     _y += (difY/delay);
  23.     _xscale += difXs/delay;
  24.     _yscale += difYs/delay;
  25. }
  26. //
  27. stop ();

Und das hier liegt in Frame 1 im Objekt im AS eines MCs (das ist die Karte)

ActionScript:
  1. onClipEvent (load) {
  2.     startX = _x;
  3.     startY = _y;
  4.     startXs = _xscale;
  5.     startYs = _yscale;
  6.     getOrigin();
  7. }
  8. onClipEvent (mouseDown) {
  9.     getTarget(4);
  10.     pressed = true;
  11. }
  12. onClipEvent (mouseUp) {
  13.     getOrigin();
  14.     pressed = false;
  15. }
  16. onClipEvent (mouseMove) {
  17.     if (pressed) {
  18.         getTarget(4);
  19.     }
  20. }
  21. onClipEvent (enterFrame) {
  22.     zoom(3, targetX, targetY);
  23. }


Was ich weiss, ist das der Fehler etwas mit der Funktion "Zoom" zu tun hat, aber dass bringt mir erstmal recht wenig, weil die Funktion Zoom ja die ist, um die es eigentlich geht.
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 09:55   #3 (permalink)
über oder unter dir...
 
Benutzerbild von merlin0815
 
Registriert seit: Dec 2001
Ort: Dulsmountain
Beiträge: 1.657
aloha!
bin nur kurz rübergeflogen - mx verlangt nach dem schlüsselwort this...
__________________
gruss merlin & peace 4 @ll

eBay -> Erfolgreicher Verkaufen - MotionSell - Die andere Auktionsgalerie für eBay <- VÖLLIG KOSTENLOS
merlin0815 ist offline   Mit Zitat antworten
Alt 12-11-2003, 10:23   #4 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Ja, aha und wo kommt das überall hin?
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 11:20   #5 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
z.B.

ActionScript:
  1. // ...
  2.  this._x += (difX/delay);
  3.         this._y += (difY/delay);
  4.         this._xscale += difXs/delay;
  5.        this._yscale += difYs/delay;
__________________
one out of many
pius ist offline   Mit Zitat antworten
Alt 12-11-2003, 12:06   #6 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Mmm, ja schon besser...jetzt zoomt er unendlich ran statt raus, wo müssen denn noch "this."´s hin?
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 12:11   #7 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
wenn du so was baust :


ActionScript:
  1. movieclip.prototype.deineFunktion = function (factor) {
  2.  
  3. }
  4.  
  5. ...


dann soll der jeweilige mc ja auf 'deineFunktion' zugreifen und so tun, als ob er sie selber in sich hätte ...hat er ja aber nicht ...also muss die Funktion wissen, für wen sie das machen soll ... und das sagst du ihr mit 'this' ...das dafür steht, dass die Funktion auf den jeneigen zurückgreift, für den sie gerade läuft ...


mal so umgangssprachlich ausgedrückt ...
__________________
one out of many
pius ist offline   Mit Zitat antworten
Alt 12-11-2003, 12:31   #8 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Das verstehe ich so halbwegs, aber trotzdem weiss ich nicht, wo dieses this in meinem Script jetzt genau erforderlich ist. Ich probier hier schon rum aber irgendwie weiss ich nicht wo ich "this." vorschreiben muss.

Die vier Sachen, die du mir gesagt hast schienen ja richtig zu sein, zumindest haben sie die Funktion verändert, aber weiter komme ich leider trotzdem nicht.
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 12:47   #9 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
.... ich werd' dir dein script nicht schreiben (wäre ja didaktisch falsch) ...


also wenn du schreibst ....
ActionScript:
  1. movieclip.prototype.getOrigin = function () {
  2.         targetX = startX;
  3.  // ...
  4. }

wer ist dann 'targetX' und wer ist 'startX' ???

weiss die Funktion die Pfade dazu?

wohl eher nicht!

mit

myMC.getOrigin();

müsstest zu z.B. schreiben

'_root.derRichtigePfad.targetX = this.startX;'

oder von this ausgehend:

this._parent.andereKarte.targetX this.startX;

oder wenn in this.targetX eine Referenz auf die andere Karte liegt:

this.targetX = this.startX;


oder oder

hängt vom aufbau deines films ab ...


... na und das eben auf alle funtionen übertragen ...
__________________
one out of many
pius ist offline   Mit Zitat antworten
Alt 12-11-2003, 13:14   #10 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Arg! Wir sind doch hier nicht in der Schule. Wenn du es weißt, wieso sagst du es dann nicht einfach...jetzt hab ich ÜBERALL this. davorgemacht und jetzt klappt es ein bisschen, aber nicht so wie es vorgesehen ist.

Die beiden Scripte liegen beide in Frame 1, das eine auf einer leeren Ebene genannt AS, das andere liegt im AS von der Karte.

Jetzt sag mal bitte wo this. hin muss...
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 13:36   #11 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
nix böße sein ...


das was im AS von der Karte liegt ... das ist noch Flash5-Syntax ....

wo liegen die 2 karten ?
wie heissen die mc's ?


oder:

leg ma dei .fla dazu ..... kannnst die Karten-pic ja durch kleinere ersetzen und nenn sie NICHT test.fla !!!
__________________
one out of many
pius ist offline   Mit Zitat antworten
Alt 12-11-2003, 13:48   #12 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
Die .fla hab ich schon ans erste Posting angehängt.
Damit du siehst wie es normalerweise funktioniert kannst du auch hier: http://www.2-serious.de (Tutorials -> Advanced -> 32/35)

gucken, ja?
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 14:01   #13 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
sorry, das erste postin hab ich wohl ständig übersehen ....

ich schau's mir mal an ...
__________________
one out of many
pius ist offline   Mit Zitat antworten
Alt 12-11-2003, 14:49   #14 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 172
danke
JensEickhoff ist offline   Mit Zitat antworten
Alt 12-11-2003, 15:14   #15 (permalink)
.--. .. ..- ...
 
Benutzerbild von pius
 
Registriert seit: Jul 2002
Ort: munich
Beiträge: 1.345
also hab's angesehen und umgebaut ...

aber dein onEnterFrame ruft ständig zoom auf ... das ist so etwas performancelastig!!

bau es noch um ...
__________________
one out of many
pius 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 15:40 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele