PDA

Volledige versie bekijken : Rollover werkt niet goed.


mknol
%Europe/Berlin %578 %2005, 14:52
He ik zit met een probleem:


Ik heb op een lege movieclip dit staan:

onClipEvent (enterFrame) {
max = 20;
if (_root.rollon01 == "rollon") {
_root.teller01++;
} else {
_root.teller01--;
}
if (_root.rollon02 == "rollon") {
_root.teller02++;
} else {
_root.teller02--;
}
if (_root.rollon03 == "rollon") {
_root.teller03++;
} else {
_root.teller03--;
}
if (_root.rollon04 == "rollon") {
_root.teller04++;
} else {
_root.teller04--;
}
if (_root.rollon05 == "rollon") {
_root.teller05++;
} else {
_root.teller05--;
}
if (_root.rollon06 == "rollon") {
_root.teller06++;
} else {
_root.teller06--;
}
if (_root.rollon07 == "rollon") {
_root.teller07++;
} else {
_root.teller07--;
}
if (_root.rollon08 == "rollon") {
_root.teller08++;
} else {
_root.teller08--;
}
if (_root.rollon09 == "rollon") {
_root.teller09++;
} else {
_root.teller09--;
}
if (_root.teller01>max) {
_root.teller01 = max;
}
if (_root.teller01<0) {
_root.teller01 = 0;
}
if (_root.teller02>max) {
_root.teller02 = max;
}
if (_root.teller02<0) {
_root.teller02 = 0;
}
if (_root.teller03>max) {
_root.teller03 = max;
}
if (_root.teller03<0) {
_root.teller03 = 0;
}
if (_root.teller04>max) {
_root.teller04 = max;
}
if (_root.teller04<0) {
_root.teller04 = 0;
}
if (_root.teller05>max) {
_root.teller05 = max;
}
if (_root.teller05<0) {
_root.teller05 = 0;
}
if (_root.teller06>max) {
_root.teller06 = max;
}
if (_root.teller06<0) {
_root.teller06 = 0;
}
if (_root.teller07>max) {
_root.teller07 = max;
}
if (_root.teller07<0) {
_root.teller07 = 0;
}
if (_root.teller08>max) {
_root.teller08 = max;
}
if (_root.teller08<0) {
_root.teller08 = 0;
}
if (_root.teller09>max) {
_root.teller09 = max;
}
if (_root.teller09<0) {
_root.teller09 = 0;
}
_root.but_01.gotoAndPlay(_root.teller01);
_root.but_02.gotoAndPlay(_root.teller02);
_root.but_03.gotoAndPlay(_root.teller03);
_root.but_04.gotoAndPlay(_root.teller04);
_root.but_05.gotoAndPlay(_root.teller05);
_root.but_06.gotoAndPlay(_root.teller06);
_root.but_07.gotoAndPlay(_root.teller07);
_root.but_08.gotoAndPlay(_root.teller08);
_root.but_09.gotoAndPlay(_root.teller09);
}


op de button:

on (rollOver) {
_root.rollon01 = "rollon";
}
on (rollOut) {
_root.rollon01 = "rolloff";
}


Dit script zorgt dat ik een smooth rollout krijg. hij maakt een teller. op rollover gaat de teller omhoog (tot 20), en stopt. Bij rollout telt hij weer af. De button zorgt dat de zgn. 'buttonMC' gaat afspelen naar frame[waar de teller is].

probleem:
Als ik snel met mn muis over buttons ga, dan werkt de rollout of over niet, dus werkt het geheel dus niet soepel. Soms blijft hij dus op de rolloverstand staan, of op de rollout, terwijl dit niet moet.
Ik verwijs naar het frame omdat daar een animatie staat, welke terug gespoeld moet worden bij rollout.

Kan iemand me helpen? Ja, ik weet dat het script erg brak is, maar ik weet niet hoe te versimpelen.

Fl4sh3r
%Europe/Berlin %581 %2005, 14:57
ik zou de AS op de buttons veranderen:
on(rollOver) {
over = true;
}
on(rollOut) {
over = false;
}
onClipEvent(enterFrame) {
if(over && _currentframe < 20)
nextFrame();
else if(_currentframe > 1)
prevFrame();
}


Dat gewoon op iedere button zetten.

mknol
%Europe/Berlin %586 %2005, 15:04
ok, dit is wel heel erg ingekort, Goed!

maar:
prevFrame(); moet wel elke keer voor een andere movieclip uitgevoerd worden (dus niet voor de button zelf, maar voor een losse MC).

dus _root.but_01.prevFrame(); en_root.but_02.prevFrame();

Moet ik dan het hele stuk 9x copieren? waarschijnlijk werkt dan ook 'over' niet meer, moet ik dan over01 en over02 03 04 enz.. aanmaken?

mknol
%Europe/Berlin %595 %2005, 15:17
Voor de duidelijkheid, hier een fla.

Fl4sh3r
%Europe/Berlin %687 %2005, 17:30
Alsjeblieft :)

Ik heb die lege MC weggehaald, evenals de AS op de but_0x en lege buttons.
Ik heb de buttons (die lege dingen) een naam gegeven, hit_01 t/m hit_09.

Alle code staat op het eerste frame van het actions layer.

edit: en even de attachment erbij :P

papirosn
%Europe/Berlin %909 %2005, 22:49
Nochtans blijft het probleem van de rollOut en Over nog steeds. Snel met de muis over de movie bewegen en dan blijven er verschillende dingen openstaan. Heb hetzelfde probleem met rollOver en rollOut op MC of button. Te snel bewegen en de button of MC blijft op zijn positie staan. Enige oplossing die ik gebruik is enkel nog press en release gebruiken, wat dikwijls jammer is.

Fl4sh3r
%Europe/Berlin %921 %2005, 23:06
ik weet niet wat er niet goed gegaan is, maar die .fla in de .zip is jouw oude versie :S

ik zal ns kijken of ik er iets aan kan doen

Fl4sh3r
%Europe/Berlin %926 %2005, 23:13
Ik kon mn versie van vanmiddag niet meer vinden, had m weggegooid met het idee dat ie in die zip zat.

Dus nu even opnieuw gemaakt.

papirosn
%Europe/Berlin %958 %2005, 23:59
Al snap ik nog niet helemaal hoe, dit werkt dus echt zoals het moet. Wat is het probleem eigenlijk met die rollOvers?

mknol
%Europe/Berlin %304 %2005, 08:18
unexpected fileformat. Ik gebruik FlashMX.

ik weet niet wat er niet goed gegaan is, maar die .fla in de .zip is jouw oude versie :S
Oops

Al snap ik nog niet helemaal hoe, dit werkt dus echt zoals het moet. Wat is het probleem eigenlijk met die rollOvers?
Als ik snel met mn muis over buttons ga, dan blijft de button in de rollover-stand staan. Kun je ook een hittest gebruiken, die je aan je muis koppelt?