40 lines
935 B
Racket
40 lines
935 B
Racket
#lang r7rs
|
|
|
|
; Pause-menu ADT ;
|
|
|
|
|
|
(define-library (pacman-project pause-menu)
|
|
(import (scheme base)
|
|
(pp1 graphics)
|
|
(pacman-project screen))
|
|
|
|
(export paused?
|
|
set-paused!
|
|
draw-pause-menu!
|
|
remove-pause-menu!)
|
|
|
|
(begin
|
|
|
|
(define pause-status #f)
|
|
|
|
(define pause-layer (make-new-layer!))
|
|
|
|
;checken of we gepauzeerd zijn
|
|
(define (paused?)
|
|
pause-status)
|
|
|
|
;om de pauze status aan te passen
|
|
(define (set-paused! status)
|
|
(set! pause-status status))
|
|
|
|
;pauzescherm tekenen
|
|
(define (draw-pause-menu!)
|
|
(let ((pause-tile (make-tile screen-width screen-height)))
|
|
((pause-layer 'add-drawable!) pause-tile)
|
|
((pause-tile 'draw-rectangle!) 0 90 670 screen-height "black")
|
|
((pause-tile 'draw-text!) "Game Paused" 40 200 400 "red")))
|
|
|
|
;pauzescherm verwijderen
|
|
(define (remove-pause-menu!)
|
|
((pause-layer 'empty!)))))
|