submodule对gitea不管用,所以直接拉了一份拉格兰
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using Lagrange.Core.Message;
|
||||
using Lagrange.Core.Message.Entity;
|
||||
|
||||
namespace Lagrange.OneBot.Message.Entity;
|
||||
|
||||
[Serializable]
|
||||
public partial class ForwardSegment(string name)
|
||||
{
|
||||
public ForwardSegment() : this("") { }
|
||||
|
||||
[JsonPropertyName("id")] [CQProperty] public string Name { get; set; } = name;
|
||||
}
|
||||
|
||||
[SegmentSubscriber(typeof(MultiMsgEntity), "forward")]
|
||||
public partial class ForwardSegment : SegmentBase
|
||||
{
|
||||
public override void Build(MessageBuilder builder, SegmentBase segment)
|
||||
{
|
||||
if (segment is ForwardSegment forward) builder.Add(new MultiMsgEntity(forward.Name));
|
||||
}
|
||||
|
||||
public override SegmentBase FromEntity(MessageChain chain, IMessageEntity entity)
|
||||
{
|
||||
if (entity is not MultiMsgEntity multiMsg) throw new ArgumentException("Invalid entity type.");
|
||||
|
||||
return new ForwardSegment(multiMsg.ResId ?? "");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user