(3D RPG) Google Sheet 연결
포스트
취소

(3D RPG) Google Sheet 연결

데이터를 관리하는 방법은 Google Sheet를 사용했다.

GoogleSheet


간단한 백엔드 서버로도 유명하고 1인 개발이기 때문에 적합하다 생각했다.

유니티 Asset 폴더에 csv 파일을 넣어 관리해도 되지만 백엔드 서버를 사용해보고 싶었다.


💻 코드: 시작 데이터 가져오기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// 시작 데이터 class
public class StartData
{
    public int Id;
    public int totalExp;
    public int exp;
    public int level;
    public int maxHp;
    public int maxMp;
    public int STR;
    public int MoveSpeed;
    public int LUK;
    public int gold;
}

public class DataManager
{
    const string URL = "";  // 구글 시트 주소

    public StartData Start { get; private set; }

    void Start()
    {
        StartCoroutine(DataRequest());
    }

    public IEnumerator DataRequest()
    {
        UnityWebRequest www = UnityWebRequest.Get(URL);     // 구글시트에 Request 요청

        yield return www.SendWebRequest();                  // 가져올 때까지 대기

        string data = www.downloadHandler.text;             // csv 내용 받기

        StartRequest(data);
    }

    // csv 내용 추출
    void StartRequest(string data)
    {
        Start = new StartData();

        string[] lines = data.Split("\n");
        string[] row = lines[1].Replace("\r", "").Split(',');

        Start = new StartData()
        {
            Id = int.Parse(row[0]),
            totalExp = int.Parse(row[1]),
            exp = int.Parse(row[2]),
            level = int.Parse(row[3]),
            maxHp = int.Parse(row[4]),
            maxMp = int.Parse(row[5]),
            STR = int.Parse(row[6]),
            MoveSpeed = int.Parse(row[7]),
            LUK = int.Parse(row[8]),
            gold = int.Parse(row[9]),
        };
    }
}
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.