@Override
public IMessage onMessage(RandoresDataRequest message, MessageContext ctx) {
EntityPlayerMP player = ctx.getServerHandler().player;
player.getServerWorld().addScheduledTask(() -> {
RandoresNetworking.INSTANCE.sendTo(new RandoresClearDataCacheRequest().setDoClear(true), player);
World world = player.world;
RandoresWorldData data = RandoresWorldData.getSimply(world);
if (data.getId().equals(message.getId())) {
Kind kind = data.getKind();
RandoresNetworking.INSTANCE.sendTo(new RandoresBeginDataTransferRequest().setId(data.getId()), player);
data.getPluginSeeds().forEach((plugin, seed) -> {
RandoresNetworking.INSTANCE.sendTo(new RandoresUpdatePluginSeedRequest().setPlugin(plugin).setSeed(seed), player);
});
if (kind == Kind.SEEDED) {
RandoresNetworking.INSTANCE.sendTo(new RandoresDefineBySeedRequest().setSeed(data.getSeed()), player);
} else if (kind == Kind.CUSTOM) {
data.getCache().stream().map(def -> new RandoresDefineByDataRequest().setDefinition(def)).forEach(req -> RandoresNetworking.INSTANCE.sendTo(req, player));
}
RandoresNetworking.INSTANCE.sendTo(new RandoresEndDataTransferRequest().setId(data.getId()), player);
}
});
return null;
}
RandoresDataRequestHandler.java 文件源码
java
阅读 20
收藏 0
点赞 0
评论 0
项目:Randores2
作者:
评论列表
文章目录