BaseGameActivity là activity bạn phải khởi tạo khi làm việc với andengine. Giống như các Activity thông thường BaseGameActivity cũng có life cycle . Sau đây, mình sẽ giới thiệu các thành phần cũng như các phương thức mà bạn phải cài đặt.
Đầu tiên tạo class MyGameActivity extends BaseGameActivity. Lúc này bạn sẽ phải triển khai một vài phương thức, mình sẽ comment chức năng của phương thức đó.
Đầu tiên tạo class MyGameActivity extends BaseGameActivity. Lúc này bạn sẽ phải triển khai một vài phương thức, mình sẽ comment chức năng của phương thức đó.
- public class MyGameActivity extends BaseGameActivity{
- @Override
- public EngineOptions onCreateEngineOptions() {
- // Cài đặt EngineOptions với 1 camera. Ngoài ra bạn có thể tùy chọn có music,sound hay có Mult iTouch
- return null;
- }
- @Override
- public void onCreateResources(
- OnCreateResourcesCallback pOnCreateResourcesCallback)
- throws Exception {
- //Tạo tất cả các Resources. Load các Resourt như ảnh, font chữ, music,sound.
- }
- @Override
- public void onCreateScene(OnCreateSceneCallback pOnCreateSceneCallback)
- throws Exception {
- //Tạo scene và attach các thứ mà bạn vẽ vào scene
- }
- @Override
- public void onPopulateScene(Scene pScene,
- OnPopulateSceneCallback pOnPopulateSceneCallback) throws Exception {
- // Attach các thứ mà bạn thường xuyên hiển thị trên Scene.
- }
- }
- public class MyGameActivity extends BaseGameActivity{
- private Camera mCamera ;//tạo camera, lưu ý camera không thể thay đổi
- private int CAMERA_HEIGHT = 720;// khai báo chiều cao cho camera
- private int CAMERA_WIDTH = 480;//khai báo chiều dọc cho camera
- @Override
- public EngineOptions onCreateEngineOptions() {
- // Cài đặt EngineOptions với 1 camera. Ngoài ra bạn có thể tùy chọn có music,sound hay có Multi Touch
- mCamera = new BoundCamera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
- EngineOptions eni = new EngineOptions(true,
- ScreenOrientation.PORTRAIT_SENSOR, new FillResolutionPolicy(),
- this.mCamera); //set fullscreen = true , theo chiều dọc = PORTRAIT_SENSOR, full màn hình = new FillResolutionPolicy()
- eni.getAudioOptions().setNeedsMusic(true);//set game có music
- eni.getAudioOptions().setNeedsSound(true);//set game có Sound
- eni.getTouchOptions().setNeedsMultiTouch(true);
- if (MultiTouch.isSupported(this)) {
- if (MultiTouch.isSupportedDistinct(this)) {
- } else {
- }
- } else {
- Toast.makeText(
- this,
- "Sorry your device does NOT support MultiTouch!\n\n(Falling back to SingleTouch.)\n\nControls are placed at different vertical locations.",
- Toast.LENGTH_LONG).show();
- } //set game co multi touch
- return eni;
- }
- @Override
- public void onCreateResources(
- OnCreateResourcesCallback pOnCreateResourcesCallback)
- throws Exception {
- //Tạo tất cả các Resources. Load các Resourt như ảnh, font chữ, music,sound.
- //Phần này mình sẽ hướng dẫn ở các bài sau. Thêm câu lệnh sau
- pOnCreateResourcesCallback.onCreateResourcesFinished();
- }
- @Override
- public void onCreateScene(OnCreateSceneCallback pOnCreateSceneCallback)
- throws Exception {
- //Tạo scene và attach các thứ mà bạn vẽ vào scene
- Scene currentScene= new Scene();
- pOnCreateSceneCallback.onCreateSceneFinished(currentScene);
- }
- @Override
- public void onPopulateScene(Scene pScene,
- OnPopulateSceneCallback pOnPopulateSceneCallback) throws Exception {
- // Attach các thứ mà bạn thường xuyên hiển thị trên Scene.
- pOnPopulateSceneCallback..onPopulateSceneFinished();
- }
- }