Files
zeling_v2/Assets/_Game/Scripts/Equipment/CharmSO.cs
Joywayer d09bc95c3f Refactor event channels and update layer specifications
- Removed StatusEffectEventChannelSO and its associated meta file.
- Updated CreateEventChannelAssets to handle new shield-related events.
- Added CharmModule for managing charm assets in the DataHub.
- Introduced CharmEventChannelSO for charm equipped/unequipped events.
- Changed layer references from "Ground" to "Platform" in various scripts.
- Updated documentation to reflect changes in layer specifications.
- Created new event assets for ShieldBroken, ShieldRestored, StatusEffectApplied, and StatusEffectExpired.
2026-05-21 11:08:14 +08:00

36 lines
1.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System.Collections.Generic;
using UnityEngine;
namespace BaseGames.Equipment
{
/// <summary>
/// 护符数据 SO架构 09_ProgressionModule §3
/// 资产路径: Assets/ScriptableObjects/Equipment/Charms/Charm_{Name}.asset
/// </summary>
[CreateAssetMenu(menuName = "BaseGames/Equipment/Charm")]
public class CharmSO : ScriptableObject
{
[Header("Identity")]
public string charmId; // 全局唯一 ID如 "Charm_QuickSlash"
public string displayNameKey; // 本地化 Key
[TextArea(2, 4)]
public string descriptionKey;
[Header("Visual")]
public Sprite icon;
public Color glowColor;
[Header("Slot Cost")]
[Range(1, 4)]
public int notchCost; // 占用笔记数1~4
[Header("Effects")]
[SerializeReference]
public List<ICharmEffect> effects = new(); // 多态序列化
[Header("Lore")]
public bool isUnique;
public string unlockHint;
}
}