Mostrando las entradas con la etiqueta actionscript 2.0. Mostrar todas las entradas
Mostrando las entradas con la etiqueta actionscript 2.0. Mostrar todas las entradas

marzo 31, 2010

Creando un videojuego sencillo. Conceptualización y Desarrollo.

Hoy voy a poner una mini-chiquita-guía para hacer un videojuego supersimple pero bien argumentado =O... o bueno, eso digo yo xD.

Para comenzar, una pequeña definición desde wikipedia:
Un videojuego o juego de video es un programa informático creado para el entretenimiento en general y basado en la interacción entre una o varias personas y un aparato electrónico que ejecute dicho videojuego.

Cuando pretendemos crear un videojuego, sencillo o complejo, hay características FUNDAMENTALES que se deben definir, no tanto para los usuarios, sino para que nosotros tengamos un objetivo a alcanzar y nuestro juego resulte ser lo que queremos que sea.
Éstas características se pueden categorizar en dos tipos: de CONCEPCIÓN y de DESARROLLO.

CONCEPCIÓN.
Estas definirán la manera en que se verá, jugará y desarrollará el videojuego, por lo que, aunque muchas veces no tengan sentido, son muy muy muy muy muy necesarias si queremos que nuestro videojuego sea algo más que un simple juego en flash (o cualquier otra plataforma).

Un punto de concepción importante, si desean aplicarlo, es que debemos concebir a los videojuegos como productos narrativos, similares a las películas, pues las historias hacen que los usuarios se puedan identificar con los juegos y "deseen" jugarlos, aunque esto es totalmente una recomendación, no es algo establecido, sin embargo, si observan los videojuegos actuales, es a lo que pretenden llegar: películas interactivas.

DESARROLLO.
Las características de desarrollo muchas veces es complicado definirlas, pues implica tener un listado de todo lo que vamos a necesitar al momento de programar el videojuego, y eso, como ustedes y yo sabemos  "Se da hasta que lo estamos haciendo" xD. Pero bueno, para hacer las cosas como Dios manda, trataremos de definir lo más posible todo para que cuando comencemos con el desarrollo, sólo agreguemos los pequeños detalles. 

EL VIDEOJUEGO.

Pues bueno, ahora sí iremos paso a paso definiendo las características de nuestro videojuego, las definiciones las colocaré con letras grises dentro de corchetes [ ].

febrero 20, 2010

attachMovie. Llamar objetos de la biblioteca con AS2.

Vamos a hacer un ejercicio dinámico que sirve para millones de cosas... =O pero ahorita lo vamos a aplicar para mostrar información de distintos botones, productos, etc. utilizando un sólo contenedor.


Ésto se logra con _attachMovie.

Veamus el proceso...

Creamos un rectángulo con una caja de texto dinámico(con nombre: texto_txt) y lo convertimos en símbolo:

Después, lo exportamos para actionscript.

Se da click derecho sobre el movieClip en la biblioteca y seleccionamos "Propiedades":

Activamos la casilla EXPORTAR PARA ACTIONSCRIPT y asignamos el nombre del id:
Ahora vamos a crear los botones... yo hice un circulo y lo repeti:

uno_mc, dos_mc, tres_mc, cuatro_mc

Ahora sí podemos pasar a la programación.
En una capa nueva con nombre AS (o el que sea), colocamos:
var posX:Number = 300;
var posY:Number = 50;
Declaramos dos variables (posX y posY) de tipo número, donde asignaremos la posición en X y Y en donde aparecerá nuestro cuadro cuando lo llamemos con attachMovie.

Ahora vamos a declarar los textos que van a aparecer según el botón que eligamos:
var dialogo1:String="Este es el Diálogo 1... abcdefghijklmn";
var dialogo2:String="Este es el Diálogo 2... caaaaaaaalll";
var dialogo3:String="Este es el Diálogo 3... amamamamamamamama";
var dialogo4:String="Este es el Diálogo 4... rrriiiiooooooo";
 Son 4 variables de tipo String donde asignamos un texto distinto para notar el cambio.

Y ahora viene.... la función!

La función se llama BOXCALL y recibe dos parámetros, MC(tipo MovieClip) y DIALOGO (tipo String).
Dentro crea otras dos funciones, una para el momento ROLLOVER y la otra para ROLLOUT del movieclip MC.

mc.onRollOver
Aquí se aplica _root.attachMovie(); dentro de _root.
attachMovie tiene 3 parámetros:
_root.attachMovie("objetoDeBiblioteca", "nuevoNombre", nivel)
objetoDeBiblioteca . Cuando exportamos el cuadro para actionscript, definimos éste nombre.
nuevoNombre . El nombre puede ser cualquiera. Éste nombre sirve para hacer referencia a ese objeto desde actionscript, es como si ya existiera en el Stage.
nivel . El nivel en que se colocará el movieClip.
_root.getNextHighestDepth() . Ésta función detecta el nivel más alto dentro del documento, así no tendremos problema si jalamos más objetos con _attachMovie.

Ahora podemos empezar a aplicar el nombre "cuadro_mc" como si existiera en el STAGE.

Definimos su posición con:
cuadro_mc._y = posY;
cuadro_mc._x = posX; en la imagen no salió esta
posY y posX las definimos al principio del AS.

Finalmente declaramos que dentro de cuadro_mc , en texto_txt, su propiedad text es igual a la variable dialogo.

cuadro_mc.texto_txt.text = dialogo;


mc.onRollOut






cuadro_mc es el nuevo nombre que dimos a nuestro movieClip "attacheado". Al momento de que el mouse salga del boton (RollOut) se eliminará el movieClip cuadro_mc.


 Sólo falta  llamar a las funciones:
boxcall(uno_mc,dialogo1);
boxcall(dos_mc,dialogo2);
boxcall(tres_mc,dialogo3);
boxcall(cuatro_mc,dialogo4);
boxcall es el nombre de la función, uno_mc es el nombre al que vamos a aplicar la función y definimos que para él aplicará dialogo1 como texto a mostrar, así respectivamente con los demás movieClips.


Descarga:

FLAhttp://www.4shared.com/file/228385367/c09b84ad/attachMovie.html

febrero 18, 2010

Cuenta regresiva con actionscript.

Ya es noche y no tengo mucho tiempo u_u... así que haremos una CUENTA REGRESIVA EN FLASH. Como cuando es año nuevo y todos gritan:

 ¡10, 9, 8, 7, 6, 5, 4, 3, 2, 1... Felix año New!
xD

Bueno ya... lo que vamos a hacer es esto:



Todo está ultra explicado en comentarios dentro del FLA, pero de todas formas lo pongo aki.
function cuenta(inicio:Number) { // Funcion para conteo regresivo || Inicio es el numero más alto, es decir, donde empieza la cuenta.
var restante:Number = inicio; // Es el restante para llegar a 0 (si INICIO es 5, RESTANTE es 5,4,3,2,1,0).
var segundos:Number = Math.round(getTimer()/1000); // getTimer()/100 evalua los segundos desde que se ejecuto el SWF.
var conteo:Number; // Va restando, cada segundo, a la variable RESTANTE.
_root.onEnterFrame = function() { // Inicia el onEnterFrame que hará visible el conteo.
if (restante>=0) { // si RESTANTE es mayor o igual a 0 ... Es decir, si RESTANTE es igual a 5 o 4 o 3 o 2 o 1 o 0.
conteo = Math.round(getTimer()/1000)-segundos;  // Esta línea es importante para poder realizar el reseteo de la cuenta *ver anotacion al final.
restante = inicio-conteo; // RESTANTE es igual a INICIO menos los segundos que van transcurriendo.
cuenta_txt.text = restante; //CUENTA_TXT.TEXT va actualizando el valor de RESTANTE.
again_mc._alpha = 0; // se oculta el boton de reseteo.
}
if (restante == 0) { //si RESTANTE es igual a 0, es decir, ya acabo la cuenta regresiva.
delete this.onEnterFrame; // eliminamos el onEnterFrame de arriba para ahorrar memoria.
again_mc._alpha = 100; // hacemos visible el boton de reseteo.
}


};
}


cuenta(5);   // ejecutamos la funcion de CUENTA y enviamos el valor de INICIO.

again_mc.onRelease = function() {   // al presionar AGAIN_MC (boton de reseteo).
cuenta(5);   // de nuevo ejecutamos la funcion de CUENTA y enviamos el valor de INICIO.
};

Y así es como se hace el contéo =O.

DESCARGAS:

SWF - http://www.4shared.com/file/224627232/bb90c5bd/cuentaregresiva.html

FLA - http://www.4shared.com/file/224626988/c587dec/cuentaregresiva.html

febrero 08, 2010

Funciones ( functions(){} )

Las funciones son la manera de ordenar que lleve a cabo una accion X
cuando se requiera. Un ejemplo enfocado al mundo normal seria:

1.- Tengo hambre.
2.- Llamamos a la funcion COMER.
3.- Funcion comer = introducir comida a nuestra panza.

=D de eso se trata una funcion! De llamar 'conceptos', pero estos
conceptos tienen una deficion hecha por nosotros.

enero 30, 2010

Creando Clases en Actionscript 2.0

Para crear una CLASE en actionscript 2.0 se necesitan dos archivos:

.AS [su nombre debe iniciar con mayúscula y debe ser el mismo nombre de la clase].

.FLA [llamará las funciones declaradas en el AS].


El archivo .AS contendrá todo el código. Sería similar a un archivo .CSS, .JS, etc... que sólos no hacen nada, sino que necesitan un activador (detonador, etc...), en éste caso el .FLA se encargaría de esa función.

Una de las características y funcionalidade de hacer esto, es que sus códigos quedarán con un nivel de seguridad un tanto mayor, es decir, si alguien descarga sus SWF y los decompila, no encontrará las funciones principales, solamente hallará los "activadores" de las funciones del .AS.