Quill Notifications
A small Library mod to handle sending notifications to players both online and offline with style!
介绍
![]()
Quill Notifications
A small Library mod to handle sending notifications to players both online and offline with style!
Usage
This mod requires both Fabric API, and SQLib.
Use of Adventure API is not required but encouraged.
Once the mod is installed on your server, a config will be generated after the first launch. Be sure to edit this config and point it to a file path or a my sql database.
For Developers
Getting Started
To include this mod in your project simply add it as a dependency:
repositories {
maven { url "https://api.modrinth.com/maven" }
// adventure api is not strictly necessary but is helpful and will allow you to use Component messages
maven {
name = "sonatype-oss-snapshots1"
url = "https://s01.oss.sonatype.org/content/repositories/snapshots/"
mavenContent { snapshotsOnly() }
}
}
dependencies {
modImplementation("maven.modrinth:quill:1.2.3")
// adventure api is not strictly necessary but is helpful and allow you to use Component messages
modImplementation include("net.kyori:adventure-platform-fabric:6.4.0")
}
General Usage
Notification notification = NotificationBuilder.Notification(receiverUUID) // Initalize a new notification to be sent
.setMessage(message) // setMessage() accepts String, MutableText, or Component variables (note that the notification will only save the last message set)
.setStyle(Scribe.INFO) // setStyle() only works for String messages
.setMetadata(jsonData) // inject json data into a message to be used with the event system
.setSound(SoundEvents.BLOCK_BELL_USE) // set a soundevent to be played when notification is received
.setCommands(commandString, commandString2) // set commands to be run when the notification is received
.setCommandDelay(10, TimeUnit.SECONDS) // set a delay that your commands will delayed for after the notification is sent (you can also pass in just a number for the ammount of millies to delay by)
.setExpiry(15, TimeUnit.MINUTES) // set a time from a message to expire, if the player doesnt come online before the expiry time elapes the notificaion will not be sent (you can also pass in just a number for the ammount of millies till expiry)
.build();
Pigeon.send(notification); // send the notification to the player
for (Notification message: QuillNotifications.getNotifications(receiverUUID)) { // get all pending notifications for a player (notifications are in order of oldest to newest)
if (notification.getMessage().toString().equals("Test message plz delete")) message.cancel() // cancel a notification before it gets sent to the player
}
Event System
//the event system gives you a notification object to modify the notification data before it gets sent
QuillEvents.PRE_SEND_NOTIFICATION.register((notification) -> {
System.out.println(notification.getPlayerEntity().getName().getString());
//returning true allows the message to be sent, returning false will stop the
//returning false will stop the message from being seen
return true;
// Do cool things with metadata or the other varibles idk the event system is your oyster.
});
常见问题
Quill Notifications 支持哪些 Minecraft 版本?
Quill Notifications 支持 Minecraft Java 版 1.16.5–1.21.5,共 24 个版本,可用的加载器:Fabric / Quilt。下载时注意选择和你游戏版本一致的文件。
Quill Notifications 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Quilt,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅服务端。
评论
登录后评论和评分