MiraiForum

    • Register
    • Login
    • Search
    • Popular
    • Recent
    • Unsolved
    • Tags
    • Groups
    • 友情链接
    1. Home
    2. MrXiaoM
    3. Best
    • Profile
    • Following 9
    • Followers 39
    • Topics 37
    • Posts 864
    • Best 206
    • Controversial 0
    • Groups 5

    Best posts made by MrXiaoM

    • RE: 【每日沙雕图】沙雕小别墅

      -15361adc5d106238.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      -41a138daa320a8d2.jpg
      巧了,我的 girlfriend 也来自 imagination :(

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      -430ddc7a6788a021.jpg
      -55e3de18360ba376.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      QQ图片20230317130635.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      1680534007886.jpeg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      HFFKJ58YXBP`(T%B%$820.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      QQ图片20230505124304.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      `FLJ07KHI~X%5@G3B520_tmb.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      QQ图片20231207205300.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      @Mr-喜

      TJV}V%M4SM`IW_W_X0$A_tmb.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • 发生了一个错误

      XaX
      mirai_error (20240601024811).png

      pid 119231085

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      A_3%6778J(IAJ09NSI`CX.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 如何获取信息链中的元素?

      @zhou2008
      你是不是直接把 MessageChain 显性转换为 At 然后获取 target 了…
      不可能转换得了的,MessageChain 可以被理解为列表,而文字、At、图片等是列表里的元素

      下面这是我从文档里复制来的
      处理富文本消息

      Mirai 不内置富文本消息的处理工具类。MessageChain 实现接口 List<SingleMessage>,一个思路是遍历 list 并判断类型处理:

      for (element : messageChain) {
          if (element instanceof Image) {
              // 处理一个 Image
          }
      }
      

      也可以像数组一样按下标随机访问:

      SingleMessage element = messageChain.get(0);
      if (element instanceof Image) {
          // 处理一个 Image
      }
      

      补:我在java中获取机器人是否被at的代码是这样的,可以参考下:

      boolean isAt = false;
      for (SingleMessage s : event.getMessage()) {
      	if (s instanceof At) {
      		At at = (At) s;
      		if (at.getTarget() == event.getBot().getId()) {
      			isAt = true;
      			break;
      		}
      	}
      }
      if (isAt) {
      	// do sth.
      }
      

      补:刚刚又翻了下文档发觉kt好香啊

      val image: Image? = chain.findIsInstance<Image>()
      
      posted in 开发交流
      MrXiaoM
      MrXiaoM
    • 适用于新人的 mirai 帮助文档【备份】

      已弃用

      该文档现已弃用,新的文档正在编写中,敬请期待
      https://wiki.mrxiaom.top/mirai

      旧文档 Github: MrXiaoM/mirai-docs
      旧文档地址: https://mirai-docs.doomteam.fun/
      一切内容以 Github 为准
      希望论坛字数限制够放得下文档
      如果你想实时收到更新通知,请点击右边第二个 铃铛按钮 来关注本贴

      mirai-docs

      面向初学者 的 mirai 非官方帮助文档

      在本文档中,我将会按照顺序一步一步地教学,就像打怪升级一样

      目前正在编写和整理中,敬请期待

      注: 初学者 指 new miraier,刚接触 mirai 的人

      观前须知

      请先阅读《提问的智慧 (How To Ask Questions The Smart Way)》以确保你在遇到简单的问题时能够 STFW (到网上搜索) 以及 RTFM (读软件给出的帮助手册) 来解决问题而不是去问别人占用别人的时间,如果你的问题能搜索得到,那你得到的回复很可能是别人搜索了然后发你的,

      鲁迅曾经说过:“无端空耗别人的时间其实是无异于谋财害命的。”

      所以在没到网上搜索之前不要提问!不要提问!不要提问!

      在遇到网上搜索/读手册解决不了 (前提是要读过,要实践过确实不行) 再去以正确的方式提问,比如提供尽可能完整的信息,包括但不限于系统版本/所使用的软件或组件版本/进行的详细操作/输出日志或者弹出信息等等,而不是你问在吗,别人回答在,你问问题,别人找你要信息,你发信息,别人觉得信息不够推断不出来你的问题然后再进一步找你要信息…… 直接一步到位把信息提供全面难道不好吗?

      如果你有问题,可以在本仓库 发布 issue (没有 Github 账号?点这里注册)。

      也可以向我的邮箱 coolxiaom95@gmail.com 发送邮件求助,

      或者加我的QQ 2431208142 (我没设加好友验证,申请添加好友之后请直接说明来意和详细描述问题)。

      不管是在哪个渠道联系我,我看到你的消息之后将会在我空闲时尽快回复。

      确认你的水平

      在查阅这份文档之前,请确保你已掌握 kotlin 或者 java 两门语言中的其中一门

      如果你已掌握一门语言并能使用这门语言进行网络操作,很抱歉目前我没有对这方面的研究,你可以去查看官方文档

      如果你是完全不会编程的人类,你只需要查阅用户文档

      如果你不是人类…… 能看得懂简体中文并能理解句子的意思的话大概也可以看得懂吧

      开始吧

      适合不会编程的新手: 用户文档

      如果你还不会如何安装和登录机器人,也请查阅用户文档

      使用 kotlin 或 java 来编写 mirai 衍生软件: 开发文档

      使用其他语言来编写 mirai 衍生软件: 暂无文档,建议查阅官方文档

      在这个文档发布之前,已经有很多前辈编写了 mirai-api-http 或者 onebot-kotlin 的其他语言实现,你可以在 mirai 官方开发文档 找到相应语言的社区SDK以便快速开始开发

      如果你对更新 BlocklyMirai 有兴趣,可以查看 BlocklyMirai 帮助文档

      更新

      不定期更新,如果你有意愿更新文档,PRs welcome

      赞助

      本文档不接受赞助。

      如果你喜欢这个文档并有意资助,开发组比我更需要赞助,请重定向到 【官方公告】关于论坛赞助/资金流向公示/可持续发展等

      计划

      • 开发文档以循循渐进的形式写,从部署到登录到事件到消息等等
      • 不使用社区 SDK 的非 jvm 语言与 mirai-api-http 交互教程。因为社区 SDK 太多了很难讲明白 XD
      • 考虑到 GitBook 日常前端崩溃,所以在本文档基本上完成之后,会在 MiraiForum 技术交流板块发一贴来备份以方便难以访问 Github 的用户查阅
      posted in 技术交流板块
      MrXiaoM
      MrXiaoM
    • RE: W/MCL Addon: iTXTech Soyuz 未安装,Soyuz MCL Handler 特性已禁用

      Soyuz 是 iTXTech 开发的 Websocket API 服务。
      鉴于它可以配合 MCL Addon 进行包管理,它很可能是将来的插件中心所需插件。
      在官方宣布插件中心建成之前 (2021年4月3日起至今未完成),它似乎没有什么用途,不用管。

      posted in BUG反馈
      MrXiaoM
      MrXiaoM
    • RE: 【每日沙雕图】沙雕小别墅

      QQ图片20210825230414.jpg
      QQ图片20210825232934.jpg

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • RE: 请问大佬们有什么屏蔽消息的思路吗

      @xing-c
      因为上面已经有 kotlin 的示例了,这里只提 java 的示例。
      所在环境是插件主类,所以可以用 this.getCoroutineContext() 获取到当前协程,用 bot 实例的协程应该也是可以的。
      Example1 - 使用事件频道注册单个事件

      		eventChannel.subscribeAlways(GroupMessageEvent.class, 
      			this.getCoroutineContext(), 
      			ConcurrencyKind.CONCURRENT, 
      			EventPriority.HIGHEST, 
      			e ->{
      				if(e.getSender().getId() == 114514L) {
      					e.intercept();
      					return;
      				}
      			});
      		
      

      Example2 - 在EventHost內注册事件

      	@EventHandler(priority = EventPriority.HIGHEST)
      	public ListeningStatus onGroupMsg(GroupMessageEvent event) {
      		if(event.getSender().getId() == 114514L) {
      			event.intercept();
      			return ListeningStatus.LISTENING;
      		}
      		return ListeningStatus.LISTENING;
      	}
      

      只要多看文档都能写出来的,建议问前多翻阅文档 ✓

      posted in 开发交流
      MrXiaoM
      MrXiaoM
    • RE: Mirai闪照破解
          @EventHandler
          public void onFriendMessage(FriendMessageEvent event){
              Optional<FlashImage> flashImage = event.getMessage().stream().filter(it -> it instanceof FlashImage).findFirst()
              if (flashImage.isPresent()) {
                  Image image = flashImage.get().getImage();
                  event.getSender().sendMessage(new PlainText("你发送了一张闪照\n").plus(image));
              }
          }
      
      posted in 技术交流板块
      MrXiaoM
      MrXiaoM
    • RE: docker 运行2.16 最终用户使用须知 问题

      https://mirai.mamoe.net/post/26102

      posted in BUG反馈
      MrXiaoM
      MrXiaoM
    • RE: 有一说一,有点担心

      怕什么,经典 rm 分支

      posted in 摸鱼区
      MrXiaoM
      MrXiaoM
    • 1
    • 2
    • 3
    • 4
    • 5
    • 10
    • 11
    • 3 / 11