Académique Documents
Professionnel Documents
Culture Documents
TXT2
TXT2
TXT2
fentre du menu
activity correspondante
<RelativeLayout xmlns:android="http://schemas.android.com/apk/
res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
android:background="@drawable/back">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="59dp"
android:onClick="play"
android:text="play"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
MainActivity correspondante
package com.example.mac.test_gg9;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Game correspondante
package com.example.mac.test_gg9;
/**
* Created by mac on 09/03/2017.
*/
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.view.Display;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.TextView;
gameloop gameLoopThread;
Bitmap run2,exp;
TextView txt;
ImageView imageView;
protected void onCreate(Bundle savedInstanceState) {
run2=BitmapFactory.decodeResource(getResources(),
R.drawable.image4);
exp=BitmapFactory.decodeResource(getResources(),
R.drawable.exp);
super.onCreate(savedInstanceState);
txt=(TextView) findViewById(R.id.textView) ;
//phone state
setContentView(new GameView(this));
}
int powerrun=0,shieldrun=0;
holder.addCallback(new SurfaceHolder.Callback() {
@SuppressWarnings("deprecation")
@Override
public void surfaceDestroyed(SurfaceHolder
holder)
{
//for stoping the game
gameLoopThread.setRunning(false);
gameLoopThread.getThreadGroup().interrupt();
}
@SuppressLint("WrongCall")
@Override
public void surfaceCreated(SurfaceHolder
holder)
{
gameLoopThread.setRunning(true);
gameLoopThread.start();
}
@Override
public void surfaceChanged(SurfaceHolder
holder, int format,int width, int height)
{
}
});
sx = display.getWidth();
sy = display.getHeight();;
powerrun=(3*sx/4);
shieldrun=sx/8;
background =
BitmapFactory.decodeResource(getResources(), R.drawable.back);
background=Bitmap.createScaledBitmap(background,
2*sx,sy, true);
//health dec
float y=300.0f;
@Override
public boolean onTouchEvent(MotionEvent arg1) {
if (arg1.getAction() == MotionEvent.ACTION_MOVE) {
if(arg1.getY()>400 && arg1.getY()<700){
y = arg1.getRawY() - run1.getWidth()/2 ;}
}
return true;
}
int vk=1000,vr=300;
@Override
protected void onDraw(Canvas canvas)
{
canvas.drawColor(Color.BLACK);
//background moving
z=z-10;
if(vk!=200)
{
canvas.drawBitmap(background, z, 0, null);
}
canvas.drawBitmap(run1, 200, y, new Paint());
if (vk < canvas.getWidth()) {
if(vk>200){
vk -= 10;}
}
else {
vk = 0;
}
canvas.drawBitmap(run2, vk, vr, new Paint());
if(vk==200)
{
canvas.drawBitmap(exp, 120, 100, new Paint());
canvas.drawBitmap(background, 0, 0, null);
canvas.drawBitmap(exp, 120, 100, new Paint());
//kinfe
kspeed=20;
if(kspeed<0)
{
kspeed=sx;
}
//exit
}
Gameloop
package com.example.mac.test_gg9;
/**
* Created by mac on 09/03/2017.
*/
/**
* Created by mac on 09/03/2017.
*/
import com.example.mac.test_gg9.Game.GameView;
import android.annotation.SuppressLint;
import android.graphics.Canvas;
}
}
@SuppressLint("WrongCall")
@Override
if (isPaused)
{
try
{
this.sleep(50);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
else
{
Canvas c = null;
startTime = System.currentTimeMillis();
try {
c = view.getHolder().lockCanvas();
synchronized (view.getHolder())
{
view.onDraw(c);
}
}
finally
{
if (c != null)
{
view.getHolder().unlockCanvasAndPost(c);
}
}
}
sleepTime = ticksPS-(System.currentTimeMillis() -
startTime);
try {
if (sleepTime > 0)
sleep(sleepTime);
else
sleep(10);
}
catch (Exception e) {}
}