public Watchdog() { api = APIAdapter.Instance.Login(); data = new DataStore(); log = LogSaver.Instance; data.OnInitializeLocation += (location) => { if (location.WorldID == "offline" || location.WorldID == "private") { location.Name = location.WorldID; } else { api.GetWorldData(location.Id, (l) => { location.SetStructData(l); if (String.IsNullOrWhiteSpace(l.OwnerId)) { OnUpdateLocation?.Invoke(location); } else { api.GetUserData(location.OwnerId, (u) => { location.OwnerId = l.OwnerId; location.OwnerName = u.Name; OnUpdateLocation?.Invoke(location); }); } }); } }; data.OnAddUser += (a, b) => { OnAddUser?.Invoke(a, b); log.LogUser(b); }; data.OnRemoveUser += (a, b) => OnRemoveUser?.Invoke(a, b); data.OnUpdateUser = OnUpdateUser; //ログアウト検知 data.OnLostUser += (a) => { api.GetUserData(a.Id, (b) => { data.UpdateUser(b); }); }; }
public void LoginCheck(Action onSuccess = null, Action onFailure = null) { api = APIAdapter.Instance.Login(); api.LoginCheck(onSuccess, onFailure); }
public void ReLogin(string id = "", string password = "", Action onSuccess = null) { api = APIAdapter.Instance.Login(id, password); api.LoginCheck(onSuccess); }