using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace BulletHellTemplate
{
///
/// Represents the base characterStatsComponent for a character.
///
[System.Serializable]
public class CharacterStats
{
///
/// The base health points of the character.
///
public float baseHP;
///
/// The base health regeneration rate per second.
///
public float baseHPRegen;
///
/// The base health leech percentage (health gained from damage dealt).
///
public float baseHPLeech;
///
/// The base Mana points of the character.
///
public float baseMP;
///
/// The base Mana regeneration rate per second.
///
public float baseMPRegen;
///
/// The base damage dealt by the character.
///
public float baseDamage;
///
/// The base attack speed of the character.
///
public float baseAttackSpeed;
///
/// The base cooldown reduction percentage.
///
public float baseCooldownReduction;
///
/// The base critical hit rate percentage.
///
public float baseCriticalRate;
///
/// The base critical damage multiplier.
///
public float baseCriticalDamageMultiplier;
///
/// The base defense points of the character.
///
public float baseDefense;
///
/// The base shield points of the character.
///
public float baseShield;
///
/// The base movement speed of the character.
///
public float baseMoveSpeed;
//
/// The base range to collect drops.
///
public float baseCollectRange;
//
/// Max Stats to Choice from;
///
public float baseMaxStats;
//
/// Max Skills to Choice from.
///
public float baseMaxSkills;
///
/// Default constructor.
///
public CharacterStats()
{
}
///
/// Copy constructor that creates a new Singleton of CharacterStats with the same values as the provided characterStatsComponent.
///
/// The CharacterStats Singleton to copy values from.
public CharacterStats(CharacterStats statsToCopy)
{
baseHP = statsToCopy.baseHP;
baseHPRegen = statsToCopy.baseHPRegen;
baseHPLeech = statsToCopy.baseHPLeech;
baseMP = statsToCopy.baseMP;
baseMPRegen = statsToCopy.baseMPRegen;
baseDamage = statsToCopy.baseDamage;
baseAttackSpeed = statsToCopy.baseAttackSpeed;
baseCooldownReduction = statsToCopy.baseCooldownReduction;
baseCriticalRate = statsToCopy.baseCriticalRate;
baseCriticalDamageMultiplier = statsToCopy.baseCriticalDamageMultiplier;
baseDefense = statsToCopy.baseDefense;
baseShield = statsToCopy.baseShield;
baseMoveSpeed = statsToCopy.baseMoveSpeed;
baseCollectRange = statsToCopy.baseCollectRange;
baseMaxStats = statsToCopy.baseMaxStats;
baseMaxSkills = statsToCopy.baseMaxSkills;
}
}
}