Originariamente inviato da dadaja
Intanto grazie mille per il codice... era proprio quello che cercavo.
Avrei però una richiesta, vedi io vorrei togliere il rosso dal ciclo... cioè fare in modo che
dal verde sfumi al blu e viceversa, solo non rieco a capire come fare...
mi puoi aiutare?
Come saprai la gamma dei colori dei monitor è basata sui colori base RGB (Red, Green, Blue). Ognuno di questi colori può assumere un valore che va da 0 (zero = assenza del colore) a 255 (massima saturazione del colore). Quando tutti e tre i colori base RGB valgono 0 si ottiene il NERO (totale assenza di colore/luce), mentre se sono tutti e 3 a 255 si ottiene il BIANCO (piena luce bianca).
Pe ottenere, quindi, una gradazione dal verde al blu non dovrai far altro che settare a zero la componente ROSSO.
Come vedrai dal codice l'oggetto che ho creato myColorvar serve per attribuire la gamma di colori desiderata, per cui queste (in rosso) le modifiche da apportare al codice (sono da testare però :gren: ):
codice:
onClipEvent (load) {
//red_up = true; // NON serve +
gre_up = true;
blu_up = false;
//red_down = false; // NON serve +
gre_down = false;
...
myColorvar = new Object();
myColorvar.ra = 0;
myColorvar.rb = 0;
myColorvar.ga = 100;
myColorvar.gb = 0;
myColorvar.ba = 100;
myColorvar.bb = 0;
myColorvar.aa = 80;
myColorvar.ab = 0;
}
onClipEvent (enterFrame) {
giri++;
if (giri>100) {
giri = 0;
red_start = random(150);
gre_start = random(150);
blu_start = random(150);
}
myColor = new Color(this);
// modifica colore rosso
// ... eliminata tutta la parte relativa al rosso
// modifica colore verde
if (gre_up) {
if (myColorvar.gb>=gre_max) {
gre_up = false;
gre_down = true;
} else {
myColorvar.gb += color_up;
}
}
if (gre_down) {
if (myColorvar.gb<=0) {
gre_down = false;
blu_up = true;
} else {
myColorvar.gb -= color_up;
if (myColorvar.gb<=blu_start) {
blu_up = true;
}
}
}
// modifica colore blue
if (blu_up) {
if (myColorvar.bb>=blu_max) {
blu_up = false;
blu_down = true;
} else {
myColorvar.bb += color_up;
}
}
if (blu_down) {
if (myColorvar.bb<=0) {
blu_down = false;
gre_up = true;
} else {
myColorvar.bb -= color_up;
if (myColorvar.bb<=red_start) {
gre_up = true;
}
}
}
//
myColor.setTransform(myColorvar);
}