Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Flash & ActionScript
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti

Flash & ActionScript Animazione web e linguaggio di programmazione

Hey Amico Visitatore,
Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Flash & ActionScript


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 22-04-10, 21:10   #1 (permalink)
User
 
L'avatar di melaniaflash
 
Data di registrazione: Mar 2010
Ubicazione: Teramo, Italy
Messaggi: 37
Exclamation Collegamento pulsanti a movieclip e funzione per controllare animazioni.

Ciao a tutti!
Ho bisogno del vostro aiuto se possibile!

Problema 1: ho un file .fla contenente vari movieclip.
Ogni movieclip è animato attraverso la timeline.
Devo collegare il pulsante che si trova in un movieclip A
a un movieclip B o un movieclip C a random, ovvero
cliccando sul pulsante del movieclip A a volte si arriva
al movieclip B e altre volte si arriva al movieclip C.

Problema 2: ho un movieclip (strada) animato tramite la timeline.
L'animazione consiste nel passaggio di automobili da un lato all'altro
dello stage (tramite interpolazione di movimento).
Devo mettere un semaforo che quando diventa verde provoca
lo stop delle automobili prima delle strisce pedonali (disegnate
nel background dello stage). (Nello stato del semaforo rosso invece le
automobili continuano a circolare liberamente).

Problema 3: ho un pulsante nel movieclip strada. Devo far sì che quando viene premuto se il semaforo è rosso mi porta a un altro movieclip (mc2),
se è verde a un altro movieclip ancora (mc3).

Vi prego aiutatemi!!
Grazie mille!!
melaniaflash non in linea   Rispondi citando
Vecchio 22-04-10, 23:14   #2 (permalink)
Moderatore
 
Data di registrazione: May 2008
Messaggi: 2,551
Ciao melaniaflash, quante cose tutte in una volta forse era meglio aprire più discussioni.
Per il problema numero 1 potresti caricare in modo random i clip dalla libreria con questo
Codice:
var myArray = new  Array();
myArray = ["obj1", "obj2"];
 btn.onPress = function(){
objRandom = Math.floor(Math.random()*2);
trace(objRandom);
_root.shimContainer.attachMovie(myArray[objRandom], shim, 1);
}
shimContainer è il nome istanza di un clip vuoto sullo stage.
Per quanto riguarda lo stop a seconda del semaforo penso si potrebbe fare con una condizione if, se come credo il semaforo cambia colore passando da un frame 1 rosso al frame 2 verde si potrebbe fare
Codice:
 if(mc_semaforo._currenframe==2)
{
mc_auto.stop()
}
}else{play()
}
per il terzo problema sempre con l'uso della condizione if(condizione){fai questo}}else{fai questaltro
__________________

Nhatan
Nhatan non in linea   Rispondi citando
Vecchio 23-04-10, 21:39   #3 (permalink)
User
 
L'avatar di melaniaflash
 
Data di registrazione: Mar 2010
Ubicazione: Teramo, Italy
Messaggi: 37
Unhappy

Ciao Nhatan!
Grazie per la risposta.
Ho appena provato il codice per gestire la visualizzazione
dei movieclip a random, ma purtroppo non funziona.
Probabilmente sbaglio qualcosa, ora ci riproverò.
Di sicuro, però, è sbagliato scrivere "_root"
in quanto AS3 non lo riconosce, ma lo ha in qualche modo
sostuito con la parola chiave "stage".
Poi volevo chiederti: "shimContainer", nel .fla, dove devo posizionarlo?
Nel primo fotogramma dei due movieclip che voglio visualizzare a random,
o nel primo fotogramma di tutto il file .fla?
Grazie mille per l'aiuto!
melaniaflash non in linea   Rispondi citando
Vecchio 23-04-10, 22:17   #4 (permalink)
Moderatore
 
Data di registrazione: May 2008
Messaggi: 2,551
Non avevi specificato la versione del linguaggio, quello script è in as2, chiaro che non ti funziona.
__________________

Nhatan
Nhatan non in linea   Rispondi citando
Vecchio 24-04-10, 10:45   #5 (permalink)
Moderatore
 
Data di registrazione: May 2008
Messaggi: 2,551
Questo invece è as3 mettilo dentro la funzione.
Codice:
var mc:Array= new  Array();
mc[0]= new mc1();
mc[1]= new mc2();
var drawNum = Math.round(Math.random() * 1);
addChild(mc[drawNum]);
(mc[drawNum]).y=200,(mc[drawNum]).x=300;
__________________

Nhatan

Ultima modifica di Nhatan : 24-04-10 13:22.
Nhatan non in linea   Rispondi citando
Vecchio 24-04-10, 17:32   #6 (permalink)
User
 
L'avatar di melaniaflash
 
Data di registrazione: Mar 2010
Ubicazione: Teramo, Italy
Messaggi: 37
Exclamation

Ciao! Grazie ancora per la tua disponibilità.
Scusami se ho omesso di precisare che era AS3, probabilmente
mi è sfuggito!
Comunque anche con l'AS3 che hai scritto non va.

Questo è il mio script AS:

package
{
import flash.display.MovieClip;
import flash.events.MouseEvent;

public class Attraversare extends MovieClip
{
var startPage:StartPage;
var giocoPage:GiocoPage;
var rossoPage:RossoPage;
var verdePage:VerdePage;
var attraversaRossoPage:AttraversaRossoPage;
var attraversaVerdePage:AttraversaVerdePage;
var ambulanzaPage:AmbulanzaPage;
var benePage:BenePage;


public function Attraversare()
{

startPage = new StartPage();
giocoPage = new GiocoPage();
attraversaRossoPage = new AttraversaRossoPage();
attraversaVerdePage = new AttraversaVerdePage();
ambulanzaPage = new AmbulanzaPage();
benePage = new BenePage();

addChild(startPage);

startPage.startPulsante.addEventListener(MouseEven t.CLICK, onStartPulsanteClick);
giocoPage.goPulsante.addEventListener(MouseEvent.C LICK, onGoPulsanteClick);
rossoPage.stradinaRossoPulsante.addEventListener(M ouseEvent.CLICK, onStradinaRossoPulsanteClick);
verdePage.stradinaVerdePulsante.addEventListener(M ouseEvent.CLICK, onStradinaVerdePulsanteClick);
ambulanzaPage.giocaAncoraDaAmbulanzaPulsante.addEv entListener(MouseEvent.CLICK, onGiocaAncoraDaAmbulanzaPulsanteClick);
benePage.giocaAncoraDaBenePulsante.addEventListene r(MouseEvent.CLICK, onGiocaAncoraDaBenePulsanteClick);

}

function onStartPulsanteClick (event:MouseEvent):void
{
addChild(giocoPage);
removeChild(startPage);
}

function onGoPulsanteClick (event:MouseEvent):void
{
//FUNZIONE PER RANDOM
}

function onStradinaRossoPulsanteClick (event:MouseEvent):void
{
addChild(attraversaRossoPage);
removeChild(rossoPage);
}

function onStradinaVerdePulsanteClick (event:MouseEvent):void
{
addChild(attraversaVerdePage);
removeChild(verdePage);
}

function onGiocaAncoraDaAmbulanzaPulsanteClick (event:MouseEvent):void
{
addChild(giocoPage);
removeChild(ambulanzaPage);
}

function onGiocaAncoraDaBenePulsanteClick (event:MouseEvent):void
{
addChild(giocoPage);
removeChild(benePage);
}

}
}


Le variabili rossoPage e verdePage contengono i movieclip che voglio visualizzare a random. La funzione per gestire il random deve partire da onGoPulsanteClick.

Avevo provato a inserire tutto il codice che mi hai scritto nella
function onGoPulsanteClick.

Il compilatore mi mostra gli errori:
1180: Chiamata al metodo non definito mc1.
1120: Accesso alla proprietà non definita mc.
1120: Accesso alla proprietà non definita drawNum.


Dove sbaglio?
Grazie ancora!
melaniaflash non in linea   Rispondi citando
Vecchio 24-04-10, 19:29   #7 (permalink)
Moderatore
 
Data di registrazione: May 2008
Messaggi: 2,551
Quel codice così com'è funziona se lo metti sulla time line se lo metti nella document class, non funziona , ma se quello script lo hai fatto tu, e quindi non mi vergogno a riconoscere che sei molto più brava di me, dovresti saperlo.
__________________

Nhatan
Nhatan non in linea   Rispondi citando
Vecchio 24-04-10, 19:41   #8 (permalink)
User
 
L'avatar di melaniaflash
 
Data di registrazione: Mar 2010
Ubicazione: Teramo, Italy
Messaggi: 37
Smile

Si lo script l'ho fatto io dopo aver letto un po' di libri americani sul game design con flash e game programming con AS3..ma sono solo all'inizio della messa in pratica e alcuni concetti lio ho letti, ma non li ho ancora assimilati bene. Procedo per gradi e spesso mi trovo dinanzi a problemi che non so risolvere!
Pensavo di fare tutto tramite lo script e non aggiungere niente tramite la timeline, ma a questo punto farò così..sperando che vada!
Ti ringrazio davvero tantissimo!
A risentirci!
melaniaflash non in linea   Rispondi citando
Rispondi


Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 06:28.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.