30 lines
No EOL
988 B
C#
30 lines
No EOL
988 B
C#
using System;
|
|
using WingsAPI.Packets.Enums.Act4;
|
|
using WingsEmu.Game.Act4;
|
|
using WingsEmu.Game.Entities;
|
|
using WingsEmu.Packets.Enums;
|
|
|
|
namespace WingsEmu.Game.Managers;
|
|
|
|
public interface IAct4Manager
|
|
{
|
|
bool FactionPointsLocked { get; }
|
|
void AddFactionPoints(FactionType factionType, int amount);
|
|
|
|
void ResetFactionPoints(FactionType factionType);
|
|
|
|
void RegisterMukraju(DateTime current, IMonsterEntity mukraju, FactionType factionType);
|
|
|
|
(DateTime deleteTime, IMonsterEntity mukraju, FactionType mukrajuFactionType) GetMukraju();
|
|
|
|
IMonsterEntity UnregisterMukraju();
|
|
|
|
FactionType MukrajuFaction();
|
|
|
|
FactionType GetTriumphantFaction();
|
|
|
|
Act4Status GetStatus();
|
|
}
|
|
|
|
public sealed record Act4Status(byte AngelPointsPercentage, byte DemonPointsPercentage, TimeSpan TimeBeforeReset, FactionType RelevantFaction, Act4FactionStateType FactionStateType,
|
|
TimeSpan CurrentTimeBeforeMukrajuDespawn, TimeSpan TimeBeforeMukrajuDespawn, DungeonType DungeonType); |