Atölye › Yılan › 21/28. adım
İkinci ölüm kuralı: yılan kendi gövdesine çarparsa oyun biter. Yeni baş, gövdenin herhangi bir parçasıyla aynı hücreye geliyorsa çarpmıştır.
Küçük bir istisna: kuyruk bu turda zaten yerinden çekileceği için ona "çarpmak" sayılmaz.
```js
const hitSelf = snake.slice(0, -1).some((part) => part.x === head.x && part.y === head.y)
if (hitWall || hitSelf) {
```snake.slice(0, -1) → yılanın kuyruksuz kopyası. slice(0, -1) "baştan başla, sondan bir önceki parçada
dur" demek..some((part) => part.x === head.x && part.y === head.y) → bu parçalardan en az biri yeni başla aynı
hücrede mi? (Yemin yılana düşmemesi için kullandığımız sorunun aynısı.)if (hitWall || hitSelf) → duvara veya kendine çarptıysa oyun biter.const hitWall = ... satırının altına hitSelf satırını yaz.if (hitWall) { satırını if (hitWall || hitSelf) { yap.Beceriler: Çarpışma tespiti, Diziler ve nesneler
← Duvara çarpma Oyun bitti yazısı →