Files
bansonic_beta_main/Assets/scripts/dailyTask/taskPool/userTasksPool.cs
T

67 lines
1.5 KiB
C#

using UnityEngine;
using System.Collections.Generic;
[CreateAssetMenu(fileName = "NewUserTasksPool", menuName = "DailyTask/UserTasksPool")]
public class userTasksPool : ScriptableObject
{
[Header("Task Definitions")]
public List<TaskDefinition> tasks = new List<TaskDefinition>();
[System.Serializable]
public class TaskDefinition
{
[Tooltip("Unique identifier for the task")]
public string taskID;
[Tooltip("Description of the task shown to the user")]
[TextArea(2, 4)]
public string description;
[Tooltip("Type of the task logic")]
public TaskType taskType;
[Tooltip("How often the task refreshes")]
public RefreshFrequency refreshFrequency;
[Tooltip("Target value to complete the task (e.g., 100 combo, 3 songs)")]
public float targetValue;
[Tooltip("Type of reward given upon completion")]
public RewardType rewardType;
[Tooltip("Quantity of the reward")]
public int rewardAmount;
[Tooltip("是否加入任务池")]
public bool addToTaskPool = true;
}
public enum TaskType
{
Login,
PlaySong,
FullCombo,
TotalScore,
WatchStory,
UseItem,
ShareGame
}
public enum RewardType
{
player_money,
player_material,
bottleOfEXP,
playerEXP
}
public enum RefreshFrequency
{
OnLogin,
DailyReset,
Never
}
}