İçeriğe geç

Tarayıcıda Oyunlar

TulparLang ile yazılıp WebAssembly’ye derlenmiş on küçük oyun — tarayıcıda çalışır, kurulum yok. Her oyunun üç bölümü var; üçünü de bitirince kazanırsın. Ve her oyunun kaynağını hem Türkçe hem İngilizce okuyabilirsin: TulparLang’in her yerleşik fonksiyonunun iki dilde adı var, yani oyuncu(...) ile player(...), carpisinca(...) ile on_hit(...) aynı çağrı.

Oyunlar arcade üzerine oturuyor — küçük bir preset motoru (kendisi de TulparLang ile, tame raylib bağlamalarının üstünde yazılı). Döngüyü, fiziği, çarpışmayı, çizimi sen yazmazsın; blokları yerleştirip callback kaydedersin, böylece bütün bir oyun ~100 satır olur:

import "arcade";
func kur() {
temizle();
oyuncu(300, 220, 24, 24, BLUE); // ok tuşları / WASD hazır
esya(80, 80, 18, 18, GOLD);
}
func topla() { oldur(oteki()); skor_ekle(10); }
sahne(640, 480, "Topla");
baslangicta(kur);
carpisinca(TAG_PLAYER, TAG_ITEM, topla); // tag tabanlı çarpışma
oyna(); // döngü + çizim + çarpışma, hepsi motorda

Bölümler sadece birer kurulum fonksiyonu — bolum(1, b1); bolum(2, b2); … — ve bir bölümün bitiş koşulu sağlanınca bolum_gec() sıradakine geçer. Skor bölümler arası korunur; son bölümü bitirince kazanma ekranı gelir.

Oyunlar sayfasını aç ve herhangi bir oyunda **“Kodu gör”**e bas — yan yana bir görüntüleyici, oyunun TulparLang kaynağını Türkçe ve İngilizce gösterir. Aynı program, aynı şekilde derlenmiş; yalnızca tanımlayıcılar ve metinler farklı. Mesele de bu: TulparLang hem Türkçe hem İngilizce konuşana doğal okunur.