1. 首页 > 三国故事 >

(项目开源)如何写一个IDEA聊天插件了?

项目开源地址:github.com/anlingyi/xe...

前言

这个项目是2020年5月开始的,当时工作不忙,有很多时间学习。 从那时起,我就学习了网络框架Netty。 我通常喜欢以项目驱动的方式学习。 既然是网络框架研究,那么项目肯定是和通信相关的。 首先想到的就是写一个聊天程序。

写一个聊天网站?

决不。 其实我之前已经写过一个网页版的聊天室了,不想再写一个网页版的聊天项目了。

写一个客户端聊天程序怎么样?

单纯写一个C端聊天程序好像不太有趣,那我还是算了吧。

是否有“重病”?

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

嗯……你真是个聪明的小家伙。

当时我就想,如果我能在IDEA里和其他朋友聊天不是很有趣吗?

于是,我决定写一个IDEA聊天插件

我想在创作过程中学习Netty

2020年5月底,我基本学会了如何使用Netty实现一个简单的聊天程序。 这时候插件已经基本成型了。

找人利用并测试一下?

脑海里立刻浮现出一个“网友”的名字,我就认定是你了! ——救救主人吧。

三国杀移动版聊天字体颜色_三国杀移动版打字颜色_三国杀聊天字体颜色

师傅可以说是钓鱼高手。 这么说吧,他就是那种“在鱼塘里度过,写代码”的人。 他非常适合我的插件。 我立即将插件打包并发送给他。

三国杀移动版聊天字体颜色_三国杀移动版打字颜色_三国杀聊天字体颜色

” 傅老爷子也道:“? 没有说什么。 我告诉他这是一个新的钓鱼插件。 他非常兴奋。 他立即关闭了xxx网页,立即打开了IDEA。 插件安装一气呵成。 。

系统提示:福爷已进入鱼池!

傅大师非常惊讶。 我们可以在 IDEA 中聊天吗? 你是怎么做到的?

我告诉他我正在学习 Netty,想先练习一下。

帮助大师,称他为专家! 如果你想钓鱼,就钓鱼吧。 为什么要学习Netty?

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

误入歧途

Netty没学好,掉进了Swing的坑。

第一个版本的聊天功能实现后,为了减少聊天被发现的概率,我添加了一个模式开关,可以切换到“浑水摸鱼”模式。 该模式会将聊天内容的字体颜色设置为IDEA背景色,同时在聊天内容的左侧添加新消息红点提醒。 如果您想查看具体的消息内容,可以点击消息内容并拖动,即可显示具体内容。

我把新版本打包发给付师傅了。 傅老爷子用了之后,就觉得这东西没什么用。 他说他钓鱼一向光明正大,不需要这个东西!

我:“???他是大师!”

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

后来我突然突发奇想:如果我能在IDEA中在线下棋该多有趣啊?

匆忙!

第一个游戏:双陆棋

说实话,Java中的Swing确实很难用。 第一次写五子棋花了很长时间,但是效果确实不错。 我立即将插件打包并发送给付大师。

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

付师傅:“你周末钓鱼的时候有‘重病’吗?”

我:“那我工作日就回来!”

这家伙周末不会来鱼塘钓鱼的。 他是一个很有“原则”的人。

终于到了星期一,我不需要提醒他。 傅师傅已经在鱼塘里等我多时了。

福爷:“你钓鱼迟到了?”

我:“想玩一场精彩刺激的五子棋游戏吗?”

傅师傅:“冲锋!”

游戏结束:菜鸟安灵逸获胜!

傅老爷子从来没有下过棋,所以很生气。

付大师:“你写的什么垃圾游戏?你能玩得好吗?”

我:”...”

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

自从傅老师下棋输给我之后,他就很少在网上和我下棋了。 但如果没有人和我在线下棋,那么这个五子棋就只是一个摆设,因为我只实现了在线下棋。 无法从单台机器下载它。 。 。

从2020年7月开始到2021年,这段时间工作确实比较忙,插件也更新不多。

重构

从2021年8月开始,我开始重构这个项目,提高了一些功能的可扩展性,并对通信进行了加密。 重构之后,我开始考虑实现一款五子棋单机游戏(期间还写了一个“IDEA防沉迷”功能)。

如果你想写单机,你就必须写AI。 AI 不是像我这样的“CRUD Boy”想写就能写的东西。 没办法,我只能冒着“秃头”的危险去学。 看了很多资料,熬夜,终于写了一个入门级的五子棋AI。 这个AI写得真好,用户体验“太好了”! 立即将插件打包并发送给付大师。

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

傅大师又体验了一遍:“你的AI还挺强大的!”

我:“有没有可能你五子棋打得太厉害了?”

傅大师从来没有玩过这样的五子棋AI。 不过后来我看了很多资料,对五子棋AI做了很多优化。 从此以后,我就真的玩不下去了。

第二款游戏:斗地主

我一开始不想写斗地主,因为我不知道怎么斗斗地主,连规则都不知道。 我想写《三个王国》。 毕竟三国比斗地主有趣多了。

但仔细一想,实行三国实在是太难了。 我对 Swing 不是很熟悉。 首先编写一个规则更简单的纸牌游戏怎么样? 经过深思熟虑,我决定写一篇关于斗地主的文章。

今年端午三天假期,我在出租屋里住了三天,写了第一版斗地主。 端午节那天,我和奶奶进行了视频通话。 那时的我还沉浸在编码的“痛苦”之中! 连接后...

奶奶:“过节怎么办?你怎么一脸不高兴的样子?”

我:“不,我很高兴!”

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

其实我当时真的很不开心。 当我写斗地主的时候,我就已经被Swing折磨到了“生不如死”的地步。

再次,之前掘金有一篇文章《在IDEA下棋是不是太过分了?》 当时很多朋友也安装了这个插件,进入了鱼池。 在此之前,鱼塘里只有两个人,傅师傅和我。

斗地主卡第一版的设计有点太明显了。 如果你想在工作中钓鱼打牌,你不会被承包商抓住吗?

傅老爷子:“我很好,不用担心我!”

这意味着主人“异于常人”,资本家见了他就哭。

另一个突然的想法是以“十六进制”显示卡值。 在斗地主领域,西装和颜色并不重要。 花色直接显示为int,卡牌颜色设置为深色,这样不刺眼。 我真是个聪明的小孩子啊~

话又说回来,不是每个人都有时间去鱼塘钓鱼和斗地主,所以代码还是要敲的! 也就是说,付大师比较自由,每天都邀请我玩斗地主,但基本上是“三对一”的情况(因为当时斗地主只能三个人在线玩)。

让斗地主也支持单机游戏!

我得再写一篇关于AI的文章。 虽然我对写AI有点“基础”,但是斗地主的规则比五子棋复杂多了,我写不出来!

“那就简单点吧,”傅大师说道。

付大师:“就写个像马化腾一样的斗地主打牌机器人吧!能做就做,能做就照顾,这还不够吗?”

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

很有道理,于是我花了一个下午写了一个“愚蠢的打牌机器人”。

付师傅立即安装体验。

傅大师:“你写的什么?太蹩脚了!”

我:”...”

不得不说,真的很难! 但至少现在可以2人在线玩了。

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

开源

至此,这个项目可以说已经正式开源了! 开源后,鱼池里越来越热闹了。 这个项目也获得了很多朋友的star和fork。 它还收到了两个大佬@MINIPuffer和@falcon,志哥的PR。 非常感谢。 每个人! 除不可抗力因素外,该项目很可能会继续维持。 我还有好几个游戏想写,哈哈哈! 鱼塘里的鱼友也提出了自己的想法:麻将什么时候推出?

有点难。 我实在不知道怎么打麻将。 我只能说我会考虑。 但现在我还是想写三国杀卡牌游戏。 也许我写的游戏不叫这个名字,而是叫《柱子杀》? 呵呵~

付大师,你的扫雷什么时候上线啊?制作组的鸽子都没有这么好的。

插件介绍及安装

添加插件库 插件 > 设置按钮 > 管理插件存储库...

http://plugins.xeblog.cn

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

搜索“xechat”安装

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

插件主界面

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

查看鱼塘列表

#showServer

三国杀移动版打字颜色_三国杀移动版聊天字体颜色_三国杀聊天字体颜色

登录

使用login命令登录系统。

直接登录

#login {你的昵称}

指定鱼池登录

#login {你的昵称} -s {鱼塘编号}

指定服务器IP端口登录

#login {你的昵称} -h {服务器IP} -p {端口}

登录系统成功

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

聊天 发送文本

您可以直接通过文本框输入内容,然后按 Enter 键。

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

发送图片

通过复制图像文件或屏幕截图并将其粘贴到文本框中来发送。

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

图片发送成功后,可以点击“查看图片”

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

状态设置查看状态

#showStatus

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

设置状态

设置工作状态

#setStatus 0

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

工作的话就不能被邀请玩游戏啦~

模式设置查看模式

#showMode

三国杀移动版打字颜色_三国杀移动版聊天字体颜色_三国杀聊天字体颜色

设置模式

设置“浑水摸鱼”模式

#mode 1

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

当处于“浑水摸鱼”模式时,聊天内容将被隐藏。

单击消息内容并拖动即可查看。

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

检查天气

#weather {地名,如:北京市} [-d {0:当前,默认 | 3:未来3天 | 7:未来7天}]

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

游戏特色查看游戏列表

#showGame

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

双陆棋

#play 0

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

支持人机、2人在线对战,内置五子棋AI

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

三国杀移动版打字颜色_三国杀移动版聊天字体颜色_三国杀聊天字体颜色

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

房东

#play 1

三国杀移动版聊天字体颜色_三国杀移动版打字颜色_三国杀聊天字体颜色

支持人机,2~3人在线对战,内置“白痴机器人”

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

支持钓鱼模式

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

详细介绍请看:在IDEA里斗地主一点也不为过!

#play 2

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

打开文本文件

三国杀移动版聊天字体颜色_三国杀移动版打字颜色_三国杀聊天字体颜色

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

三国杀移动版打字颜色_三国杀移动版聊天字体颜色_三国杀聊天字体颜色

详细介绍请参见:IDEA里看书太多了!

IDEA防沉迷

打开或关闭

#alive 1|0

三国杀移动版打字颜色_三国杀聊天字体颜色_三国杀移动版聊天字体颜色

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

详细介绍请参见:XEChat-Idea:IDEA防沉迷吗?

登出

#exit

三国杀移动版聊天字体颜色_三国杀聊天字体颜色_三国杀移动版打字颜色

清晰的屏幕

#clean

三国杀聊天字体颜色_三国杀移动版打字颜色_三国杀移动版聊天字体颜色

终于

项目开源地址:github.com/anlingyi/xe...

三国杀聊天字体颜色_三国杀移动版聊天字体颜色_三国杀移动版打字颜色

本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.fwsgw.com/a/sanguo/56688.html

从《魔兽争霸3》看人气不低的RPG地图
« 上一篇 2024-04-27
“哪个平台可以买到挂”-详细开挂教程-知乎
下一篇 » 2024-04-27

相关推荐