Zurück   Flashforum > Flash > ActionScript > ActionScript 2

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-03-2011, 08:56   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 3
Hintergrund folgt Maus - HILFE!

ich habe ein problem
und zwar, ich habe ein bild was sagen wir 300x4000 ist
meine bühne ist 300x400
wenn ich meine maus ein wenig in richtung rand bewege möchte ich dass sich der hintergrund in diese richtung mitverschiebt
das Hintergrundbild soll mittig ausgerichtet sein, und wenn es dann an den Rand des Bildes kommt, aufhören sich zu bewegen
also am anfang in beide richtungen bewegbar sein

flash is null mein gebiet aber ich kann en paar grundlagen

habe auch schon google und die suchfunktion benutzt, aber ich finde nicht wirklich was brauchbares oder bin einfach zu blöd dafür

Code:
_root.onMouseMove = function () {
    hintergrund._x += (_xmouse - hintergrund._x) / 10;
}
allerdings funzt dieser codeschnippsel nicht so wie ichs will, und habe auch echt keine ahnung was ich wie verändern muss um züm gewünschen ergebnis zu kommen

jemand meinte, das es vielleicht mit ratotion möglich wäre?
tornadomax ist offline   Mit Zitat antworten
Alt 24-03-2011, 10:20   #2 (permalink)
Flasher
 
Registriert seit: Aug 2010
Ort: Stuttgart
Beiträge: 360
Nein, rotation nicht. Hier hilft Mathematik
Ich nehme an du möchtest, dass dein Hintergrundbild mittig ausgerichtet ist, wenn auch die Maus in der Mitte ist. Und wenn du die Maus von der Mitte wegbewegst (in richtung der Ränder), soll sich das Hintergrundbild dazu mitverschieben. Generell würde ich eher die ENTER_FRAME nutzen, anstelle der MouseMove. In dieser Funktion berechnest du nun den Abstand deiner Maus zur Mitte des Bildschirms. Nun musst du das Hintergrundbild passend dazu verschieben, also im gleichen Verhältnis.

Schau dir mal an, was du machst. Du subtrahierst die X-Position des Hintergrund von deiner Maus. Wenn x=0, dann siehst du keine Veränderung, egal wie du die Maus bewegst, richtig?

Ich hoffe ich konnte dir schonmal einen kleinen Ansatz liefern. Denk nochmal drüber nach, grübel ein Momentchen, und dann bekommst es sicher hin. Wenn noch Probleme bestehen, schreib hier einfach, dann kommt Pseudocode

Liebe Grüße

PS: AUSSERDEM sehe ich gerade, das da noch ein grober Denkfehler drin ist.
Wenn eine Grafik 300 breit ist und 4000 hoch, und die Bühne 300 breit und 400 hoch, was haben wir dann?
Sicher keine Verschiebung in der horizontalen
__________________
Erwähne NIEWIEDER das Wort "Klickdummy"!

Geändert von Ouroborus23 (24-03-2011 um 10:28 Uhr)
Ouroborus23 ist offline   Mit Zitat antworten
Alt 24-03-2011, 10:26   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 3
ja da haste recht mit dem x=0

ja der ansatz ist zwar da, aber da ich null ahnung von actionscript habe und wie wo was hingehört etc, kann ich das script nicht wirklich so bearbeiten das was sinnvolles rauskommt

gruß

jap hast recht, schreibfehler drin, aber es soll 4000 breit sein und nich hoch

Geändert von tornadomax (24-03-2011 um 10:57 Uhr)
tornadomax ist offline   Mit Zitat antworten
Alt 24-03-2011, 11:03   #4 (permalink)
Flasher
 
Registriert seit: Aug 2010
Ort: Stuttgart
Beiträge: 360
Pseudolösung

Erste Überlegung: Wir richten initial die breitere Grafik mittig aus:

hintergrund.x=-hintergrund.breite*.5

Nächste Überlegung: was steht zu was im verhältnis?

Unsere Mausposition steht im Verhältnis zur Position des Hintergrunds.

Ist die Mausposition mittig (maus.x = bühne.breite*.5), dann ist auch unser
Hintergrund mittig. (siehe erste Überlegung ;P)

Das heißt, dass - je weiter die Maus von der Mitte entfernt ist, wir auch den Hintergrund verschieben müssen:

hintergrund.x = ((hintergrund.breite*.5)-(bühne.breite*.5))+(((maus.x-(bühne.breite*.5))/(bühne.breite*.5))*((hintergrund.breite*.5)-(bühne.breite*.5)))

Müsste so funktionieren - ich hoffe ich hab nix durcheinander gehauen. Hab dir noch was drangehangen

PS: Das blaue ist dein Hintergrund, das violette deine Bühne. Hab das nur der Anschaulichkeit halber so gemacht. Ach, und es ist leider As3, hoffe du kannst das portieren, denke aber sicher schon
Angehängte Dateien
Dateityp: fla pseudo.fla (6,5 KB, 16x aufgerufen)
__________________
Erwähne NIEWIEDER das Wort "Klickdummy"!

Geändert von Ouroborus23 (24-03-2011 um 11:06 Uhr)
Ouroborus23 ist offline   Mit Zitat antworten
Alt 24-03-2011, 12:37   #5 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 3
hey,

danke soweit für das Beispiel, habe es jetzt schon etwas besser "begriffen".
Allerdings haben wir ein Problem, und zwar dürfen wir nur AS 2.0 benutzen.
Gibt es für die 2.0 ähnliche / gleiche Scripts?

kannst du da uns bitte helfen? da uns dort auch keiner helfen kann momentan.

Danke dir!
tornadomax 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Flash CS4] Pfeil folgt Maus tiffany123 Flash Einsteiger 1 16-02-2010 08:41
Erweiterter Mausverfolger (MC folgt MC folgt Maus) flasshi Flash Einsteiger 21 27-06-2007 22:17
Movie folgt der maus taxomio Flash Einsteiger 6 30-10-2006 21:25
Linenende folgt Maus Max Flash MX 5 15-03-2006 15:10
Objekt folgt Maus Der Dude Flash 4 und Flash 5 7 27-04-2002 11:34


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:56 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele