Cómo hacer un juego de disparos sencillo (más sencillo que CS)
Parte 2 Comienza las clases de escritura:
1. Primero abre Flash CS4 (no hay mucha diferencia entre CS3, CS4 o CS5) para crear un nuevo proyecto y presione Aceptar. Abra el panel del proyecto. Figura Nuevo proyecto
2. Haga clic en el primer botón triangular (proyecto) a la derecha y seleccione "Nuevo proyecto" en el menú desplegable. En el panel emergente de nuevo proyecto, nombre del proyecto: complete el nombre del proyecto. En el elemento Carpeta raíz, haga clic en el botón Examinar a la derecha, busque el directorio donde desea almacenar el proyecto y presione Aceptar. En la versión ActionScript: seleccione ActionScript 3.0. Haga clic en el botón "Crear proyecto" para crear el proyecto. Figura Panel de proyecto
3. Copie el archivo AirRaid.fla a la carpeta del proyecto (guardar interfaz). Haga clic en el icono "Crear clase" a continuación, complete el nombre del archivo: AirRaid en el cuadro de texto emergente Clase del panel Crear clase: y haga clic en el botón Crear clase. Esto crea la clase y la escribe en el marco para que podamos agregarle nuestro código. Figura: Crear una clase Crear una clase
Figura: Complete el nombre de la clase
Figura: El marco de la clase
Escribir AirRaid.as clase
Clase AirRaid.as: clase de documento La clase AirRaid es el controlador del juego y está vinculada a AirRaid.fla. Responsable de generar aviones, cañones y balas en la interfaz. Muestra la puntuación y las balas restantes. Registre los detectores de eventos de presionar y soltar el teclado para recibir las operaciones del teclado del usuario. Registre un detector de eventos de trama entrante para la detección de colisiones. Defina el temporizador de la aeronave y genere aeronaves aleatoriamente. Detecta la cantidad de balas restantes. Cuando la cantidad de balas llega a cero, el protagonista muere. La interfaz de aviones y cañones se elimina y salta al botón de repetición.
paquete {
clase pública AirRaid extiende MovieClip {
var privada aagun:AAGun;//Artillería
aviones var privados:Array ;//Matriz de aviones <
private var bullets:Array;//matriz de balas
public var leftArrow, rightArrow:Boolean
private var nextPlane; :Timer;//Temporizador que genera aviones en momentos aleatorios
var newx = this.x
//Mover hacia la izquierda
if (MovieClip(parent ) .leftArrow) {
newx -= velocidad*tiempoPasado /
}
//Mover a la flecha derecha) {
newx += velocidad*tiempoPasado / 1000
}
//Detectar límite
if (newx < 10) newx = 10;
if (newx > 540) newx = 540;
// Actualizar posición
this.x = newx
}
//Eliminar el arma y el evento en la pantalla
public function deleteGun() {
parent.removeChild(this);
removeEventListener(Event. ENTER_FRAME ,moveGun);
}
// Elimina el arma y el evento de la pantalla.
}
}
}
Nuevo archivo Airplane.as
Clase de avión: Componente de aeronave de la biblioteca auténtica. Genere aviones aleatoriamente con velocidades aleatorias, genere 5 estilos de aviones, detecte si el avión sale del límite y detecte si el avión es alcanzado por una bala. Efectos automáticos de destrucción y explosión.
//Velocidad y dirección de la aeronave
//Temporizador para controlar el movimiento
//Desplazamiento hacia izquierda y derecha
//Detectar límites
// Detectar colisión Cuando la bala golpea el avión, saltará al cuadro marcado "explotar" para demostrar la animación de la explosión.
//Eliminar aviones y eventos en el escenario
Nuevo archivo Bullet.as
Clase Bullet: Componente Bullet en la biblioteca. Controla la dirección de vuelo de la bala y detecta si la bala sale volando de la pantalla.
paquete {
importar flash.display.MovieClip;
importar flash.events. flash.events.TimerEvent;
public class Bullet extends MovieClip {
private var dy:Number; // / La velocidad y dirección de la bala.
private var lastTime:int;
public function Bullet(x,y:Number, speed: Number) {
// Posición inicial
this.x = x;
this.y = y;
// obtener velocidad
dy = velocidad
// animación
lastTime = getTimer();
addEventListener(Event.
public function moveBullet(event:Event) {
// Obtener la diferencia horaria
var timePassed:int = getTimer()-lastTime;
lastTime += timePassed
// Movimiento de bala
var timePassed:int = getTimer()-lastTime; p>
// Movimiento de la bala
p>
this.y += dy*timePassed/1000
//La bala pasa por la parte superior de la pantalla.
if (this.y < 0) {
deleteBullet();
//Eliminar viñetas y eventos en el escenario
función pública eliminarBullet() {
MovieClip(padre).removeBullet(este
parent.removeChild(este
removeEventListener(Event.ENTER_FRAME, moveBullet);
Después de completar y guardar todos los archivos de clase, regrese a la escena AirRaid.fla, presione la combinación de teclas Ctrl+Enter para probar y ver lo que obtiene.
¡Un simple! Y Flash fácil de aprender, también se puede usar para animación y es muy práctico para juegos a gran escala. O C ++, la calidad de los juegos producidos no es buena, si lo desea. Haz un juego, no puedes terminarlo en uno o dos años. Hay clases especiales para esto.