pemrograman game mobile angga nugraha

11
PEMROGRAMAN GAME MOBILE TUGAS IV MOVING SPRITE I GEDE ANGGA SURYA NUGRAHA 1104505014 JURUSAN TEKNOLOGI INFORMASI FAKULTAS TEKNIK

Upload: deganugraha

Post on 23-Nov-2015

49 views

Category:

Documents


5 download

TRANSCRIPT

PEMROGRAMAN GAME MOBILETUGAS IVMOVING SPRITE

I GEDE ANGGA SURYA NUGRAHA1104505014

JURUSAN TEKNOLOGI INFORMASIFAKULTAS TEKNIKUNIVERSITAS UDAYANA2014

TUGAS IV

1.Tahapan Membuat Sprite MovingBerikut merupakan tahapan-tahapan dari tugas keempat ini yaitu membuat Sprite Moving pada aplikasi Eclipse.A.Tugas keempat kali ini yaitu membuat Sprite Moving pada aplikasi Eclipse. Tahap pertama yang dilakukan yaitu proses pembuatan aplikasi android baru. Pada Application Name isi dengan Tugassprite sebagai nama projek yang akan dibuat. Kemudian beri nama activity dengan MainActivity. Setelah itu klik finish. B.Setelah klik finish maka MainActivity.java yang telah dibuat akan muncul pada Package Explore seperti gambar dibawah.

Gambar 1. Package Explorer

Selanjutnya akan muncul tampilan dibagian kiri project yang telah dibuat. Pada Main Acitivity selanjutnya kita mengetik koding di main activity sebagai berikut:package angga.andenginegerak;import org.andengine.engine.camera.Camera;import org.andengine.engine.options.EngineOptions;import org.andengine.engine.options.ScreenOrientation;import org.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy;import org.andengine.entity.scene.Scene;import org.andengine.entity.sprite.Sprite;import org.andengine.entity.util.FPSLogger;import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlas;import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlasTextureRegionFactory;import org.andengine.opengl.texture.region.TextureRegion;import org.andengine.ui.activity.SimpleBaseGameActivity;

import android.support.v7.app.ActionBarActivity;import android.support.v7.app.ActionBar;import android.support.v4.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;import android.os.Build;

public class MainActivity extends SimpleBaseGameActivity {

public static final int CAMERA_WIDTH = 720;public static final int CAMERA_HEIGHT = 480;private BitmapTextureAtlas ourAtlas;private TextureRegion ourCircle;private BitmapTextureAtlas back;private TextureRegion backGro;private Circle circle;private Sprite bg;@Overridepublic EngineOptions onCreateEngineOptions() {// TODO Auto-generated method stubfinal Camera camera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);return new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED, new RatioResolutionPolicy(CAMERA_WIDTH,CAMERA_HEIGHT), camera);}

@Overrideprotected void onCreateResources() {// TODO Auto-generated method stubourAtlas = new BitmapTextureAtlas(this.getTextureManager(),256,256);ourCircle = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.ourAtlas, this, "icon.png",0,0);mEngine.getTextureManager().loadTexture(ourAtlas);back = new BitmapTextureAtlas(this.getTextureManager(),1024, 1024);backGro = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.back, this, "back.png", 0, 0);mEngine.getTextureManager().loadTexture(back);}

@Overrideprotected Scene onCreateScene() {// TODO Auto-generated method stubthis.mEngine.registerUpdateHandler(new FPSLogger());//create a new scenefinal Scene mScene = new Scene();bg = new Sprite(0, 0, backGro, this.getVertexBufferObjectManager());mScene.attachChild(bg);//set background of our scene to whitecircle = new Circle(150, 150, ourCircle, this.getVertexBufferObjectManager());//mScene.setBackground(new Background(1.0f,1.0f,1.0f));mScene.attachChild(circle);return mScene;}}Kode Program 1. Main Activity

Kode Program 1 MainActivity, disana ada fungsi menentukan ukuran CAMERA yang berguna untuk ukuran tampilan. Gambar background dan gambar yang bergerak ditempatkan di MainActivity. Selanjutnya akan diketik kode program pada class baru yang dibuat yakni class circle.java. Kode program class ini terhubung dengan MainActivity.java.package angga.andenginegerak;import org.andengine.entity.sprite.Sprite;import org.andengine.opengl.texture.region.ITextureRegion;import org.andengine.opengl.vbo.VertexBufferObjectManager;

public class Circle extends Sprite {boolean moveLeft = false;

public Circle(float pX, float pY, ITextureRegion pTextureRegion,VertexBufferObjectManager pVertexBufferObjectManager) {super(pX, pY, pTextureRegion, pVertexBufferObjectManager);// TODO Auto-generated constructor stub}@Overrideprotected void onManagedUpdate(final float pSecondsElapsed){super.onManagedUpdate(pSecondsElapsed);if(!moveLeft){this.mX += 6;}else{this.mX -= 6;}if(this.mX>=MainActivity.CAMERA_WIDTH-this.getWidth()){moveLeft = true;}else if(this.mX