IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

introduccio

relalitza 5 modificacions del pong

codi font

PONG

Executable

Carlesrisa pong150.png

Documentació

començament joc: Carlesrisa pong100.png Durant: Carlesrisa pong110.png FI: 200px

1. arreglar el bug poso un try per a que l'apliació no es pari en segon pla.

public void run() {
		Canvas canvas;
		while(run) {
			canvas = null;
			try {
				canvas = sh.lockCanvas(null);
				synchronized(sh) {
					try {
						view.onDraw(canvas);
					} catch (Exception e) {
						// TODO: handle exception
					}
				}
			} finally {
				if(canvas != null)
					sh.unlockCanvasAndPost(canvas);
			}
		}

2.canviar el color de fons , de la raqueta i de la bola

@Override
	public void onDraw(Canvas canvas) {
		Paint paint = new Paint();
		paint.setColor(Color.blue);
		
		canvas.drawColor(Color.yellow);
		canvas.drawRect(raquetaDcha.getRectElemento(), paint);
		canvas.drawRect(bola.getRectElemento(), paint);
	}

3.Trac els botons Opcions i Tancar

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                            WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.main);
        
		TextView play = (TextView)findViewById(R.id.play_button);
		play.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				Toast.makeText(getApplicationContext(), R.string.menu_play, Toast.LENGTH_SHORT).show();
				empiezaJuego();
			}
		});
    }
                / 

4. velocitat de la bola canviada

public BolaMoveThread(Bola bola, Raqueta izda, Raqueta dcha, Rect screen, Context context, Marcador marcador) {
	this.bola = bola;
	this.bolaInitX = bola.getOrigenX();
	this.bolaInitY = bola.getOrigenY();
	this.raquetaIzda = izda;
	this.raquetaDcha = dcha;
	this.screen = screen;
	this.run = false;
	this.speed = 3;
	this.v = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
	this.mp = MediaPlayer.create(context, R.raw.pong);
	this.marcador = marcador;
	this.punto = false;
}


5. Canvia el logo del joc

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:weightSum="1">
    <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/pongban" android:layout_gravity="center" android:layout_marginTop="20dip" android:layout_marginBottom="50dip" android:id="@+id/pong_logo"></ImageView>
    <TextView android:layout_height="wrap_content" android:text="@string/menu_play" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content" android:background="@drawable/button_bg" android:layout_gravity="center" android:gravity="center_vertical|center_horizontal" android:layout_marginBottom="30dip" android:id="@+id/play_button"></TextView>
</LinearLayout>