qmzm
本帖最后由 qmzm 于 2021-3-28 13:01 编辑




另外求金粒求人气啊啊啊
点我传送到开发文档


备用开发文档





2.1.2更新 修复了建立公共连接一个小问题
2.1.1更新 修复了大量问题

注意:本插件所用所有代码均为原创,不存在借用/抄袭等行为




下载












2021.12 数据,可能有更多内容



另外求金粒求人气啊啊啊
点我传送到开发文档


备用开发文档


> _**目录**_
> * [开发教程](#开发教程)
> * [添加WSCraft为插件依赖](#添加WSCraft为插件依赖)
> * [监听WSCraft事件](#监听WSCraft事件)
> * [发送消息](#发送消息)
> * [获取连接Map](#获取连接Map)
***


# 开发教程
这里使用IDEA来编写一个依赖WSCraft的插件


服务端使用spigot-1.16.2.jar


JDK为1.8


## 添加WSCraft为插件依赖
首先将WSCraft添加到IDEA项目依赖
[![](
)](
)


插件检测服务器是否安装了WSCraft,有两种方法:
1. 在 `plugin.yml`中添加 `softdepend` :


```yaml
name: Test
main: cc.**.testcase.Main
version: 0.0.1
softdepend:
   - WSCraft
```


2.在插件主类`onLoad()`方法添加检测 :
```java
public void onLoad() {
  getLogger().info("加载中");
  if(!getServer().getPluginManager().isPluginEnabled("WSCraft")) {
   getLogger().info("没有检测到WSCraft!");
   getServer().getPluginManager().disablePlugin(this);
  }
    }
```


这样就完成了检测


## 监听WSCraft事件
监听连接,断开,消息等事件
新创建一个类,继承WSCraft类,并重写其中的方法


```java
public class Listener extends WSCraft {
    @Override
    public void onMsg(String s, String s1, WebSocket webSocket, String s2) {
  //s: 会话ID s1: 用户名(玩家名) webSocket: webSocket连接对象 s2: 消息
    }


    @Override
    public void onConn(String s, String s1, WebSocket webSocket) {
  //s: 会话ID s1: null webSocket: webSocket连接对象
    }


    @Override
    public void onLogin(String s, String s1, WebSocket webSocket) {
  //s: 会话ID s1: 用户名(玩家名) webSocket: webSocket连接对象
    }


    @Override
    public void onDisConn(String s, String s1) {
  //s: 会话ID s1: (已登录)用户名(玩家名) (未登录)null
    }
}
```


> 非JSON格式的消息将不会被接收,暂时不支持二进制数据传输


## 发送消息
支持单发&群发,调用API类的静态方法即可


```java
//单发消息
API.sendToPlayer("Name", "TEST MSG");
//群发消息
API.sendToPlayer("TEST MSG");
```


> 发送消息请使用JSON格式,否则将无法发送消息,暂时不支持二进制数据传输,调用方法后将会返回一个Boolean值来说明是否发送成功


## 获取连接Map
同样地,调用API类的静态方法即可
```java
//获取所有已登录连接
Map map1 = API.getAllPlayer();
//获取所有连接
Map map2 = API.getAll();
```


上述代码Map Value-Key关系如下


|Map|Value|Key|
| :------------: | :------------: | :------------: |
|map1|会话ID|PlayerName|
|map2|WebSocket连接对象| 会话ID|





2.1.2更新 修复了建立公共连接一个小问题
2.1.1更新 修复了大量问题


注意:本插件所用所有代码均为原创,不存在借用/抄袭等行为





下载




天辉胡萝卜
你的github链接被屏蔽了

虎牙-朦胧
MCBBS有你更精彩~

jin_gang
又是一款神奇强大的插件,支持一波!希望可以多支持更多的版本

qmzm
jin_gang 发表于 2020-9-6 21:04
又是一款神奇强大的插件,支持一波!希望可以多支持更多的版本

感谢支持~
理论上支持其他版本可以自行测试哦

qmzm
疾风暗影 发表于 2020-9-6 14:03
你的github链接被屏蔽了

已经修复、

yuyuko2333
我丢!好东西!不用自己日ws了

qmzm
yuyuko2333 发表于 2020-9-25 18:20
我丢!好东西!不用自己日ws了

感谢支持
未来将推出2.0.0版本,支持更多功能哦

sixingyv
打不开开发文档

qmzm

现在可以了

第一页 上一页 下一页 最后一页