public void Initialize(NewPlayerParametor playerParametor) { powor = playerParametor.ReleasedPowor[PlayerData.Instance.GetLevel]; mExperienceTable = playerParametor.ExperienceTable; for (int i = 1; i < mExperienceTable.Length; i++) { mExperienceTable[i] += playerParametor.ExperienceTable[i - 1]; } }
//! 初期化 public void Initialize(NewPlayerParametor playerparametor, Transform player_transform) { level = 0; totalExperience = 0; attackPowor = playerparametor.AttackPoworTable[level]; transform = player_transform; #if UNITY_EDITOR Debug.Log("プレイヤーのレベル " + level); Debug.Log("プレイヤーの経験値 " + totalExperience); Debug.Log("プレイヤーの攻撃力 " + attackPowor); #endif }
/// <summary> /// 距離の線形補完 /// </summary> /// <param name="playerParametor"></param> /// <param name="time">完了までの時間</param> /// <returns></returns> public void ChangeDistance(NewPlayerParametor playerParametor, float time) { var data = PlayerData.Instance; if (distance == playerParametor.CameraDistance[data.GetLevel]) { return; } distance = Mathf.Lerp(distance, playerParametor.CameraDistance[data.GetLevel], Time.deltaTime * time); distance = Mathf.CeilToInt(distance); Debug.Log(distance); if (distance == playerParametor.CameraDistance[data.GetLevel]) { animationTime = 0; } }
/// <summary> /// レベルアップの処理 /// </summary> /// <param name="playerParametor"></param> /// <param name="transform"></param> /// <param name="sizeUpTime">レベルアップ時のスケールアップアニメーションの速度</param> public void LevelUp(NewPlayerParametor playerParametor, Transform transform, float sizeUpTime) { var data = PlayerData.Instance; if (data.GetLevel == playerParametor.MaxLevel) { return; } if (data.GetExperience < mExperienceTable[data.GetLevel]) { return; } data.SetLevel(data.GetLevel + 1); data.SetAttackPowor(playerParametor.AttackPoworTable[data.GetLevel]); powor = playerParametor.ReleasedPowor[data.GetLevel]; transform.DOScale(Vector3.one * playerParametor.SizeTable[data.GetLevel], sizeUpTime); #if UNITY_EDITOR Debug.Log("現在のレベル " + data.GetLevel); Debug.Log("現在の攻撃力 " + playerParametor.AttackPoworTable[data.GetLevel]); #endif }