Files
zeling_v2/Assets/Scripts/Quest/ChallengeRoomSO.cs
2026-05-12 15:34:08 +08:00

39 lines
1.3 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;
using UnityEngine;
namespace BaseGames.Challenge
{
/// <summary>
/// 挑战房间定义 SO架构 22_QuestChallengeModule §9
/// 资产路径: Assets/ScriptableObjects/Challenge/CHR_{challengeId}.asset
/// </summary>
[CreateAssetMenu(menuName = "Challenge/ChallengeRoom")]
public class ChallengeRoomSO : ScriptableObject
{
[Header("标识")]
public string challengeId;
public string displayName;
public ChallengeType challengeType;
[Header("波次(非 BossRush")]
public ChallengeEncounterSO[] encounters;
[Header("Boss RushBossRush 类型专用)")]
public BossRushSequenceSO bossRushSequence;
[Header("限制条件")]
public float timeLimit; // 0 = 无时限
public bool requireNoHit;
public int minComboRequired; // 0 = 无要求
[Header("奖励")]
public BaseGames.Quest.RewardSO firstClearReward; // 首次通关奖励
public BaseGames.Quest.RewardSO repeatedReward; // 重复通关奖励
[Header("解锁条件")]
public string[] prerequisiteBossIds; // 需击败的 Boss ID
}
public enum ChallengeType { Survival, TimeTrial, BossRush, NoHit }
}