Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-10-2003, 15:11   #1 (permalink)
nie-auslernender
 
Registriert seit: Jul 2001
Beiträge: 466
hit test?

also ich bin grad bissl am rumprobieren und hab auf der bühne 30 mcs (instanzname: splitter1 bist splitter30) welche unterschiedlich groß sind. in den mcs liegen buttons als schaltfläche. die mcs kann man per drag auf der bühne hin und her schieben. das funktioniert auch prima.
nur hab ich das problem wenn man die buttons aufhört hin und her zu schieben soll es nicht passieren können, das man einen button genau auf einen anderen ablegt. also wollte ich einen kollisionsabfrage machen:

for (var i = 1; i<=30; i++) {
ziel = ["_parent.splitter"+i];
if(name==ziel){
//nichts
}else{
if (!hitTest(name) && ziel) {
trace("hit");
name._y += (ziel._y-_y)/20;
gotoAndPlay(2);
}
}
}


dieser script liegt im 3. frame eine mcs.
die variable "name" ist eine pfadangabe welche über geben wird. z.b.:

name="_parent.splitter4";


also das problem ist, dassss mir immer hit ausgegeben wird auch wenn er auf keinen anderen button liegt. keine ahnung obs überhaupt der richtige weg ist.

weiß wer rat?


mfg esia
__________________
it´s always the same, but most different

Geändert von esia (22-10-2003 um 15:12 Uhr)
esia ist offline   Mit Zitat antworten
Alt 22-10-2003, 15:55   #2 (permalink)
freundlich ...
 
Benutzerbild von LoRMiddleCLass
 
Registriert seit: Aug 2002
Ort: Berlin
Beiträge: 588
ehm...

kann es sein, dass du einfach das '!' vor dem hittest weglassen musst?

heißt doch so: wenn KEIN hit, dann trace "hit"

und das wird doch immer erfüllt.

*m
__________________
the universe wants you to win...
LoRMiddleCLass ist offline   Mit Zitat antworten
Alt 22-10-2003, 18:00   #3 (permalink)
nie-auslernender
 
Registriert seit: Jul 2001
Beiträge: 466
yop thx, habs aber jetzt nochmal umgebaut und den script direkt auf den button gelegt:

ActionScript:
  1. on (press) {
  2.     startDrag(_parent.splitter4, false, -431, -250, 398, 211);
  3.     _parent.splitter4.swapDepths(60);
  4. }
  5. on (release, releaseOutside) {
  6.     _level0.onEnterFrame = function() {
  7.         for (var i = 1; i<=30; i++) {
  8.             ziel = "_root.navi_frei.splitter4"
  9.             name = "_root.navi_frei.splitter"+i;
  10.             if (name == "_root.navi_frei.splitter4") {
  11.                 //nicht mit sich selbst
  12.             } else {
  13.                 if (ziel, hittest(name)) {
  14.                     _root.navi_frei.splitter4._y+=(name._y-_root.navi_frei.splitter4._y)/20
  15.                     _root.navi_frei.splitter4._x+=(name._x-_root.navi_frei.splitter4._x)/20
  16.                     f=1;
  17.                 }
  18.             }
  19.         }
  20.         f++;
  21.         if (f>2) {
  22.             f = 1;
  23.             delete this.onEnterFrame;
  24.         }
  25.     }
  26.     stopDrag();
  27. }
  28. {


hoffe man sieht noch durch. denn hab wieder ein problem. ich möchte das sich der button immer von der mitte des buttons wegbewegt den er berührt. momentan geht er nur nach links unten. bin nicht son mathegenie. weiß wer wie. die entscheidenen zeilen liegen hier:

ActionScript:
  1. _root.navi_frei.splitter4._y+=(name._y-_root.navi_frei.splitter4._y)/20
  2.                     _root.navi_frei.splitter4._x+=(name._x-_root.navi_frei.splitter4._x)/20
  3.                 {

name ist der pfad des mcs von dessen mitt sich der button wegbewegen soll.

mfg esia
__________________
it´s always the same, but most different
esia 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:16 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele