User prompt
oyun bitdiyi zaman ekranda game over menusu çıksın
User prompt
oyun bitdiğinde kaybetme animasyonu ekle mesela ekran biraz karalsın
User prompt
Please fix the bug: 'Uncaught TypeError: LK.effects.fadeScreen is not a function' in or related to this line: 'LK.effects.fadeScreen(0x000000, 1000);' Line Number: 128
User prompt
kareye tıklandıkdan sonra eğer emereld karesiyse o karenin arka planına emerald asseti koy eğer bomba karesiyse o karenin arkasına bomb asseti koy
User prompt
yukarıda çıkan mesajları sil
User prompt
oyuna böyle menü ekleyelim : oyun başlamadan önce oyuncu kare sayını seçe bilsin mesela: 3x3,4x4,5x5
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 49
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 50
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 50
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 50
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 50
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 51
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 50
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 45
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 45
User prompt
Please fix the bug: 'Cannot set properties of undefined (setting 'type')' in or related to this line: 'self.type = 'menu';' Line Number: 45
/****
* Classes
****/
// Kliklenebilen kvadrat sinfi yarat
var ClickableSquare = Container.expand(function () {
var self = Container.call(this);
// Kvadrat üçün görünüsh təyin edir
var squareGraphics = self.attachAsset('player', {
anchorX: 0.5,
anchorY: 0.5
});
self.graphics = squareGraphics;
// Kliklenən zaman davranış
self.down = function (x, y, obj) {
if (self.type === 'bomb') {
// Bombaya kliklenib
self.graphics.tint = 0xff0000; // Qirmizi
console.log("Bomba partladi! Oyun bitdi.");
showMessage("Bombaya toxundun! Oyun bitdi!", "#ff0000"); // Mesaj goster
endGame(false); // Oyun bitdi - meglubiyyet
} else if (self.type === 'emerald') {
// Zumrudde kliklenib
self.graphics.tint = 0x00ff00; // Yashil
console.log("Zumrud tapdiniz!");
showMessage("Zumrud tapildi!", "#00ff00"); // Mesaj goster
incrementScore(); // Xali artir
checkWin(); // Qalibiyyet yoxlanisi
}
};
});
/****
* Initialize Game
****/
/****
* Oyun deyişenləri
****/
/****
* Oyun Tərtibatı
****/
var game = new LK.Game({
backgroundColor: 0x000000
});
/****
* Game Code
****/
// Mesaj gosterme funksiyasi
// Shəbəkəni qur
var showMessage = function showMessage(message, color) {
var messageBox = new Text2(message, {
size: 64,
fill: color || "#ffffff",
align: "center",
wordWrap: true,
wordWrapWidth: 500
});
messageBox.x = 1024; // X koordinat (merkəzdə olsun)
messageBox.y = 100; // Y koordinat yuxari mərkəzdə
messageBox.anchorX = 0.5;
messageBox.anchorY = 0.5;
game.addChild(messageBox);
// Mesajın dərhal silinməsi üçün kiçik gecikmə
LK.setTimeout(function () {
return game.removeChild(messageBox);
}, 2000); // 2 saniyədən sonra mesajın silinməsi
};
/****
* Oyun deyişenləri
****/
var grid = [];
var gridSize = 5; // 5x5 shebeke
var cellSpacing = 10; // Xanalar arasi boshluq
var cellSize = (Math.min(2048, 2732) - (gridSize - 1) * cellSpacing) / gridSize;
var gridStartX = (2048 - gridSize * cellSize - (gridSize - 1) * cellSpacing) / 2;
var gridStartY = (2732 - gridSize * cellSize - (gridSize - 1) * cellSpacing) / 2;
var bombCount = 2; // 2 mina
var emeraldCount = 23; // 23 zumrud
var score = 0; // Oyunçunun xali
var totalEmeralds = emeraldCount;
/****
* Məntiqi Funksiyalar
****/
// Minalari və zumrudleri tesadufi yerleştir
function placeObjects() {
var availableCells = [];
// Movcud butun xanalardan siyahi yaradırıq
for (var i = 0; i < gridSize; i++) {
for (var j = 0; j < gridSize; j++) {
availableCells.push({
x: i,
y: j
});
}
}
// Minalari tesadufi yerleştir
for (var b = 0; b < bombCount; b++) {
var randomIndex = Math.floor(Math.random() * availableCells.length);
var cellPos = availableCells.splice(randomIndex, 1)[0];
grid[cellPos.x][cellPos.y].type = 'bomb'; // Mina yerleştir
}
// Zumrudleri tesadufi yerleştir
for (var e = 0; e < emeraldCount; e++) {
var randomIndex = Math.floor(Math.random() * availableCells.length);
var cellPos = availableCells.splice(randomIndex, 1)[0];
grid[cellPos.x][cellPos.y].type = 'emerald'; // Zumrud yerleştir
}
}
// Oyunçunun xalini artir
function incrementScore() {
score++;
}
// Oyunu bitir
function endGame(win) {
if (win) {
console.log("Tebrikler! Siz qalibsiniz!");
showMessage("Tebrikler! Qazandiniz!", "#00ff00");
} else {
console.log("Bomba partladi! Oyun bitdi.");
showMessage("Oyunu Uduzdunuz!", "#ff0000");
}
// Show game over menu
LK.showGameOver();
}
// Qalibiyyeti yoxla
function checkWin() {
if (score === totalEmeralds) {
endGame(true);
}
}
for (var i = 0; i < gridSize; i++) {
grid[i] = [];
for (var j = 0; j < gridSize; j++) {
var cell = new ClickableSquare();
cell.x = gridStartX + j * (cellSize + cellSpacing) + cellSize / 2;
cell.y = gridStartY + i * (cellSize + cellSpacing) + cellSize / 2;
cell.width = cellSize;
cell.height = cellSize;
game.addChild(cell);
grid[i][j] = cell;
}
}
// Obyektleri yerleştir
placeObjects();