72 lines
2.0 KiB
C#
72 lines
2.0 KiB
C#
using Firebase.Database;
|
|
using Firebase.Extensions;
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
namespace BlueWater
|
|
{
|
|
public class BlueWaterRankUserData
|
|
{
|
|
public string Name { get; private set; }
|
|
public int Round { get; private set; }
|
|
public int Gold { get; private set; }
|
|
public int Time { get; private set; }
|
|
public int Tries { get; private set; }
|
|
}
|
|
|
|
public class FirebaseManager : Singleton<FirebaseManager>
|
|
{
|
|
private DatabaseReference _reference;
|
|
|
|
protected override void OnAwake()
|
|
{
|
|
_reference = FirebaseDatabase.DefaultInstance.RootReference;
|
|
Debug.Log("Firebase Awake!!");
|
|
}
|
|
|
|
void Start()
|
|
{
|
|
|
|
//WriteUserData("0", "aaaa");
|
|
//WriteUserData("1", "bbbb");
|
|
//WriteUserData("2", "cccc");
|
|
//WriteUserData("3", "dddd");
|
|
|
|
|
|
|
|
}
|
|
|
|
void UpdateUserData()
|
|
{
|
|
FirebaseDatabase.DefaultInstance.GetReference("Users")
|
|
.GetValueAsync().ContinueWithOnMainThread(task =>
|
|
{
|
|
if (task.IsFaulted)
|
|
{
|
|
// Handle the error...
|
|
}
|
|
else if (task.IsCompleted)
|
|
{
|
|
DataSnapshot snapshot = task.Result;
|
|
|
|
string nextName = "__Root";
|
|
for (int i = 0; i < snapshot.ChildrenCount; i++)
|
|
{
|
|
Debug.Log(snapshot.Child(nextName).Child("Name").Value);
|
|
nextName = (string)snapshot.Child(nextName).Child("NextID").Value;
|
|
}
|
|
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
void WriteUserData(string userId, string username)
|
|
{
|
|
_reference.Child(userId).Child("username").SetValueAsync(username);
|
|
}
|
|
|
|
}
|
|
}
|