Просмотр исходного кода

Release 0.51-23

Grafiska uppdateringar
Axel Nordh 5 лет назад
Родитель
Сommit
47b054c094

+ 65 - 24
Assets/AnswerLineInfoScript.cs

@@ -19,11 +19,13 @@ public class AnswerLineInfoScript : MonoBehaviour
     [SerializeField] GameObject gameManager;
     private List<KeyValuePair<string, int>> players;
     private string currentPlayerShown;
-
+    private String signedInName;
+    
     private void Start() {
         nextPlayerButton.onClick.AddListener(ShowNextPlayerAnswerLine);
         prevPlayerButton.onClick.AddListener(ShowPrevPlayerAnswerLine);
         currentPlayerShown = GameManagerScript.GetCurrentPlayer();
+        signedInName = Database.Instance.GetSignedInUser().Value;
     }
 
     private void Update() {
@@ -34,7 +36,7 @@ public class AnswerLineInfoScript : MonoBehaviour
     }
 
     private void SetQuestionClickable() {
-        if (GameManagerScript.GetCurrentPlayer().Equals(currentPlayerShown)) {
+        if (GameManagerScript.GetCurrentPlayer().Equals(currentPlayerShown, StringComparison.InvariantCultureIgnoreCase)) {
             newQuestion.GetComponent<NewQuestionCardController>().BackClickable = true;
         } else {
             newQuestion.GetComponent<NewQuestionCardController>().BackClickable = false;
@@ -54,30 +56,48 @@ public class AnswerLineInfoScript : MonoBehaviour
             prevPlayerButton.gameObject.SetActive(true);
 
             if (currentPlayerShown == null) {
-                currentPlayerShown = GameManagerScript.GetCurrentPlayer();
+                currentPlayerShown = signedInName;
             }
 
             string playerBaseText = LocalizationManager.Instance.GetText("ANSWERLINE_OTHER_PLAYER");
             for (int i = 0; i < players.Count; i++) {
                 if (players[i].Key.Equals(currentPlayerShown, StringComparison.InvariantCultureIgnoreCase)) {
                     if (i + 1 < players.Count) {
-                        nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i+1].Key;
-                        nextPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText ,players[i + 1].Key);
-                        if (i - 1 > 0) {
-                            
-                            prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i-1].Key;
-                            prevPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText ,players[i - 1].Key);
+                        if (players[i+1].Key.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+                            nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = LocalizationManager.Instance.GetText("YOUR");
                         } else {
-                            prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[players.Count-1].Key;
-                            prevPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText ,players[players.Count - 1].Key);
+                            nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i + 1].Key + "s";
                         }
+                        nextPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText, nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName);
+                        if (i - 1 >= 0) {
+                            if (players[i-1].Key.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+                                prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = LocalizationManager.Instance.GetText("YOUR");
+                            } else {
+                                prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i - 1].Key + "s";
+                            }
+                        } else {
+                            if (players[players.Count - 1].Key.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+                                prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = LocalizationManager.Instance.GetText("YOUR");
+                            } else {
+                                prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[players.Count-1].Key + "s";
+                            }
+                        }
+                        prevPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText, prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName);
                         break;
                     } else {
-                        nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[0].Key;
-                        nextPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText ,players[0].Key);
+                        if (players[0].Key.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+                            nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = LocalizationManager.Instance.GetText("YOUR");
+                        } else {
+                            nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[0].Key + "s";
+                        }
+                        nextPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText, nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName);
                         
-                        prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i-1].Key;
-                        prevPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText ,players[i - 1].Key);
+                        if (players[i-1].Key.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+                                prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = LocalizationManager.Instance.GetText("YOUR");
+                        } else {
+                            prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName = players[i-1].Key;
+                        }
+                        prevPlayerButton.GetComponentInChildren<Text>().text = String.Format(playerBaseText, prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName);
                         break;
                     }
                 }
@@ -101,19 +121,33 @@ public class AnswerLineInfoScript : MonoBehaviour
     private void UpdateLockedQuestionsText() {
         ScrollViewScript scrollViewScript = scrollView.GetComponent<ScrollViewScript>();
         int lockedQuestionsCount = scrollViewScript.GetQuestionIdsInAnswerLine().Count - scrollViewScript.GetUnlockedQuestionCount();
+            String playerText;
+        if (currentPlayerShown == null || currentPlayerShown.Equals(signedInName, StringComparison.InvariantCultureIgnoreCase)) {
+            playerText = LocalizationManager.Instance.GetText("YOU");
+        } else {
+            playerText = currentPlayerShown;
+        }
 
-        lockedQuestionsText.text = String.Format(
-            LocalizationManager.Instance.GetText(
-                lockedQuestionsText.GetComponent<TextLocalization>().key), 
-            lockedQuestionsCount);
+        if (lockedQuestionsText != null){
+            lockedQuestionsText.text = String.Format(
+                LocalizationManager.Instance.GetText(
+                    lockedQuestionsText.GetComponent<TextLocalization>().key), 
+                    playerText,
+                    lockedQuestionsCount);
+        }
     }
 
     private void ShowNextPlayerAnswerLine()
     {
         GameManagerScript gameManagerScript = gameManager.GetComponent<GameManagerScript>();
-        List<NewQuestionData> playerQuestions = Database.Instance.GetPlayerQuestions(gameManagerScript.GameId, nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName, gameManagerScript.GameMode);
+        if (nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName.Equals(LocalizationManager.Instance.GetText("YOUR"))) {
+            currentPlayerShown = signedInName;
+        } else {
+            currentPlayerShown = nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName;
+            currentPlayerShown = currentPlayerShown.Substring(0,currentPlayerShown.Length - 1);
+        }
+        List<NewQuestionData> playerQuestions = Database.Instance.GetPlayerQuestions(gameManagerScript.GameId, currentPlayerShown, gameManagerScript.GameMode);
 
-        currentPlayerShown = nextPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName;
         setQuestionFrosting(playerQuestions);
         UpdateButtonsText();
     }
@@ -121,9 +155,15 @@ public class AnswerLineInfoScript : MonoBehaviour
     private void ShowPrevPlayerAnswerLine()
     {       
         GameManagerScript gameManagerScript = gameManager.GetComponent<GameManagerScript>();
-        List<NewQuestionData> playerQuestions = Database.Instance.GetPlayerQuestions(gameManagerScript.GameId, prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName, gameManagerScript.GameMode);
+        if (prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName.Equals(LocalizationManager.Instance.GetText("YOUR"))) {
+            currentPlayerShown = signedInName;
+        } else {
+            currentPlayerShown = prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName;
+            currentPlayerShown = currentPlayerShown.Substring(0, currentPlayerShown.Length - 1);
+        }
+        
+        List<NewQuestionData> playerQuestions = Database.Instance.GetPlayerQuestions(gameManagerScript.GameId, currentPlayerShown, gameManagerScript.GameMode);
         
-        currentPlayerShown = prevPlayerButton.GetComponent<AnswerLineInfoPlayerButton>().PlayerName;
         setQuestionFrosting(playerQuestions);
         UpdateButtonsText();
     }
@@ -132,7 +172,8 @@ public class AnswerLineInfoScript : MonoBehaviour
         ScrollViewScript scrollViewScript = scrollView.GetComponent<ScrollViewScript>();
         scrollViewScript.RemoveEverythingFromAnswerline();
         scrollViewScript.SetQuestionsInAnswerLine(questions);
-        if (GameManagerScript.GetCurrentPlayer().Equals(currentPlayerShown)) {
+        //if (GameManagerScript.GetCurrentPlayer().Equals(currentPlayerShown)) {
+        if (Database.Instance.GetSignedInUser().Value.Equals(currentPlayerShown, StringComparison.InvariantCultureIgnoreCase)) {
             scrollViewScript.SetQuestionsFrosted(false);
         } else {
             scrollViewScript.SetQuestionsFrosted(true);

+ 1 - 1
Assets/Scenes/narKampen.unity

@@ -1630,7 +1630,7 @@ MonoBehaviour:
     m_FontStyle: 1
     m_BestFit: 1
     m_MinSize: 8
-    m_MaxSize: 20
+    m_MaxSize: 40
     m_Alignment: 4
     m_AlignByGeometry: 0
     m_RichText: 1

+ 1 - 2
Assets/Scripts/Database/OnlineDatabase.cs

@@ -572,8 +572,7 @@ public class OnlineDatabase : MonoBehaviour {
             /*GameObject question = Instantiate(questionCardPrefab, new Vector2(0, 0), Quaternion.identity) as GameObject;
             NewQuestionData qc = question.GetComponent<NewQuestionData>();
             */
-            Color categoryColor = new Color(q.r, q.g, q.b, q.a);
-//            Color32 questionCategoryColor = new Color32((byte)q.r, (byte)q.g, (byte)q.b, (byte)q.a);
+            Color32 categoryColor = new Color32((byte)q.r, (byte)q.g, (byte)q.b, (byte)q.a);
 
             Int32.TryParse(q.category, out int categoryId);
             Int32.TryParse(q.id, out int questionId);

+ 1 - 1
Assets/Scripts/MainGame/NewQuestionData.cs

@@ -8,7 +8,7 @@ public class NewQuestionData  {
     public string CategoryName { get; set; }
     public int CategoryId { get; set; }
     public int Id { get; set; }
-    public Color CategoryColor { get; set; }
+    public Color32 CategoryColor { get; set; }
 
     public NewQuestionData(string answer, string question, string categoryName, int categoryId, int id, Color categoryColor) {
         Answer = answer;

+ 3 - 2
Assets/Scripts/MainGame/ScrollViewScript.cs

@@ -101,10 +101,11 @@ public class ScrollViewScript : MonoBehaviour {
             answerLineQuestionCard.SetId(q.Id);
             answerLineQuestionCard.SetQuestionSafe();
             answerLineQuestionCard.SetBackCategoryText(q.CategoryName);
-            answerLineQuestionCard.SetQuestionCategoryColor(q.CategoryColor);
+            answerLineQuestionCard.SetQuestionCategoryColor(q.CategoryColor); // TODO kommer bara 255,255,255,255 till SetQuestionCategoryColor
 
             if (gameMode.Equals("Online")) {
-                if (signedInUser.Value.Equals(GameManagerScript.GetCurrentPlayer(), StringComparison.InvariantCultureIgnoreCase)) {
+                //if (signedInUser.Value.Equals(GameManagerScript.GetCurrentPlayer(), StringComparison.InvariantCultureIgnoreCase)) {
+                if (signedInUser.Value.Equals(Database.Instance.GetSignedInUser().Value, StringComparison.InvariantCultureIgnoreCase)) {
                     answerLineQuestionCard.SetFrostingActive(false);
                 } else {
                     answerLineQuestionCard.SetFrostingActive(true);

+ 5 - 3
Assets/Translations/ENGLISH.xml

@@ -5,6 +5,8 @@
   <text key="NO">No</text>
   <text key="OK">Ok</text>
   <text key="ALL">All</text>
+  <text key="YOU">You</text>
+  <text key="YOUR">your</text>
   <text key="BEFORE">before</text>
   <text key="AFTER">after</text>
   <text key="LOGIN">Login</text>
@@ -101,9 +103,9 @@
   <text key="SELECT_CATEGORIES_DIALOG_TITLE">Select categories to play with</text>
   <text key="SELECT_CATEGORY_DIALOG_TEXT">Categoryname</text>
   <text key="SELECT_CATEGORY_DIALOG_SELECTED_TEXT">Selected</text>  
-  <text key="ANSWERLINE_INFO_LOCKED_QUESTIONS_TEXT">You have {0} locked answers</text>
-  <text key="ANSWERLINE_INFO_UNLOCKED_QUESTIONS_TEXT">You have {0} unlocked answers, those will be lost if you answer incorrectly.</text>
-  <text key="ANSWERLINE_OTHER_PLAYER">Show {0}s answers</text>
+  <text key="ANSWERLINE_INFO_LOCKED_QUESTIONS_TEXT">{0} have {1} locked answers</text>
+  <text key="ANSWERLINE_INFO_UNLOCKED_QUESTIONS_TEXT">{0} have {1} unlocked answers, those will be lost if you answer incorrectly.</text>
+  <text key="ANSWERLINE_OTHER_PLAYER">Show {0} answers</text>
 
   
 </Language>

+ 4 - 2
Assets/Translations/SWEDISH.xml

@@ -4,7 +4,9 @@
   <text key="YES">Ja</text>
   <text key="NO">Nej</text>
   <text key="OK">Ok</text>
+  <text key="YOU">Du</text>
   <text key="ALL">Alla</text>
+  <text key="YOUR">dina</text>
   <text key="BEFORE">före</text>
   <text key="AFTER">efter</text>
   <text key="LOGIN">Logga in</text>
@@ -102,10 +104,10 @@
   <text key="SELECT_CATEGORIES_DIALOG_TITLE">Välj kategorier att spela med</text>
   <text key="SELECT_CATEGORY_DIALOG_TEXT">Kategorinamn</text>
   <text key="SELECT_CATEGORY_DIALOG_SELECTED_TEXT">Vald</text>
-  <text key="ANSWERLINE_INFO_LOCKED_QUESTIONS_TEXT">Du har {0} låsta frågor</text>
+  <text key="ANSWERLINE_INFO_LOCKED_QUESTIONS_TEXT">{0} har {1} låsta frågor</text>
   <text key="ANSWERLINE_INFO_UNLOCKED_QUESTIONS_TEXT">Du har {0} olåsta frågor, dessa kommer att förloras om du svarar fel.</text>
 
-  <text key="ANSWERLINE_OTHER_PLAYER">Visa {0}s svar</text>
+  <text key="ANSWERLINE_OTHER_PLAYER">Visa {0} svar</text>
 
   
 </Language>

+ 2 - 2
ProjectSettings/ProjectSettings.asset

@@ -121,7 +121,7 @@ PlayerSettings:
     16:10: 1
     16:9: 1
     Others: 1
-  bundleVersion: 0.5
+  bundleVersion: 0.51
   preloadedAssets: []
   metroInputSource: 0
   wsaTransparentSwapchain: 0
@@ -167,7 +167,7 @@ PlayerSettings:
   applicationIdentifier:
     Android: se.axelnordh.narkampen
   buildNumber: {}
-  AndroidBundleVersionCode: 22
+  AndroidBundleVersionCode: 23
   AndroidMinSdkVersion: 19
   AndroidTargetSdkVersion: 0
   AndroidPreferredInstallLocation: 1

+ 1 - 1
dbFiles/Question.php

@@ -15,7 +15,7 @@
 	}
 	mysqli_set_charset($conn,'utf8');
 	
-	$sql = "SELECT questions.id, question, answer, categoryId as category, name, r,g,b,a FROM questions INNER JOIN questionToCategory ON questions.id = questionToCategory.questionId INNER JOIN category on category.id = questionToCategory.categoryId WHERE questionToCategory.categoryId IN (SELECT categoryId FROM gameCategories WHERE gameId = $gameId) AND questions.id NOT IN (SELECT * FROM usersLockedQuestions WHERE gameId = $gameId AND playerId = $playerId) ORDER BY RAND() limit 1";
+	$sql = "SELECT questions.id, question, answer, categoryId as category, name, r,g,b,a FROM questions INNER JOIN questionToCategory ON questions.id = questionToCategory.questionId INNER JOIN category on category.id = questionToCategory.categoryId WHERE questionToCategory.categoryId IN (SELECT categoryId FROM gameCategories WHERE gameId = $gameId) AND questions.id NOT IN (SELECT questionId FROM usersLockedQuestions WHERE gameId = $gameId AND playerId = $playerId) ORDER BY RAND() limit 1";
 	
 	$result = mysqli_query($conn, $sql);