Files
bansonic_beta_main/Assets/songsDatabase/SongDlcContentSO.cs
T
2026-06-25 11:48:56 +08:00

51 lines
1.3 KiB
C#

using System;
using System.Collections.Generic;
using UnityEngine;
[Serializable]
public class SongDlcChartOverrideEntry
{
public int difficulty;
public TextAsset chartFile;
}
[CreateAssetMenu(fileName = "SongDlcContent_", menuName = "EaseOut/Song DLC Content")]
public class SongDlcContentSO : ScriptableObject
{
[Header("Identity")]
public string contentId;
public string sourceDlcId;
public int songId;
public string songName;
[Header("Song Pack")]
public dlcData ownerDlc;
[Header("Illustrations")]
public Sprite illustration;
public Sprite backgroudPIC;
public Sprite fullscreen_songPicture;
public Sprite card_profileImage;
public Sprite right_pic_bottom_image;
public Sprite right_pic_top_image;
[Header("Audio")]
public AudioClip audioFile;
public AudioClip audio_previewAudio;
public AudioClip settlementMusic;
[Header("Charts")]
public List<SongDlcChartOverrideEntry> chartOverrides = new List<SongDlcChartOverrideEntry>();
public string GetResolvedContentId()
{
if (!string.IsNullOrWhiteSpace(contentId))
{
return contentId.Trim();
}
string safeName = string.IsNullOrWhiteSpace(name) ? "song_dlc_content" : name.Trim();
return "song_" + songId + "_" + safeName;
}
}