Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-05-2004, 13:39   #1 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
follow-me mc spiegeln???

Hi, ich habe einen mc, der als follow-me der Maus folgt. Versuche ständig, dass er sich bei Über- bzw. unterschreiten einer bestimmten x-Koordinate auf der Hauptbühne um 180 Grad horizontal spiegelt. Klappt nur nicht. Habe schon vieles ausprobiert. Mein AS auf dem mc lautet bisher und funktioniert einwandfrei.:

onClipEvent (load) {
speedH = 0;
speedV = 0;
}



onClipEvent (enterFrame) {
_root.altePosX_1=this._x;
_root.altePosY_1=this._y;

mouseX = _root._xmouse;
mouseY = _root._ymouse;

xPos = this._x;
yPos = this._y;



if (mouseX>=xPos-6) {
if (mouseX<=xPos+6) {
if (speedH>0) {
speedH = speedH-2;
} else {
if (speedH<0) {
speedH = speedH+2;
}
}
}
}




if (mouseX<xPos-6) {
if (speedH>-20) {
speedH = speedH-2;
}
}

if (mouseX>xPos+6) {
if (speedH<20) {
speedH = speedH+2;
}
}


if (mouseY>=yPos-6) {
if (mouseY<=yPos+6) {
if (speedV>0) {
speedV = speedV-2;
} else {
if (speedV<0) {
speedV = speedV+2;
}
}
}
}

if (mouseY<yPos-6) {
if (speedV>-20) {
speedV = speedV-2;
}
}

if (mouseY>yPos+6) {
if (speedV<20) {
speedV = speedV+2;
}
}

this._x = this._x+speedH;
this._y = this._y+speedV;
}


Spiegelung bei "dieser-x-Koordinate", z. B. x=250, hier einbinden oder neues onClipEvent oder AS in der Hauptzeitleiste...??? Alle versuche schlugen bislang fehl. Oder den mc bei x<250 in einen anderen Frame (framelabel mit vertikaler Spiegelung) steuern, dass er immer zwischen 2 Frames hin und her springt, bei Über- bzw. unterschreiten der x-Koordinate auf der Hauptbühne?

Dank im voraus.
questionner ist offline   Mit Zitat antworten
Alt 17-05-2004, 19:33   #2 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
spiegeln per as ist irgendwie nicht so ganz möglich...

die sache mit den 2 frames ist sicher deine möglichkeit.
warrantmaster ist offline   Mit Zitat antworten
Alt 17-05-2004, 19:56   #3 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
spiegeln ?
meinst du den mc ?
einfach mc._xscale=-100
Hi Warrent, altes haus
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 17-05-2004, 19:58   #4 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Hallo Warrantmaster,

ich habe mal ein wenig weiter herumprobiert. Das spiegeln klappt, aber leider mit einer kleinen Fehlfunktion bedingt durch weiteres AS auf dem mc.

Folgendes: der mc soll zu der follow-me Programmierung über die Pfeiltasten bei Mausbewegung größer und kleiner skalierbar sein. Soweit so gut, es klappt:

onClipEvent (mouseMove) {
if (Key.isDown(Key.UP)) {
this._xscale = this._xscale+10;
this._yscale = this._yscale+10;
} else if (Key.isDown(Key.DOWN)) {
this._xscale = this._xscale-10;
this._yscale = this._yscale-10;
}
}

Einziger Nachteil ist, dass ich noch keine Größenbegrenzung festsetzen konnte, so dass sich die Skalierung leider irgendwann bei Überschreiten von 0 oder 100 umkehrt und sich der mc vertikal spiegelt. Bei entgegengesetzter Pfeiltaste-Nutzung revidiert sich dieser Effekt von selbst.

Das Spiegeln habe ich jetzt über zwei unsichtbare Schaltflächen hingekriegt. Zuerst hatte ich es so:

on (rollOver) {
_root.meinmc._xscale*=-1;
}

und danach so:

on (rollOver) {
_root.flieger._xscale*=-1;
_root.flieger._yscale*=+1;
}

und so:

on (rollOver) {
_root.flieger._xscale*=-1;
_root.flieger._yscale*=-1;
}


Bei allen Varianten klappt das Spiegeln. Aber das neue Problem ist, durch die obige Skalierung als onClipEvent verzerrt sich der mc.

2 Fragen:
Ist beides kombinierbar oder stört es sich grundsätzlich? Lässt sich die Skalierung über die Pfeiltasten begrenzen? Der mc liegt mit 25 % auf der Bühne und sollte max. 70-80% kriegen und min. 5 % Größe.
questionner ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:03   #5 (permalink)
Wer??? Ich???
 
Registriert seit: May 2003
Ort: München
Beiträge: 807
Hallo,

vielleicht geht das auch mit
ActionScript:
  1. // dreht den MC um den angegebenen Wert.
  2. deinMovieClip._rotation = 180;

Cu
hOmId
Homid ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:09   #6 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Nee. leider nicht, da der mc dann auch über die y-Achse spiegelt, was er nicht soll.
questionner ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:10   #7 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
hi@bloba

yup, das funzt schon, mit schrift ist dann aber asche.


@questionner

du brauchst doch nur eine if abfrage davorzuschalten
warrantmaster ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:13   #8 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
dann leg doch eine korrrkt, gespiegelte garfik ins 2e frame und jump immer zwischen diesen beiden frames hin und her
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:23   #9 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Habe ich ja beides schon versucht, vielleicht aber nicht richtig.

@ warrantmaster: if Abfrage sollte entweder xmouse oder x-Position des mc bzgl. Unterschreitens der x-Koordinate "xy" die Spiegelung auslösen.

@ bloba: habe bereits 2 Frames im mc mit korrekter Spiegelung, komme nur nicht da rein. Habe es mit framelabels versucht, reagiert aber nicht. (z.B. mit unsichtbarer Schaltfläche oder der if Abfrage auf Hauptzeitleiste, dass folgendes passieren soll: _root.meinmc.gotoAndPlay ("framelabel"); )

Könnte es ja mal mit telltarget probieren und 2 unsichtbaren schaltflächen.
questionner ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:30   #10 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
Zitat:
Geschrieben von questionner
Habe ich ja beides schon versucht, vielleicht aber nicht richtig.

@ warrantmaster: if Abfrage sollte entweder xmouse oder x-Position des mc bzgl. Unterschreitens der x-Koordinate "xy" die Spiegelung auslösen.

@ bloba: habe bereits 2 Frames im mc mit korrekter Spiegelung, komme nur nicht da rein. Habe es mit framelabels versucht, reagiert aber nicht. (z.B. mit unsichtbarer Schaltfläche oder der if Abfrage auf Hauptzeitleiste, dass folgendes passieren soll: _root.meinmc.gotoAndPlay ("framelabel"); )

Könnte es ja mal mit telltarget probieren und 2 unsichtbaren schaltflächen.
des halte ich für sehr 'komsich' poste mal deine fla
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 17-05-2004, 20:33   #11 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
telltarget klappt - einfacher ist oft der schnellere Weg. Und es gibt auch keine Kollision bzgl. Skalierung. Hatte es vorher immer anders probiert.

Hat denn einer von Euch einen Tipp, wie ich die Größenskalierung über die Pfeiltasten

onClipEvent (mouseMove) {
if (Key.isDown(Key.UP)) {
this._xscale = this._xscale+10;
this._yscale = this._yscale+10;
} else if (Key.isDown(Key.DOWN)) {
this._xscale = this._xscale-10;
this._yscale = this._yscale-10;
}
}


begrenzen kann? In maximale und minimale Größe?

Habe eben in der Vorschau gesehen, dass Ihr ja schneller antwortet als erhofft.
questionner ist offline   Mit Zitat antworten
Alt 17-05-2004, 21:39   #12 (permalink)
_//\\#//\\_
 
Benutzerbild von warrantmaster
 
Registriert seit: Jan 2003
Beiträge: 7.060
ActionScript:
  1. onClipEvent (mouseMove)
  2. {
  3.     if (Key.isDown(Key.UP))
  4.     {
  5.         this._xscale<80 ? (this._xscale +=10,this._yscale +=10) :0;  
  6.     }
  7.     if (Key.isDown(Key.DOWN))
  8.     {
  9.         this._xscale>35 ? (this._xscale -=10,this._yscale -=10) :0;
  10.     }
  11. }

grz
warrantmaster ist offline   Mit Zitat antworten
Alt 18-05-2004, 07:10   #13 (permalink)
"Lust auf Stil"
 
Benutzerbild von questionner
 
Registriert seit: Jun 2003
Ort: Florenz
Beiträge: 1.490
Thumbs up

Hallo Warrantmaster,

besten Dank, auf diese Variante wäre ich wohl nicht genommen, es direkt innen im Key.isdown vor dem Skalierungswert einzubauen. Klappt wunderbar. Vielen Dank. Jetzt kann der Flieger wunderbare Bewegungen über die Bühne ziehen ohne sich zu verzerren.
questionner 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 11:57 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele