سورس بازی Racing در اندروید

دوشنبه 21 فروردین 1396

در این بازی یک شبیه سازی انجام شده است که کاربر با استفاده از یک دکمه مورد نظر می تواندماشین خود را به جهات مختلف حرکت دهد و یک بازی است که بیشتر سنسور جهات در آن فعال شده است .

سورس بازی Racing در اندروید

در لایه ی main از یک textview استفاده شده است

در این بازی 5 تا کلاس تعریف شده است

import org.andengine.entity.sprite.Sprite;
import org.andengine.extension.physics.box2d.PhysicsConnector;
import org.andengine.extension.physics.box2d.PhysicsFactory;
import org.andengine.opengl.texture.TextureOptions;
import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlas;
import org.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlasTextureRegionFactory;
import org.andengine.opengl.texture.region.ITextureRegion;

import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.physics.box2d.Body;
import com.badlogic.gdx.physics.box2d.BodyDef.BodyType;
import com.badlogic.gdx.physics.box2d.FixtureDef;

public class Car {

	Body mCarBody;
	Sprite mCarSprite;
	Vector2 velocity;
	
	private BitmapTextureAtlas mCarTexture;
	ITextureRegion mCarTextureRegion;
	
	
	public void loadResources(RaceActivity raceActivity) {
		mCarTexture = new BitmapTextureAtlas(raceActivity.getTextureManager(), 36, 72, TextureOptions.BILINEAR);
		mCarTextureRegion = BitmapTextureAtlasTextureRegionFactory.createFromAsset(mCarTexture, raceActivity, "green-car-top.png", 0, 0);
		mCarTexture.load();
	}
	
	public void initialize(final RaceActivity raceActivity, final GameCamera gameCamera) {
		mCarSprite = new Sprite(80, 80, 36, 72, mCarTextureRegion, raceActivity.getVertexBufferObjectManager());
		final FixtureDef carFixtureDef = PhysicsFactory.createFixtureDef(0, 0, 1.0f);
		mCarBody = PhysicsFactory.createBoxBody(raceActivity.mPhysicsWorld, mCarSprite, BodyType.DynamicBody, carFixtureDef);
		mCarBody.setUserData("player");
		
		raceActivity.mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(mCarSprite, mCarBody, true, false) {
			@Override
			public void onUpdate(float pSecondsElapsed) {
				super.onUpdate(pSecondsElapsed);
				gameCamera.bCamera.updateChaseEntity();
			}
		});
		raceActivity.mScene.attachChild(mCarSprite);
	}
}

این کلاس به نام car جهات ماشین را مشخص می کند که ماشین به کدام جهات حرکت کند

خروجی این برنامه به صورت زیر است:

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید