mirror of
https://github.com/project-redbud/FunGame-Core.git
synced 2025-12-05 00:06:02 +00:00
添加社团邀请列表
This commit is contained in:
parent
f55fda4c86
commit
9c792ed781
@ -1,4 +1,5 @@
|
||||
using Milimoe.FunGame.Core.Interface.Entity;
|
||||
using Milimoe.FunGame.Core.Library.Constant;
|
||||
|
||||
namespace Milimoe.FunGame.Core.Entity
|
||||
{
|
||||
@ -10,12 +11,19 @@ namespace Milimoe.FunGame.Core.Entity
|
||||
public bool IsNeedApproval { get; set; } = false;
|
||||
public bool IsPublic { get; set; } = false;
|
||||
public double ClubPoins { get; set; } = 0;
|
||||
public User? Master { get; set; }
|
||||
public User Master { get; set; } = General.UnknownUserInstance;
|
||||
public Dictionary<long, User> Admins { get; set; } = [];
|
||||
public Dictionary<long, User> Members { get; set; } = [];
|
||||
public Dictionary<long, User> Applicants { get; set; } = [];
|
||||
public Dictionary<long, User> Invitees { get; set; } = [];
|
||||
public Dictionary<long, DateTime> MemberJoinTime { get; set; } = [];
|
||||
public Dictionary<long, DateTime> ApplicationTime { get; set; } = [];
|
||||
public Dictionary<long, DateTime> InvitedTime { get; set; } = [];
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return $"{Name} [{Prefix}]";
|
||||
}
|
||||
|
||||
public override bool Equals(IBaseEntity? other)
|
||||
{
|
||||
|
||||
@ -73,6 +73,13 @@ namespace Milimoe.FunGame.Core.Library.Common.JsonConverter
|
||||
result.Applicants[id] = new(id);
|
||||
}
|
||||
break;
|
||||
case nameof(Club.Invitees):
|
||||
List<long> invitees = NetworkUtility.JsonDeserialize<List<long>>(ref reader, options) ?? [];
|
||||
foreach (long id in invitees)
|
||||
{
|
||||
result.Invitees[id] = new(id);
|
||||
}
|
||||
break;
|
||||
case nameof(Club.MemberJoinTime):
|
||||
Dictionary<long, DateTime> memberJoinTime = NetworkUtility.JsonDeserialize<Dictionary<long, DateTime>>(ref reader, options) ?? [];
|
||||
foreach (long id in memberJoinTime.Keys)
|
||||
@ -87,6 +94,13 @@ namespace Milimoe.FunGame.Core.Library.Common.JsonConverter
|
||||
result.ApplicationTime[id] = applicationTime[id];
|
||||
}
|
||||
break;
|
||||
case nameof(Club.InvitedTime):
|
||||
Dictionary<long, DateTime> invitedTime = NetworkUtility.JsonDeserialize<Dictionary<long, DateTime>>(ref reader, options) ?? [];
|
||||
foreach (long id in invitedTime.Keys)
|
||||
{
|
||||
result.InvitedTime[id] = invitedTime[id];
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -111,10 +125,14 @@ namespace Milimoe.FunGame.Core.Library.Common.JsonConverter
|
||||
JsonSerializer.Serialize(writer, value.Members.Keys, options);
|
||||
writer.WritePropertyName(nameof(Club.Applicants));
|
||||
JsonSerializer.Serialize(writer, value.Applicants.Keys, options);
|
||||
writer.WritePropertyName(nameof(Club.Invitees));
|
||||
JsonSerializer.Serialize(writer, value.Invitees.Keys, options);
|
||||
writer.WritePropertyName(nameof(Club.MemberJoinTime));
|
||||
JsonSerializer.Serialize(writer, value.MemberJoinTime, options);
|
||||
writer.WritePropertyName(nameof(Club.ApplicationTime));
|
||||
JsonSerializer.Serialize(writer, value.ApplicationTime, options);
|
||||
writer.WritePropertyName(nameof(Club.InvitedTime));
|
||||
JsonSerializer.Serialize(writer, value.InvitedTime, options);
|
||||
|
||||
writer.WriteEndObject();
|
||||
}
|
||||
|
||||
@ -35,7 +35,7 @@ namespace Milimoe.FunGame.Core.Model
|
||||
/// <param name="characters"></param>
|
||||
public void AddTeam(string teamName, IEnumerable<Character> characters)
|
||||
{
|
||||
if (teamName != "" && characters.Any())
|
||||
if (teamName != "" && characters.Any(c => c.HP > 0))
|
||||
{
|
||||
_teams.Add(teamName, new(teamName, characters));
|
||||
}
|
||||
@ -176,7 +176,6 @@ namespace Milimoe.FunGame.Core.Model
|
||||
if (killTeam != null)
|
||||
{
|
||||
List<Character> actives = killTeam.GetActiveCharacters(this);
|
||||
actives.Add(killer);
|
||||
int remainCount = actives.Count;
|
||||
if (remainCount > 0 && MaxRespawnTimes == 0)
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user