Skip to content

CharacterStatSO

김광수 edited this page Oct 11, 2023 · 1 revision

< Readme

CharacterStatSO

캐릭터 스탯 정보를 저장할 ScriptableObject

Code Summary

Field

  • maxHp

    • 최대 체력
  • maxMp

    • 최대 마나
  • Hp

    • 현재 체력
  • Mp

    • 현재 마나
  • Attack

    • 공격력
  • Gold

    • 골드

Method

  • Copy()

    • CharacterStatSO의 내용을 복사 한다.
  • GetPercentageHp()

    • 체력을 퍼센트로 리턴
  • GetPercentageMp()

    • 마나를 퍼센트로 리턴

Code

using UnityEngine;

[CreateAssetMenu(fileName = "CharacterStatData", menuName = "Data/StatData", order = 1)]

public class CharacterStatSO : ScriptableObject
{
    public int maxHp;
    public int maxMp;
    public int Hp;
    public int Mp;
    public int Attack;
    public int Gold;
    
    public CharacterStatSO(CharacterStatSO baseStat)
    {
        Copy(baseStat);
    }

    public void Copy(CharacterStatSO baseStat)
    {
        maxHp = baseStat.maxMp;
        maxMp = baseStat.maxMp;
        Hp = baseStat.Hp;
        Mp = baseStat.Mp;
        Attack = baseStat.Attack;
        Gold = baseStat.Gold;
    }
    public float GetPercentageHp()
    {
        return (float)Hp / maxHp;
    }
    public float GetPercentageMp()
    {
        return (float)Mp / maxMp;
    }
}

Clone this wiki locally