Skip to content

2.4.0-RC1

Compare
Choose a tag to compare
@SinoAHpx SinoAHpx released this 02 Mar 13:00
· 96 commits to 2.4 since this release

2.4.0-Release Candidate 1

这个版本更新了很多东西,同时保持部分旧有兼容性,非常推荐更新

从这个版本开始,更新日志将会变得尽可能详细。

修复了什么?

  • Mirai.Net.Data下所有类型都有注释了,甚至包括你看不见也用不到的空构造器。
  • GetModules方法添加了约束
  • 隐藏了AtMessage中无用的Display属性 #19
  • 删除了冗余的以及历史残留的类型

什么改名了?

  • 各种xxMessageReceiver中,NameId等属性被具体地改为例如GroupNameFriendId的形式
  • ModuleScaffold中的SubscribeModule被改为更合理的Raise

全新的处理请求事件的方式 #32 & #31

现在,你可以完全摒弃那堆麻烦的枚举和管理器,只需这样处理请求(不管是好友请求,邀请入群请求还是申请入群请求都是如此):

bot.EventReceived
    .OfType<NewMemberRequestedEvent>()
    .Subscribe(async e =>
{
    
    await e.ApproveAsync();
    //await e.RejectAsync();
    //await e.DismissAsync();
    //await e.DismissAndBlockAsync();
    //await e.DismissAndBlockAsync();
});

发送和构造消息的奇技淫巧

比起上个版本,更进一步地,你现在可以直接调用MessageChainSendToAsync来发送它。并且,就像,你现在可以像1+1那样地构造一条消息链。

bot.MessageReceived.OfType<GroupMessageReceiver>()
    .Subscribe(async receiver =>
    {
        //构造消息链
        MessageChain chain = new MessageChainBuilder().At("114514").Plain("1919810").Build()
        //运算符"+"被重载了
        chain += new ImageMessage { Path = "獣と化した先辈.jpg" };
        chain += chain;
        //发送消息
        await chain.SendToAsync(receiver);
    });