public override void SetStat(Define.WorldObject type, string id)
    {
        Dictionary <string, ContentsData.CharacterStat> statDict = Managers.Data.CharacterStatDict;

        ContentsData.CharacterStat stat = statDict[id];

        Id          = stat.ID;
        MaxHp       = stat.HP;
        Hp          = int.Parse(MaxHp.ToString());
        MaxMp       = stat.MP;
        Mp          = int.Parse(MaxMp.ToString());
        Attack      = stat.Attack;
        Defense     = stat.Defense;
        AttackSpeed = stat.AttackSpeed;
        MoveSpeed   = stat.MoveSpeed;
        AttackRange = stat.AttackRange;

        Level       = stat.Level;
        SubName     = stat.SubName;
        Description = stat.Description;
        STR         = stat.STR;
        AGI         = stat.AGI;
        INT         = stat.INT;
        Exp         = stat.EXP;

        Gold       = 1000;
        CurrentExp = 0;
    }
    public override void Init()
    {
        base.Init();

        if (characterStat == null)
        {
            characterStat = Managers.Game.Player.GetComponent <PlayerController>().Stat;
        }

        Bind <Slider>(typeof(Sliders));

        xpBarSlider = Get <Slider>((int)Sliders.XpBarSlider);
        hpBarSlider = Get <Slider>((int)Sliders.HpBarSlider);
        mpBarSlider = Get <Slider>((int)Sliders.MpBarSlider);

        Bind <Text>(typeof(Texts));

        Text characterNameText = Get <Text>((int)Texts.CharacterNameText);

        characterNameText.text = characterStat.Id;

        Text characterSubNameText = Get <Text>((int)Texts.CharacterSubNameText);

        //characterSubNameText.text = $"Lv{characterStat.Level}  " + characterStat.SubName;
        characterSubNameText.text = $"Lv{characterStat.Level}";

        hpText   = Get <Text>((int)Texts.HPText);
        mpText   = Get <Text>((int)Texts.MPText);
        strText  = Get <Text>((int)Texts.STRText);
        agiText  = Get <Text>((int)Texts.AGIText);
        intText  = Get <Text>((int)Texts.INTText);
        atkText  = Get <Text>((int)Texts.ATKText);
        defText  = Get <Text>((int)Texts.DEFText);
        spdText  = Get <Text>((int)Texts.SPDText);
        goldText = Get <Text>((int)Texts.GoldText);

        Dictionary <string, ContentsData.CharacterStat> statDict = Managers.Data.CharacterStatDict;

        ContentsData.CharacterStat stat = statDict[Managers.Game.Player.name];
        //characterSubNameText.text = stat.description;

        Bind <Button>(typeof(Buttons));
        statButton = Get <Button>((int)Buttons.StatButton);
        BindUIEvent(statButton.gameObject, StatButtonClick, Define.UIEvent.OnPointerClick);

        Bind <Image>(typeof(Images));
        characterStatImage = Get <Image>((int)Images.CharacterStatImage);
        characterStatImage.gameObject.SetActive(false);
    }