View previous topic :: View next topic |
Author |
Message |
blackduke mi3.crew
Joined: 08 Sep 2003 Posts: 2681 Location: Zagreb
|
Posted: 03.06.2004 23:06 Post subject: flash: _change alphao |
|
|
ovako
zanima me kako mogu reci _alpha.goto (x), znači da mi se postepeno promijeni a ne samo change value.
ako zna netko, tnx |
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 03.06.2004 23:51 Post subject: |
|
|
Napišeš si funkcijicu!
Evo kako ja to često radim (ali ima fakat puno načina koje biraš ovisno o prilici, naravno da ima i jednostavnijih rješenja)
Funkcija prima kao argument objekt koji hoćeš poalfati i recimo, neku konstantu za brzinu poalfavanja. Ona od sad preuzima odgovornost za poalfavanje i, recimo, zapisuje taj objekt u neki array a brzinu poalfavanja zapise ravno na objekt u neki novi property. Sada neki clip (moze root) napravis da ima onEnterFrame funkciju koja u svakom frejmu for petljom prođe kroz array i poalpha sve objekte += za njihovu konstantu sve dok ne budu 100, kad ih makne iz arraya. Recimo da sve to napravis, ali zelis nesto promijeniti kod poalphavanja, ne moras pisati ispocetka sav code nego samo promijenis nacin rada funkcije gotoAlpha i one onEnterFrame... Onak, malo se objektno orijentiras ako filmic postane kompliciraniji |
|
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 04.06.2004 00:06 Post subject: |
|
|
Code: |
function ALFA()
{
MC._alpha += (X-MC._alpha)/Math.abs(X-MC._alpha);
if(Math.abs(MC._alpha - X) <= 1) clearInterval(NESTO);
updateAfterEvent()
}
|
MC = movie clip kojem mijenjas _alpha..
pozoves to sa:
Code: |
X = 20; // alpha do koje zelis doci
NESTO = setInterval(ALFA, 10);
|
pisem napamet tako da ne znam radi li.. ali trebalo bi povecavati/smanjivati _alpha za 1 do zeljene vrijednosti svakih 10 ms
Last edited by Platypus on 05.06.2004 13:26; edited 1 time in total |
|
|
Back to top |
|
|
blackduke mi3.crew
Joined: 08 Sep 2003 Posts: 2681 Location: Zagreb
|
Posted: 04.06.2004 00:14 Post subject: |
|
|
e ovaj updateAfterEvent () je dosta zgodan
ipak, ovo tvoje mi totalno zbunjujce
ja sam mislio ovak nekaj, al to ne funkcionira? zakaj
Quote: |
for (i=0; i=100; i++) {
_root.m._alpha = i;
updateAfterEvent();
} |
|
|
|
Back to top |
|
|
Peewee
Joined: 12 Jan 2004 Posts: 711 Location: Velika Gorica
|
Posted: 04.06.2004 00:15 Post subject: |
|
|
ako zelis samo da mu raste alpha samo puknes ovaj kod na odredjeni mc:
Code: | onClipEvent (enterFrame) {
_alpha +=1;
}
|
ako zelis do odredjene vrijednosti onda jos dodas jedan if uvjet i to ti je to...
primjer je npr alpha se za 5 povecava do 60, naravno od nule.
Code: |
onClipEvent (load) {
_alpha = 0;
}
onClipEvent (enterFrame) {
if (_alpha<60) {
_alpha +=5;
}
}
|
ak ne valja vici |
_________________ Pi (Pee) is a mathematical constant equal to approximately 3.14.
zivili!!! |
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 04.06.2004 00:20 Post subject: |
|
|
blackduke wrote: | e ovaj updateAfterEvent () je dosta zgodan
ipak, ovo tvoje mi totalno zbunjujce
ja sam mislio ovak nekaj, al to ne funkcionira? zakaj
Quote: |
for (i=0; i=100; i++) {
_root.m._alpha = i;
updateAfterEvent();
} |
|
zato sto se izvrsi cijela for petlja prije nego sto on updejta prikaz na monitoru.. mozes to koristiti samo za funkcije i to kad ih pozoves sa 'setInterval'..
jel ono moje radi? ako radi objasnit cu ti sve pa ces vidit da nije komplicirano.. |
|
|
Back to top |
|
|
blackduke mi3.crew
Joined: 08 Sep 2003 Posts: 2681 Location: Zagreb
|
Posted: 04.06.2004 00:24 Post subject: |
|
|
@peewee: works like a charm, falio mi je u glavi taj onClipEvent kod
fala! |
|
|
Back to top |
|
|
Peewee
Joined: 12 Jan 2004 Posts: 711 Location: Velika Gorica
|
Posted: 04.06.2004 00:33 Post subject: |
|
|
iso vidit dal radi ovo pa se malo poigro :
eto skriptica koja poveca alphu od nule do 60 pa objekt pomakne 300 piksela u desno, pa mu poveca alphu do kraja, a nakon tog ga cijelog poveca za 5 puta...
Code: | onClipEvent (load) {
_alpha = 0;
_x = Math.random()*100;
px = _x;
kx = px+300;
}
onClipEvent (enterFrame) {
if (_alpha<60) {
_alpha +=5;
} else if (_x<kx) {
_x +=10;
}
if (_x == kx && _yscale<500 && _xscale<500) {
_alpha +=5;
_xscale += 20;
_yscale += 20;
}
}
|
|
_________________ Pi (Pee) is a mathematical constant equal to approximately 3.14.
zivili!!! |
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 04.06.2004 00:46 Post subject: |
|
|
onClipEvent (enterFrame) je beskonacna petlja i Flash ce vam cijelo vrijeme provjeravati je li "if" ispunjen... ako poslije promijenis alphu ona ce se sama vratiti na onu vrijednosti koju imas u IF-u.. |
|
|
Back to top |
|
|
Peewee
Joined: 12 Jan 2004 Posts: 711 Location: Velika Gorica
|
Posted: 04.06.2004 19:36 Post subject: |
|
|
kuzim ovo tvoje ali mislim da mu je razumljivije ovo moje...ja s intervalima radim samo kopiranja i takve stvari vidis opce mi nikad nije palo na pamet ovakvo nesto... |
_________________ Pi (Pee) is a mathematical constant equal to approximately 3.14.
zivili!!! |
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 04.06.2004 19:40 Post subject: |
|
|
Peewee wrote: | kuzim ovo tvoje ali mislim da mu je razumljivije ovo moje...ja s intervalima radim samo kopiranja i takve stvari vidis opce mi nikad nije palo na pamet ovakvo nesto... |
no frks. samo kazem sto je po meni bolje |
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 04.06.2004 22:00 Post subject: |
|
|
setInterval/clearInterval rulz
al kad pogledas onEnterFrame je opet neka vrsta intervala, pa dođe isto |
|
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 05.06.2004 00:27 Post subject: |
|
|
Sulien wrote: | setInterval/clearInterval rulz
al kad pogledas onEnterFrame je opet neka vrsta intervala, pa dođe isto |
evo da malo pojasnim...
1. kad radis sa 'setInteval' ti odredjujes interval (brzinu) .. sa onEnterFrame imas jednu jedinu brzinu i to je frame rate..
2. clearInterval prestaje pozivati funkciju dok se onEnterFrame izvrsava non-stop... |
|
|
Back to top |
|
|
unique
Joined: 29 Mar 2004 Posts: 655
|
Posted: 05.06.2004 09:34 Post subject: |
|
|
evo napravio sam i ja neku funkciju za fade
Code: | function fade(adresa,sta,en,t){
alp=sta;
x=math.abs(sta - end);
k=int(t/x);
a=function () {
if (sta<en){
alp++;
}else{
alp--;
}
_root[adresa]._alpha=alp;
if(alp==en){clearinterval(_root.b);}
}
b=setinterval(a,k);
} |
znači adresa je adresa objekta (bez _root, on dodijeli sam _root)
sta je početna alpha vrijednost
en je krajna do koje treba doč (može i "sta" bit manji od "en")
t je vrijeme potrebno da se obavi fade.....
isprobano, radi dobro..... možda ima neko bolje riješenje |
_________________ Activate interlock! Dynotherms connected! Infracells up! Mega thrusters are go! LET'S GO VOLTRON FORCE! |
|
Back to top |
|
|
Platypus
Joined: 07 Feb 2004 Posts: 235
|
Posted: 05.06.2004 13:31 Post subject: |
|
|
unique wrote: | možda ima neko bolje riješenje |
postao sam ga gore
unique wrote: | isprobano, radi dobro..... |
imas beskonacnu petlju.....
clearinterval(_root.b); ce pobrisati samo zadnji interval koji postavis.... |
|
|
Back to top |
|
|
unique
Joined: 29 Mar 2004 Posts: 655
|
Posted: 05.06.2004 17:23 Post subject: |
|
|
Platypus wrote: |
unique wrote: | isprobano, radi dobro..... |
imas beskonacnu petlju.....
clearinterval(_root.b); ce pobrisati samo zadnji interval koji postavis.... |
mislim da ne stavio sam bio trace(alp) i nije ispisivo beskonačno |
_________________ Activate interlock! Dynotherms connected! Infracells up! Mega thrusters are go! LET'S GO VOLTRON FORCE! |
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 05.06.2004 17:54 Post subject: |
|
|
Platypus wrote: | Sulien wrote: | setInterval/clearInterval rulz
al kad pogledas onEnterFrame je opet neka vrsta intervala, pa dođe isto |
evo da malo pojasnim...
1. kad radis sa 'setInteval' ti odredjujes interval (brzinu) .. sa onEnterFrame imas jednu jedinu brzinu i to je frame rate..
2. clearInterval prestaje pozivati funkciju dok se onEnterFrame izvrsava non-stop... |
Pa znam ja to Skužio sam ja sve u flashu, al nemam prakse (napravio sam samo jedan filmić do sad ) |
|
|
Back to top |
|
|
Sulien
Joined: 04 Jan 2004 Posts: 2905 Location: Zagreb
|
Posted: 05.06.2004 17:55 Post subject: |
|
|
Platypus wrote: | Sulien wrote: | setInterval/clearInterval rulz
al kad pogledas onEnterFrame je opet neka vrsta intervala, pa dođe isto |
evo da malo pojasnim...
1. kad radis sa 'setInteval' ti odredjujes interval (brzinu) .. sa onEnterFrame imas jednu jedinu brzinu i to je frame rate..
2. clearInterval prestaje pozivati funkciju dok se onEnterFrame izvrsava non-stop... |
Pa znam ja to Skužio sam ja sve u flashu, al nemam prakse (napravio sam samo jedan filmić do sad ) |
|
|
Back to top |
|
|
|