User prompt
Parçalar biraz daha büyük olsun.
User prompt
300 puana ulaştığımızda oyunu kazanmış olalım.
User prompt
Parçaların hepsi aynı hızda gelsin.
User prompt
Generate the first version of the source code of my game: Meme Müzik
Code edit (1 edits merged)
Please save this source code
User prompt
Müzik Parçaları Yağmuru
Initial prompt
Yeni müzik oyunu istiyorum. Yukarıdan gelen parçalar olsun. O parçalara tıkladığımda on puan kazanayım, sigor tablosu üstte olsun. Her on puan kazandığımda onlar olarak artsınlar.
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ // Müzik parçası (düşen kutu) sınıfı var MusicNote = Container.expand(function () { var self = Container.call(this); // Asseti ekle ve ortala var note = self.attachAsset('musicNote', { anchorX: 0.5, anchorY: 0.5 }); // Hız (tüm notalar için sabit) self.speed = 10; // Tıklanıp tıklanmadığını takip et self.collected = false; // Her frame çağrılır self.update = function () { self.y += self.speed; }; // Tıklama/dokunma olayı self.down = function (x, y, obj) { // Sadece ilk tıklamada çalışsın if (self.collected) return; self.collected = true; // Skoru artır LK.setScore(LK.getScore() + 10); scoreTxt.setText(LK.getScore()); // 300 puana ulaşıldıysa oyunu kazan if (LK.getScore() >= 300) { LK.showYouWin(); } // Kısa bir animasyonla kaybolsun tween(self, { alpha: 0, scaleX: 1.5, scaleY: 1.5 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { self.destroy(); // Diziden silinecek, ana döngüde } }); }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x181818 }); /**** * Game Code ****/ // Animasyonlar için tween eklentisi // Müzik parçası için renkli bir kutu şeklinde asset // Skor metni var scoreTxt = new Text2('0', { size: 120, fill: 0xFFFFFF }); scoreTxt.anchor.set(0.5, 0); // Skor üstte ortada, menüyle çakışmasın diye biraz aşağıda LK.gui.top.addChild(scoreTxt); scoreTxt.y = 40; // Düşen notaların tutulduğu dizi var notes = []; // Yeni nota oluşturma fonksiyonu function spawnNote() { var note = new MusicNote(); // Rastgele x (ekranın kenarına taşmasın) var margin = 120; note.x = margin + Math.random() * (2048 - 2 * margin); // Y: Menüyle çakışmasın diye -100 yerine -180'den başlat (yüksekliği kadar yukarıdan) note.y = -180; note.scaleX = 1; note.scaleY = 1; note.alpha = 1; note.collected = false; notes.push(note); game.addChild(note); } // Notaların rastgele aralıklarla gelmesi için zamanlayıcı var minInterval = 500; var maxInterval = 1200; var noteTimer = null; function scheduleNextNote() { var interval = minInterval + Math.random() * (maxInterval - minInterval); noteTimer = LK.setTimeout(function () { spawnNote(); scheduleNextNote(); }, interval); } scheduleNextNote(); // Oyun güncelleme döngüsü game.update = function () { for (var i = notes.length - 1; i >= 0; i--) { var note = notes[i]; // Not güncelle note.update(); // Ekranın dışına çıktıysa veya toplandıysa sil if (note.y - note.height / 2 > 2732 + 50 || note.collected) { note.destroy(); notes.splice(i, 1); } } }; // Oyun sıfırlanırken zamanlayıcıyı temizle game.destroy = function () { if (noteTimer) LK.clearTimeout(noteTimer); }; // Oyun başladığında ilk skor sıfırlansın LK.setScore(0); scoreTxt.setText('0'); // Oyun alanında başka bir şey yok, sadece notalar ve skor var.
===================================================================
--- original.js
+++ change.js
@@ -29,8 +29,12 @@
self.collected = true;
// Skoru artır
LK.setScore(LK.getScore() + 10);
scoreTxt.setText(LK.getScore());
+ // 300 puana ulaşıldıysa oyunu kazan
+ if (LK.getScore() >= 300) {
+ LK.showYouWin();
+ }
// Kısa bir animasyonla kaybolsun
tween(self, {
alpha: 0,
scaleX: 1.5,
Arkaplanı kaldır
arkaplan temizle
arkaplan temizle
meme silah uzatan kedi. In-Game asset. 2d. High contrast. No shadows
regular show modecaı. In-Game asset. 2d. High contrast. No shadows
kaka yüzü. In-Game asset. 2d. High contrast. No shadows
kalp. In-Game asset. 2d. High contrast. No shadows
meme chill guy face. In-Game asset. 2d. High contrast. No shadows
minecraft chiken jokey. In-Game asset. 2d. High contrast. No shadows
halay çeken insan. In-Game asset. 2d. High contrast. No shadows