[FlashMX] kom niet uit script

Pagina: 1
Acties:

  • FiscBiker
  • Registratie: April 2003
  • Laatst online: 20:42
Hallo,

Beseffende dat het veel te laat is om nog na te kunnen denken over dit probleem, heb ik besloten (na veel ander zoekwerk uiteraard) het probleem bij jullie neer te leggen.

Ik heb een eenvoudige timer gedownload van flashkits.com (ja ik ben zeer nieuw met flash)
In de eerste frame stel je minuten en seconden in, in de 13e frame worden de nodige aftrekkingen gedaan en begint het script weer bij frame 2.

Als de teller op 0:00 komt springt hij echter terug naar 2:00 en begint hij vreemd (of stopt) met lopen. Ik wil hem echter op dat moment door laten springen naar een volgende scene. De code voor de 13e frame moet er volgens mij dan alsvolgt uit zien:
--------------------------------------------------------------------------------
// een enkele seconde aftrekken (ieder digit heeft z'n eigen var)
set("/:sec2", (/:sec2-1));

// Na 10 seconden de eerste digit een aftrekken en de laatste terug op 9
if (/:sec2<0) {
set("/:sec1", (/:sec1-1));
/:sec2 = "9";
}

// Na een minuut de minuut digit aftrekken en de andere op resp 5 en 9
if (/:sec1<0) {
set("/:min", (/:min-1));
/:sec1 = "5";
/:sec2 = "9";
}

// Dit heb ik dus toegevoegd in de hoop op 0 door te kunnen naar scene Bestellied
// maar niet werkt
if (/:min<0) {
gotoAndPlay("Start Bestellied", 1);
}

// rest van originele code
gotoAndPlay("restart");
----------------------------------------------------------------------------------

Wie weet waarom het niet werkt mag het zeggen.
Bij voorbaat in ieder geval zeer hartelijk dank voor het meedenken.

Groeten,

Oliver

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 10:32

GrimaceODespair

eens een tettenman, altijd ...

Tip 1: de dingen die ik op Flashkit gezien heb, zijn meestal bagger geprogrammeerd. Ze werken wel, maar meestal met behoorlijk brakke code.

Tip 2:: De stijl is Flash 4. Misschien wil je graag 99,9% van je bezoekers pleasen, maar als het onnodig is, zou 'k het niet doen. Want zodra je ook maar 1 Flash 5-feature (en ik geloof dat er van 4 naar 5 toch wel interessante dingen zijn gebeurd) wil ondersteunen, vervalt het nut om Flash 4 te scripten. Omdat je nieuw bent in Flash: Google es wat op het addresseren van variabelen. Dan zie je dat we tegenwoordig
Flash ActionScript:
1
set("/:sec2", (/:sec2-1));
kunnen vervangen door:
Flash ActionScript:
1
_root.sec2 -= 1;
Dat leest toch een stuk makkelijker.

Tip 3: je doet
Flash ActionScript:
1
gotoAndPlay("Start Bestellied", 1);
Zorg er ook voor dat je filmpje ergens stopt. Doe dit door of gotoAndStop te doen ipv gotoAndPlay of een stop ergens verderop in te lassen. Misschien had je dit al, maar ik wou je er voor alle zekerheid nog even op wijzen.

Wij onderbreken deze thread voor reclame:
http://kalders.be


Verwijderd

Ik ben zelf altijd iemand die graag de .fla in me handen wil hebbben. Want, tja... je kan op op een veel nettere namier doen. Als je even de .fla wilt posten kan ik even een mooi sciptje er om heen schrijven.

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 10:32

GrimaceODespair

eens een tettenman, altijd ...

Verwijderd schreef op 14 April 2003 @ 08:22:
Als je even de .fla wilt posten kan ik even een mooi sciptje er om heen schrijven.
offtopic:
Dat is heel nobel van je, maar eigenlijk in strijd met de scriptrequestpolicy (64 scrabble-punten :P ) denk ik. Het is de bedoeling dat je mensen op weg helpt, en niet de oplossing voor hun maakt. Patsen kan je op FlashKit :+ No flame intended.

Wij onderbreken deze thread voor reclame:
http://kalders.be


  • FiscBiker
  • Registratie: April 2003
  • Laatst online: 20:42
Ik ben er uit!!!
Herschrijven van het script was inderdaad een goede optie, maar het kan (in mijn ogen) nog makkelijker dan wat GrimaceODespair voorstelde.
Enkel herschrijven loste echter het probleem niet op. Frame 13 ziet er nu zo uit:
------------------------------------------------------------------------------------
// 1 seconde aftrekken
var seconden = seconden - 1;

// 10 seconden aftrekken, seconde op 9
if (seconden < 0) {
var tienseconden = tienseconden - 1;
var seconden = 9;
}

// Minuut aftrekken en tienseconden op 5
if (tienseconden < 0) {
var minuten = minuten - 1;
var tienseconden = 5;
}

// Resultaat tonen en 1 sec wachten
gotoAndPlay("restart");
------------------------------------------------------------------------------------

Om bij nul door te starten heb ik nu in frame 2 (die met label 'restart') het volgende gezet:
------------------------------------------------------------------------------------
// Alles op 0 doorstarten maar
if (seconden == 0 add tienseconden == 0 add minuten == 0) {
gotoAndPlay("Start Bestellied", 1);
}
------------------------------------------------------------------------------------

Bedankt voor de aandachtspunten!!

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
werkt dat?

ik zie niets dan fouten - als het werkt ligt het niet aan de mooie code maar aan de crappy JS van MX. ik raad aan dit NIET als verder gebruik toe te laten...

Verwijderd

GrimaceODespair schreef op 14 April 2003 @ 10:13:
[...]
offtopic:
Dat is heel nobel van je, maar eigenlijk in strijd met de scriptrequestpolicy (64 scrabble-punten :P ) denk ik. Het is de bedoeling dat je mensen op weg helpt, en niet de oplossing voor hun maakt. Patsen kan je op FlashKit :+ No flame intended.
Ben ik het eigelijk helemaal mee eens.. leer je het meest van. Ik heb het ook geleert door eindeloos te prutsen!!! :P

  • FiscBiker
  • Registratie: April 2003
  • Laatst online: 20:42
Verwijderd schreef op 14 April 2003 @ 15:47:
[...]


Ben ik het eigelijk helemaal mee eens.. leer je het meest van. Ik heb het ook geleert door eindeloos te prutsen!!! :P
Alleen 'pruts' ik het me dus blijkbaar verkeerd aan (Ik script toch gewoon in normal mode zonder foutmeldingen over te houden).

Nou ja boeien. Het komt toch niet op internet en het doet wat het moet doen, dus ik ben dik tevreden.
Pagina: 1