Background, Submit Button, KeyboardKey 9-Slice , Shadow

반응형

유튜비 무자막영상 4시간 13분 47초 분량중 1시간 11분을 진행하고 있습니다.

 

 

 

 

InputManager.cs
public void CheckWord()
{
    string wordToCheck = wordContainers[currentWordContainerIndex].GetWord();
    string secretWord = WordManager.instance.GetSecretWord();

    wordContainers[currentWordContainerIndex].Colorize(secretWord);------>추가

    if (wordToCheck == secretWord)
        Debug.Log("Level Complete");
    else
    {
        Debug.Log("Wrong word");           

        canAddLetter = true;
        DisableTryButton();
        currentWordContainerIndex++;
    }
WordContainer.cs
    public void Colorize(string secretWord)
    {
        List<char> chars = new List<char>(secretWord.ToCharArray());

        for (int i = 0; i < letterContainers.Length; i++)
        {
            char letterToCheck = letterContainers[i].GetLetter();

            if(letterToCheck == secretWord[i])
            {
                //Valid
                letterContainers[i].SetValid();
                chars.Remove(letterToCheck);
            }
            else if(chars.Contains(letterToCheck))
            {
                //Potential
                letterContainers[i].SetPotential();
                chars.Remove(letterToCheck);
            }
            else
            {
                //Invalid
                letterContainers[i].SetInvalid();
            }
        }
    }
    위쪽라인 모두추가
---------------------------------------------------------------------------------------------
    public bool IsComplete()
    {
        return currentLetterIndex >= 5;
    }
}
LetterContainer.cs
public class LetterContainer : MonoBehaviour
{
    [Header("Elements")]
    [SerializeField] private SpriteRenderer letterContainer;-------------->추가
    [SerializeField] private TextMeshPro letter;

// Start is called before the first frame update
    void Start()
    {
        
    }
    
        // Update is called once per frame
    void Update()
    {
        
    }

    public void Initialize()
    {
        letter.text = "";
        letterContainer.color = Color.white;
    }

    public void SetLetter(char letter)
    {
        this.letter.text = letter.ToString();
    }
    
     public void SetValid()
 	{
    	 letterContainer.color = Color.green;
 	}

	public void SetPotential()
 	{        
     	letterContainer.color = Color.yellow;
 	}

 	public void SetInvalid()
 	{
    	 letterContainer.color = Color.gray;
 	}
   

    public char GetLetter()
    {
        return letter.text[0];
    }
}

반응형