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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yeow-api",
3
- "version": "0.2.108",
3
+ "version": "0.2.110",
4
4
  "description": "Yeow API",
5
5
  "type": "module",
6
6
  "main": "./src/index.ts",
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, setIcon, setIconSync,
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]) => void;
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 = { cancelled: localMods.cancelled || false };
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); }