XpEvents.on()
ログおよびレベルイベント用のコールバックハンドラーを登録します。
すべてのコールバックプロパティは任意で、各コールバックは void または Promise<void> を返せます。
levelUp と levelDown は、ユーザーのレベルが変化したときに addXP()、removeXP()、setXP()、addLevel()、removeLevel()、setLevel() から発火します。
備考
起動時ログも含めて受け取りたい場合は、connect() の前にこれを使用してください。
パラメーター
| Parameter | Type | Required | Description |
|---|---|---|---|
| XpEventCallback | XpEventCallback | ✅ | イベント発火時に実行されるコールバック。 |
例
const { XpEvents } = require("simply-xp");
XpEvents.on({
debug: (xpFunction, message) => {
// Handle debug event
},
error: (xpFunction, message) => {
// Handle error event
},
info: (xpFunction, message) => {
// Handle info event
},
custom: (message) => {
// Handle your own custom event payloads
},
levelDown: (data, lostRoles) => {
// Handle levelDown event
},
levelUp: (data, newRoles) => {
// Handle levelUp event
},
warn: (xpFunction, message) => {
// Handle warn event
},
});
XpEvents.add()
すでに登録されているコールバックを置き換えずに登録します。
XpEvents.on() はコールバックオブジェクトを 1 つだけ保持します。再度呼び出すと、プラグインやボットの他の部分が登録したハンドラーも含めて上書きされます。XpEvents.add() は追加するため、任意の数のリスナーが同じイベントを受け取れます。
プラグイン作者の方へ
プラグインでは常に add() を使用してください。on() を呼ぶと、ボット作者自身のハンドラーが無言で削除されます。
パラメーター
| Parameter | Type | Required | Description |
|---|---|---|---|
| XpEventCallback | XpEventCallback | ✅ | イベント発火時に実行されるコールバック。 |
戻り値
() => void- これを呼ぶと、登録したコールバックを削除できます。
例外
XpFatal- コールバック引数がオブジェクトでない場合。
例
const { XpEvents } = require("simply-xp");
const removeListener = XpEvents.add({
levelUp: (data, newRoles) => {
// 登録済みの他のすべてのリスナーと並行して実行されます
},
});
// 不要になったら:
removeListener();