Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-02-2004, 14:45   #1 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hitTest(magnet)

hi,

habe ein kleines followingsscript entdeckt, es überarbeitet und angepasst.
sobald mein guide eine sperrfläch betritt, erscheint eine sprechblase. soweit so gut.
jetzt soll aber, sobald er die sperrfläche betritt, er auf den mittelpunkt dieser ausgerichtet werden.
dazu liegt in der sperrfläche (quadrat2) ein "magnet".
auf meinem quide (guido) habe ich folgendes script gelegt.

if (this.hitTest(_root.quadrat2.magnet)) {
_x = _parent.quadrat2._x;
_y = _parent.quadrat2._y;
}
}

nur leider funzt es nicht. habe ich irgendwo einen denkfehler?

die instanz guido, liegt in dem mc -> follower.

hitTest4mcs_magnet.zip liegt auf
http://www.castra.de/download.htm

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 03-02-2004, 14:47   #2 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
Hi,

wie wärs mit:

ActionScript:
  1. if (this.hitTest(_root.quadrat2.magnet)) {
  2. this._x = _root.quadrat2._x - this._width/2;
  3. this._y = _root.quadrat2._y - this._height/2;
  4. }
  5. }
Grüße
Sascha
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 03-02-2004, 15:07   #3 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi sascha,

nee, haut leider nicht hin. habe es auch schon versucht. beim nächsten klick, ändert sich der abstand von mousezeiger zum guide.

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 03-02-2004, 16:00   #4 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
irgendwie gibt es ein Problem mit dem 2. Quadrat...da springt er immer ins off.
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 04-02-2004, 14:03   #5 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi,

so ist es richtig:
if (this.hitTest(_root.quadrat2.magnet)) {
this._parent._x = _root.quadrat2._x-this._width/2;
this._parent._y = _root.quadrat2._y-this._height/2;
}

leider kommt jetzt meine guide nicht mehr von dem magneten los. habe es schon mit clear(); escape(); mc.stop(); ....usw.
wie kann ich guido wieder loseisen?

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 05-02-2004, 13:33   #6 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi,

gibt es so eine art, != hitTest bzw. kann man diesen abschalten?
habe dem onclipEvent den wert, status = 0, zugewiesen. wenn jetzt der hitTest stattfindet, wird der wert auf 1 gestetzt. wenn nun status == 1 ist, wird ein button sichtbar der die hitTest function ausschalten soll um meinen guido wieder von dem magnet frei zu bekommen.

onClipEvent (enterFrame) {
status = "0";


if (this.hitTest(_root.quadrat1)) {
_root.ball.guido._rotation=40;
} else {
_root.ball.guido._rotation=0;
}


if (this.hitTest(_root.quadrat1.magnet)) {
this._parent._x = _root.quadrat1._x;
this._parent._y = _root.quadrat1._y;
status = "1";
}


if (status == "1"){
_root.button._visible = 1;

}
}

gruss sven
xlive ist offline   Mit Zitat antworten
Alt 05-02-2004, 13:37   #7 (permalink)
$sein || !$sein
 
Benutzerbild von gummipinsel
 
Registriert seit: Oct 2003
Ort: Barcelona
Beiträge: 130
Und gehts? Die Idee eine var zu ändern geht doch meist immer. (menus, slider,...).Leider gibt es es kein !hitTest. Vielleicht noch eine Schleife mehr?
__________________
XINGWEB
::: Design ist Kunst, die sich nützlich macht :::
gummipinsel ist offline   Mit Zitat antworten
Alt 05-02-2004, 15:59   #8 (permalink)
FBx
 
Benutzerbild von xlive
 
Registriert seit: May 2003
Beiträge: 968
hi,

der zeiger, "status = 1" liegt in der instanz mc2 , diese wiederum ist eine instanz von mc1.
im hauptfilm möchte ich jetzt die frage machen:

if (.....status == 1){
_root.anzeige1._visible = 1;

if (.....status == 0){
_root.anzeige2._visible = 1;

nur wie kann ich meinen "status" global ansprechen? mit mc1.m2.status == 1 kann´s ja nicht funzten.


gruss sven
xlive ist offline   Mit Zitat antworten
Alt 06-02-2004, 08:13   #9 (permalink)
$sein || !$sein
 
Benutzerbild von gummipinsel
 
Registriert seit: Oct 2003
Ort: Barcelona
Beiträge: 130
Du mußt die Variable auf _root ( und in der Zeitleiste) definieren:

var status = 0; // die Variable erst einmal initialisieren
// kannst Du auch mal mit _global.status =0;
// probieren

danach sprichst Du die Variable von wo auch immer mit _root an:

if (_root.status == 1){
_root.anzeige1._visible = 1;

if (_root.status == 0){
_root.anzeige2._visible = 1;// liegt anzeige2 auf _root
// oder in deinem MC?
__________________
XINGWEB
::: Design ist Kunst, die sich nützlich macht :::
gummipinsel 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 16:21 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele