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
- Buat enemy move towards player.
- Buat state START, PLAYING, GAME_OVER.
- Tampilkan game over screen.
- Tambahkan restart dan quit.
Mini Quiz
State yang cocok saat permainan sedang berjalan adalah...
Output Pertemuan
Complete game with enemy dan states.