public void FinishPuzzle(bool solved) { int duration = (int)(Time.time - _startTime); if (duration < 3) { return; } _currentPuzzle = new PlayPuzzles { Time = DateTime.Now, PlayerID = Singleton.Instance.PlayerController.GetPlayerID ?? -1, Duration = duration, HintCount1 = Hint1, HintCount2 = Hint2, HintCount3 = Hint3, PuzzleID = Singleton.Instance.WordSpawner.PuzzleID, MoveCount = 0, Success = solved, Dirty = true }; if (_currentPuzzle.PuzzleID != -1) { LocalDBController.InsertOrReplace(_currentPuzzle); } }
public List <UserPuzzle> GetUnregisteredPuzzles() { return(LocalDBController .Table <UserPuzzle>() .SqlWhere(p => p.ServerID == null) .ToList()); }
public IEnumerator SyncPlayerInfo() { LocalDBController.DeleteAll <PlayerInfo>(); LocalDBController.InsertOrReplace(_playerInfo); if (_playerInfo.PlayerID == null) { yield return(RegisterPlayerToServer()); } if (_playerInfo.PlayerID != null) { yield return(ServerController.Post <string>( $@"PlayerInfo/Update?id={GetPlayerID}", _playerInfo, // On Successfully connect to the account respnse => { if (respnse == "Success") { _playerInfo.Dirty = false; } })); } LocalDBController.DeleteAll <PlayerInfo>(); LocalDBController.InsertOrReplace(_playerInfo); }
public void OnEnable() { PlayerInfo info = LocalDBController.Table <PlayerInfo>().FirstOrDefault(); GetComponent <Text>().text = PersianFixer.Fix(info.Name); IDText.text = "ID: # " + info.PlayerID; }
public void HasUserPuzzle() { FollowMachine.SetOutput( !LocalDBController.Table <UserPuzzle>().Any() && LocalDBController.Table <PlayPuzzles>().Count() > 10 && Random.Range(0, 100) > 70 ? "Yes" : "No"); }
public void CreatePlayerInfo(string playerName) { LocalDBController .DataService .Connection .DeleteAll <PlayerInfo>(); LocalDBController .DataService .Connection .DeleteAll <PlayPuzzles>(); LocalDBController .DataService .Connection .DeleteAll <UserPuzzle>(); LocalDBController .DataService .Connection .DeleteAll <Purchases>(); ZPlayerPrefs.DeleteAll(); LocalDBController .InsertOrReplace(new PlayerInfo { Name = playerName, }); }
public void CheckPlayerInfo() { _playerInfo = LocalDBController .Table <PlayerInfo>() .FirstOrDefault(); if (_playerInfo == null) { FollowMachine.SetOutput("No Player Info"); } else if (_playerInfo.PlayerID == null || _playerInfo.PlayerID == -1) { if (_playerInfo.PlayerID == -1) { _playerInfo.PlayerID = null; LocalDBController.DeleteAll <PlayerInfo>(); LocalDBController.InsertOrReplace(_playerInfo); } FollowMachine.SetOutput("No Player ID"); } else { FollowMachine.SetOutput("Has Player ID"); } }
public IEnumerator FeedBack(float star) { string s = ((int)star).ToString(); int? id = Singleton.Instance.PlayerController.GetPlayerID; if (!id.HasValue) { FollowMachine.SetOutput("Fail"); yield break; } string trim = ServerRespond["Creator"].ToString().Trim(); if (LocalDBController.Table <PlayerInfo>().FirstOrDefault().Name.Trim() == trim) { FollowMachine.SetOutput("Fail"); yield break; } yield return(ServerController .Post <string>($@"PuzzleRates/RegisterFeedback?puzzleID={_pID}&playerID={id}&star={s}", null, r => { FollowMachine.SetOutput("Success"); }, request => { FollowMachine.SetOutput(request.isNetworkError ? "Network Error" : "Fail"); } )); }
public void ShowLastPlayedPuzzle() { int lastPuzzleID = ZPlayerPrefs.GetInt("LastPlayedPuzzle"); if (lastPuzzleID == 0) { FollowMachine.SetOutput("No Last Puzzle"); return; } Puzzle puzzle = LocalDBController.Table <Puzzle>(). SqlWhere(p => p.ID == lastPuzzleID). FirstOrDefault(); int?categoryID = puzzle?.CategoryID; if (categoryID != null) { int id = categoryID.Value; Category category = LocalDBController. Table <Category>(). SqlWhere(c => c.ID == id). FirstOrDefault(); Debug.Log(category.ID); PuzzleList.CategoryWindow.Select(category); FollowMachine.SetOutput("Play"); return; } FollowMachine.SetOutput("No Last Puzzle"); }
public void SaveToLocalDB() { LocalDBController .DataService .Connection.DeleteAll <PlayerInfo>(); LocalDBController.InsertOrReplace(_playerInfo); }
public void Back() { if (PlayingCategory.ParentID != null) { CategoryWindow.Select( LocalDBController.Table <Category>().SqlWhere(c => c.ID == PlayingCategory.ParentID).ToList()[0]//.ElementAt(_playingCategory.ParentID.Value) ); } }
public override void Refresh() { PlayingCategory = CategoryWindow.SelectedCategory; CategoryName.text = PlayingCategory != null?PersianFixer.Fix(PlayingCategory.Name) : PersianFixer.Fix("جدول های اصلی"); var puzzles = LocalDBController.Table <Puzzle>().SqlWhere(p => p.CategoryID == PlayingCategory.ID).ToList(); puzzles.Sort((p1, p2) => p1.Row.CompareTo(p2.Row)); UpdateItems(puzzles.Cast <object>()); }
public void RestoreUserPuzzles(List <UserPuzzle> userPuzzles) { // clear user puzzle table LocalDBController.DataService.Connection.DeleteAll <UserPuzzle>(); foreach (UserPuzzle puzzle in userPuzzles) { LocalDBController.InsertOrReplace(puzzle); } }
public void ListToShow() { if (LocalDBController.Table <Category>().SqlWhere(c => c.ParentID == SelectedCategory.ID).ToList().Count == 0) { FollowMachine.SetOutput("Puzzle List"); } else { FollowMachine.SetOutput("Child Category List"); } }
public void UnlockCategoryPuzzles() { Purchases purchase = new Purchases { LastUpdate = DateTime.Now, PlayerID = LocalDBController.Table <PlayerInfo>().FirstOrDefault().PlayerID, PurchaseID = "C-P-" + PlayingCategory.ID }; LocalDBController.InsertOrReplace(purchase); }
public void UnlockCategory() { Purchases purchase = new Purchases { LastUpdate = DateTime.Now, PlayerID = LocalDBController.Table <PlayerInfo>().FirstOrDefault().PlayerID, PurchaseID = "C-" + _clickedCategory.ID, Dirty = true }; LocalDBController.InsertOrReplace(purchase); }
public void SendPuzzlesToServer() { List <Puzzle> puzzles = new List <Puzzle>(); puzzles.AddRange(LocalDBController.Table <Puzzle>().ToList()); Debug.Log(puzzles.Count); foreach (Puzzle p in puzzles) { ServerEditor.Post(@"Puzzles/Create", p, "Update Puzzle", "Update"); } }
public void ShouldLike() { if (PlayerPrefs.GetInt("Liked", 0) == 0 && LocalDBController.Table <PlayPuzzles>().Count() > 20 && Random.Range(0.1f, 1f) > 0.5f && GetComponent <CheckMarket>().BazzarMarket) { FollowMachine.SetOutput("Yes"); return; } FollowMachine.SetOutput("No"); }
private void UpdatePlayerId(int newplayerid) { List <PlayPuzzles> table = new List <PlayPuzzles>(); table = LocalDBController.Table <PlayPuzzles>().ToList(); LocalDBController.DeleteAll <PlayPuzzles>(); foreach (PlayPuzzles playPuzzle in table) { playPuzzle.PlayerID = newplayerid; playPuzzle.Dirty = true; LocalDBController.InsertOrReplace(playPuzzle); } StartCoroutine(Sync()); }
public virtual void OnNewPlayerID() { LocalDBController .DataService .Connection.DeleteAll <PlayerInfo>(); LocalDBController .InsertOrReplace(_playerInfo); if (_playerInfo.PlayerID != null) { NewPlayerID?.Invoke(_playerInfo.PlayerID.Value); } }
private void UpdatePlayerId(int newplayerid) { List <Purchases> purchaseses = new List <Purchases>(); purchaseses = LocalDBController.Table <Purchases>().ToList(); LocalDBController.DeleteAll <Purchases>(); foreach (Purchases purchases in purchaseses) { purchases.PlayerID = newplayerid; purchases.Dirty = true; LocalDBController.InsertOrReplace(purchases); } StartCoroutine(SyncPurchases()); }
private void AddCategories(JToken dataToken) { // Get new categories from json List <Category> newcategories = dataToken.Select(ct => ct.ToObject <Category>()).ToList(); // Add or update local db foreach (Category newcategory in newcategories) { newcategory.Visit = false; LocalDBController.InsertOrReplace(newcategory); } CommandController.LastCmdTime = newcategories.Max(c => c.LastUpdate); }
public void PuzzleSolved() { var puzzles = LocalDBController.Table <Puzzle>(). SqlWhere(p => p.CategoryID == _puzzle.CategoryID); Puzzle nextPuzzle = puzzles.FirstOrDefault(p => p.Row == _puzzleIndex); if (nextPuzzle == null || nextPuzzle.Solved) { FollowMachine.SetOutput("No Next Puzzle"); return; } FollowMachine.SetOutput("Play Next"); }
public void AddPuzzle(UserPuzzle puzzle) { var userPuzzles = LocalDBController.Table <UserPuzzle>().ToList(); if (userPuzzles.Count > 0) { puzzle.ID = userPuzzles.Max(p => p.ID) + 1; } else { puzzle.ID = 1; } LocalDBController.InsertOrReplace(puzzle); }
public override void Select() { if (IsCategoryAvalable()) { if (!_category.Visit) { _category.Visit = true; LocalDBController.InsertOrReplace(_category); } base.Select(); } else { ((LocalCategorySelectionWindow)_list).LockSelect(_category); } }
private IEnumerator LoginToDB() { yield return(LocalDBController.AddLogin(_playerInfo.PlayerID)); if (_playerInfo.PlayerID != null) { yield return(FlashOutLocalLogins()); } NameText nameText = FindObjectOfType <NameText>(); if (nameText != null) { nameText.SetName(_playerInfo.Name); } }
private IEnumerator FlashOutLocalLogins() { List <LogIn> logIns = LocalDBController.Table <LogIn>().ToList(); yield return(ServerController.Post <int>( @"/api/Login/AddRange", logIns, r => { if (logIns.Count == r) { LocalDBController.DeleteAll <LogIn>(); } })); }
public override void Select() { if (IsCategoryAvalable()) { if (!_category.Visit) { _category.Visit = true; LocalDBController.InsertOrReplace(_category); } Singleton.Instance.Table.SetBackground(_iconIndex); base.Select(); } else { ((LocalCategorySelectionWindow)_list).LockSelect(_category); } }
public override void Refresh() { int?parentID = 3; if (SelectedCategory != null) { parentID = SelectedCategory?.ID; } var categories = LocalDBController.Table <Category>().SqlWhere(c => c.ParentID == parentID).ToList(); categories.Sort((p1, p2) => p1.Row.CompareTo(p2.Row)); CategoryName.text = SelectedCategory != null?PersianFixer.Fix(SelectedCategory.Name) : PersianFixer.Fix("جدول های اصلی"); UpdateItems(categories.Cast <object>()); }
public IEnumerator SyncPurchases() { var purchases = LocalDBController .Table <Purchases>() .SqlWhere(p => p.Dirty) .SqlWhere(p => p.PlayerID != -1) .ToList(); if (purchases.Count == 0) { yield break; } string resualt = ""; yield return(ServerController.Post <string>( $@"Purchases/AddPurchases", purchases, respond => { resualt = respond; //FollowMachine.SetOutput(respond); }, request => { if (request.isNetworkError) { //FollowMachine.SetOutput("No Network"); resualt = "No Network"; } else if (request.isHttpError) { //FollowMachine.SetOutput("Fail"); resualt = "Fail"; } })); if (resualt == "Success") { purchases.ForEach(pp => { pp.Dirty = false; LocalDBController.InsertOrReplace(pp); }); } }