yeow-api 0.2.108 → 0.2.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/core.ts +1 -1
- package/src/event.ts +13 -2
- package/src/server.ts +0 -2
package/package.json
CHANGED
package/src/core.ts
CHANGED
|
@@ -32,7 +32,7 @@ export type {
|
|
|
32
32
|
export { onInit, onLoad, onUnload } from './lifecycle.js';
|
|
33
33
|
export {
|
|
34
34
|
broadcast, broadcastSync, dispatchCommand, dispatchCommandSync,
|
|
35
|
-
setMotd, setMotdSync,
|
|
35
|
+
setMotd, setMotdSync,
|
|
36
36
|
getMotd, getMotdSync, getVersion, getVersionSync,
|
|
37
37
|
getTps, getTpsSync, getMaxPlayers, getMaxPlayersSync,
|
|
38
38
|
} from './server.js';
|
package/src/event.ts
CHANGED
|
@@ -151,10 +151,18 @@ export interface InventoryCloseEvent {
|
|
|
151
151
|
}
|
|
152
152
|
export interface ServerPingEvent {
|
|
153
153
|
address: string;
|
|
154
|
+
/** 当前在线人数。handler 可返回 `{ numPlayers: <number> }` 覆盖该次 ping 响应显示的在线人数——**不建议修改**(伪装在线人数可能违反服务器列表政策)。 */
|
|
154
155
|
numPlayers: number;
|
|
156
|
+
/** 最大玩家数。handler 可返回 `{ maxPlayers: <number> }` 覆盖该次 ping 响应显示的最大玩家数——**不建议修改**(仅影响显示,不改变实际进入限制)。 */
|
|
155
157
|
maxPlayers: number;
|
|
158
|
+
/** MOTD 文本。handler 可返回 `{ motd: "<text>" }` 覆盖该次 ping 响应的 MOTD。 */
|
|
156
159
|
motd: string;
|
|
157
160
|
cancelled?: boolean;
|
|
161
|
+
/**
|
|
162
|
+
* handler 可返回 `{ icon: "<PNG base64>" }` 修改服务器列表图标
|
|
163
|
+
* (自动缩放至 64×64;无效图片忽略,保持原图标)。
|
|
164
|
+
*/
|
|
165
|
+
icon?: string;
|
|
158
166
|
}
|
|
159
167
|
export interface PlayerTeleportEvent {
|
|
160
168
|
player: Player;
|
|
@@ -344,7 +352,7 @@ function adaptEvent<K extends keyof EventMap>(type: K, data: RawEvent): EventMap
|
|
|
344
352
|
|
|
345
353
|
// ── Event Subscription ─────────────────────────────────────────────
|
|
346
354
|
|
|
347
|
-
type EventHandler<K extends keyof EventMap> = (e: EventMap[K]) =>
|
|
355
|
+
type EventHandler<K extends keyof EventMap> = (e: EventMap[K]) => unknown;
|
|
348
356
|
type ManualHandler<K extends keyof EventMap> = (
|
|
349
357
|
e: EventMap[K],
|
|
350
358
|
complete: (result?: Record<string, unknown>) => void,
|
|
@@ -394,7 +402,10 @@ export function eventOn<K extends keyof EventMap>(
|
|
|
394
402
|
}
|
|
395
403
|
|
|
396
404
|
const result = (handler as EventHandler<typeof eventType>)(wrapped);
|
|
397
|
-
const mods
|
|
405
|
+
const mods: Record<string, unknown> = {
|
|
406
|
+
...(result && typeof result === 'object' ? result : {}),
|
|
407
|
+
};
|
|
408
|
+
if (localMods.cancelled) mods.cancelled = true;
|
|
398
409
|
$send('task', { type: 'event.complete', params: { callbackId: cbId, mods }, cb: '' });
|
|
399
410
|
}, { persistent: true });
|
|
400
411
|
|
package/src/server.ts
CHANGED
|
@@ -7,8 +7,6 @@ export function dispatchCommand(cmd: string, options?: TaskOptions): Promise<boo
|
|
|
7
7
|
export function dispatchCommandSync(cmd: string, options?: TaskOptions): boolean { return call<boolean>('command.dispatch', { command: cmd }, options); }
|
|
8
8
|
export function setMotd(motd: string, options?: TaskOptions): Promise<void> { return post('server.setMotd', { motd }, options); }
|
|
9
9
|
export function setMotdSync(motd: string, options?: TaskOptions): void { call('server.setMotd', { motd }, options); }
|
|
10
|
-
export function setIcon(base64: string, options?: TaskOptions): Promise<void> { return post('server.setIcon', { icon: base64 }, options); }
|
|
11
|
-
export function setIconSync(base64: string, options?: TaskOptions): void { call('server.setIcon', { icon: base64 }, options); }
|
|
12
10
|
export function getMotd(options?: TaskOptions): Promise<string> { return post<string>('server.getMotd', {}, options); }
|
|
13
11
|
export function getMotdSync(options?: TaskOptions): string { return call<string>('server.getMotd', {}, options); }
|
|
14
12
|
export function getVersion(options?: TaskOptions): Promise<string> { return post<string>('server.getVersion', {}, options); }
|