Ho scaricato un esempio di Sephirot che permette di cambiare colore ad un clip 'virando' dall'attuale colore.
Se volete vederlo e scaricarlo è QUI
Come vedete nell'esempio il colore cambia ad ogni pressione del mouse. Vorrei riuscire invece a cambiare colore al MC cliccando su un pulsante.....non dovrebbe essere difficile ma non mi viene![]()
Ecco il codice.
Sul MC che cambia colore:
sul frame:codice:onClipEvent (load) { colore = new Color(this); trasforma = new Object(); trasforma = {rb:100, gb:100, bb:255}; colore.setTransform(trasforma); col_ar = new Array(); count = 0; } onClipEvent (mouseDown) { col_ar = _root.getColor(this); rb = random(255); gb = random(255); bb = random(255); new_ar = new Array(rb, gb, bb); diff_ar = new Array((new_ar[0]-col_ar[0]), (new_ar[1]-col_ar[1]), (new_ar[2]-col_ar[2])); cambia = true; count = 0; trasforma.rb = col_ar[0]; trasforma.gb = col_ar[1]; trasforma.bb = col_ar[2]; } onClipEvent (enterFrame) { if (cambia && (count<20)) { trasforma.ra = 100; trasforma.rb += diff_ar[0]/20; trasforma.ga = 100; trasforma.gb += diff_ar[1]/20; trasforma.ba = 100; trasforma.bb += diff_ar[2]/20; colore.setTransform(trasforma); count++; } }
codice:function getColor(clip){ myColor = new Color(eval("clip")); col = myColor.getTransform(); return([col.rb,col.gb,col.bb]); }
Ho provato a spostare il blocco dell'evento mouseDown in un pulsante (adattandolo all'evento on (release), ovviamente) inserendo i nuovi percorsi per le variabili ma non va.
Vi prego in ginocchio sui ceci.....è urgente.

.....è urgente.
Rispondi quotando