Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Tarde a todos,
sou novato em Flash, mais programo em ASP, e já faço alguns trabalhos em flash, então o que vou perguntar é possivel.
Eu tenho um arquivo, que puxa um .jpg de fora do .swf, eu quero passar em uma variavel dos meu botões, o nome desse .jpg, exemplo:
o arquivo vai abrir o .jpg que eu mandar pelo botão.
tenho figura com o nome: casa1.jpg, casa2.jpg, casa3.jpg
ai quando apertar botão1, ele vai para a Cena e abre a foto casa1.jpg
ai quando apertar o botão2, ele vai para mesma Cena só que abre a foto casa2.jpg
assim por diante.
Espero que tenha explicado corretamente o que eu queria.
Grato a todos.
Public2004,
na cena que vai carregar o JPG, é só colocar no frame aquele action?
Grato
Seja como for que esteja carregando (loadMovie ou utilizando a classe MovieClipLoader), basta alterar onde colocaria o nome da imagem para:
_global.varImage+".jpg"
Abs.
Desculpa a insistência, mas sou bem burrinho em questão de action script
vamos devagar.
crio o botão
ai qual função coloco nele?
>
on (release) {
instance_button1.onRelease = function(){
gotoAndStop("Scene 2", 1)
_global.varImage = "casa1"
}
}
e no movie que vai carregar a imagem como eu coloco a função?
desculpa, mais é que eu preciso muito dessa função, e não sei mesmo como fazer, sei o basico do basico para fazer MINI ANIMAÇÕES...
Agradeço a paciencia.
Abs,
Vamos lá
é o seguinte o public já lhe respondeu.
no botão você vai colocar o código que você mesmo criou na scena 1 ou cena 1 depende de que lingua ta o seu flash ou como você chamar a cena... pq da pra mudar o nome dela tbm (rs)...
on (release) {
gotoAndStop("Scene 2", 1)
_global.varImage = "casa1"
}
on(release) em um botão é a mesma coisa que colocar em um camada de ACTIONs o código nomedobotão.onPress(Release,RollOver,RollOut etc) = function(){
nome do botão você pode colocar ao clicar no botão você vai em propriedades e vai ver lá um campo que se chama instância... nesse local é onde você vai nomear seu botão.
se você nomea-lo como bt_cena1 ai a chamada do botão vai ser bt_cena1.onPress e assim por diante...
Passo número um para se programar em flash é separar os actions do resto dos clips...
Você cria uma camada só para action e de o nome dela de action... vai ficar a bolinha em branco no frame mesmo... ai você clica em cima dela vai no campo de actions e digita seus códigos e ai vai aparecer um azinho ª em cima da bolinha em branco do frame que vai demonstrar que tem um código digitado ali!
Então vamos lá
Crie uma camada como expliquei e coloque o nome de action
Nesta camada clique no frame em branco e selecione a janela de ActionScript apertando F9 caso preferir.
No campo de action digite:
nome do seu botão como expliquei ai em cima.onRelease = function(){
gotoAndStop("Scene 2", 1)
_global.varImage = "casa1"
}
nome do seu botão como expliquei ai em cima2.onRelease = function(){
gotoAndStop("Scene 3", 1)
_global.varImage = "casa2"
}
// etc
Ai lá na Scene que você vai usar você vai criar também uma camada Action
e nela vai colocar o código:
loadMovie(_global.varImage +".jpg","seu movie clip alvo");
O que é esse "seu movie clip alvo"???
Bom como todos sabemos precisamos de clips alvo para carregar filmes externos.
Para isso você preciona ctrl + F8 e clica em MovieClip e da um nome a ele ali.
Pega esse MovieClip e coloca no palco.
Vai como expliquei anteriormente em propriedades e coloca a instancia do seu MovieClip.
E pronto preencha o campo "seu movie clip alvo" com o nome do seu clip.
Caso queira fazer por action você utiliza o seguinte código:
var alvo:MovieClip = _root.createEmptyMovieClip("alvo", 0); // no lugar do 0 pode colocar o valor que desejar
E pronto :)
Ta tudo feito ai
Acho que agora acabei com suas duvidas >.<
Ou será que compliquei mais?
Abraços
Vlw, berseck,
bem esclarecedor! rs...
Abs,
Sim, você pode trabalhar com variáveis entre cenas, swfs, etc... um exemplo:
Na ação de cada botão, você define o valor de cada variável:
//etc... E na cena/quadro que for receber o valor:trace(_global.varImage+".jpg");
Neste exemplo, é utilizada uma variável global, pois como são chamados outras cenas, somente a global funciona.
Abs.