server-master/srcs/WingsAPI.Game/Core/ECS/Systems/IMateSystem.cs
2026-02-10 18:21:30 +01:00

19 lines
No EOL
758 B
C#

using System;
using System.Collections.Generic;
using WingsEmu.Game.Entities;
using WingsEmu.Game.Helpers.Damages;
using WingsEmu.Game.Mates;
namespace WingsEmu.Game._ECS.Systems;
public interface IMateSystem
{
IReadOnlyList<IMateEntity> GetAliveMates();
IReadOnlyList<IMateEntity> GetAliveMates(Func<IMateEntity, bool> predicate);
IReadOnlyList<IMateEntity> GetAliveMatesInRange(Position position, short range);
IReadOnlyList<IMateEntity> GetClosestMatesInRange(Position position, short range);
IReadOnlyList<IMateEntity> GetAliveMatesInRange(Position position, short range, Func<IBattleEntity, bool> predicate);
IMateEntity GetMateById(long mateId);
void AddMate(IMateEntity entity);
void RemoveMate(IMateEntity entity);
}