Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 백준 1103번 c++
- 2870번 수학숙제 c++
- 2870번
- 코딩테스트
- 플레이어 이동
- c++
- 유니티
- 백준 17070번
- 오브젝트 풀링
- Lv.3
- Beakjoon
- 2870번 수학숙제
- 백준 c++ 2468번
- 프로그래머스
- 백준 1103번
- Lv2
- 백준 2870번
- dfs
- 백준
- 백준 c++ 2870번
- 백준 1103번 게임
- 2468 c++
- 코테
- C#
- Unity
- 2870번 c++
- 17070번
- 백준 17070번 c++
- 수학숙제
- Algorithm
Archives
- Today
- Total
주녘공부일지
[페인트 맨] 파이어베이스 DB 관리 본문
파이어베이스 DB 구조
파이어베이스에 저장할 데이터 타입을 분류해 타입에 따라서 유저 고유 키로 접근하도록 설계
- 데이터 카테고리별로 데이터 그룹을 분리해서 그룹 내에 데이터 Write 시 그룹 단위로 콜백 가능
그룹 내 데이터 Write 시에 콜백
- 자신의 고유 유저 키로 저장된 데이터의 Write 시 콜백을 받을 수 있도록 함
- 각 데이터그룹별로 콜백 대상 리스트를 참조함 ( 인터페이스 )
private List<IFBUserInfoPostProcess> userInfoProcessList = new List<IFBUserInfoPostProcess>();
private List<IFBUserItemPostProcess> userItemProcessList = new List<IFBUserItemPostProcess>();
private void SetUpdateCallBack()
{
DBReferenceDict[FirebaseDataCategory.UserInfo].Reference.ValueChanged -= OnUserInfoPropertiesUpdate;
DBReferenceDict[FirebaseDataCategory.UserInfo].Reference.ValueChanged += OnUserInfoPropertiesUpdate;
DBReferenceDict[FirebaseDataCategory.UserItem].Reference.ValueChanged -= OnUserItemPropertiesUpdate;
DBReferenceDict[FirebaseDataCategory.UserItem].Reference.ValueChanged += OnUserItemPropertiesUpdate;
}
private void OnUserInfoPropertiesUpdate(object sender, ValueChangedEventArgs e)
{
// userInfoData에 Write시 콜백
FBUserInfo userInfo = new FBUserInfo();
FBDataUpdateCheck(userInfo, e.Snapshot); // snapshot -> userInfo
foreach (var process in userInfoProcessList)
{
process?.OnUpdateFBUserInfoProperty(userInfo);
}
}
private void OnUserItemPropertiesUpdate(object sender, ValueChangedEventArgs e)
{
// userItemData에 Write시 콜백
FBUserItem userItem = new FBUserItem();
FBDataUpdateCheck(userItem, e.Snapshot); // snapshot -> userItem
foreach (var process in userItemProcessList)
{
process?.OnUpdateFBUserItemProperty(userItem);
}
}
테스트 영상
'GameDevelopment > [Unity] Project' 카테고리의 다른 글
[더 챌린저스] 캐릭터 (0) | 2024.09.09 |
---|---|
[더 챌린저스] 게임 플레이 영상 (2) | 2024.09.04 |
[페인트 맨] 다국어 지원 시스템 (Localization) (0) | 2024.03.29 |
[퍼즐 게임] 게임 플레이 영상, 매칭 이벤트 (0) | 2023.09.29 |
[컴공생 키우기] 미니게임 (0) | 2023.08.16 |