Tüm Rehberler

Kelime Tahmin Oyunu — Wordle Klonu

Orta ⏱ 100 dk
BÖLÜM 7 / 8

Ekran Klavyesi ve Harf Renk Takibi

Ekrandaki sanal klavye butonlarının da tahmin sonuçlarına göre renk almasını sağlıyoruz. Doğru sonuç hep öncelikli.

Unity Editör Adımları

Canvas'a KeyboardPanel ekle — 3 satır (QWERTYUIOP, ASDFGHJKL, ZXCVBNM)
Her harf için Button oluştur, onClick = GameController.Instance.AddLetter()
KeyboardManager scripti ile her harfin en iyi durumunu tut
csharp
using UnityEngine;
using System.Collections.Generic;
using UnityEngine.UI;

public class KeyboardManager : MonoBehaviour
{
    public static KeyboardManager Instance;
    private Dictionary<char, TileState> keyStates = new Dictionary<char, TileState>();
    public Dictionary<char, Image> keyImages = new Dictionary<char, Image>();

    void Awake() => Instance = this;

    public void UpdateKey(char c, TileState newState)
    {
        // Öncelik: Correct > Present > Absent
        if (!keyStates.ContainsKey(c) || (int)newState > (int)keyStates[c])
        {
            keyStates[c] = newState;
            if (keyImages.ContainsKey(c))
            {
                switch (newState)
                {
                    case TileState.Correct: keyImages[c].color = LetterCell.CorrectColor; break;
                    case TileState.Present: keyImages[c].color = LetterCell.PresentColor; break;
                    case TileState.Absent:  keyImages[c].color = LetterCell.AbsentColor;  break;
                }
            }
        }
    }
}

Dictionary<char, Image> mapping'i Start() içinde klavye butonlarını dolaşarak doldur.

Önceki Bölüm Sonraki Bölüm