public void GetLevelData()
    {
        string where = string.Format("Stage = {0};", SaveData.oneWayClear + 1);
        string query = string.Format(Database.SELECT_TABLE_ALL_WHERE, CHALLENGE_NAME, where);

        Database.Query(query, (reader) =>
        {
            level = int.Parse(reader.GetString(0));

            ball.Initialize(float.Parse(reader.GetString(1)));

            blockGroup = new BlockGroup
            {
                index  = 0,
                unlock = 0
            };

            string[] index = reader.GetString(2).Split(',');
            string[] hp    = reader.GetString(3).Split(',');

            for (int i = 0; i < index.Length; i++)
            {
                blockGroup.blockIndex.Add(int.Parse(index[i]));
                blockGroup.blockHp.Add(int.Parse(hp[i]));
            }
        });

        // 이번스테이지에서 획득할 수 있는 공 스킨
        unlockSkin = GameManager.Instance.ballSkins.Find(x => x.unlockType == 1 && x.unlockLevel == level);
    }
Exemple #2
0
 public void LoadButtonState(BallSkin ballskin)
 {
     if (PlayerPrefsManager.IsBallSkinUnblocked(ballskin.index) == 1)
     {
         if (PlayerPrefsManager.GetCurrentBallSkin() == ballskin.index)
         {
             stateText.text = "Using";
             coin.SetActive(false);
             bgImage.sprite           = greyBG;
             stateButton.interactable = false;
             GetCurrentBallSkin(ballskin);
         }
         else
         {
             stateText.text = "Use";
             coin.SetActive(false);
             bgImage.sprite           = yellowBG;
             stateButton.interactable = true;
             GetCurrentBallSkin(ballskin);
         }
     }
     else
     {
         stateText.text = ballskin.price.ToString();
         coin.SetActive(true);
         bgImage.sprite           = greenBG;
         stateButton.interactable = true;
         GetCurrentBallSkin(ballskin);
     }
 }
Exemple #3
0
 public void GetCurrentBallSkin(BallSkin ballSkin)
 {
     ballSkinAsset        = ScriptableObject.CreateInstance <BallSkin>();
     ballSkinAsset.name   = ballSkin.name;
     ballSkinAsset.price  = ballSkin.price;
     ballSkinAsset.index  = ballSkin.index;
     ballSkinAsset.sprite = ballSkin.sprite;
 }
Exemple #4
0
 // Use this for initialization
 void Start()
 {
     stateButton = GetComponent <Button>();
     //stateText = GetComponentInChildren<Text>();
     //bgImage = GetComponent<Image>();
     penAsset      = ScriptableObject.CreateInstance <Pen>();
     ballSkinAsset = ScriptableObject.CreateInstance <BallSkin>();
     bgSkinAsset   = ScriptableObject.CreateInstance <BGSkin>();
 }
Exemple #5
0
    public void BuyOrUseBallSkin()
    {
        BallSkin ballSkin = ballsShop.ballSkinAsset;

        if (PlayerPrefsManager.IsBallSkinUnblocked(ballSkin.index) == 0) //buy ball then
        {
            if (ballSkin.price <= money)
            {
                Money -= ballSkin.price;
                PlayerPrefsManager.UnblockBallSkin(ballSkin.index);
                ballsShop.LoadButtonState(ballSkin);
            }
        }

        else if (PlayerPrefsManager.GetCurrentBallSkin() != ballSkin.index) //then use it;
        {
            PlayerPrefsManager.SetCurrentBallSkin(ballSkin.index);
            ballsShop.LoadButtonState(ballSkin);
        }
    }
    public override void OnOpend(params object[] data)
    {
        SoundManager.Instance.PlaySe("Clear");

        challengeName = string.Format("{0}", data[0]);
        BallSkin unlockSkin = (BallSkin)data[1];

        if (unlockSkin != null)
        {
            SaveData.unlockSkins.Add(unlockSkin.index);
            rewardImage.sprite = unlockSkin.sprite;

            noRewardText.SetActive(false);
            rewardImage.gameObject.SetActive(true);
        }
        else
        {
            noRewardText.SetActive(true);
            rewardImage.gameObject.SetActive(false);
        }
    }
Exemple #7
0
    public static List <BallSkin> LoadBallSkins()
    {
        List <BallSkin> result = new List <BallSkin>();

        string query = string.Format(SELECT_TABLE_ALL, "BallSkin");

        Query(query, (reader) => {
            BallSkin skin = new BallSkin
            {
                index       = int.Parse(reader.GetString(0)),
                name        = reader.GetString(1),
                grade       = reader.GetString(2),
                unlockType  = int.Parse(reader.GetString(3)),
                unlockLevel = int.Parse(reader.GetString(4)),
            };

            skin.sprite = Resources.Load <Sprite>("Sprites/Ball/Ball_" + skin.index);

            result.Add(skin);
        });

        return(result);
    }
    private void Start()
    {
        Application.targetFrameRate = 60;

        StateController.Instance.Init();
        StateController.Instance.ChangeState(0);

        Database.Load();
        ballSkins = Database.LoadBallSkins();
        if (SaveData.unlockSkins.Contains(1) == false)
        {
            equipedBallSkin       = ballSkins[0];
            ballSkins[0].isUnlock = true;
            SaveData.unlockSkins.Add(1);
        }

        onewayCount  = GetChallengeCount("OneWayChallenge");
        noguideCount = GetChallengeCount("NoGuideChallenge");

        SoundManager.Instance.PlayBgm(0);

        AdsManager.Instance.ShowBanner();
    }
Exemple #9
0
 void IdentifyTypeOfDisplayAndDisplayUI(int page)
 {
     PenDisplay[] penItems = gameObject.GetComponentsInChildren <PenDisplay>();
     if (penItems.Length != 0)
     {
         Pen pen = penItems[page].pen;
         itemStateButton.GetComponent <ButtonState>().LoadButtonState(pen);
         return;
     }
     BallsDisplay[] ballsItem = gameObject.GetComponentsInChildren <BallsDisplay>();
     if (ballsItem.Length != 0)
     {
         BallSkin ballskin = ballsItem[page].ballskin;
         itemStateButton.GetComponent <ButtonState>().LoadButtonState(ballskin);
         return;
     }
     BGSkinDisplay[] bgSkins = gameObject.GetComponentsInChildren <BGSkinDisplay>();
     if (bgSkins.Length != 0)
     {
         BGSkin bgSkin = bgSkins[page].bgSkin;
         itemStateButton.GetComponent <ButtonState>().LoadButtonState(bgSkin);
         return;
     }
 }
Exemple #10
0
    public static void Load()
    {
        StringBuilder query = new StringBuilder();

        query.AppendFormat(CHECK_TABLE, "SaveData");

        int result = 0;

        // table check
        Query(query.ToString(), (reader) => {
            result = reader.GetInt32(0);
        });

        if (result == 0)
        {
            SaveData.unlockSkins.Add(1);
            return;
        }

        query.Clear();
        query.AppendFormat(SELECT_TABLE_ALL, "SaveData");

        Debug.Log("CREATE TABLE query : " + query);

        Query(query.ToString(), (reader) =>
        {
            SaveData.bestScore    = int.Parse(reader.GetString(0));
            SaveData.oneWayClear  = int.Parse(reader.GetString(1));
            SaveData.noGuideClear = int.Parse(reader.GetString(2));
            SaveData.goods        = int.Parse(reader.GetString(3));
            SaveData.equipSkin    = int.Parse(reader.GetString(4));
            string skins          = reader.GetString(5).Trim();

            if (string.IsNullOrEmpty(skins))
            {
                SaveData.unlockSkins.Add(1);
            }
            else
            {
                var unlock = skins.Split(',');

                for (int i = 0; i < unlock.Length; i++)
                {
                    SaveData.unlockSkins.Add(int.Parse(unlock[i]));
                }
            }

            SoundManager.Instance.muteBgm = bool.Parse(reader.GetString(6));
            SoundManager.Instance.muteSe  = bool.Parse(reader.GetString(7));

            SaveData.infoShield  = bool.Parse(reader.GetString(8));
            SaveData.infoHalf    = bool.Parse(reader.GetString(9));
            SaveData.infoReverse = bool.Parse(reader.GetString(10));
        });

        query.Clear();
        string where = string.Format("SkinIndex = {0};", SaveData.equipSkin);
        query.AppendFormat(SELECT_TABLE_ALL_WHERE, "BallSkin", where);

        Query(query.ToString(), (reader) =>
        {
            BallSkin skin = new BallSkin
            {
                index       = int.Parse(reader.GetString(0)),
                name        = reader.GetString(1),
                grade       = reader.GetString(2),
                unlockType  = int.Parse(reader.GetString(3)),
                unlockLevel = int.Parse(reader.GetString(4)),
            };

            skin.sprite = Resources.Load <Sprite>("Sprites/Ball/Ball_" + skin.index);

            GameManager.Instance.equipedBallSkin = skin;
        });
    }
Exemple #11
0
 public void SetSkin(BallSkin skin)
 {
     Skin = skin;
     UpdateMaterials();
 }