Level 9
Pertemuan 12

Enemy Behavior, Game State, Game Over, Restart

Membuat enemy AI sederhana dan state management: START, PLAYING, GAME_OVER.

Tujuan Pembelajaran

Membuat enemy AI sederhana.
Mengelola game state.
Menambahkan restart dan quit.

Simple Enemy AI

Move Towards Player

Enemy bergerak mendekati posisi player.

Random Movement

Enemy bergerak acak untuk variasi tantangan.

Move Towards Player

              
                if enemy.rect.x
                < player.rect.x:
    enemy.rect.x += enemy.speed
elif enemy.rect.x >
                  player.rect.x: enemy.rect.x -= enemy.speed if enemy.rect.y
                  < player.rect.y:
    enemy.rect.y += enemy.speed
elif enemy.rect.y >
                    player.rect.y: enemy.rect.y -= enemy.speed
                  
                

Game States

START > PLAYING > GAME_OVER > RESTART

State Logic

                  
                    START = "start" PLAYING = "playing" GAME_OVER = "game_over" game_state = START if game_state == START: show_menu() elif game_state == PLAYING: update_game() elif game_state == GAME_OVER: show_game_over()
                  
                

Restart dan Quit

                  
                    if event.type == pygame.KEYDOWN: if game_state == GAME_OVER and event.key == pygame.K_r: reset_game() game_state = PLAYING if event.key == pygame.K_q: running = False
                  
                

Activity

  1. Buat enemy move towards player.
  2. Buat state START, PLAYING, GAME_OVER.
  3. Tampilkan game over screen.
  4. Tambahkan restart dan quit.

Mini Quiz

State yang cocok saat permainan sedang berjalan adalah...

Output Pertemuan

Complete game with enemy dan states.