728x90
static 변수를 선언하고 instance에 this를 해줌으로써 다른 함수에서도 편히 쓸수 있도록 해줌.
이렇게 하면 score를 public ScoreManager scoreManager해서 끌어올 필요가 없다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScoreManager : MonoBehaviour
{
public static ScoreManager instance;
private int score = 0;
//★핵심★
void Awake() //
{
instance = this;
}
public int GetScore()
{
return score;
}
public void AddScore(int newScore)
{
score = score + newScore;
}
}
점수를 더해준다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScoreAdder : MonoBehaviour
{
// public ScoreManager scoreManager
//앞선 ScoreMnager에 instance라는 값을 해줘서 선언안해도 됨.
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
ScoreManager.instance.AddScore(5);
Debug.Log(ScoreManager.instance.GetScore());
}
}
}
점수를 빼준다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScoreSubtrator : MonoBehaviour
{
//public ScoreManager scoreManager;
//앞선 ScoreMnager에 instance라는 값을 해줘서 선언안해도 됨.
private void Update()
{
if (Input.GetMouseButtonDown(1))
{
ScoreManager.instance.AddScore(-2);
Debug.Log(ScoreManager.instance.GetScore());
}
}
}
'유니티 > 유니티 문법?' 카테고리의 다른 글
코루틴 (대기시간 주는 것) (0) | 2021.04.19 |
---|---|
리스트 (실시간으로 입력 받음) (0) | 2021.04.18 |
인스턴스화 (0) | 2021.04.12 |
유니티 물체 회전시키는법 (Quaternion) (0) | 2021.04.12 |
유니티 쿼터니언 Lerp (0) | 2021.04.12 |