01. marts 2002 - 17:35
Der er
31 kommentarer og 1 løsning
hvorfor vises det ikke?
Jeg kan ikke få movieclippet til at skifte til fra 5 når _root.ant_klik == 2; onClipEvent (mouseUp) { if (this.hitTest(_root._xmouse, _root._ymouse)) { trace ("ok"); // /////////// _root.ant_klik = (_root.ant_klik+1); if (_root.ant_klik == 1) { gotoAndPlay (5); _root.klik1 = String(this); _root.klik1 = _root.klik1.charAt(8); _root.fuldnavn1 = this._name; trace (_root.klik1); } if (_root.ant_klik == 2) { gotoAndPlay (5); starttid = getTimer(); _root.klik2 = String(this); _root.klik2 = _root.klik2.charAt(8); _root.fuldnavn2 = this._name; trace (_root.klik2); if (_root.klik1 == _root.klik2) { _root.msg = "Hurra"; _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller } else { _root.msg = "Øv"; brugtid = getTimer(); do { brugtid = getTimer(); trace ("tiden går"); } while ((brugtid-starttid)<3000); _root[_root.fuldnavn1].gotoAndPlay(1); trace ("1-1 vendes igen"); _root[_root.fuldnavn2].gotoAndPlay(1); trace ("2-1 vendes igen"); _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller } } // ////////////// } } Ja, dette er altså koden. :-0
Annonceindlæg fra Sabio
01. marts 2002 - 17:48
#1
erstat gotoAndStop(5) med this.gotoAndStop(5)... En bug i F5... :o)
01. marts 2002 - 17:57
#2
Den går stadigvæk ikke til frame 5. Jeg har sat en trace in i frame 5 og den vises slet ikke i output-vinduet.
01. marts 2002 - 17:58
#3
læg din this.gotoAndStop(5) helt op over dine if-else, for det skal den jo under alle omstændigheder gøre... Har du scener i din film?
01. marts 2002 - 18:01
#4
Du kan eventuelt skrive: this.gotoAndStop(5); trace(_currentframe);
01. marts 2002 - 18:01
#5
Der er ingen scener. Nu lægger den aller øverst. Det bevirker, at den først vises når all ifsætningerne er gennmløbet.
01. marts 2002 - 18:05
#6
Måske bliver _root.ant_klik værdien tolket som en streng. prøv at erstatte _root.ant_klik = (_root.ant_klik+1); med _root.ant_klik++;
01. marts 2002 - 18:09
#7
Den kører ifsætningerne igennem til efter det der med brugtid-starttid og så vender den brikkerne eller i hvert fald den første der er vendt, for nummer 2 bliver aldrig vendt.
01. marts 2002 - 18:20
#8
hvis den når helt ind til brugtid, så bliver gotoAndPlay(5) også eksekveret. Den eneste mulighed jeg kan se er at du vil vil have en anden tidlinie ( fks hovedfilmen eller et andet MC til at gå til frame 5 ) I så fald skal du bruge syntaksen _root.gotoAndPlay(5); // hvis det er hovedfilmen og angive hele stien til movieclippet som du vil styre
01. marts 2002 - 18:36
#9
Det mener jeg jo, at du skulle have ret i, men når jeg tester min film sker der bare ingenting. Al denne kode er skrevet i mc'et og gotoAndPlay skulle være nok ik'?
01. marts 2002 - 18:39
#10
gotoAndPlay() er nok hvis det er mc'ets egen tidlinie du vil bruge. På hvilken tidlinie ligger den frame 5 du vil hen til ?
01. marts 2002 - 18:40
#11
På mc'ets tidslinie.
01. marts 2002 - 18:43
#12
Har du andre clipevents på dette MC? f. eks. onClipEvent(enterframe) {}
01. marts 2002 - 18:45
#13
Nej
01. marts 2002 - 18:49
#14
Så kan jeg ikke forstå hvorfor den aldrig kommer til frame 5. Prøv at lave en test knap inde i denne MC med actionen on (release) { trace("button pressed"); gotoAndStop(5); }
01. marts 2002 - 18:55
#15
Det vil den ikke, men er det ikke fordi, at mc'et ikke indeholder en knap, men ken er et movieclip? Kan on ... ikke kun bruges til knapper?
01. marts 2002 - 18:57
#16
Jo, on bruges kun på knapper, men dit mc kan sagtens have en knap inden i sig ;)
01. marts 2002 - 18:59
#17
Nå ja, det var det du mente, men det virker ikke rigtigt.
01. marts 2002 - 19:02
#18
Der må være noget galt med din fla. Hvis dit MC har 5 frames skal den gå til frame 5 med gotoAndPlay(5). Jeg kan desværre ikke komme i tanke om flere muligheder...
01. marts 2002 - 19:03
#19
Jo, men en testknap går den til frame 5.
01. marts 2002 - 19:04
#20
Men ikke hvis man først trykker på en anden brik og dette mc er nummer to.
01. marts 2002 - 19:07
#21
Fint så overskriv din kode ved at copy/paste onClipEvent (mouseUp) { if (this.hitTest(_root._xmouse, _root._ymouse)) { trace ("ok"); // /////////// _root.ant_klik = (_root.ant_klik+1); if (_root.ant_klik == 1) { gotoAndPlay(5); _root.klik1 = String(this); _root.klik1 = _root.klik1.charAt(8); _root.fuldnavn1 = this._name; trace (_root.klik1); } if (_root.ant_klik == 2) { gotoAndPlay(5); starttid = getTimer(); _root.klik2 = String(this); _root.klik2 = _root.klik2.charAt(8); _root.fuldnavn2 = this._name; trace (_root.klik2); if (_root.klik1 == _root.klik2) { _root.msg = "Hurra"; _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller } else { _root.msg = "Øv"; brugtid = getTimer(); do { brugtid = getTimer(); trace ("tiden går"); } while ((brugtid-starttid)<3000); _root[_root.fuldnavn1].gotoAndPlay(1); trace ("1-1 vendes igen"); _root[_root.fuldnavn2].gotoAndPlay(1); trace ("2-1 vendes igen"); _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller } } // ////////////// } }
01. marts 2002 - 19:09
#22
Bruger dine andre MC'er også den samme variabel _root.ant_klik ?
01. marts 2002 - 19:09
#23
ja
01. marts 2002 - 19:11
#24
Din kode havde ingen virkning.
01. marts 2002 - 19:19
#25
Jeg har fundet fejlen (tror jeg) Prøv at fjerne dit do-while loop :)
01. marts 2002 - 19:21
#26
Ja, der har jeg været engang. Men så sker der det, at anden brik der bliver trykket på går tilbage til frame 1 så hurtigt, at man ikk enår at se hvad det er. Hvad gør jeg så for at forsinke at den vender tilbage til frame 1?
01. marts 2002 - 19:28
#27
et øjeblik, nu hvor vi ved hvorfor problemet opstod kan vi sagtens korrigere det. omskriver lige dit script
01. marts 2002 - 19:49
#28
onClipEvent(enterframe) { if (timerActive) { brugtid = getTimer(); if (brugtid-starttid) > 3000) { _root[_root.fuldnavn1].gotoAndPlay(1); trace ("1-1 vendes igen"); _root[_root.fuldnavn2].gotoAndPlay(1); trace ("2-1 vendes igen"); _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller timerActive = false; } } } onClipEvent (mouseUp) { if (timerActive != true) { if (this.hitTest(_root._xmouse, _root._ymouse)) { trace ("ok"); // /////////// _root.ant_klik = (_root.ant_klik+1); if (_root.ant_klik == 1) { gotoAndPlay(5); _root.klik1 = String(this); _root.klik1 = _root.klik1.charAt(8); _root.fuldnavn1 = this._name; trace (_root.klik1); } if (_root.ant_klik == 2) { gotoAndPlay(5); starttid = getTimer(); _root.klik2 = String(this); _root.klik2 = _root.klik2.charAt(8); _root.fuldnavn2 = this._name; trace (_root.klik2); if (_root.klik1 == _root.klik2) { _root.msg = "Hurra"; _root.ant_klik = 0; // nustiller _root.klik1 = ""; // nustiller _root.klik2 = ""; // nustiller } else { _root.msg = "Øv"; timerActive = true; } } // ////////////// } //end hittest } // end timerActive == false } // end enterframe Det kan godt være at der mangler nogle "}" men jeg håber du kan se hvad jeg gør. mvh geo
01. marts 2002 - 21:17
#29
Lingoman ---> Et par () omkring betingelsen i en f-sætning var alt hvad der skulle til i dit Script. Du er jo en ren Flash-helt. Tak for hjælpen. Og ikke mindst: Tak for tålmodigheden.
01. marts 2002 - 21:32
#30
Jeg er nødt til lige at spørge. Hvad tænker du når du laver sådan et script. For det er vel det vi andre lærer af.
01. marts 2002 - 21:34
#31
Lige en sidste ting. Når jeg nu har dette lange script som skal på i alt 16 brikker, kan det så ikke lægge ud som function() et eller andet sted, så det kun er et sted det skal rettes ved en videreudbygning?
02. marts 2002 - 00:08
#32
Hele onMouseUp kan i hvertfald laves til en function _root.click(mc_name) ret nemt... Prøv selv at implementere denne...
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.