BungeeMessage
Plugin Messaging Output side, sender
외부로 전송될 수 있는 Plugin Message 용 데이터 입니다.
Usage
Basic
BungeeMessage를 extends 합니다.receiveServer를 지정하지 않을 경우 모든 서버에 대해 메시지를 보냅니다.BungeeMessenger#sendData혹은BungeeApi#action을 통해 보냅니다. 해당 메시지는 SigBungeeCore 쪽에서 특별히 처리하지 않는 한 지정된 목적지로 다시 보내집니다.
Callback
모든 callback message 는 비동기로 호출되어야 합니다. 동기로 호출될 경우 메인 스레드를 Blocking 합니다.
BungeeMessageCallback을 extends 합니다.onComplete에는 반환된BungeeMessage를 가공할 방법을 정의합니다.위 메시지를
BungeeMessenger#sendData혹은BungeeApi#action을 통해 보냅니다.BungeeActionCallback를 extends 한BungeeActionExecutor를 client 와 proxy 에 각각 등록 합니다. (총합 4개의 클래스가 등록 되어야 합니다).1에 등록한
BungeeMessageCallback#get을 통해 결과를 받아볼 수 있습니다.
public class BungeeApi {
public CompletableFuture<String> getPlayerServer(@NotNull String playerName) {
BungeeMessageGetPlayerServer bungeeMessage = new BungeeMessageGetPlayerServer();
BungeeCallbackController.getInstance().register(bungeeMessage);
bungeeMessage.getJson().setSendPlayer(Set.of(playerName));
sendMessage(bungeeMessage);
return bungeeMessage.get();
}
}Format
BungeeMessage의 JSON 포맷 입니다.
Last updated