Files
DanhengServer-OpenSource/GameServer/Game/Task/MissionTaskTrigger.cs
Somebody 72ddae8940 [BREAK CHANGE] Feature: Implement the basic task system
- Support for the 2.0&2.1 mission
- The story line is still not working
2024-07-16 14:15:07 +08:00

40 lines
1.2 KiB
C#

using EggLink.DanhengServer.Data;
using EggLink.DanhengServer.Data.Config;
using EggLink.DanhengServer.Data.Excel;
using EggLink.DanhengServer.Game.Player;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace EggLink.DanhengServer.GameServer.Game.Task
{
public class MissionTaskTrigger(PlayerInstance player)
{
public PlayerInstance Player { get; } = player;
public void TriggerMissionTask(int missionId)
{
GameData.SubMissionData.TryGetValue(missionId, out var subMission);
if (subMission != null)
{
TriggerMissionTask(subMission.SubMissionTaskInfo ?? new(), subMission);
}
}
public void TriggerMissionTask(LevelGraphConfigInfo subMissionTaskInfo, SubMissionExcel subMission)
{
foreach (var task in subMissionTaskInfo.OnInitSequece)
{
Player.TaskManager?.LevelTask.TriggerInitAct(task, subMission);
}
foreach (var task in subMissionTaskInfo.OnStartSequece)
{
Player.TaskManager?.LevelTask.TriggerStartAct(task, subMission);
}
}
}
}