Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-07-2004, 08:52   #1 (permalink)
Mainstream-Allergiker
 
Benutzerbild von Roderix
 
Registriert seit: Aug 2001
Ort: Hamburg/Germany
Beiträge: 406
Question Wie mehrere Movieclips gleichzeitig ansprechen?

Hallo Forum!

Wie kann man mehrere Movieclips gleichzeitig ansprechen?

Bsp.:

Ich habe folgende Movieclip-Instanzen auf der Bühne:
clip_1, clip_2, clip_3, clip_4 und clip_5

Ich möchte, daß alle zu Bild 10 springen und dort stoppen:
clip_1.gotoAndStop(10);
clip_2.gotoAndStop(10);
clip_3.gotoAndStop(10);
clip_4.gotoAndStop(10);
clip_5.gotoAndStop(10);

Kann man das nicht irgendwie zusammenfassen?

Ich stelle mir soetwas wie eine Variable n vor, die die Werte 1 bis 5 enthält:
n = 1, 2, 3, 4, 5;
oder
n = 1 bis 5;

Dann könnte man die Anweisung so ähnlich wie folgendes schreiben:
clip_n.gotoAndStop(10);

Ich denke, Ihr wisst, was ich meine!?
Welche Möglichkeiten gibt es diesbzgl. in korrekter AS-Syntax?
(Ist es generell möglich, einer Variablen nicht nur einen Wert, sondern einen Wertebereich zuzuweisen?)

Bin dankbar für jeden Tipp!


PS:
Habe bereits die Suchfunktion bemüht, aber nichts gefunden.
Liegt wohl daran, daß mir kein eindeutiger Suchbegriff einfällt.
__________________
Meine verbalen Äußerungen geben nicht uneingeschränkt meine Meinung wieder.

Gruß, Roderix
Roderix ist offline   Mit Zitat antworten
Alt 14-07-2004, 09:09   #2 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
naja, gabs natürlich schon oft, aber nach was solltest Du auch suchen...

ActionScript:
  1. for(var i=1;i<=5;i++){
  2. this["clip_"+i].gotoAndStop(10);//es fehlt kein Punkt!!!
  3. }

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 14-07-2004, 18:02   #3 (permalink)
Mainstream-Allergiker
 
Benutzerbild von Roderix
 
Registriert seit: Aug 2001
Ort: Hamburg/Germany
Beiträge: 406
Danke für den Tipp, Alois!

In der konkreten Umsetzung hakt's noch irgendwo,
darum eine kleine Zusatzfrage:
Ich habe folgendes Script auf einem Movieclip plaziert und möchte, daß dieser entfernt wird,
wenn er auf der übergeordneten Ebene (_parent.) im Movieclip "kontaktbereich" einen von clip_1 bis clip_5 berührt (hitTest).
Hier mein Versuch:

ActionScript:
onClipEvent (enterFrame) {
for (var i = 1; i<=5; i++) {
if (this.hitTest(_parent.kontaktbereich["clip_"+i])) {
removeMovieClip(this);
}
}
}

Leider wird der gewünschte Effekt nicht ausgelöst.
Hat irgendjemand eine Idee?
__________________
Meine verbalen Äußerungen geben nicht uneingeschränkt meine Meinung wieder.

Gruß, Roderix
Roderix ist offline   Mit Zitat antworten
Alt 14-07-2004, 18:12   #4 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Dein this.hitTest bezieht sich auf die Timeline des onEnterFrames. vielleicht liegt da der Fehler?
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 15-07-2004, 09:12   #5 (permalink)
Mainstream-Allergiker
 
Benutzerbild von Roderix
 
Registriert seit: Aug 2001
Ort: Hamburg/Germany
Beiträge: 406
Was wäre die Alternative?
__________________
Meine verbalen Äußerungen geben nicht uneingeschränkt meine Meinung wieder.

Gruß, Roderix
Roderix ist offline   Mit Zitat antworten
Alt 15-07-2004, 10:37   #6 (permalink)
AchimHomeZone
 
Benutzerbild von onip
 
Registriert seit: Feb 2002
Ort: Cöllefornia / Cologne / Kölle / Köln
Beiträge: 1.541
positonsabfrage (_x & _y)
__________________
__________________


4. Lunyu 2.13.

Zi Gong fragte, was einen Flasher ausmache.
Konfuzius sprach: "Er predigt nur das, was er zuvor schon selbst in die Tat umgesetzt hat."
onip ist offline   Mit Zitat antworten
Alt 15-07-2004, 10:53   #7 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155

...im Prinzip funktioniert das doch, allerdings vermute ich, daß der zu löschende mc nicht dynamisch (per createEmpty..., attach.... oder duplicate...) erstellt wurde und somit eine Tiefe kleiner 1 hätte, dann funktioniert aber removeMovieClip nicht dafür ist dann unloadMoive, versuchs mal so:
ActionScript:
  1. onClipEvent (enterFrame) {
  2. for (var i = 1; i<=5; i++) {
  3. if (this.hitTest(_parent.kontaktbereich["clip_"+i])) {
  4. this.unloadMovie();
  5. }
  6. }
  7. }

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:10   #8 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
wenn die tiefe kleiner 1 ist, alois, muss man ihn doch erst swappen, bevor man ihn anfassen kann...?!
oder war da nicht was...?*koppkratz*


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:14   #9 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
...wenn man unbedingt removeMovieClip verwenden will, muss man swappen:
ActionScript:
  1. onClipEvent (enterFrame) {
  2. for (var i = 1; i<=5; i++) {
  3. if (this.hitTest(_parent.kontaktbereich["clip_"+i])) {
  4. this.swapDepths(100);
  5. this.removeMovieClip();
  6. }
  7. }
  8. }
...aber man kann ja auch unloadMovie....
Edit: ...oder 'ne funktion basteln, die immer funzt
ActionScript:
  1. Movieclip.prototype.removeIt=function(mc){
  2.     if (!mc)mc=this;
  3.     mc.removeMovieClip();
  4.     mc.unloadMovie();
  5. }
...eigentlich blöd 2 Befehle, die dasselbe machen sollen...
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (15-07-2004 um 11:25 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:15   #10 (permalink)
Mainstream-Allergiker
 
Benutzerbild von Roderix
 
Registriert seit: Aug 2001
Ort: Hamburg/Germany
Beiträge: 406
Thumbs up

Es klappt!
Suuuuper!
Hatte einen kleinen "Flüchtigkeitsfehler" in der Pfadangabe gemacht!
Danke an alle!
__________________
Meine verbalen Äußerungen geben nicht uneingeschränkt meine Meinung wieder.

Gruß, Roderix
Roderix ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:22   #11 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
Zitat:
removeMovieClip verwenden will, muss man swappen
wusst ich doch, da war mal was...
hab solche probs nie...*schulterzugg*

p.s. liebe grüße alois...


greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 15-07-2004, 11:24   #12 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
...hab nochmal ein wenig editiert...
*hy kelor*
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 06-10-2004, 18:42   #13 (permalink)
---
 
Benutzerbild von LeBensch
 
Registriert seit: Jan 2002
Ort: Baden-Baden
Beiträge: 172
same problem

Hallo,
ich hab ein ähnliches Problem.
Ich möchte mit einem Klick, mehrere MCs (Checkbox01-Checkbox013) steuern. (Die Checkboxen haben nichts mit den flasheigenen Komponenten-Checkboxen zu tun, sondern sind von mir kreierte MCs)

Auf diese Art und Weise klappts wunderbar:
Code:
on(release) {
	_parent._parent.Checkbox01.gotoAndStop(2);
	_parent._parent.Checkbox02.gotoAndStop(2);
	_parent._parent.Checkbox03.gotoAndStop(2);
	_parent._parent.Checkbox04.gotoAndStop(2);
	_parent._parent.Checkbox05.gotoAndStop(2);
	_parent._parent.Checkbox06.gotoAndStop(2);
	_parent._parent.Checkbox07.gotoAndStop(2);
	_parent._parent.Checkbox08.gotoAndStop(2);
	_parent._parent.Checkbox09.gotoAndStop(2);
	_parent._parent.Checkbox010.gotoAndStop(2);
	_parent._parent.Checkbox011.gotoAndStop(2);
	_parent._parent.Checkbox012.gotoAndStop(2);
	_parent._parent.Checkbox013.gotoAndStop(2);
	_parent.gotoAndStop(2);

}
Aber wenn ichs so wie untenstehend vereinfache, dann funktionierts nicht mehr:
Code:
on(release){
	for(var i=1;i<=13;i++) { 
	_parent._parent.Checkbox["0"+i].gotoAndStop(2);
	}
	_parent.gotoAndStop(2);

}
Wo liegt da mein Denkfehler?

Grüßles
LeBensch
__________________
Es gibt nichts gutes, außer man tut es
--
Wenn man keine Ahnung hat: Einfach mal die Fresse halten!
--
Helga: Hägar, du hörst immer nur was du hören willst. Du bist der perfekte Ignorant!
Hägar: Perfekt? Meinst du wirklich?
--
Die Dinge im Leben sind nicht nur schwarz oder weiß. Sie existieren in einem Kontinuum von Graustufen und diese sind im besten Falle auch noch bunt!
LeBensch ist offline   Mit Zitat antworten
Alt 06-10-2004, 18:48   #14 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Hi.

Eher Schreibfehler

Versuche mal so:

ActionScript:
  1. on(release){
  2.     for(var i=1;i<=13;i++) {
  3.     _parent._parent["Checkbox0"+i].gotoAndStop(2);
  4.     }
  5.     _parent.gotoAndStop(2);
  6.  
  7. }
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 06-10-2004, 19:13   #15 (permalink)
---
 
Benutzerbild von LeBensch
 
Registriert seit: Jan 2002
Ort: Baden-Baden
Beiträge: 172
Gebt mir ein Stück Wand zum Kopf dagegen hämmern...

Danke biz, da lag der Fehler

Grüßles
LeBensch
__________________
Es gibt nichts gutes, außer man tut es
--
Wenn man keine Ahnung hat: Einfach mal die Fresse halten!
--
Helga: Hägar, du hörst immer nur was du hören willst. Du bist der perfekte Ignorant!
Hägar: Perfekt? Meinst du wirklich?
--
Die Dinge im Leben sind nicht nur schwarz oder weiß. Sie existieren in einem Kontinuum von Graustufen und diese sind im besten Falle auch noch bunt!
LeBensch 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 15:15 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele