아이템 데이터 질문 2

고생하시는데 질문이 많아 죄송합니다.
한번에 물어보면 좋을거 같아서 오래고민하고 검색해보고 궁금하여
질문합니다 ㅠㅠ

삽입 삭제 수정에 관해서는 이론적이나 코드 쪽으로도 이해 했습니다.
근데 아이템을 얻고 ui를 만드는 과정에서 궁금증이 생겼습니다.

  1. 예제 코드를 통해서 user_data라는 테이블에
    정보를 저장 시키는거 까지는 이해를 했습니다.
    그럼이제 이 아이템을 ui로 만들어야 되는데
    이론적으로 어떤식으로 하는지 설명 부탁드립니다.

  2. 차트에 저장 되어있는 데이터들을 로그인이나 계정생성 후에
    불러오는거 까지는 이해 했습니다.
    예를 들면
    근데 이걸 불러와서 뽑기를 통해서 아이템을 얻고 싶은데
    차트에 데이터가있으면
    이 차트데이터들을
    버튼을 눌렀을때 뽑기에서 뽑으면
    차트데이터 중 한개를
    유저 데이터에 삽입하는 건지 궁금합니다.

  3. 혹시 정말 죄송하지만 코드로 예시 아주 간단하게라도 가능할까요? ㅠㅠ
    이론만 봐도 이해가 안될 수 있어서 간절히 부탁드립니다.

안녕하세요 개발자님.

var bro = Backend.GameData.GetMyData("PlayerInfo", "2022-03-15T07:16:44.031Z");

    if(!bro.IsSuccess())
    {
        Debug.LogError(bro.ToString());
        return;
    }

    LitJson.JsonData gameDataListJson = bro.GetFlattenJSON()["row"];

    public List<string> items = new List<string>();

    // 뒤끝에서 저장된 아이템 리스트 저장
    for(int i = 0; i < json["items"].Count; i++)
    {
       items.Add(json["items"][i].ToString());
    }
    // 저장된 리스트 출력
    for(int i = 0; i < items.Count; i++)
    {
       itemString += $"{items[i]}, ";
    }

다음 코드와 같이 list로 되어있는 데이터(예제이서는 string이지만, class 형태로도 가능합니다)를 가져와서 for문을 돌리고 해당 아이템의 정보를 출력하는 UI에 생성하면 됩니다.

뽑기의 경우에는 뒤끝에서 제공하는 뽑기 시스템이 있습니다. 뽑기 함수를 호출한 후, 리턴된 데이터를 Json에서 가져와 위 코드에서 가져온 itemList에 Add한 후, 다시 GameData.Update를 호출하는 구조로 많이 사용되고 있습니다.

public void GetProbabilityTest()
{
    string selectedProbabilityFileId = "93";

    var bro = Backend.Probability.GetProbability(selectedProbabilityFileId);

    if(!bro.IsSuccess())
    {
        Debug.LogError(bro.ToString());
        return;
    }

    LitJson.JsonData json = bro.GetFlattenJSON();

    ProbabilityItem item = new ProbabilityItem();

    item.itemID = json["elements"]["itemID"].ToString();
    item.itemName = json["elements"]["itemName"].ToString();
    item.hpPower = json["elements"]["hpPower"].ToString();
    item.num = int.Parse(json["elements"]["num"].ToString());
    item.percent = json["elements"]["percent"].ToString();

    Debug.Log(item.ToString());
}

게임데이터와 차트의 경우에는 방치형 예제게임에 구현되어있으니 참고해주시면 감사하겠습니다.