Beispiel #1
0
 public void OnClickLoadGame()
 {
     if (PlayerDataMgr.isPlayerDataExist())
     {
         SceneLoader.Instance.LoadScene("WorldMap");
     }
 }
Beispiel #2
0
 public void EndOfStageOverCinematic()
 {
     // 바로 WorldMap으로
     StartCoroutine(LoadSceneAsync_Coroutine("WorldMap"));
     //BGMMgr.Instance.FadeOutBGM();
     PlayerDataMgr.Sync_Cache_To_Persis(); // 기기 내에 정보 갱신
 }
Beispiel #3
0
    // Use this for initialization

    private void Awake()
    {
        PlayerDataMgr.AddEventHandler <HeroController>(PlayerDataEvent.PLAYER_HP_CHANGE, HPChange);
        PlayerDataMgr.AddEventHandler <PlayerData>(PlayerDataEvent.EXP_CHANGED, EXPChange);
        PlayerDataMgr.AddEventHandler <PlayerData>(PlayerDataEvent.LEVEL_CHANGED, LevelChange);
        Init();
    }
Beispiel #4
0
 public static void PreloadGameData()
 {
     Debug.Log("Start Preload GameData:" + Time.realtimeSinceStartup);
     SystemDataMgr.LoadSystemData();
     PlayerDataMgr.LoadPlayerData();
     Debug.Log("Preload GameData Finished:" + Time.realtimeSinceStartup);
 }
Beispiel #5
0
    // Use this for initialization
    void Start()
    {
        layerActiveGround = 11;
        layerActiveItem   = 10;
        layerActiveEnemy  = 9;

        destinationPosition = this.transform.position;
        animationManager    = this.GetComponent <AnimationManager>();
        playerSkill         = this.GetComponent <PlayerSkill>();
        playerStatus        = this.GetComponent <PlayerStatus>();
        controller          = this.GetComponent <CharacterController>();

        flinchValue = 100;         //Declare flinch value (if zero it will flinch)
        delayAttack = 100;         //Declare delay 100 sec

        defaultColor = new Color[modelMesh.Count];

        DeadSpawnPoint = GameObject.FindGameObjectWithTag("SpawnHero");
        playerStatus.Init();

        PlayerDataMgr.SendEvent <HeroController>(PlayerDataEvent.PLAYER_HP_CHANGE, this);
        //PlayerDataMgr.SendEvent<PlayerData>(PlayerDataEvent.LEVEL_CHANGED,PlayerDataMgr.Instance.playerData);
        PlayerDataMgr.Instance.playerData.AddExp(0);
        SetDefualtColor();
        UIManager.AddEventHandler(UIEventType.ON_JOYSTICK_ATTACK, Attack);
    }
    // Use this for initialization
    private void Start()
    {
        var playerData = PlayerDataMgr.GetPlayerData();

        playerData.Level++;

        PlayerDataMgr.SavePlayerData();
    }
Beispiel #7
0
    // PlayerData를 불러오고 저장하는 예시입니다.
    public void PlayerData_SaveNLoadExample()
    {
        // PlayerData_SO를 바꾼후
        PlayerDataMgr.playerData_SO.ChessPieces[0].name = "원동현";

        // 꼭 Sync를 해주세요!
        PlayerDataMgr.Sync_Cache_To_Persis();
    }
Beispiel #8
0
        private void StarUpCard()
        {
            if (cardData.star >= PlayerDataMgr.GetCardMaxStar(gunCardRes.rarity))
            {
                return;
            }

            Global.gApp.gUiMgr.OpenPanel(Wndid.GunStarUpUI, gunCardRes);
            //TouchClose();
        }
Beispiel #9
0
    public void EndOfStageClearCinematic()
    {
        int prevStageProgress = PlayerDataMgr.playerData_SO.stageProgress;

        PlayerDataMgr.playerData_SO.stageProgress = Mathf.Max(stageIdx, PlayerDataMgr.playerData_SO.stageProgress);

        if (prevStageProgress < PlayerDataMgr.playerData_SO.stageProgress)
        {
            if (prevStageProgress == 0)
            {
                PlayerDataMgr.playerData_SO.gold += 1000;
            }
            else if (prevStageProgress == 1)
            {
                PlayerDataMgr.playerData_SO.gold += 1200;
            }
            else if (prevStageProgress == 2)
            {
                PlayerDataMgr.playerData_SO.gold += 1400;
            }
            else if (prevStageProgress == 3)
            {
                PlayerDataMgr.playerData_SO.gold += 1600;
            }
            else if (prevStageProgress == 4)
            {
                PlayerDataMgr.playerData_SO.gold += 1800;
            }
            else if (prevStageProgress == 5)
            {
                PlayerDataMgr.playerData_SO.gold += 2000;
            }
        }



        PlayerDataMgr.Sync_Cache_To_Persis(); // 기기 내에 정보 갱신

        // Scene Load Start
        if (stageIdx == 6)
        {
            // 엔딩씬으로
            StartCoroutine(LoadSceneAsync_Coroutine("Ending"));
        }
        else
        {
            // Shop으로
            StartCoroutine(LoadSceneAsync_Coroutine("Shop"));
        }
    }
Beispiel #10
0
    public void OnClickRetry()
    {
        Time.timeScale = 1f;

        if (FindObjectOfType <WillBoostBtn>().isUsed)
        {
            PlayerDataMgr.playerData_SO.willItemCount = 1;
        }
        if (FindObjectOfType <ManaBoostBtn>().isUsed)
        {
            PlayerDataMgr.playerData_SO.manaItemCount = 1;
        }

        PlayerDataMgr.Sync_Cache_To_Persis();

        SceneLoader.Instance.LoadScene("WorldMap");
    }
Beispiel #11
0
        public float GetAtk(int _level, int _star)
        {
            var cardRes = TableMgr.singleton.GunCardTable.GetItemByID(cardID);

            if (cardRes == null)
            {
                return(0);
            }

            var atk = cardRes.atk * Mathf.Pow((1 + TableMgr.singleton.ValueTable.card_levelup_dpsrate),
                                              (_level - 1));

            //Debug.Log("atk " + atk);
            atk = atk * Mathf.Pow((1 + TableMgr.singleton.ValueTable.card_star_dpsrate),
                                  (_star - PlayerDataMgr.GetCardInitStar(cardRes.rarity)));

            return(atk);
        }
Beispiel #12
0
    public void OnClick_ReturnBtn()
    {
        PlayerDataMgr.Sync_Persis_To_Cache();
        SFXMgr.Instance.SetSFXbyIndex(12);
        SFXMgr.Instance.PlaySFX();

        FindObjectOfType <GoldText>().SetGoldText();
        for (int i = 0; i < 4; i++)
        {
            pieceUpgrade[i].ResetUI();
            if (i < 3)
            {
                skillUpgrade[i].ResetUI();
            }
            if (i < 2)
            {
                itemUpgrade[i].ResetUI();
            }
        }
    }
Beispiel #13
0
    void Start()
    {
        if (PlayerDataMgr.isPlayerDataExist())    //기존 데이터가 존재한다면
        {
            PlayerDataMgr.Sync_Persis_To_Cache(); //경로에서 데이터 조달

            // 스테이지 깬게 없으면 이어하기버튼은 비활
            if (PlayerDataMgr.playerData_SO.stageProgress == 0)
            {
                loadGameBtn.interactable = false;
            }
            else
            {
                loadGameBtn.interactable = true;
            }
        }
        else
        {
            PlayerDataMgr.Init_PlayerData(); // 새로운 플레이어 데이터 초기화
            loadGameBtn.interactable = false;
        }
    }
Beispiel #14
0
 public void AddOrRemoveGold(int amount)
 {
     PlayerDataMgr.playerData_SO.gold = (int)Mathf.Clamp(PlayerDataMgr.playerData_SO.gold + amount, 0f, float.MaxValue);
     goldText.text = PlayerDataMgr.playerData_SO.gold.ToString();
     PlayerDataMgr.Sync_Cache_To_Persis();
 }
Beispiel #15
0
 private void OnDestroy()
 {
     PlayerDataMgr.RemoveEventHandler <HeroController>(PlayerDataEvent.PLAYER_HP_CHANGE, HPChange);
     PlayerDataMgr.RemoveEventHandler <PlayerData>(PlayerDataEvent.EXP_CHANGED, EXPChange);
     PlayerDataMgr.RemoveEventHandler <PlayerData>(PlayerDataEvent.LEVEL_CHANGED, LevelChange);
 }
Beispiel #16
0
 void Start()
 {
     // 正常使用时观察者和被观察者都不应当是直接New
     bat = new BattleSystem();
     pd  = new PlayerDataMgr();
 }
Beispiel #17
0
 public static void ClearAllData()
 {
     PlayerDataMgr.CreatePlayerData();
     SystemDataMgr.CreateSystemData();
     Debug.LogError("ClearAllSaveData!!");
 }
Beispiel #18
0
 // 개발중에만 사용할 함수입니다.
 public void Init_PlayerData()
 {
     PlayerDataMgr.Init_PlayerData();
 }
Beispiel #19
0
 public static void Update()
 {
     PlayerDataMgr.Update();
 }
Beispiel #20
0
 // 개발중에만 사용할 함수입니다.
 public void PlayerData_C_To_P()
 {
     PlayerDataMgr.Sync_Cache_To_Persis();
 }
Beispiel #21
0
 // 개발중에만 사용할 함수입니다.
 public void PlayerData_P_To_C()
 {
     PlayerDataMgr.Sync_Persis_To_Cache();
 }
Beispiel #22
0
 public void LoadSceneAsync(string sceneName)
 {
     PlayerDataMgr.Sync_Cache_To_Persis(); // 기기 내에 정보 갱신
     SceneLoader.Instance.LoadScene("WorldMap");
     //tartCoroutine(LoadSceneAsync_Coroutine(sceneName));
 }
Beispiel #23
0
 void OnApplicationQuit()
 {
     PlayerDataMgr.SavePlayerData();
 }
Beispiel #24
0
 public void OnClickNewGame()
 {
     PlayerDataMgr.Init_PlayerData(); //initial playerdata를 지정경로에 만들고
     SceneLoader.Instance.LoadScene("Prologue");
 }
Beispiel #25
0
        private void ShowCardInfo()
        {
            NameTxt.text.text    = LanguageMgr.GetText(gunCardRes.tid_name);;
            RarityTxt.text.text  = TableMgr.singleton.ValueTable.GetQualityName(gunCardRes.rarity);
            IconBtn.image.sprite = Resources.Load(gunCardRes.icon, typeof(Sprite)) as Sprite;
            Frame.image.sprite   = Resources.Load(TableMgr.singleton.ValueTable.GetCardQualityFrame(gunCardRes.rarity),
                                                  typeof(Sprite)) as Sprite;

            var gunTypeRes = TableMgr.singleton.GunTypeTable.GetItemByID(gunCardRes.gunType);

            if (gunTypeRes == null)
            {
                return;
            }

            TypeTxt.text.text     = LanguageMgr.GetText(gunTypeRes.tid_type);
            TypeIcon.image.sprite = Resources.Load(gunTypeRes.icon, typeof(Sprite)) as Sprite;

            cardData = PlayerDataMgr.singleton.GetGunCardData(gunCardRes.id);
            if (cardData == null)
            {
                return;
            }

            ChipCount.text.text = cardData.count.ToString();

            var gunStarRes = TableMgr.singleton.CardStarTable.GetItemByID(cardData.star);

            if (gunStarRes == null)
            {
                return;
            }

            if (cardData.level >= gunStarRes.maxLevel)
            {
                LevelTxt.text.text = string.Format("Lv.{0}(Max)", cardData.level);
            }
            else
            {
                LevelTxt.text.text = string.Format("Lv.{0}/{1}", cardData.level, gunStarRes.maxLevel);
            }
            if (cardData.level <= 1)
            {
                ResetBtn.gameObject.SetActive(false);
            }
            else
            {
                ResetBtn.gameObject.SetActive(true);
            }

            for (int i = 0; i < starList.Count; ++i)
            {
                if (i < gunStarRes.star)
                {
                    starList[i].SetActive(true);
                }
                else
                {
                    starList[i].SetActive(false);
                }
            }

            var maxStar = PlayerDataMgr.GetCardMaxStarCount(gunCardRes.rarity, gunStarRes.starRarity);

            for (int i = 0; i < starFrameList.Count; ++i)
            {
                if (i < maxStar)
                {
                    starFrameList[i].SetActive(true);
                }
                else
                {
                    starFrameList[i].SetActive(false);
                }
            }

            if (cardData.star >= PlayerDataMgr.GetCardMaxStar(gunCardRes.rarity))
            {
                StarUpBtn.gameObject.SetActive(false);
            }
            else
            {
                StarUpBtn.gameObject.SetActive(true);
                if (PlayerDataMgr.singleton.CanCardStarUp(gunCardRes.id))
                {
                    RedPoint.gameObject.SetActive(true);
                }
                else
                {
                    RedPoint.gameObject.SetActive(false);
                }
            }

            CurAtk.text.text = ((int)cardData.GetAtk()).ToString();
            //NextAtk.text.text = cardData.GetAtk(cardData.level + 1, cardData.star).ToString();
            CurAtkSpeed.text.text = cardData.GetAtkSpeed().ToString();
            //NextAtkSpeed.text.text = cardData.GetAtkSpeed(cardData.level + 1, cardData.star).ToString();

            ProductionBonus.text.text = cardData.GetCampRewardFactor().ToString();
            FirePower.text.text       = (cardData.DPS() / TableMgr.singleton.ValueTable.combat_capability).ToString("f0");

            var fuseSkillRes = TableMgr.singleton.FuseGunSkillTable.GetItemByID(cardData.fuseSkillID);

            if (fuseSkillRes == null)
            {
                return;
            }

            FuseSkillName.text.text  = LanguageMgr.GetText(fuseSkillRes.tid_name);
            FuseSkillLevel.text.text = string.Format("Lv.{0}", fuseSkillRes.level);

            var campSkillRes = TableMgr.singleton.CampGunSkillTable.GetItemByID(cardData.campSkillID);

            if (campSkillRes == null)
            {
                return;
            }

            CampSkillName.text.text  = LanguageMgr.GetText(campSkillRes.tid_name);
            CampSkillLevel.text.text = string.Format("Lv.{0}", campSkillRes.level);

            LvUpCost.text.text = PlayerDataMgr.singleton.GetCardLvUpCost(cardData.level + 1).ToSymbolString();
            var offset = -(PTUtil.CalculateLengthOfText(LvUpCost.text.text, LvUpCost.text)) / 2;

            if (offset < -80)
            {
                offset = -80;
            }
            GoldIcon.rectTransform.localPosition = new Vector3(offset, 0.0f, 0.0f);
        }