2023.12.12 오늘의 기록 델리게이트, Stack, Quene, 개인과제

2023. 12. 12. 20:36카테고리 없음

오늘 강의를 통해 델리게이트와 Stack Quene 에 대해서 배우게 되었다.

 

간단하게 작성을 하자면 delegate void MyDelegate();

대리자 기능을 활용해서 변수에 함수를 넣어서 호출이 가능하다.

 

Stack 은 후입력 선출력 - 스킬사용에 있어서 입력 출력 순서가 필요한 경우 사용

Quene 는 선입력 선출력 - 채팅 입력이 동시에 하는 경우 먼저 입력한 사람부터 출력

 

public Text moneyText; // 화면에 현재 금액을 표시할 텍스트
public Text balanceMoneyText; //화면에 현재 잔액을 표시할 텍스트
private int currentMoney = 100000; // 초기 금액
private int balanceMoney = 50000; // 초기 잔액
public GameObject LessMoneyPanel; //잔액부족 패널
public InputField depositInput; //입금할 때 입력값
public InputField withdrawInput; //출금할 때 입력값
public Button depositButton; //입금 버튼 활성화

 

if (currentMoney >= amount)
{
    currentMoney -= amount;
    balanceMoney += amount;
    UpdateMoneyText();

    // 여기에 입금 로직을 추가하세요.
    DepositMoney(amount);
}
else
{
    //Debug.Log("잔액 부족");
    // 잔액이 부족할 때 처리할 내용을 여기에 추가하세요.
    MoneyLess();
}

 

입금할 때 현재금액에서 입금되는 양만큼 차감을 한 뒤 바로 잔액에 입금액을 추가해주는 형식이다.

 

void UpdateMoneyText()
{
    moneyText.text = currentMoney.ToString("C0"); // C0는 통화 형식으로 표시하고 콤마(,)를 붙여줍니다.
    balanceMoneyText.text = balanceMoney.ToString("C0");
}

 

입금과 출금에 있어서 금액을 표현해줄 텍스트를 정의하고 있는데 C0를 사용하면 통화 형식으로 표시되고, 콤마도 적용이 가능하다는 것을 알게 되었다.

 

현금과 잔액을 표현을 해봤는데, 변수명들을 어떻게 깔끔하게 지어줄지 더 고민해봐야겠다.

 

사실 InputMoney 라고 스크립트를 만들었는데 MoneyManager 라는 개념이 더욱 좋아보이긴 한다.