Atölye › Pac-Man Tarzı Labirent Kovalamaca › 15/42. adım
Yeme zamanı! Bir adım bitince hareket eden bir döşemeye varmış olur. Tam o an arrive (var) çağrılacak ve
oradaki yemi kümeden çıkaracak: yem 10 puan, güç yemi 50 puan.
Skor ve bölüm için iki değişken de ekliyoruz: score (skor) ve level (bölüm). reset onları 0 ve 1 yapar.
```js
let score
let level
score = 0
level = 1
e.row += e.dir[1]
arrive(e)
}
function arrive(e) {
if (e !== player) return
const here = key(player.col, player.row)
if (pellets.delete(here)) score += 10
if (powers.delete(here)) score += 50
}
```let score, let level → skor ve bölüm; reset içinde 0 ve 1.arrive(e) → advance içinde, döşeme değiştikten hemen sonra: "yeni döşemeye vardın".if (e !== player) return → yalnız oyuncu yer. (Hayaletler de advance kullanacak.) !== "aynı şey değil".const here = key(player.col, player.row) → varılan döşemenin adı.pellets.delete(here) → kümeden çıkarır ve bir şey çıktıysa true, yoksa false döndürür. Böylece "yem var
mıydı?" sorusu ile "ye" işi tek çağrıda: true ise 10 puan. Aynı döşemeye tekrar gelince false döner, puan
gelmez.let player satırının altına let score ve let level yaz.reset içinde fillPellets() satırının üstüne score = 0 ve level = 1 yaz.advance içinde son satırın (e.row += e.dir[1]) altına arrive(e) yaz.advance'in altına bir boş satır bırakıp arrive fonksiyonunu yaz.Beceriler: Oyun durumları, Çarpışma tespiti
← Telefonda kaydırma Skoru göster →