| 1234567891011121314151617181920 |
- using UnityEngine;
- public abstract class BallEffectDefinition : ScriptableObject
- {
- [SerializeField] private BallEffectType effectType;
- [SerializeField] private Material overlayMaterial;
- public BallEffectType EffectType => effectType;
- public Material OverlayMaterial => overlayMaterial;
- protected void SetEffectType(BallEffectType type) => effectType = type;
- protected void SetOverlayMaterial(Material material) => overlayMaterial = material;
- /// <summary>Copy the base fields (EffectType, OverlayMaterial) from another definition. Used by UpgradeManager when creating runtime copies.</summary>
- public void CopyBaseFrom(BallEffectDefinition source)
- {
- effectType = source.effectType;
- overlayMaterial = source.overlayMaterial;
- }
- }
|