65 lines
2.5 KiB
C#
65 lines
2.5 KiB
C#
|
|
using System.Collections.Generic;
|
||
|
|
|
||
|
|
namespace EerieVillage.Skills
|
||
|
|
{
|
||
|
|
/// <summary>
|
||
|
|
/// 통합 플레이어 스탯. 패시브 보정이 모두 이 객체에 누적.
|
||
|
|
/// ActiveSkillRuntime의 EffectiveCooldown·EffectiveDamage 산출 입력.
|
||
|
|
/// BT12-Dev v1 §2-3 정합.
|
||
|
|
/// </summary>
|
||
|
|
public class PlayerStats
|
||
|
|
{
|
||
|
|
/// <summary>전역 싱글톤 참조 (PlayerSkillInventory가 갱신). Phase 2-D 정식 통합 시 DI 전환 예정.</summary>
|
||
|
|
public static PlayerStats Current = new PlayerStats();
|
||
|
|
|
||
|
|
/// <summary>대미지 배율 — P01 봉황격·P02~P05 속성 강화</summary>
|
||
|
|
public float DamageMultiplier = 1.0f;
|
||
|
|
|
||
|
|
/// <summary>쿨다운 배율 — P06 연사술 (0.8 = 20% 단축). EffectiveCooldown = BaseCooldown * CooldownMultiplier</summary>
|
||
|
|
public float CooldownMultiplier = 1.0f;
|
||
|
|
|
||
|
|
/// <summary>광역 배율 — P07 광역확장</summary>
|
||
|
|
public float AreaMultiplier = 1.0f;
|
||
|
|
|
||
|
|
/// <summary>추가 투사체 수 — P08 투사체증폭</summary>
|
||
|
|
public int ExtraProjectiles = 0;
|
||
|
|
|
||
|
|
/// <summary>크리티컬 확률 — P09</summary>
|
||
|
|
public float CritChance = 0f;
|
||
|
|
|
||
|
|
/// <summary>크리티컬 대미지 배율 — P10</summary>
|
||
|
|
public float CritDamage = 1.5f;
|
||
|
|
|
||
|
|
/// <summary>추가 최대 하트 수 — P12·P13</summary>
|
||
|
|
public int ExtraMaxHearts = 0;
|
||
|
|
|
||
|
|
/// <summary>피해 감소율 — P14 부적방패</summary>
|
||
|
|
public float DamageReduction = 0f;
|
||
|
|
|
||
|
|
/// <summary>회피 확률 — P15 회피술</summary>
|
||
|
|
public float EvasionChance = 0f;
|
||
|
|
|
||
|
|
/// <summary>i-frame 연장 시간 (초) — P15</summary>
|
||
|
|
public float IFrameExtend = 0f;
|
||
|
|
|
||
|
|
/// <summary>이동속도 배율 — P18 질풍보</summary>
|
||
|
|
public float MoveSpeedMultiplier = 1.0f;
|
||
|
|
|
||
|
|
/// <summary>경험치 배율 — P19 선견지명</summary>
|
||
|
|
public float XPMultiplier = 1.0f;
|
||
|
|
|
||
|
|
/// <summary>보물 발견 보너스 — P20 재물복</summary>
|
||
|
|
public float TreasureFindBonus = 0f;
|
||
|
|
|
||
|
|
/// <summary>속성별 대미지 배율 (AttributeTag → float)</summary>
|
||
|
|
public Dictionary<AttributeTag, float> AttributeMultiplier = new Dictionary<AttributeTag, float>
|
||
|
|
{
|
||
|
|
{ AttributeTag.Physical, 1.0f },
|
||
|
|
{ AttributeTag.Fire, 1.0f },
|
||
|
|
{ AttributeTag.Frost, 1.0f },
|
||
|
|
{ AttributeTag.Lightning, 1.0f },
|
||
|
|
{ AttributeTag.Dark, 1.0f }
|
||
|
|
};
|
||
|
|
}
|
||
|
|
}
|