Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考
 此代码仅为较上一P有所改变的代码
 
【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili

Stat.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[System.Serializable]
public class Stat 
{
    [SerializeField]private int baseValue;
    public List<int> modifiers;
    public int GetValue()
    {
        int finalValue = baseValue;
        //提供一种可以变化伤害的方式
        foreach (int modifier in modifiers)
        {
            finalValue += modifier;
        }
        return finalValue;//采用函数返回值的方式提供数据
    }
    public void AddModifier(int _modifier)
    {
        modifiers.Add(_modifier);
    }
    public void RemoveModifier(int _modifier)
    {
        modifiers.RemoveAt(_modifier);
    }
}
 CharacterStats.cs
 
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CharacterStats : MonoBehaviour
{
    public Stat damage;
    public Stat maxHealth;
    [SerializeField]private int currentHealth;
   
    void Start()
    {
        currentHealth = maxHealth.GetValue();
        
        damage.AddModifier(4);        
    }
    public void TakeDamage(int _damage)
    {
        currentHealth -= _damage;
    }
}


















