Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/02/2012, 14:27
carlos__333
 
Fecha de Ingreso: marzo-2011
Mensajes: 120
Antigüedad: 13 años, 8 meses
Puntos: 3
Simple cambio de Strings

Buenas he estado probando unas cosas pero al parecer estoy algo falto de practica queria saber q me recomiendan o q tip me dan para completar este script q se q es sencillo pero mi logica anda fallando hehehe.... bien lo que quiero hacer es q supongamos q tengo 3 contenedores de informacion en los cuales tendran como contenido diferentes valores, valores q deben ser distintos tanto entre ellos 3 como en su valor anterior :) bien aqui tengo algo q he intentad pero no me da resultado


Código:
package
{
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.text.TextField;

	
	
	public class Pruebas extends Sprite
	{

		public var arr:Array = new Array("valor0","valor1","valor2","valor3","valor4","valor5")

			
		public var str1:String=arr[0];
		public var str2:String=arr[1];
		public var str3:String=arr[2];
		
		
		
		
		public var te1:TextField = new TextField();
		public var te2 :TextField = new TextField();
		public var te3 :TextField = new TextField();
		
		public var btn :MovieClip = new MovieClip();
		
		

		
		public function Pruebas()
		{
			te1.text = str1; 	
			te2.text = str2;
			te3.text = str3;
			
			addChild(te1);
			addChild(te2);
			addChild(te3);
			
			te2.x = 50;te3.x=100; 
			
			btn.graphics.beginFill(0xff00ff);
			btn.graphics.drawCircle(151,150,15);
			addChild(btn);
			
			btn.addEventListener(MouseEvent.CLICK,cambiar);
		}
		
		
		public function cambiar(e:Event):void{
			var minLimit:uint = 0;
			var maxLimit:uint = arr.length-1;
			var range:uint = maxLimit - minLimit;
			
			var someNum:Number = Math.ceil(Math.random()*range) + minLimit;		
			
			
			if(str1 == arr[someNum]){
				while(str1 == arr[someNum]){
					someNum = Math.ceil(Math.random()*range) + minLimit;
				}
				str1 = arr[someNum];
			}else{
				str1 = arr[someNum];
			}
			someNum= Math.ceil(Math.random()*range) + minLimit;	
			
			if(str2 == arr[someNum]){
				while(str2 == arr[someNum]){
					someNum = Math.ceil(Math.random()*range) + minLimit;
				}
				str2 = arr[someNum];
			}else{
				str2 = arr[someNum];
			}
			
			someNum= Math.ceil(Math.random()*range) + minLimit;	
			
			if(str3 == arr[someNum]){
				while(str3 == arr[someNum] || str3 ==str1 || str3 == str2){
					someNum = Math.ceil(Math.random()*range) + minLimit;
				}
				str3 = arr[someNum];
			}else{
				str3 = arr[someNum];
			}
			


			
			te1.text = str1; 	
			te2.text = str2;
			te3.text = str3;
		}
		

	}
}
suponiendo q los 3 contenedores son te1,te2 y te3 sus contenidos son str1,str2 y str3 respectivamente la cuestion q debe pasar es q cada vez q yo de click en el btn q es un Mc simple un circulo, asi pues este evento debera cambiar los valores de los contenidos de te1,2 y 3 a sus nuevos valores pero tomando en cuenta que los nuevos valores tienen q ser distintos al suyo mismo actual y al del valor de los otros dos contenedores agradeceria que el que desee brindar ayuda lo haga de buena manera y no poniendo buscalo en google o haciendo comentarios despectivos heheh muchas gracias espero pronta respuesta