public void RemoveOldPartyInvites() { for (int i = Invites.Count - 1; i >= 0; i--) { IPartyInvite invite = Invites[i]; if (DateTime.UtcNow.Subtract(invite.InviteTime).TotalMinutes >= 5) { Invites.RemoveAt(i); } } }
public IResult DeclinePartyInvite(IMobileObject performer) { lock (padLock) { for (int i = Invites.Count - 1; i >= 0; i--) { IPartyInvite partyInvite = Invites[i]; if (partyInvite.Invited == performer) { Invites.RemoveAt(i); return(new Result($"You declined {partyInvite.PartyLeader.KeyWords[0]}'s party invite.", true)); } } } return(new Result($"You do not have any current party invites.", true)); }
public IResult AcceptPartyInvite(IMobileObject performer) { lock (padLock) { for (int i = Invites.Count - 1; i >= 0; i--) { IPartyInvite partyInvite = Invites[i]; if (partyInvite.Invited == performer) { partyInvite.Group.AddMember(performer); Invites.RemoveAt(i); Groups.Add(performer, partyInvite.Group); return(new Result($"You join {partyInvite.PartyLeader.KeyWords[0]}'s party.", true)); } } } return(new Result($"You do not have any current party invites.", true)); }