+
Invasores espaciales Invasores espaciales En un post anterior dije que siempre me gusta tratar de escribir invasores del espacio en todos los idiomas que aprendo. Bueno, PowerShell en la ventana de la consola estándar de Windows parecía un gran candidato por lo que me puse a la tarea en mi tiempo libre. Mis colegas Richy Rey. Nik Crabtree y Brian largo unieron a los esfuerzos y entre nosotros, después de 37 revisiones, se nos ocurrió algo que era: a) tonto b) El uso inadecuado de PowerShell c) Un poco de diversión. Descargarlo aquí: psinvaders actualización R94: esta versión ahora incluye sonido. Desempaquetar el archivo zip, y luego desde el directorio donde psinvaders. ps1 es, el tipo ./psinvaders. ps1. Disfruta! Las actualizaciones futuras pueden aparecer en la página de descargas. ¿Cómo funciona? Todo el dibujo se basa en dibujar en la pantalla de la consola. No hay vuelta de amortiguación se lleva a cabo, por lo que cuando se dibuja un sprite, se borra en sí, desde su posición más reciente, actualiza la x, valor y, al mismo empates en la nueva posición. El dibujo en sí se lleva a cabo usando [consola] :: Escriba. Desde la redacción de este descubrimos las alegrías de BufferCells, y una de las razones para tomar no más lejos este proyecto. La lectura de los eventos clave resultó ser bastante simple: simplemente comprobar si un evento clave está disponible, entonces consumir todos los tipos de eventos, el mantenimiento de la abajo / arriba estado de las teclas de movimiento y simplemente observando hacia abajo para eventos de disparo y poner en nuevos créditos. El juego es bastante jugable, la velocidad a gota, ya que muy pocos sprites se mueven en el bucle interno: la base, un invasor del espacio, y cualquier bombas y misiles. Esto significa que: a) El juego se mueve a un ritmo razonable. b) El bloque extranjero obtiene más rápido a medida que más se matan c) Una bomba extranjero va a sobregirar un extranjero más baja hasta la próxima vez. El resto es bastante lógica básica bucle del juego. Ive comenzó a trabajar en un marco más adecuado para hacer el dibujo de nuevo buffer de sprites, imágenes, fondos de baldosas y líneas / puntos. Actualmente, su PowerShell puro y unusably lento, pero pueden empezar a hacer algo de C # o procesos en línea JScript para acelerarlo. Gracias por Lee Holmes para que la inspiración. O tal vez la enfermedad apenas esperar a que las inprovements de rendimiento esperados en PowerShell 1.1 😉
No comments:
Post a Comment