コード例 #1
0
        public void ClearLocalization()
        {
            CurrentPoFileLanguage = "";

            LocalizationFields.Clear();
            PoFilesMap.Clear();
            OnLocalizationUpdated();
        }
コード例 #2
0
 /// <summary>
 /// Set power up name in label by hovering icons
 /// </summary>
 /// <param name="field"> Desired field </param>
 public void SetPowerUpName(string sentence)
 {
     try
     {
         LocalizationFields field = (LocalizationFields)Enum.Parse(typeof(LocalizationFields), sentence);
         powerUpNameLabel.text = LocalizationController.Instance.GetWord(field);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #3
0
        /// <summary>
        /// Define ball velocity
        /// </summary>
        /// <param name="moveFaster"> Is to move faster ? </param>
        private void Define(bool moveFaster)
        {
            try
            {
                Ball[] balls = FindObjectsOfType <Ball>();
                if (balls.Length != 0)
                {
                    foreach (Ball ball in balls)
                    {
                        float moveSpeed      = ball.MoveSpeed;
                        float rotationDegree = ball.MinMaxRotationDegree.x;
                        if (moveFaster)
                        {
                            if (moveSpeed < ball.MinMaxMoveSpeed.y)
                            {
                                moveSpeed += 100f;
                            }

                            if (rotationDegree < ball.MinMaxRotationDegree.y)
                            {
                                rotationDegree *= 2;
                            }
                        }
                        else
                        {
                            if (moveSpeed > ball.MinMaxMoveSpeed.x)
                            {
                                moveSpeed -= 100f;
                            }

                            if (rotationDegree > ball.MinMaxRotationDegree.x)
                            {
                                rotationDegree /= 2;
                            }
                        }

                        ball.MoveSpeed      = moveSpeed;
                        ball.RotationDegree = rotationDegree;
                        ball.Velocity       = (ball.Velocity.normalized * Time.fixedDeltaTime * ball.MoveSpeed);
                    }

                    Vector2Int         minMaxScore = new Vector2Int(moveFaster ? 5000 : 1000, moveFaster ? 10000 : 5000);
                    LocalizationFields field       = (moveFaster ? LocalizationFields.powerups_fasterball : LocalizationFields.powerups_slowerball);
                    GameSessionController.Instance.AddToScore(UnityEngine.Random.Range(minMaxScore.x, minMaxScore.y));
                    GameSessionController.Instance.ShowPowerUpName(LocalizationController.Instance.GetWord(field));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #4
0
        public void SetLocalizationByPoFile(string poFileLanguage)
        {
            LocalizationFields.Clear();
            CurrentPoFileLanguage = poFileLanguage;
            PoFile poFile = PoFilesMap[poFileLanguage];

            foreach (LocalizationField field in poFile.LocalizationFields)
            {
                AddFields(field);
            }

            OnLocalizationUpdated();
        }
コード例 #5
0
 /// <summary>
 /// Get translated word by field
 /// </summary>
 /// <param name="field"> Desired field </param>
 /// <returns> Translated word </returns>
 public string GetWord(LocalizationFields field)
 {
     try
     {
         string[] keys = field.ToString().Split('_');
         return(dictionary[keys[0]][keys[1]]);
     }
     catch (Exception ex)
     {
         Debug.LogFormat("{0}\n{1}", ex.Message, field);
         return(string.Empty);
     }
 }
コード例 #6
0
 /// <summary>
 /// Sizes the paddle
 /// </summary>
 /// <param name="toExpand"> Is to expand the paddle ? </param>
 private void Resize(bool toExpand)
 {
     try
     {
         if (paddle != null)
         {
             paddle.DefinePaddleSize(toExpand);
             Vector2Int         minMaxScore = new Vector2Int(toExpand ? 100 : 10000, toExpand ? 500 : 30000);
             LocalizationFields field       = (toExpand ? LocalizationFields.powerups_expandpaddle : LocalizationFields.powerups_shrinkpaddle);
             GameSessionController.Instance.AddToScore(UnityEngine.Random.Range(minMaxScore.x, minMaxScore.y));
             GameSessionController.Instance.ShowPowerUpName(LocalizationController.Instance.GetWord(field));
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #7
0
        /// <summary>
        /// Get translation by direction
        /// </summary>
        /// <param name="direction"> Desired direction </param>
        private static void GetTranslation(Enumerators.Directions direction)
        {
            if (direction != Enumerators.Directions.None)
            {
                LocalizationFields field = LocalizationFields.powerups_onehitblock;
                switch (direction)
                {
                case Enumerators.Directions.Down: field = LocalizationFields.powerups_pullblocksdown; break;

                case Enumerators.Directions.Up: field = LocalizationFields.powerups_pullblocksup; break;

                case Enumerators.Directions.Left: field = LocalizationFields.powerups_pullblocksleft; break;

                case Enumerators.Directions.Right: field = LocalizationFields.powerups_pullblocksright; break;

                default: break;
                }

                GameSessionController.Instance.ShowPowerUpName(LocalizationController.Instance.GetWord(field));
            }
        }
コード例 #8
0
        /// <summary>
        /// Define ball size
        /// </summary>
        /// <param name="makeBigger"> Is to make it bigger ? </param>
        private void Define(bool makeBigger)
        {
            try
            {
                Ball[] balls = FindObjectsOfType <Ball>();
                if (balls.Length != 0)
                {
                    foreach (Ball ball in balls)
                    {
                        Vector3 newLocalScale = ball.transform.localScale;
                        if (makeBigger)
                        {
                            if (newLocalScale.x < ball.MinMaxLocalScale.y)
                            {
                                newLocalScale *= 2f;
                            }
                        }
                        else
                        {
                            if (newLocalScale.x > ball.MinMaxLocalScale.x)
                            {
                                newLocalScale /= 2f;
                            }
                        }

                        ball.transform.localScale = newLocalScale;
                    }

                    Vector2Int         minMaxScore = new Vector2Int(makeBigger ? 0 : 1000, makeBigger ? 1000 : 5000);
                    LocalizationFields field       = (makeBigger ? LocalizationFields.powerups_biggerball : LocalizationFields.powerups_smallerball);
                    GameSessionController.Instance.AddToScore(UnityEngine.Random.Range(minMaxScore.x, minMaxScore.y));
                    GameSessionController.Instance.ShowPowerUpName(LocalizationController.Instance.GetWord(field));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #9
0
 public void ShrinkLocalization(LocalizationFieldStatus fieldStatus)
 {
     LocalizationFields.ShrinkFieldsByStatus(fieldStatus);
     OnLocalizationUpdated();
 }
コード例 #10
0
 public void AddFields(LocalizationField outField)
 {
     LocalizationFields.Add(outField);
 }