🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.programy.flash-5
7 messages
7 total messages Started by mic49 Fri, 30 Nov 2007 15:23
Zamiana grafiki - ActionScript we Flashu
#34414
Author: mic49
Date: Fri, 30 Nov 2007 15:23
15 lines
1717 bytes
Witam,

Nie znam się na Flashu, a muszę przerobić animację. Jeden z MovieClip-
ów wygląda mniej więcej tak, że w jednej z kilku warstw mam
zaimportowany napis w postaci pliku graficznego, który się w trakcie
trwania staje przezroczysty (zanika).

Chodzi mi o to, że w zależności od przesłanego parametru ze strony www
- zmieniał się napis, tzn. jeśli parametr = 1, to niech wyświetla np.
Tween 1, a jeśli parametr = 2, to niech wyświetla Tween 10.

Wiem, jak przesłać parametry, ale jak zrobić, aby Flash zmieniał na
ich podstawie plik graficzny zaimportowany do warstwy w MovieClip?

Michał
Re: Zamiana grafiki - ActionScript we Flashu
#34415
Author: olo
Date: Fri, 30 Nov 2007 15:31
14 lines
1271 bytes
mic49 pisze:
> Wiem, jak przesłać parametry, ale jak zrobić, aby Flash zmieniał na
> ich podstawie plik graficzny zaimportowany do warstwy w MovieClip?
> 

chcesz najprościej jak się da?
Robisz XX tweenów i w zależności od parametru robisz gotoAndPlay(XX * 
dlugosc tweenu) :)

-- 
pozdrawiam!

http://webtrunki.pl - piwa, wina, wódki, domowe wyroby
ZAPRASZAMY!!
Re: Zamiana grafiki - ActionScript we Flashu
#34416
Author: mic49
Date: Fri, 30 Nov 2007 17:09
18 lines
1883 bytes
>
> chcesz najprościej jak się da?
> Robisz XX tweenów i w zależności od parametru robisz gotoAndPlay(XX *
> dlugosc tweenu) :)
>

Chyba tak się nie da, a już piszę dlaczego i przepraszam za język, ale
znawcą Flasha nie jestem:
- movieClip to u mnie kilka warstw, gdzie jakieś kółko się powiększa,
pojawia się jakiś napis itp. w zależności od tego, czy użytkownik
najedzie myszką na obiekt czy go naciśnie itd. Napis (w postaci pliku
graficznego nazwanego Tween 1) jest zrobiony na jednej z warstw
będącej częscią maski - ten napis jest w ruchu.

Jak za pomocą języka skryptowego sprawić, aby ten właśnie napis został
podmieniony na inny plik graficzny.

Michał
Re: Zamiana grafiki - ActionScript we Flashu
#34418
Author: mic49
Date: Fri, 30 Nov 2007 17:33
4 lines
1456 bytes
A dokładnie chodzi mi o efekt, żeby za pomocą języka skryptowego
sprawić, aby jedna warstwa wśród wielu po prostu była wygaszona.

Michał
Re: Zamiana grafiki - ActionScript we Flashu
#34419
Author: olo
Date: Fri, 30 Nov 2007 17:54
31 lines
2401 bytes
mic49 pisze:
> A dokładnie chodzi mi o efekt, żeby za pomocą języka skryptowego
> sprawić, aby jedna warstwa wśród wielu po prostu była wygaszona.
> 
> Michał

ok. Ponieważ widzę, że albo nie bardzo wiesz co zaproponowałem, albo 
moje rozwiązanie zupełnie się nie sprawdzi w Twoim przypadku odpowiem na 
zadane pytania:

1. Dynamiczne wrzucenie obiektu na scenę:
- prawy guzik na klipie w library, opcja linkage, ptaszek przy "export 
for ActionScript, w polu identyfier nadanie UNIKALNEGO identyfikatora 
(export in first frame domyślnie zaznaczona ma taką pozostać)
- aby wrzucić dynamicznie klip na scenę potrzebne jest zaznajomienie się 
z attachMovie (lub movieClip.attachMovie) dostępne z poziomu helpa (na 
pewno wraz z przykładem - dasz sobie bez problemu radę) - pamiętaj, że 
pierwszym argumentem funkcji attachMovie jest ten unikalny identyfikator 
nadany w bibliotece, a drugim nazwa instancji (instance name) tego klipu 
  na scenie

2. Nie da się zrobić tak by jedna warstwa była wygaszona - przynajmniej 
jako tako. Wygasić (obj._visible = false, bądź obj._alpha = xx) możesz 
tylko symbol (movieClip, button itp), więc w razie czego musisz sobie po 
prostu przerobić animację.

-- 
pozdrawiam!

http://webtrunki.pl - piwa, wina, wódki, domowe wyroby
ZAPRASZAMY!!
Re: Zamiana grafiki - ActionScript we Flashu
#34417
Author: mic49
Date: Fri, 30 Nov 2007 20:07
23 lines
2473 bytes
>
> 1. Dynamiczne wrzucenie obiektu na scenę:
> - prawy guzik na klipie w library, opcja linkage, ptaszek przy "export
> for ActionScript, w polu identyfier nadanie UNIKALNEGO identyfikatora
> (export in first frame domyślnie zaznaczona ma taką pozostać)
> - aby wrzucić dynamicznie klip na scenę potrzebne jest zaznajomienie się
> z attachMovie (lub movieClip.attachMovie) dostępne z poziomu helpa (na
> pewno wraz z przykładem - dasz sobie bez problemu radę) - pamiętaj, że
> pierwszym argumentem funkcji attachMovie jest ten unikalny identyfikator
> nadany w bibliotece, a drugim nazwa instancji (instance name) tego klipu
>   na scenie
>

Chyba to jest to, czego potrzebuję, Napisz mi jeszcze proszę, w jaki
sposób załączony obrazek kodem (w warstwie na klatce, gdzie rozpoczyna
się Motion):
this.attachMovie("Tween 1", "Tween 1", this.getNextHighestDepth());
spowodować, aby i ten obrazek "poddał" się ruchowi? Bo on po prostu
się pojawia, a ja chciałbym, aby przez kilka klatek był - od
niewidocznego i widocznego.

Jeszcze raz dziękuję,
Michał
Re: Zamiana grafiki - ActionScript we Flashu
#34420
Author: olo
Date: Fri, 30 Nov 2007 20:42
37 lines
2629 bytes
mic49 pisze:
> Chyba to jest to, czego potrzebuję, Napisz mi jeszcze proszę, w jaki
> sposób załączony obrazek kodem (w warstwie na klatce, gdzie rozpoczyna
> się Motion):
> this.attachMovie("Tween 1", "Tween 1", this.getNextHighestDepth());
> spowodować, aby i ten obrazek "poddał" się ruchowi? Bo on po prostu
> się pojawia, a ja chciałbym, aby przez kilka klatek był - od
> niewidocznego i widocznego.

i tu juz mogą zacząć się schodki bo elementy dodane w ten sposób nie 
mogą zostać poddane żadnym tweenom na ścieżce czasowej. Pozostaje tylko 
actionsctipt. Widzę, że używasz symboli typu graphic - wiem czym one się 
różnią od movieClipa (wspólna listwa czasowa z rodzicem) ale ponieważ w 
praktyce używam wyłącznie MC nie wiem jak programuje się te drugie

Teraz - w nazwach instancji nie możesz mieć spacji, więc "Tween 1" nie 
jest prawidłową nazwą instancji. Zmień to na np. "tween1" i wtedy

tween1._alpha = 100;
tween1.onEnterFrame = function() {
	this._alpha -= 1; //specjalnie taki zapis,
			  // żeby sobie można zmieniać szybkość
	if (this._alpha <= 0) {
		this._alpha = 0;
		delete this.onEnterFrame;
	}
}

jeśli powyższe nie zadziała to musisz zmienić typ Twojego "Tween 1" na 
MovieClipa (podejrzewam, że ZUPEŁNIE NIC to nie zmieni, poza tym, że 
powyższy kod zacznie działać)

-- 
pozdrawiam!

http://webtrunki.pl - piwa, wina, wódki, domowe wyroby
ZAPRASZAMY!!
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads