Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-11-2004, 14:06   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
btn sound nur wenn mc move, sonst nicht

hallo,

auf btn in extern geladenen mc liegt folgendes script:

ActionScript:
  1. on (press) {
  2.     _root.menu.destx = "-124.45";
  3.     _root.meinSound.start(0,0);
  4.     _root.rewindAndLoad("kunden_01.swf");
  5.             eval(_parent.name).gotoAndStop(1);
  6.             _parent.name = "_parent."+this._name;
  7.             gotoAndStop("aktiv");
  8.                 func = function () {
  9.                 clearInterval(myfunc);
  10.                     _root.btn_getmenu._visible=true;
  11.         }
  12.    
  13. myfunc = setInterval(func,1750);
  14. }

jetzt soll der sound (_root.meinSound) nur abgespielt werden, wenn _root.menu.destx = "-124.45"; ausgeführt wird. wenn sich allerdings _root.menu schon auf "-124.45" befindet, dann soll _root.meinSound nicht abgespielt werden.

hat jemand eine idee wie folgendes realisierbar ist?
__________________
greetz bodi-bodissimo
bodissimo ist offline   Mit Zitat antworten
Alt 21-11-2004, 14:27   #2 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
sollte ich vielleicht vorher die _x position von _root.menu abfragen?

könnte ich sowas in der richtung einbauen? funktioniert so aber natürlich nicht.
ActionScript:
  1. if(_root.menu._x = "-124.45") {
  2.             _root.meinSound.stop;
  3.         }
__________________
greetz bodi-bodissimo

Geändert von bodissimo (21-11-2004 um 14:30 Uhr)
bodissimo ist offline   Mit Zitat antworten
Alt 21-11-2004, 21:26   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
hat keiner eine idee?

geht das überhaupt so in der richtung? nicht, dass ich mich jetzt umsonst damit plage :-)
__________________
greetz bodi-bodissimo
bodissimo ist offline   Mit Zitat antworten
Alt 21-11-2004, 23:45   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
hab trace werte eingegeben und es funkt nicht.
kann mir bitte jemand dabei helfen?

ActionScript:
  1. on (press) {
  2.     _root.menu.destx = "-124.45";
  3.     trace (_root.menu._x +" / "+_root.menu._y);
  4.     if(_root.menu._x == 130.2 && _root.menu._y == 175.95) {
  5.             _root.meinSound.start;
  6.         }
  7.     if(_root.menu._x == -124.2 && _root.menu._y == 175.95){    
  8.             _root.meinSound.stop;
  9.         }
  10.     _root.rewindAndLoad("kunden_01.swf");
  11.             eval(_parent.name).gotoAndStop(1);
  12.             _parent.name = "_parent."+this._name;
  13.             gotoAndStop("aktiv");
  14.                 func = function () {
  15.                 clearInterval(myfunc);
  16.                     _root.btn_getmenu._visible=true;
  17.         }
  18.    
  19. myfunc = setInterval(func,1750);
  20. }
__________________
greetz bodi-bodissimo

Geändert von bodissimo (21-11-2004 um 23:49 Uhr)
bodissimo ist offline   Mit Zitat antworten
Alt 21-11-2004, 23:55   #5 (permalink)
meistens harmlos
 
Benutzerbild von rena
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 17.643
Was ist denn "-124.45"? Ein String?
Wenn es eine x-Position sein soll, dann ohne Anführungszeichen.

Dann geht auch eine Abfrage ähnlich wie in deinem zweiten Beitrag allerdings mit == oder besser <= (ist relativ unwahrscheinlich, dass etwas auf Kommastelle genau steht).
Prinzip:
= : Zuweisungsoperator
==: Vergleichsoperator
Und bei meinsound.stop fehlen die Klammern hintendran.

Andersrum wäre es auch möglich, den Sound überhaupt erst zu starten, wenn die x-Position > 124.45 ist.

Oder hat das andere in deinem Script (rewindandload u.ä.) auch mit dem eigentlichen Problem zu tun? Weil da weiß ich jetzt überhaupt nicht, was das evtl. für Auswirkungen haben könnte.

Probier mal die o.g. Tipps. Falls es dann noch nicht funktioniert, poste mal eine Beispielfla, allerdings ohne die nicht das Problem betreffenden Teile/Scripte/Elemente, damit man sich nicht so durchwursteln muss.

Gruß
Rena
__________________
www.rena-hermann.de

The angels have the phone box

Geändert von rena (21-11-2004 um 23:56 Uhr)
rena ist offline   Mit Zitat antworten
Alt 22-11-2004, 00:50   #6 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
hi rena,

danke erstmal für deine antwort.

ist kein string sondern x pos. habs probiert, macht keinen unterschied ob mit "" oder ohne "".

durch press btn wird der mc.menu mit abbremsung auf position gebracht.

ActionScript:
  1. onClipEvent (enterFrame) {
  2.     delta_x = destx-_x;
  3.     _x += delta_x/6;
  4. }
steckt dahinter...

während sich der mc.menu auf position bringt soll der sound abgespielt werden.
ist der mc.menu schon auf position, weil button schon mal gedrückt wurde, dann soll bei neuerlichen drücken der sound nicht abgespielt werden. ist so ein swoosh sound wenn das menu nach links fährt.

und wo fehlen welche klammern? bei meinSound.start sind auch keine klammern. gehören da welche?
__________________
greetz bodi-bodissimo

Geändert von bodissimo (22-11-2004 um 00:54 Uhr)
bodissimo ist offline   Mit Zitat antworten
Alt 22-11-2004, 01:05   #7 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
diese zeile würde ich wie folgt ändern:
PHP-Code:
_root.menu.destx = -124.45
dann würde ich die if abfragen ändern....
nicht so:
==
sondern:
>=
bzw
<=

z.B.
PHP-Code:
if(blabla._x >= 100.45){ 
anders kann je nach dem genau diese pos übersprungen werden und dann trifft deine if abrage nie zu! mit größer, bzw kleiner gleich stellst du sicher, das deine abfrage greift...

sonst hab ich mir dein as nicht genauer angeschaut... wenns weiterhin probs gibt posten!

cya, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 22-11-2004, 01:10   #8 (permalink)
carpe noctem
 
Registriert seit: Aug 2004
Beiträge: 114
Hi bodissimo

Zitat:
Zitat von bodissimo
..., weil button schon mal gedrückt wurde, dann soll bei neuerlichen drücken der sound nicht abgespielt werden.
wenn es dir eigentlich nur darum geht, ob der Button schon einmal gedrückt wurde oder nicht, kannst du doch einfach eine boolean-Variable anlegen, in der du speicherst, ob der Button schon mal gedrückt wurde oder nicht:
ActionScript:
  1. on (press) {
  2.    if(button_gedrueckt == undefined)
  3.     {
  4.          //noch sicherer wäre es, die Variable button_gedruekt erst auf false
  5.          //zu setzen und dies hier abzufragen
  6.          // z.B.:  if(_root.button_gedrueckt == false)...
  7.         //bewege das Menü...
  8.         //spiele den Sound ab...
  9.         button_gedrueckt = true;
  10.         //weise der Variablen button_gedruekt den Wert true zu
  11.         //=> sie ist jetzt nicht mehr undefined
  12.     }
  13.     else
  14.     {
  15.         //button wurde zuvor schon einmal gedrückt
  16.         //(da button_gedruekt einen Wert hat)
  17.         _root.meinSound.stop();
  18.         //stoppe den Sound
  19.     }
  20. }

gruß
__________________
... to be continued ...
xyz.xyz.xyz ist offline   Mit Zitat antworten
Alt 22-11-2004, 01:19   #9 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
also so funktioniert es ja schon mal, nur werden bei nochmaligen drücken, also wenn das menu die position <=0, alles sounds gestoppt.

ActionScript:
  1. on (press) {
  2.     _root.menu.destx = -124.45;
  3.     trace (_root.menu._x +" / "+_root.menu._y);
  4.     if(_root.menu._x >= 0) {
  5.             _root.meinSound.start(0,0);
  6.         }
  7.     if(_root.menu._x <= 0){    
  8.             _root.meinSound.stop();
  9.         }


@xyz:
danke dir, aber ich glaube das ist nicht das was ich brauche, denn ich kann das menu durch anderen button wieder reinfahren lassen und dann durch denn problemchen-button wieder aufmachen. dann wäre der sound aber gestoppt. ausserdem soll dieses script auf mehrere buttons gelegt werden. damit darf ein anderer button auch beim ersten klicken keinen sound auslösen wenn das menu schon weggefahren wurde.
__________________
greetz bodi-bodissimo

Geändert von bodissimo (22-11-2004 um 01:27 Uhr)
bodissimo ist offline   Mit Zitat antworten
Alt 22-11-2004, 02:09   #10 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 94
hmm ff ging wohl für eine zeit nicht...

lösung gefunden, aber nicht verstanden warum?
ActionScript:
  1. if(_root.menu._x >= 0) {
  2.             _root.meinSound.start(0,0);
  3.         }
  4.     if(_root.menu._x <= 0){     
  5.             meinSound.stop();
  6.         }

bei meinSound.stop das _root weg und es funkt :-)

danke euch allen jedenfalls recht herzlich.
__________________
greetz bodi-bodissimo
bodissimo 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 23:36 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele