public async ValueTask ForceReport(GroupMessageEventArgs eventArgs) { var groupId = eventArgs.SourceGroup.Id; var message = new MessageBody(); var sender = eventArgs.SenderInfo; message.Add(SegmentBuilder.At(sender.UserId)); PcrReservationManager.Dequeue(groupId); var alluser = PcrReservationManager.PeekAll(groupId); var first = alluser.FirstOrDefault(); message.Add("嗯!我就当小伙伴出完刀了~"); if (first != null) { message.Add("\n"); message.Add(SegmentBuilder.At(first.UserId)); if (first.IsOnTree) { message.Add("你还在树上挂着!"); } else { message.Add("轮到您出刀了呢,出刀结束记得回复【报刀】!"); } } message.AddRange(GetWaitUserMessage(alluser)); await eventArgs.Reply(message); }
public async ValueTask Report(GroupMessageEventArgs eventArgs) { var sender = eventArgs.SenderInfo; var groupId = eventArgs.SourceGroup.Id; var message = new MessageBody(); message.Add(SegmentBuilder.At(sender.UserId)); var first = PcrReservationManager.Peek(groupId); if (first == null) { await eventArgs.Reply("你没约!"); return; } if (sender.UserId != first.UserId) { var target = PcrReservationManager.SetCancel(groupId, sender.UserId); if (target == null) { //出刀队列没有他 message.Add("好像没有您的预约记录。"); } else { message.Add("好的已经记录您提前出完刀啦~"); } } else { PcrReservationManager.Dequeue(groupId); message.Add("(๑•̀ㅂ•́)و✧辛苦啦~"); } var alluser = PcrReservationManager.PeekAll(groupId); first = alluser.FirstOrDefault(); if (first != null) { message.Add("\n"); message.Add(SegmentBuilder.At(first.UserId)); if (first.IsOnTree) { message.Add("你还在树上挂着!"); } else { message.Add("轮到您出刀了呢,出刀结束记得回复【报刀】!"); } } message.AddRange(GetWaitUserMessage(alluser)); await eventArgs.Reply(message); }