Comunidad de diseño web y desarrollo en internet online

guardar y recuperar color de mc

Citar            
MensajeEscrito el 19 Feb 2014 11:33 pm
Soy nuevo en esto de AS3. Estoy haciendo un mapa donde le puedes cambiar el color a cada MC. el código me permitiría seleccionar uno de entre 5 colores y poder guardar los cambios, la próxima vez que inicie la película se carguen los cambios hechos.

Me está marcando el siguiente error:
Datos encontrados
TypeError: Error #1034: Error de conversión forzada: no se puede convertir 16736158 en flash.geom.ColorTransform.
at MapaBase6d4g_fla::MainTimeline/loadData()
at MapaBase6d4g_fla::MainTimeline/init()
at MapaBase6d4g_fla::MainTimeline/frame1()

Entiendo que debo hacer una conversión para guardar los datos, pero como lo hago?

Por favor si encuentran un error en mi código háganmelo saber.




import flash.events.MouseEvent;
import flash.geom.ColorTransform;
import flash.events.Event;
import flash.net.SharedObject;


var currentColorBc:ColorTransform=transform.colorTransform;
var colorbc:ColorTransform=transform.colorTransform;
var miColor:ColorTransform=transform.colorTransform;
var saveDataObject:SharedObject;

init();

function init():void{
saveDataObject = SharedObject.getLocal("/mapa_datos");
miColor.color=0xFF5F9E;


if(saveDataObject.data.savedColorBC == null){
trace("no hay valores guardados");

BC_mc.transform.colorTransform=miColor; //inicializamos el color del mc BC
}else{
trace("Datos encontrados"); // si es que se encontraron datos
loadData(); //cargamos los datos

}

}


btnAdd.addEventListener(MouseEvent.CLICK, addColor); // al hacer click cambiamos color
btnSave.addEventListener(MouseEvent.CLICK, saveData); // click para salvar


function loadData():void{
BC_mc.transform.colorTransform = saveDataObject.data.savedColorBC;
}



function addColor(e:MouseEvent):void{
var clicked = MouseEvent.CLICK
var botones = new Array(btnazul, btnvde, btnamar, btnanar, btnrojo);
for (var a=0; a<botones.length; a++){
botones [a].buttonMode=true
botones [a].addEventListener(clicked,buttonClick);
}


}


function buttonClick(e:Event):void {

switch(e.target.name){
case"btnazul":
Texto2_txt.text="NIVEL AZUL"
miColor.color=0x157AEB;

break;
case"btnvde":
Texto2_txt.text="NIVEL VERDE"
miColor.color=0x33FF00;

break;
case"btnamar":
Texto2_txt.text="NIVEL AMARILLO"
miColor.color=0xFFFF00;

break;
case"btnanar":
Texto2_txt.text="NIVEL ANARANJADO"
miColor.color=0xFF9900;

break;
case"btnrojo":
Texto2_txt.text="NIVEL ROJO"
miColor.color=0xFF0000;

break;
}

}


function saveData(e:MouseEvent):void {
saveDataObject.data.savedColorBC = miColor.color;
saveDataObject.flush();

}

Por vicmed

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Feb 2014 12:08 pm
Tendría que ser algo asi

Código ActionScript :

function loadData():void{
  var colorTrans:ColorTransform = new ColorTransform();
    colorTrans.color = parseInt(saveDataObject.data.savedColorBC, 16)
    BC_mc.transform.colorTransform = colorTrans;
}


Si te dice que savedColorBC no es String, usa

saveDataObject.data.savedColorBC.toString() o un cast String(saveDataObject.data.savedColorBC)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 12 Mar 2014 07:03 pm
muchas gracias Solisarg sigo trabajando en esto

Por vicmed

1 de clabLevel



 

safari
Citar            
MensajeEscrito el 12 Mar 2014 07:06 pm
muchas gracias Solisarg sigo trabajando en esto

Por vicmed

1 de clabLevel



 

safari

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.