Ciao
La funzione è corretta ma in quel modo, puls_A non viene associato al Listener (ascoltatore).
Prima di tutto i nomi dei MovieClip vanno nominati nel campo <Nome istanza> con caratteri ammessi in ActionScript 3.0.
Puoi scrivere puls_A o pulsA o quello che vuoi ma non nomi con un trattino come quello che stai usando.
L'errore viene segnalato nel momento in cui si tenta di inserire un nome non valido per cui mi sembra strano che hai inserito quei nomi usando AS3.
Poi devi considerare che il tuo MovieClip mc_A con gli altri MovieClip annidati al suo interno si trova sullo stage principale nel fotogramma dove inserisci il codice.
Quindi la sua gerarchia è composta così:
mc_A > mc_B > mc_C > puls_A
Per riferirti a puls_A devi quindi ricostruire il percorso con la classica sintassi del punto, in questo modo:
mc_A.mc_B.mc_C.puls_A.addEventListener ....
Il codice corretto sarà quindi così:
Codice PHP:
var colorInfo:ColorTransform = mc_A.transform.colorTransform;
mc_A.mc_B.mc_C.puls_A.addEventListener(MouseEvent.CLICK, makeBlue);
function makeBlue(event:MouseEvent):void
{
colorInfo.color = 0xFF3300;
mc_A.transform.colorTransform = colorInfo;
}
In questo modo comunque, ovviamente cambi il colore di tutto mc_A e i clip annidati al suo interno non saranno più visibili.
Se la tua intenzione è quella di cambiare il colore solo a mc_A mantenendo gli altri clip del loro colore devi usare un'altra tecnica.
La più semplice è creare 2 fotogrammi chiave di colore diverso in mc_A e al click sul pulsante spostare la timeline di mc_A sul fotogramma con colore diverso.
ciao