Foros del Web » Creando para Internet » Flash y Actionscript »

Vcam as3 Juegos

Estas en el tema de Vcam as3 Juegos en el foro de Flash y Actionscript en Foros del Web. Hola a todos... Estoy iniciándome en desarrollar juegos de plataforma en as3. Y el paso que debo dar ahora es incluir la Vcam para que ...
  #1 (permalink)  
Antiguo 03/04/2012, 19:38
 
Fecha de Ingreso: enero-2011
Ubicación: Cali
Mensajes: 73
Antigüedad: 13 años, 9 meses
Puntos: 2
Pregunta Vcam as3 Juegos

Hola a todos...

Estoy iniciándome en desarrollar juegos de plataforma en as3. Y el paso que debo dar ahora es incluir la Vcam para que pueda seguir todo el tiempo al personaje.

En as2 no es problema para mi. Pero es obvio que no funciona de la misma manera pues simplemente no obtengo resultados.

He buscado información en Internet y la mayoría menciona que debo borrar del código de la Vcam la siguiente línea de código: addEventListener(Event.ENTER_FRAME, camControl); Esto con el fin de poder llamar a esa función ya que es la que controla la Vcam como tal. Lo he intentado pero no veo solución.

En todos los ejemplos que he visto la cámara ya está en la línea de tiempo. Quizás esa sea la razón por la cual no me funciona a mi, ya que yo la estoy insertando con addChild().

Pues son mis primeras pruebas de juego en as3. Agradezco toda la ayuda y/o información que me puedan brindar.

A continuación los códigos que estoy utilizando.

El código de prueba que tengo es el siguiente:
Código:
import flash.events.Event;
import flash.events.KeyboardEvent;

var per:Per = new Per(); // Personaje
var esc:Esc = new Esc(); // Escenario
esc.y = 582;

var cam:Cam = new Cam(); // Vcam
cam.width = 1024;
cam.height = 768;

addChild(esc);
addChild(per);
addChild(cam);

var left:Boolean = false;
var up:Boolean = false;
var right:Boolean = false;
var down:Boolean = false;


function perMove(e:KeyboardEvent):void{
	if(e.keyCode == 37){
		left = true;
	}
	if(e.keyCode == 38){
		up = true;
	}
	if(e.keyCode == 39){
		right = true;
	}
	if(e.keyCode == 40){
		down = true;
	}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN,perMove);

function perCantMove(e:KeyboardEvent):void{
	if(e.keyCode == 37){
		left = false;
	}
	if(e.keyCode == 38){
		up = false;
	}
	if(e.keyCode == 39){
		right = false;
	}
	if(e.keyCode == 40){
		down = false;
	}
}
stage.addEventListener(KeyboardEvent.KEY_UP,perCantMove);

function moveListener(e:Event):void{
	if(left == true){
		per.x -= 5;
	}
	if(up == true){
		per.y -= 5;
	}
	if(right == true){
		per.x += 5;
	}
	if(down == true){
		per.y += 5;
	}
}
per.addEventListener(Event.ENTER_FRAME,moveListener);

function camMove(e:Event):void{
	cam.x = per.x;
	cam.y = per.y;
}
cam.addEventListener(Event.ENTER_FRAME,camMove);
El código de la Vcam es el sigueinte:
Código:
 var cX:Number;
 var cY:Number;
 var sX:Number; 
 var sY:Number; 
 this.visible = false; 
 var oldMode:String = stage.scaleMode; 
 stage.scaleMode = StageScaleMode.NO_SCALE;
 cX = stage.stageWidth/2; 
 cY = stage.stageHeight/2; 
 sX = stage.stageWidth;
 sY = stage.stageHeight; 
 stage.scaleMode = oldMode;
 stage.align=StageAlign.TOP_LEFT; 
 addEventListener(Event.ENTER_FRAME, camControl);
 addEventListener(Event.REMOVED, resetStage); 
 function camControl(event:Event):void { 
    var xScale:Number = sX / this.width;
    var yScale:Number = sY / this.height;
    parent.x = cX - (this.x * xScale);
    parent.y = cY - (this.y * yScale);
    parent.scaleX = xScale;
    parent.scaleY = yScale; 
 } 
 function resetStage(event:Event):void {
    removeEventListener(Event.ENTER_FRAME, camControl);
    parent.scaleX = 1; parent.scaleY = 1;
    parent.x = 0; parent.y = 0;
 }

Última edición por gcrlink; 03/04/2012 a las 19:46
  #2 (permalink)  
Antiguo 11/04/2012, 00:22
 
Fecha de Ingreso: enero-2011
Ubicación: Cali
Mensajes: 73
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Vcam as3 Juegos

No encontré la manera de poder utilizar la Vcam as3 en mi proyecto, pero sí me adentré a estudiar la librería flixel para juegos de video en Flash as3 en el entorno Flash Develop la cual tiene una clase FlxCamera que satisface lo que necesitaba.

Etiquetas: as3, juegos, vcamas3
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:01.