Kod
on *:INPUT:*: {
if ($left($1,1) == .) && ($ctrl == $false) {
if ($1 == .ing) {
if (!$2) { echo -a 04[UYARI] Lütfen çevirmek istediğiniz Türkçe kelimeyi yazın. Örnek: .ing kitap | halt }
var %kelime = $strip($2-)
var %safe_id = $r(1000,9999)
.run -h curl -s -A "Mozilla/5.0" "https://googleapis.com $+ $urlencode(%kelime) $+ " -o gpt_dict_ $+ %safe_id $+ .txt
.timer.dict. [ $+ [ %safe_id ] ] 1 1 gpt_sozluk_oku gpt_dict_ $+ %safe_id $+ .txt $target en %kelime
halt
}
if ($1 == .tr) {
if (!$2) { echo -a 04[UYARI] Lütfen çevirmek istediğiniz İngilizce kelimeyi yazın. Örnek: .tr book | halt }
var %kelime = $strip($2-)
var %safe_id = $r(1000,9999)
.run -h curl -s -A "Mozilla/5.0" "https://googleapis.com $+ $urlencode(%kelime) $+ " -o gpt_dict_ $+ %safe_id $+ .txt
.timer.dict. [ $+ [ %safe_id ] ] 1 1 gpt_sozluk_oku gpt_dict_ $+ %safe_id $+ .txt $target tr %kelime
halt
}
if ($1 == .test) {
if ($hget(gpt_kart_soru)) { echo -a 04[UYARI] Zaten aktif bir testiniz var! Cevap vermek için .cevap yazın. | halt }
var %dosya = gpt_kartlar.txt
if ($2 == hata) {
if (!$exists(gpt_hatalar.txt)) { echo -a 04[BİLGİ] Hata havuzunuz boş. Önce normal testlerde yanlış cevap vermelisiniz. | halt }
%dosya = gpt_hatalar.txt
}
elseif (!$exists(gpt_kartlar.txt)) { echo -a 04[BİLGİ] Ezber kartınız boş. Önce .ing veya .tr ile kelime aratın. | halt }
var %satir_sayisi = $lines(%dosya)
var %rastgele_satir = $r(1,%satir_sayisi)
var %veri = $read(%dosya, %rastgele_satir)
var %ing_kelime = $token(%veri, 1, 61)
var %tr_kelime = $token(%veri, 2, 61)
if (!$hget(gpt_kart_soru)) { hmake gpt_kart_soru 10 }
hadd gpt_kart_soru mod %dosya
if ($r(1,2) == 1) {
hadd gpt_kart_soru soru %ing_kelime
hadd gpt_kart_soru cevap %tr_kelime
echo $target 12[Ezber Kartı] Soru: 04 %ing_kelime 12kelimesinin Türkçe anlamı nedir? (Cevaplamak için: 03 .cevap anlamı )
}
else {
hadd gpt_kart_soru soru %tr_kelime
hadd gpt_kart_soru cevap %ing_kelime
echo $target 12[Ezber Kartı] Soru: 04 %tr_kelime 12kelimesinin İngilizce anlamı nedir? (Cevaplamak için: 03 .cevap anlamı )
}
halt
}
if ($1 == .cevap) {
if (!$hget(gpt_kart_soru)) { echo -a 04[UYARI] Şu anda aktif bir test bulunmuyor. Yeni test başlatmak için: .test | halt }
if (!$2) { echo -a 04[UYARI] Lütfen bir cevap belirtin. Örnek: .cevap kitap | halt }
var %kullanici_cevap = $lower($strip($2-))
var %dogru_cevap = $lower($hget(gpt_kart_soru, cevap))
var %soru = $lower($hget(gpt_kart_soru, soru))
var %mod = $hget(gpt_kart_soru, mod)
if (%kullanici_cevap == %dogru_cevap) {
echo $target 03[TEBRİKLER] Doğru cevap! 04 %dogru_cevap harika gidiyorsunuz.
if (%mod == gpt_hatalar.txt) {
var %satir = $read(gpt_hatalar.txt, w, * $+ %soru $+ *)
if (!%satir) { %satir = $read(gpt_hatalar.txt, w, * $+ %dogru_cevap $+ *) }
if (%satir) { write -d gpt_hatalar.txt $readn }
}
}
else {
echo $target 04[YANLIŞ] Maalesef yanlış cevap. Doğru yanıt: 03 %dogru_cevap olmalıydı. Kelime hata havuzunuza eklendi.
var %hata_formati = %soru $+ = $+ %dogru_cevap
if (%mod == gpt_kartlar.txt) {
var %v1 = $read(gpt_kartlar.txt, w, * $+ %soru $+ *)
if (%v1) { %hata_formati = %v1 }
}
if (!$read(gpt_hatalar.txt, w, %hata_formati)) { write gpt_hatalar.txt %hata_formati }
}
hfree gpt_kart_soru
halt
}
if ($1 == .kartlar) {
var %ana = 0, %hata = 0
if ($exists(gpt_kartlar.txt)) { %ana = $lines(gpt_kartlar.txt) }
if ($exists(gpt_hatalar.txt)) { %hata = $lines(gpt_hatalar.txt) }
echo $target 12[Ezber Kartı] Ana Havuz: 03 %ana 12 | Hata Havuzu: 04 %hata 12 adet kelime barındırıyor.
halt
}
if ($1 == .sıfırla) {
if ($2 == hata) {
if ($exists(gpt_hatalar.txt)) { .remove gpt_hatalar.txt | echo $target 04[SİSTEM] Hata havuzunuz tamamen temizlendi. }
else { echo $target 04[SİSTEM] Hata havuzunuz zaten boş. }
}
else {
if ($exists(gpt_kartlar.txt)) { .remove gpt_kartlar.txt }
if ($exists(gpt_hatalar.txt)) { .remove gpt_hatalar.txt }
echo $target 04[SİSTEM] Tüm kelime havuzları ve kartlar tamamen sıfırlandı.
}
if ($hget(gpt_kart_soru)) { hfree gpt_kart_soru }
halt
}
}
}
alias -l gpt_sozluk_oku {
var %dosya = $1, %hedef = $2, %yon = $3, %orjinal = $4-
if ($exists(%dosya)) {
var %raw = $read(%dosya, 1)
var %regex_anlim = /\[\[\["([^"]+)"/
if ($regex(sozluk, %raw, %regex_anlim)) {
var %anlam = $regml(sozluk, 1)
if (%yon == en) {
var %regex_okunus = /,"([^"]+)"\s*\]\s*\]\s*,\s*null\s*,\s*"tr"/
var %okunus = %orjinal
if ($regex(okunus, %raw, %regex_okunus)) { %okunus = $regml(okunus, 1) }
echo %hedef 12[Sözlük] 04 %orjinal 14(Okunuşu: %okunus) ➔ 03 %anlam
if (!$read(gpt_kartlar.txt, w, %anlam $+ = $+ %orjinal)) { write gpt_kartlar.txt %anlam $+ = $+ %orjinal }
}
else {
echo %hedef 12[Sözlük] 04 %orjinal ➔ 03 %anlam
if (!$read(gpt_kartlar.txt, w, %orjinal $+ = $+ %anlam)) { write gpt_kartlar.txt %orjinal $+ = $+ %anlam }
}
}
else { echo %hedef 04[HATA] Kelime sözlükte bulunamadı. }
.remove " $+ %dosya $+ "
}
}
alias -l urlencode { return $regsubex($1, /([^a-zA-Z0-9])/g, $+(%, $base($asc(\t), 10, 16, 2))) }