Esempio n. 1
0
    public void LoadGameData()
    {
        string filePath = Application.persistentDataPath + "/" + GameDataFileName;

        Debug.Log(filePath);
        if (File.Exists(filePath))
        {
            string FromJsonData = File.ReadAllText(filePath);
            _gameData = JsonUtility.FromJson <PlayerStats.Player>(FromJsonData);
        }
        else
        {
            _gameData = new PlayerStats.Player();
        }
    }
Esempio n. 2
0
    public void PlayerSetting(bool isMe, SessionId index, string nickName, bool isAI = false)
    {
        this.isMe     = isMe;
        this.index    = index;
        this.nickName = nickName;
        this.isAI     = isAI;

        if (this.isMe)
        {
            //Anim = CharactersPrefab[stats.nowCharacter].GetComponent<Animator>();

            // 여기다가 자기 자신 캐릭터에 따라 캐릭터 레벨에 따라 스탯 변경되는거 넣기
            // ...
            foreach (var prefab in CharactersPrefab)
            {
                prefab.SetActive(false);
            }
            //CharactersPrefab[stats.nowCharacter].SetActive(true);
            cameraFuncs = characterCamera.GetComponent <CameraFuncs>();
            stats       = (PlayerStats.Player)BackEndServerManager.instance.myInfo.Copy();

            //Debug.Log("현재 캐릭터들 개수 : " + stats.charactersLevel[stats.nowCharacter]);
            //Debug.Log("현재 캐릭터 : " + stats.nowCharacter);

            //if (stats.charactersLevel[stats.nowCharacter] == 1)
            //{
            //    // 여기 수정 ...
            //    //stats.MaxHp = stats.pMaxHp[stats.nowCharacter];
            //    //stats.Stamina = stats.pStamina[stats.nowCharacter];
            //    //stats.StaminaM = stats.pStaminaM[stats.nowCharacter];
            //    //stats.Damage = stats.pDamage[stats.nowCharacter];
            //    //stats.Penetration = stats.pPenetration[stats.nowCharacter];
            //}
            //else if (stats.charactersLevel[stats.nowCharacter] >= 2)
            //{
            //    // 여기 수정 ...
            //    //stats.MaxHp = stats.pMaxHp[stats.nowCharacter] * (stats.charactersLevel[stats.nowCharacter] * 0.6f);
            //    //stats.Stamina = stats.pStamina[stats.nowCharacter] * (stats.charactersLevel[stats.nowCharacter] * 0.6f);
            //    //stats.StaminaM = stats.pStaminaM[stats.nowCharacter] * (stats.charactersLevel[stats.nowCharacter] * 0.6f);
            //    //stats.Damage = stats.pDamage[stats.nowCharacter] * (stats.charactersLevel[stats.nowCharacter] * 0.6f);
            //    //stats.Penetration = stats.pPenetration[stats.nowCharacter] * (stats.charactersLevel[stats.nowCharacter] * 0.6f);
            //}

            State = PlayerCurState.IDLE;

            Direction = Direction.NONE;
            //StartCoroutine(CR_StaminaHeal());

            transform.position = WorldPackage.instance.startingPoint[0].position;
            transform.rotation = WorldPackage.instance.startingPoint[0].rotation;
        }
        else
        {
            transform.position = WorldPackage.instance.startingPoint[1].position;
            transform.rotation = WorldPackage.instance.startingPoint[1].rotation;

            if (isAI)
            {
                int charKind = Random.Range((int)CharacterKind.기사, (int)CharacterKind.MAX);

                CharactersPrefab[charKind].SetActive(true);

                stats.MaxHp                   = stats.CurHp = BackEndServerManager.instance.myInfo.pMaxHp[charKind];
                stats.Stamina                 = BackEndServerManager.instance.myInfo.pStamina[charKind];
                stats.ReductionStamina        = BackEndServerManager.instance.myInfo.pReductionStamina[charKind];
                stats.WeakAttackDamage        = BackEndServerManager.instance.myInfo.pWeakAttackDamage[charKind];
                stats.WeakAttackStun          = BackEndServerManager.instance.myInfo.pWeakAttackStun[charKind];
                stats.WeakAttackPenetration   = BackEndServerManager.instance.myInfo.pWeakAttackPenetration[charKind];
                stats.StrongAttackDamage      = BackEndServerManager.instance.myInfo.pStrongAttackDamage[charKind];
                stats.StrongAttackStun        = BackEndServerManager.instance.myInfo.pStrongAttackStun[charKind];
                stats.StrongAttackPenetration = BackEndServerManager.instance.myInfo.pStrongAttackPenetration[charKind];
                stats.DefeneseReceivingDamage = BackEndServerManager.instance.myInfo.pDefenseReceivingDamage[charKind];
                stats.DefeneseReductionStun   = BackEndServerManager.instance.myInfo.pDefenseReductionStun[charKind];
                stats.nowCharacter            = charKind;
                Anim = CharactersPrefab[charKind].GetComponent <Animator>();

                gameObject.AddComponent <AIScript>();
            }
        }

        isLive = true;
    }