Para probar esto necesitamos prueba de 4 puntos en el espacio. La primera será a media cuadra, y media cuadra al otro lado. Esto pone a prueba efectivamente el área resaltada en rojo a continuación.
Si usted no está familiarizado con ella, el operador >> es llamado un desplazamiento de bits. Los detalles reales de este operador no son importantes; todo lo que necesita saber es que llamando >> 1 en un int que está efectivamente reducir a la mitad de su valor.
Es más eficiente que llamar BLOCK_DIMENSIONS /2, y usted tiene que impresionar a todos sus amigos con una operación oscura.
A continuación, probamos la zona de la próxima cuadra.
< p>
A continuación, repetimos el proceso una cuadra a la derecha.
En el ejemplo anterior, el bloque en la parte inferior de la imagen no sería adecuado para un colocación enemigo porque hay una colisión con la segunda prueba. Esto establece el indicador de colisión en true, lo que significa que no añadimos un enemigo aquí.
if (! Choca && enemyStartX> 0 && enemyStartY> 0) {enemies.add (this.add (nuevo enemigo (enemyStartX , enemyStartY, block1.width))); ++ enemyCount; } If (enemyCount> = ENEMY_COUNT) break; }}Si el espacio sobre el bloque estaba claro que cree un nuevo enemigo, que se agrega tanto al gamestate y para la colección enemigos. Nosotros incrementamos el contador enemyCount, y luego o bien colocar el próximo enemigo, o si tienen todo sido ruptura colocado fuera del circuito
actualización función de anulación público (.): Void {super.update (); FlxG.collideArray (levelBlocks, jugador); FlxG.collideArrays (playerBullets, levelBlocks); FlxG.collideArrays (enemigos, levelBlocks); FlxG.overlapArrays (playerBullets, enemigos, bulletHitEnemy);}
Los enemigos chocarán con los bloques de nivel, y con las balas de los jugadores. En la función de actualización probamos para estas colisiones. Por la colisión bala /enemigo, fijamos la función bulletHitEnemy ser llamado en caso de una colisión
función bulletHitEnemy privada (Bullet: FlxSprite, Bot: FlxSprite):. Void {Bullet.hurt(0); Bot.
hurt
(1);}
En la función bulletHitEnemy llamamos a la función dolía tanto la bala y el enemigo. Esto eliminará la bala desde el nivel, y hacer que el enemigo a sufrir algún daño. . Si el enemigo sufre daño suficiente será entonces mató
A continuación tenemos que crear la clase Enemigo
Creación de un juego de plataformas de Flash con Flixel y Flex - Sonido y Music
- Escriba casting en Php
- El objeto HTML Archivo Attribute
- Objeto HTML como Element
- Como llegar software
- Miembros estáticos y la palabra clave this en C ++ Classes
- Los Resultados de la búsqueda Html Document
- Cuadro de lista de Windows Notifications
- Entender Juego Programming
- Lógica booleana Y Php Conditions
- Codificación básico de clase de ventana Procedure