/* Versión del juego clássico del PONG programado para el taller Processing y Arduino en CAMON de Alacant, que el autor impartido por Quelic Berga, Daniel García i Joan Soler-Adillon http://www.tucamon.es/contenido/processing-y-arduino Autor: Joan Soler-Adillon Enero 2009 Licencia: Creative Commons, Attribution-Noncommercial-Share Alike 3.0 Unported http://creativecommons.org/licenses/by-nc-sa/3.0/ Este programa está diseñado para ser utilitzado tanto por usuarios noveles como avanzados. Para los primeros, existen una serie de variables al principio de todo (bajo el título de "variables principales" que determinan todos los aspectos importantes de juego. Sólo manipulando estos valores se verán cambios importantes en el juego. */ ////////////////////// // VARIABLES PRINCIPALES // //------PANTALLA------------: // //Ancho de la pantalla int theWidth = 600; //Alto de la pantalla int theHeight = 400; //color de los elementos gráficos color screenColor = color(0,255,0); //color de fondo color backgroundColor = color(0); // //------PALAS------------: // //velocidad a la que se mueven las palas float paddleSpeed = 1; //grosor de las palas int paddleWidth = 5; //altura de las palas int paddleHeight = 100; //márgen de la pala al borde de la pantalla float margin = 20; //Variable para decidir si la bola rebota con efecto boolean efecteActiu = true; //Variable para controlar si el mouse mueve las palas (activar para demo, desactivar al conectar con Arduino) boolean mouseMovesPaddles = true; // //------PELOTA------------: // //Diámetro de la pelota int ballSize =25; //velocidad original de la pelota float originalBallSpeed = 5; //Variable que determina si la pelota se acelera cada vez que toca una pala (true=activo/false=inactivo) boolean accelerateBall = true; //Incremento de esta velocidad en cada toque de pala cuando esté activada esta opción float ballSpeedIncrement = 0.25; // //------JUEGO------------: // int maxScore = 3; // ////// FIN DE VARIABLES PRINCIPALES ////////////////////////////////////////////////// //creamos los objetos para el juego PFont letra; paddle paddleLeft; paddle paddleRight; ball theBall; scoreKeeper scorer; void setup(){ //establecemos tamaño de pantalla size(theWidth,theHeight); //smooth para suavizar gráficos smooth(); //cargamos font y establecemos tamaño letra = loadFont("CourierNewPSMT-36.vlw"); textFont(letra, 24); //initializamos objetos: paddleLeft = new paddle("left", paddleSpeed, margin, paddleWidth, paddleHeight); paddleRight = new paddle("right", paddleSpeed, margin, paddleWidth, paddleHeight); theBall = new ball(width/2,height/2,originalBallSpeed, ballSpeedIncrement, ballSize); scorer = new scoreKeeper(maxScore); } void draw(){ //actualizar fondo background(0); //actualizar objetos theBall.update(); paddleLeft.update(); paddleRight.update(); scorer.update(); }