Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-02-2005, 09:47   #1 (permalink)
>>>||<<<
 
Registriert seit: Dec 2002
Ort: München
Beiträge: 208
Fläche freigerubbelt - check ob alles sichtbar ist

Hat jemand eine Idee wie man feststellen
kann ob eine Fläche halbwegs freigerubbelt
bzw. sichbar ist?

ActionScript:
  1. this.createEmptyMovieClip("maske1", 1);
  2. this.bild_mc1.setMask(maske1);
  3.  
  4.  
  5. this.onMouseMove = function() {
  6.     var Register_1_ = _root;
  7.     var Register_2_ = this;
  8.     if (ziehen) {
  9.         if (Register_1_.bild_mc1.hitTest(Register_1_._xmouse, Register_1_._ymouse, false)) {
  10.             ziel = Register_2_.bild_mc1;
  11.             zielMaske = Register_2_.maske1;
  12.             i++;
  13.             zielMaske.attachMovie("Rubbelform", ("form" + i), i);
  14.             zielMaske[("form" + i)]._x = Register_1_._xmouse;
  15.             zielMaske[("form" + i)]._y = Register_1_._ymouse;
  16.             ziel.setMask(zielMaske);
  17.  
  18.             trace(zielMaske._width);
  19.             updateAfterEvent();   
  20.         }

mit _width und _height kann ich ja die Größe der Maske
auslesen und wenn die in der Breite und Höhe mit dem ziel
übereinstimmt könnte man ja denken, dass das Bild freigerubbelt.
leider stimmt das ja auch nur bedingt, wenn man nämlich mit der
maus einmal auf alle 4 ecken klickt hat die maske auch die breite
und höhe, obwohl nur ein paar stellen zu sehen sind.

hat jemand eine andere idee?
Viktor M. ist offline   Mit Zitat antworten
Alt 10-02-2005, 12:45   #2 (permalink)
Überzeugter Flasher...
 
Benutzerbild von DoppelX
 
Registriert seit: Oct 2001
Ort: Köln
Beiträge: 1.654
Hi,
hab mich mal mit deinem Problem beschäftigt. Ist garnicht so einfach wie ich dachte. Ich probier gerade ein bisschen rum, bin aber noch zu keinem vernümpftigen ergebniss gekommen. Vll. ist auch die Idee mit den Masken nicht so prickelnd. Ich Test heute noch ein bisschen rum und poste dann hier wieder.

Nich zu verachten ich hatte 0min schlaf heute nacht
__________________
Tjo...

Geändert von DoppelX (10-02-2005 um 12:47 Uhr)
DoppelX ist offline   Mit Zitat antworten
Alt 10-02-2005, 12:47   #3 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
teil deine Maske auf in x*y viele.. jenachdem wie genau du's haben möchtest.
Dann kannste abfragen, ob alle Masken berührt wurden.

grz
pape
pape ist offline   Mit Zitat antworten
Alt 10-02-2005, 13:09   #4 (permalink)
>>>||<<<
 
Registriert seit: Dec 2002
Ort: München
Beiträge: 208
Ich hatte noch einen Tipp bekommen den ich
gar nicht schlecht finde und mal ausprobieren werde.

Zitat:
nur so als Idee: ich würde die Fläche in Quadrate passender
Größe unterteilen und in einem Array speichern, ob mit der Maus
über das entsprechende Planquadrat gerubbelt wurde (true, false).
Also die Masken sind dann nur für das visuelle Bild (aufdecken des Bildes) verantwortlich. Und der eigentliche Check wo man schon geklickt hat findet in dem Gitternetz statt.

Geändert von Viktor M. (10-02-2005 um 13:10 Uhr)
Viktor M. ist offline   Mit Zitat antworten
Alt 10-02-2005, 13:50   #5 (permalink)
-
 
Benutzerbild von pape
 
Registriert seit: Jan 2004
Beiträge: 3.002
das entspricht übrigens dem was ich geschrieben habe!

grz
pape ist offline   Mit Zitat antworten
Alt 10-02-2005, 15:55   #6 (permalink)
Überzeugter Flasher...
 
Benutzerbild von DoppelX
 
Registriert seit: Oct 2001
Ort: Köln
Beiträge: 1.654
So.
Hab mal eben was zusammen geschustert. Mag MX nicht mehr

Das Ding hierbei ist nun Folgendes:

Es wird eine art Tilemap über dein Bild gelegt. Entweder lässt du es nun einfach so (falls es reicht) oder du machst anstatt alpha -= 20 einfach unloadMovie(this) und legst vorher an die gleiche position eine maske. Fertig. Somit "kann" definitiv keine Maske falsch liegen.

Hoffe hilft weiter.

Hier nochmal der Code (Nicht auf Var bezeichnungen achten. ):

PHP-Code:
//CONTAINERK
this.createEmptyMovieClip("mcc"0);
// Vars
0;
td 9;
tr 12;
//Do
for (i=0i<tri++) {
    for (
j=0j<tdj++) {
        
trace(n);
        
n++;
        
mcc.attachMovie("mask""mask"+nn);
        
mcc["mask"+n]._x pic._x+(mcc["mask"+n]._width*j);
        
mcc["mask"+n]._y pic._y+(mcc["mask"+n]._height*i);
        
mcc["mask"+n].onRollOver = function() {
            
this._alpha -= 20;
        };
    }

Kommt aber im Grundgenommen der Idee mit dem Raster gleich

gruss x²
Angehängte Dateien
Dateityp: zip rubbeln.zip (11,1 KB, 12x aufgerufen)
__________________
Tjo...

Geändert von DoppelX (10-02-2005 um 15:58 Uhr)
DoppelX 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:51 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele