コード例 #1
0
    public void Init()
    {
        PlayerHeartSystem heartSystem = null;

        if (GameManager.current.loadStats)
        {
            heartSystem = new PlayerHeartSystem(
                (int)characterHealth.GetValue() / 10, currentHealth / 10);
        }
        else
        {
            heartSystem = new PlayerHeartSystem(
                (int)characterHealth.GetValue() / 10, characterHealth.GetValue() / 10);
        }

        foreach (PlayerHearts ph in playerHearts)
        {
            ph.SetHeartSystem(heartSystem);

            if (heartCanvasGroup == null)
            {
                heartCanvasGroup = ph.GetComponent <CanvasGroup>();
            }
        }

        OnStatChange += PlayerStats_OnStatChange;

        OnStatChange(this, EventArgs.Empty);
    }
    public void SetHeartSystem(PlayerHeartSystem heartSystem)
    {
        this.heartSystem = heartSystem;

        List <PlayerHeartSystem.Heart> heartList = heartSystem.GetHeartList();

        for (int i = 0; i < heartList.Count; i++)
        {
            PlayerHeartSystem.Heart heart = heartList[i];
            CreateHeartImage().SetHeartLevel(heart.GetHeartLevel());
        }

        heartSystem.OnDamaged  += HeartSystem_OnDamaged;
        heartSystem.OnHealed   += HeartSystem_OnHealed;
        heartSystem.OnRefresh  += HeartSystem_OnRefresh;
        heartSystem.OnAddHeart += HeartSystem_OnAddHeart;
    }