package fu.testchangetextureregion;
import org.anddev.andengine.engine.Engine;
import org.anddev.andengine.engine.camera.Camera;
import org.anddev.andengine.engine.options.EngineOptions;
import org.anddev.andengine.engine.options.EngineOptions.ScreenOrientation;
import org.anddev.andengine.engine.options.resolutionpolicy.FillResolutionPolicy;
import org.anddev.andengine.entity.scene.Scene;
import org.anddev.andengine.entity.scene.Scene.IOnSceneTouchListener;
import org.anddev.andengine.entity.scene.background.ColorBackground;
import org.anddev.andengine.entity.sprite.Sprite;
import org.anddev.andengine.entity.util.FPSLogger;
import org.anddev.andengine.input.touch.TouchEvent;
import org.anddev.andengine.opengl.texture.Texture;
import org.anddev.andengine.opengl.texture.TextureOptions;
import org.anddev.andengine.opengl.texture.region.TextureRegion;
import org.anddev.andengine.opengl.texture.region.TextureRegionFactory;
import org.anddev.andengine.ui.activity.BaseGameActivity;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class ChangeTextureRegion extends BaseGameActivity {
private static final float CAMERA_WIDTH = 320;
private static final float CAMERA_HEIGHT = 480;
private Camera mCamera;
private Texture bulletT;
private TextureRegion bulletTr;
private Scene mscene;
private boolean ok=true;
private Sprite bullet;
@Override
public Engine onLoadEngine() {
mCamera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
return new Engine(new EngineOptions(true, ScreenOrientation.PORTRAIT,
new FillResolutionPolicy(), mCamera).setNeedsMusic(true)
.setNeedsSound(true));
}
@Override
public void onLoadResources() {
TextureRegionFactory.setAssetBasePath("gfx/");
bulletT=new Texture(32, 32, TextureOptions.DEFAULT);
bulletTr=TextureRegionFactory.createFromAsset(bulletT, this, "21.jpg", 0, 0);
this.mEngine.getTextureManager().loadTexture(bulletT);
}
@Override
public Scene onLoadScene() {
this.mEngine.registerUpdateHandler(new FPSLogger());
mscene=new Scene(1);
mscene.setBackground(new ColorBackground(0.09804f, 0.6274f, 0.8784f));
final float centerX = (CAMERA_WIDTH - this.bulletTr.getWidth()) / 2;
final float centerY = (CAMERA_HEIGHT - this.bulletTr.getHeight()) / 2;
bullet=new Sprite(centerX, centerY, bulletTr);
mscene.attachChild(bullet);
mscene.setOnSceneTouchListener(new IOnSceneTouchListener(){
@Override
public boolean onSceneTouchEvent(Scene pScene,
TouchEvent pSceneTouchEvent) {
if(pSceneTouchEvent.isActionDown()){//pSceneTouchEvent.getAction()==TouchEvent.ACTION_UP
ChangeTextureRegion.this.ok= !ChangeTextureRegion.this.ok;
TextureRegionFactory.createFromAsset(ChangeTextureRegion.this.bulletT,
ChangeTextureRegion.this,
ChangeTextureRegion.this.ok?"21.jpg":"22.jpg", 0, 0);
}
return false;
}
});
return mscene;
}
@Override
public void onLoadComplete() {
// TODO Auto-generated method stub
}
}