Advertisement
Guest User

Untitled

a guest
May 23rd, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 2.68 KB | None | 0 0
  1. package com.mygdx.mygame;
  2.  
  3. import com.badlogic.gdx.ApplicationAdapter;
  4. import com.badlogic.gdx.Gdx;
  5. import com.badlogic.gdx.audio.Music;
  6. import com.badlogic.gdx.audio.Sound;
  7. import com.badlogic.gdx.graphics.GL20;
  8. import com.badlogic.gdx.graphics.Texture;
  9. import com.badlogic.gdx.graphics.g2d.BitmapFont;
  10. import com.badlogic.gdx.graphics.g2d.SpriteBatch;
  11. import com.mygdx.mygame.states.GameStateManager;
  12. import com.mygdx.mygame.states.MenuState;
  13.  
  14.  
  15. public class MyGdxGame extends ApplicationAdapter {
  16.  
  17.     public static  final int WIDTH = 480; // ширина экрана
  18.     public static  final int HEIGHT = 800; // высота экрана
  19.     public static final String TITLE = "FLAPPY BIRD"; // заголовок
  20.     private BitmapFont font;
  21.     private GameStateManager gsm; // управляет окнами и их состоянием
  22.     private SpriteBatch batch; // предоставляет текстуру и координаты для рисования
  23.     private Music music; // фоновая музыка
  24.  
  25.    
  26.     @Override
  27.     public void create () {
  28.         // инициализируется
  29.         batch = new SpriteBatch();
  30.         gsm = new GameStateManager();
  31.         // ссылка на файл ресурса
  32.         music = Gdx.audio.newMusic(Gdx.files.internal("music.mp3"));
  33.         // бесконечный повтор воспроизведения музыки
  34.         music.setLooping(true);
  35.         // громкость воспроизведения (громкость на 10%)
  36.         music.setVolume(0.1f);
  37.         // воспроизводим музыку
  38.         music.play();
  39.         // очищает экран
  40.         Gdx.gl.glClearColor(1, 0, 0, 1);
  41.         // создает новый экран меню и помещает его в вершину стэка
  42.         gsm.push(new MenuState(gsm));
  43.     }
  44.  
  45.     // метод вызывается игровым циклом каждый раз, когда нужно что-то нарисовать (обновление логики игры)
  46.     @Override
  47.     public void render () {
  48.         // очистка экрана
  49.         Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
  50.         // обновление верхнего элемента в стэке (экран, который виден пользователю)
  51.         gsm.update(Gdx.graphics.getDeltaTime()); // DeltaTime возвращает время прошедшее между последним и текущим кадром в секунду
  52.         // отрисовывает верхний экран в стэке
  53.         gsm.render(batch);
  54.     }
  55.  
  56.     // уничтожение текстур (освобождение ресурсов, чтобы избежать утечек памяти)
  57.     @Override
  58.     public void dispose () {
  59.         super.dispose();
  60.         music.dispose();
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement