Package com.sda

Class Praktikum4Helper

  • All Implemented Interfaces:
    PraktikumHelper<java.lang.Object>

    public class Praktikum4Helper
    extends java.lang.Object
    implements PraktikumHelper<java.lang.Object>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int EASY_MAZE
      Labirin tingkat mudah; bisa diselesaikan secara otomatis dengan mengimplementasikan dua dari empat kemungkinan gerak.
      static int FAST_ANIMATION
      Animasi ditampilkan relatif cepat dengan tetap memperhatikan kemulusan dalam transisi tampilan.
      static int HARD_MAZE
      Labirin tingkat menengah; bisa diselesaikan secara otomatis dengan mengimplementasikan empat dari empat kemungkinan gerak dan menyimpan lokasi yang sudah dikunjungi dalam bentuk peta.
      static int MEDIUM_MAZE
      Labirin tingkat menengah; bisa diselesaikan secara otomatis dengan mengimplementasikan empat dari empat kemungkinan gerak.
      static int NORMAL_ANIMATION
      Kecepatan yang direkomendasikan dalam menampilkan animasi.
    • Constructor Summary

      Constructors 
      Constructor Description
      Praktikum4Helper()
      Asumsi menggunakan EASY_MAZE
      Praktikum4Helper​(int mazeLevel)
      Inisialisasi labirin sesuai dengan konfigurasi pengguna.
    • Method Summary

      Modifier and Type Method Description
      boolean canGoEast()
      Memeriksa apakah pemain bisa bergerak ke timur atau kanan.
      boolean canGoNorth()
      Memeriksa apakah pemain bisa bergerak ke utara atau atas.
      boolean canGoSouth()
      Memeriksa apakah pemain bisa bergerak ke selatan atau bawah.
      boolean canGoWest()
      Memeriksa apakah pemain bisa bergerak ke barat atau kiri.
      void demo()
      Jalankan demo animasi backtracking.
      boolean goEast()
      Pindahkan pemain satu kotak ke timur atau kanan.
      boolean goNorth()
      Pindahkan pemain satu kotak ke utara atau atas.
      boolean goSouth()
      Pindahkan pemain satu kotak ke selatan atau bawah.
      boolean goWest()
      Pindahkan pemain satu kotak ke barat atau kiri.
      void interactivePlay()
      Tampilkan permainan labirin
      boolean isAtEndPosition()
      Periksa apakah posisi pemain sudah berada di posisi akhir labirin.
      void setAnimationSpeed​(int time)
      Ubah kecepatan animasi
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • EASY_MAZE

        public static final int EASY_MAZE
        Labirin tingkat mudah; bisa diselesaikan secara otomatis dengan mengimplementasikan dua dari empat kemungkinan gerak.
        See Also:
        Constant Field Values
      • MEDIUM_MAZE

        public static final int MEDIUM_MAZE
        Labirin tingkat menengah; bisa diselesaikan secara otomatis dengan mengimplementasikan empat dari empat kemungkinan gerak.
        See Also:
        Constant Field Values
      • HARD_MAZE

        public static final int HARD_MAZE
        Labirin tingkat menengah; bisa diselesaikan secara otomatis dengan mengimplementasikan empat dari empat kemungkinan gerak dan menyimpan lokasi yang sudah dikunjungi dalam bentuk peta.
        See Also:
        Constant Field Values
      • FAST_ANIMATION

        public static final int FAST_ANIMATION
        Animasi ditampilkan relatif cepat dengan tetap memperhatikan kemulusan dalam transisi tampilan.
        See Also:
        Constant Field Values
      • NORMAL_ANIMATION

        public static final int NORMAL_ANIMATION
        Kecepatan yang direkomendasikan dalam menampilkan animasi.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Praktikum4Helper

        public Praktikum4Helper()
        Asumsi menggunakan EASY_MAZE
      • Praktikum4Helper

        public Praktikum4Helper​(int mazeLevel)
        Inisialisasi labirin sesuai dengan konfigurasi pengguna.
        Parameters:
        mazeLevel - gunakan Praktikum4Helper.EASY_MAZE, Praktikum4Helper.MEDIUM_MAZE , atau Praktikum4Helper.HARD_MAZE
    • Method Detail

      • setAnimationSpeed

        public void setAnimationSpeed​(int time)
        Ubah kecepatan animasi
        Parameters:
        time - gunakan Praktikum4Helper.FAST_ANIMATION atau Praktikum4Helper.NORMAL_ANIMATION
      • interactivePlay

        public void interactivePlay()
        Tampilkan permainan labirin
      • demo

        public void demo()
        Jalankan demo animasi backtracking.
      • canGoEast

        public boolean canGoEast()
        Memeriksa apakah pemain bisa bergerak ke timur atau kanan.
        Returns:
        true jika pemain bisa bergerak ke timur atau kanan.
      • goEast

        public boolean goEast()
        Pindahkan pemain satu kotak ke timur atau kanan.
        Returns:
        true jika pemain bisa bergerak ke timur atau kanan.
      • canGoSouth

        public boolean canGoSouth()
        Memeriksa apakah pemain bisa bergerak ke selatan atau bawah.
        Returns:
        true jika pemain bisa bergerak ke selatan atau bawah.
      • goSouth

        public boolean goSouth()
        Pindahkan pemain satu kotak ke selatan atau bawah.
        Returns:
        true jika pemain bisa bergerak ke selatan atau bawah.
      • canGoWest

        public boolean canGoWest()
        Memeriksa apakah pemain bisa bergerak ke barat atau kiri.
        Returns:
        true jika pemain bisa bergerak ke barat atau kiri.
      • goWest

        public boolean goWest()
        Pindahkan pemain satu kotak ke barat atau kiri.
        Returns:
        true jika pemain bisa bergerak ke barat atau kiri.
      • canGoNorth

        public boolean canGoNorth()
        Memeriksa apakah pemain bisa bergerak ke utara atau atas.
        Returns:
        true jika pemain bisa bergerak ke utara atau atas.
      • goNorth

        public boolean goNorth()
        Pindahkan pemain satu kotak ke utara atau atas.
        Returns:
        true jika pemain bisa bergerak ke utara atau atas.
      • isAtEndPosition

        public boolean isAtEndPosition()
        Periksa apakah posisi pemain sudah berada di posisi akhir labirin.
        Returns:
        true jika pemain sudah mencapai akhir labirin