@yyyu-star/arcade-kit 0.18.0 → 0.19.0
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/CHANGELOG.md +26 -0
- package/README.md +31 -2
- package/dist/chat.d.ts +34 -0
- package/dist/chat.d.ts.map +1 -1
- package/dist/chat.js +28 -1
- package/dist/chat.js.map +1 -1
- package/dist/client.d.ts +2 -19
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js.map +1 -1
- package/dist/fun-logic.d.ts +77 -0
- package/dist/fun-logic.d.ts.map +1 -1
- package/dist/fun-logic.js +139 -0
- package/dist/fun-logic.js.map +1 -1
- package/dist/table-chat.d.ts +148 -0
- package/dist/table-chat.d.ts.map +1 -0
- package/dist/table-chat.js +556 -0
- package/dist/table-chat.js.map +1 -0
- package/dist/table-fun.d.ts +56 -33
- package/dist/table-fun.d.ts.map +1 -1
- package/dist/table-fun.js +137 -111
- package/dist/table-fun.js.map +1 -1
- package/package.json +1 -1
- package/src/chat.ts +47 -1
- package/src/client.ts +3 -10
- package/src/fun-logic.ts +147 -0
- package/src/table-chat.ts +627 -0
- package/src/table-fun.ts +157 -107
package/dist/fun-logic.js
CHANGED
|
@@ -212,6 +212,145 @@ export function placeMenu(anchor, want, h, view, avoid = [], margin = 8, gap = 1
|
|
|
212
212
|
}
|
|
213
213
|
return { left: best.left, top: best.top };
|
|
214
214
|
}
|
|
215
|
+
/**
|
|
216
|
+
* 头像旁的一句话(w×h)放哪(0.18.2):先试朝屏幕中心那一侧、和头像顶边对齐(原来的样子),再试另一侧、头像上方、下方;
|
|
217
|
+
* 夹在可见区里(留 margin),和头像本身、"互动"按钮、各家名牌筹码、禁区压得最少的那个胜出,一样少时按试的顺序。
|
|
218
|
+
* 竖屏自己的气泡原来总在右边、被"互动"按钮压住半截,点头像的提示盖住对家的名字和筹码(麻将报)
|
|
219
|
+
*/
|
|
220
|
+
export function placeBubble(anchor, w, h, view, avoid = [], margin = 4, gap = 6) {
|
|
221
|
+
const cx = anchor.left + anchor.width / 2;
|
|
222
|
+
const right = { left: anchor.left + anchor.width + gap, top: anchor.top - gap };
|
|
223
|
+
const left = { left: anchor.left - gap - w, top: anchor.top - gap };
|
|
224
|
+
const above = { left: cx - w / 2, top: anchor.top - gap - h };
|
|
225
|
+
const below = { left: cx - w / 2, top: anchor.top + anchor.height + gap };
|
|
226
|
+
const order = cx < view.width / 2 ? [right, left, above, below] : [left, right, above, below];
|
|
227
|
+
const clamp = (p) => ({
|
|
228
|
+
left: Math.max(margin, Math.min(view.width - margin - w, p.left)),
|
|
229
|
+
top: Math.max(margin, Math.min(view.height - margin - h, p.top)),
|
|
230
|
+
width: w,
|
|
231
|
+
height: h,
|
|
232
|
+
});
|
|
233
|
+
let best = null;
|
|
234
|
+
let bestCost = Infinity;
|
|
235
|
+
for (const c of order.map(clamp)) {
|
|
236
|
+
const cost = [anchor, ...avoid].reduce((s, b) => s + overlap(c, b), 0);
|
|
237
|
+
if (cost < bestCost) {
|
|
238
|
+
best = c;
|
|
239
|
+
bestCost = cost;
|
|
240
|
+
if (cost === 0)
|
|
241
|
+
break;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
return { left: best.left, top: best.top };
|
|
245
|
+
}
|
|
246
|
+
export function chatMode(view) {
|
|
247
|
+
return view.width >= 960 && view.height >= 560 ? 'desk' : 'phone';
|
|
248
|
+
}
|
|
249
|
+
/** 气泡、弹幕、聊天框的字号:电脑 18–22px 按短边放大,手机 ≥ 15px(所有者:电脑上气泡太小) */
|
|
250
|
+
export function chatFont(view, mode = chatMode(view)) {
|
|
251
|
+
const m = Math.min(view.width, view.height);
|
|
252
|
+
return mode === 'desk' ? Math.max(18, Math.min(22, Math.round(m / 48))) : m >= 480 ? 16 : 15;
|
|
253
|
+
}
|
|
254
|
+
/** 弹幕的数字:同屏上限、轨道数、横穿一屏的时长和速度上下限(px/秒)、条与条的间距、排队上限 */
|
|
255
|
+
export const DANMAKU = { maxDesk: 12, maxPhone: 6, lanesDesk: 6, lanesPhone: 4, crossMs: 8000, minSpeed: 90, maxSpeed: 260, gap: 32, queue: 8 };
|
|
256
|
+
/** 弹幕速度(px/毫秒):横穿 area 宽度约 crossMs,夹在上下限里;所有条同一速度,后一条追不上前一条 */
|
|
257
|
+
export function danmakuSpeed(width) {
|
|
258
|
+
return Math.max(DANMAKU.minSpeed, Math.min(DANMAKU.maxSpeed, (width * 1000) / DANMAKU.crossMs)) / 1000;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* 弹幕轨道(每条轨道的 top):在 area 里按 4px 一档往下找高 lineH 的横条,和 blocked(手牌、按钮、名牌、头像、聊天框)一点不压的优先,
|
|
262
|
+
* 从上往下贪心取、互不重叠;一条不压的都没有时只取压得最少的那一条(宁可从边上擦过也要看得见)。多了均匀挑 max 条,按从上到下排
|
|
263
|
+
*/
|
|
264
|
+
export function danmakuLanes(area, lineH, blocked, max, step = 4) {
|
|
265
|
+
if (max <= 0 || lineH <= 0 || area.height < lineH)
|
|
266
|
+
return [];
|
|
267
|
+
const cost = (top) => blocked.reduce((s, b) => s + overlap({ left: area.left, top, width: area.width, height: lineH }, b), 0);
|
|
268
|
+
const free = [];
|
|
269
|
+
let best = area.top;
|
|
270
|
+
let bestCost = Infinity;
|
|
271
|
+
for (let top = area.top; top + lineH <= area.top + area.height + 0.5; top += step) {
|
|
272
|
+
const c = cost(top);
|
|
273
|
+
if (c < bestCost) {
|
|
274
|
+
best = top;
|
|
275
|
+
bestCost = c;
|
|
276
|
+
}
|
|
277
|
+
if (c === 0 && (free.length === 0 || top >= free[free.length - 1] + lineH))
|
|
278
|
+
free.push(top);
|
|
279
|
+
}
|
|
280
|
+
if (free.length === 0)
|
|
281
|
+
return [best];
|
|
282
|
+
if (free.length <= max)
|
|
283
|
+
return free;
|
|
284
|
+
const k = free.length / max;
|
|
285
|
+
return Array.from({ length: max }, (_, i) => free[Math.floor(i * k)]);
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* 挨着 anchor 放一个 w×h 的东西(手机版"聊天"按钮挨着"互动"按钮):右、左、上、下依次试,中线对齐,
|
|
289
|
+
* 夹在可见区里,和 anchor、avoid 压得最少的胜出
|
|
290
|
+
*/
|
|
291
|
+
export function placeBeside(anchor, w, h, view, avoid = [], margin = 4, gap = 8) {
|
|
292
|
+
const cx = anchor.left + anchor.width / 2 - w / 2;
|
|
293
|
+
const cy = anchor.top + anchor.height / 2 - h / 2;
|
|
294
|
+
const order = [
|
|
295
|
+
{ left: anchor.left + anchor.width + gap, top: cy },
|
|
296
|
+
{ left: anchor.left - gap - w, top: cy },
|
|
297
|
+
{ left: cx, top: anchor.top - gap - h },
|
|
298
|
+
{ left: cx, top: anchor.top + anchor.height + gap },
|
|
299
|
+
];
|
|
300
|
+
let best = order[0];
|
|
301
|
+
let bestCost = Infinity;
|
|
302
|
+
for (const p of order) {
|
|
303
|
+
const c = { left: Math.max(margin, Math.min(view.width - margin - w, p.left)), top: Math.max(margin, Math.min(view.height - margin - h, p.top)), width: w, height: h };
|
|
304
|
+
const cost = [anchor, ...avoid].reduce((s, b) => s + overlap(c, b), 0);
|
|
305
|
+
if (cost < bestCost) {
|
|
306
|
+
best = c;
|
|
307
|
+
bestCost = cost;
|
|
308
|
+
if (cost === 0)
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
return { left: best.left, top: best.top };
|
|
313
|
+
}
|
|
314
|
+
/** 挑一条空出来的轨道:freeAt[i] 是第 i 条轨道上一条的尾巴离开起点的时刻;从上往下第一条到点的,都没到点 -1 */
|
|
315
|
+
export function pickLane(freeAt, now) {
|
|
316
|
+
return freeAt.findIndex((t) => t <= now);
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* 电脑版聊天框(w×h)放牌桌哪个角:左下、右下、左上、右上依次试,和禁区压得最少的胜出(游戏给了位置就不用这个)。
|
|
320
|
+
* 上面两个角从屏幕高度的 9% 往下:几个游戏的顶栏(回大厅、设置)都在那一条里,kit 不知道它们的位置
|
|
321
|
+
*/
|
|
322
|
+
export function placeDock(view, w, h, avoid = [], margin = 12) {
|
|
323
|
+
const l = margin;
|
|
324
|
+
const r = Math.max(margin, view.width - margin - w);
|
|
325
|
+
const t = Math.max(margin, Math.round(view.height * 0.09));
|
|
326
|
+
const b = Math.max(margin, view.height - margin - h);
|
|
327
|
+
let best = { left: l, top: b };
|
|
328
|
+
let bestCost = Infinity;
|
|
329
|
+
for (const c of [{ left: l, top: b }, { left: r, top: b }, { left: l, top: t }, { left: r, top: t }]) {
|
|
330
|
+
const cost = avoid.reduce((s, x) => s + overlap({ ...c, width: w, height: h }, x), 0);
|
|
331
|
+
if (cost < bestCost) {
|
|
332
|
+
best = c;
|
|
333
|
+
bestCost = cost;
|
|
334
|
+
if (cost === 0)
|
|
335
|
+
break;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
return best;
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* 手机版输入条的底边(y):贴在下半屏手牌、操作按钮的上面,不挡它们;上面留不下 h 高(那些东西占了大半屏)就贴屏幕底。
|
|
342
|
+
* 键盘弹起时页面另按可见区再往上挪
|
|
343
|
+
*/
|
|
344
|
+
export function barBottom(view, h, avoid = [], margin = 8) {
|
|
345
|
+
const low = avoid.filter((b) => b.top > view.height * 0.4 && b.width > 0 && b.height > 0).map((b) => b.top);
|
|
346
|
+
const y = low.length ? Math.min(...low) - margin : view.height - margin;
|
|
347
|
+
return y - h < view.height * 0.12 ? view.height - margin : y;
|
|
348
|
+
}
|
|
349
|
+
/** 聊天记录、弹幕里名字的颜色:按座位号,自己另用金色高亮 */
|
|
350
|
+
export const SEAT_COLORS = ['#ffd36a', '#7fd0ff', '#ff9f8a', '#a8e07a', '#d4a2ff', '#ffb86b', '#6fe3d0', '#ff8fc7'];
|
|
351
|
+
export function seatColor(seat) {
|
|
352
|
+
return SEAT_COLORS[((seat % SEAT_COLORS.length) + SEAT_COLORS.length) % SEAT_COLORS.length];
|
|
353
|
+
}
|
|
215
354
|
// ---------- 编号 ----------
|
|
216
355
|
/**
|
|
217
356
|
* 编号怎么排(和房间转发的 emote id 一致):短语 0..P-1,表情 P..P+11,道具 P+12..P+19。P 是游戏短语表的长度。
|
package/dist/fun-logic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fun-logic.js","sourceRoot":"","sources":["../src/fun-logic.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAA+B,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,KAAK,EAAE,QAAQ,EAA+B,CAAC;AAExD,2BAA2B;AAE3B,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe;IACf,cAAc,EAAE,IAAI;IACpB,eAAe;IACf,cAAc,EAAE,IAAI;IACpB,qDAAqD;IACrD,SAAS,EAAE,CAAC;IACZ,cAAc,EAAE,MAAM;IACtB,iBAAiB;IACjB,OAAO,EAAE,IAAI;IACb,oBAAoB;IACpB,WAAW,EAAE,GAAG;IAChB,eAAe;IACf,OAAO,EAAE,IAAI;IACb,cAAc;IACd,MAAM,EAAE,IAAI;IACZ,uDAAuD;IACvD,QAAQ,EAAE,GAAG;CACL,CAAC;AAIX,gCAAgC;AAChC,MAAM,OAAO,WAAW;IAEO,EAAE;IADvB,IAAI,GAA4B,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC7E,YAA6B,EAAE,GAA4B,EAAE,IAAI,EAAE,UAAU,CAAC,cAAc,EAAE,IAAI,EAAE,UAAU,CAAC,cAAc,EAAE;kBAAlG,EAAE;IAAmG,CAAC;IAEnI,uBAAuB;IACvB,IAAI,CAAC,IAAa,EAAE,GAAW;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,IAAI,CAAC,IAAa,EAAE,GAAW;QAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,IAAa;QACjB,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;CACF;AAaD,kCAAkC;AAClC,MAAM,OAAO,QAAQ;IAOU,CAAC;IANb,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;IACpD,wCAAwC;IACvB,KAAK,GAAG,IAAI,GAAG,EAAgD,CAAC;IACjF,eAAe;IACE,MAAM,GAAG,IAAI,GAAG,EAAuC,CAAC;IAEzE,YAA6B,CAAC,GAAmE,UAAU;iBAA9E,CAAC;IAAgF,CAAC;IAE/G,GAAG,CAAC,IAAY,EAAE,EAAU,EAAE,GAAW;QACvC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACxF,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAC1B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QACvE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC3C,CAAC;CACF;AAMD,MAAM,CAAC,MAAM,WAAW,GAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AA4D3F,MAAM,CAAC,MAAM,SAAS,GAAmB;IACvC,OAAO,EAAE,GAAG;IACZ,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,CAAC;IACb,eAAe,EAAE,MAAM;IACvB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC;IAClB,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,CAAC;CACX,CAAC;AAWF,MAAM,UAAU,WAAW;IACzB,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,KAAK,GAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAEnF,yCAAyC;AACzC,MAAM,CAAC,MAAM,OAAO,GAA2B;IAC7C,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,SAAS;IACd,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,YAAY,GAA0C;IAC1D,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IAC7B,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,GAAG,EAAE,CAAC,KAAK,CAAC;CACb,CAAC;AAEF,MAAM,IAAI,GAAG,CAAI,EAAgB,EAAE,IAAkB,EAAK,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAE,CAAC;AAE7G;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAY,EAAE,GAAW,EAAE,EAAY,EAAE,GAAW,EAAE,IAAkB,EAAE,GAAG,GAAmB,SAAS;IAChI,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1D,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,GAAG,GAAG,CAAC,CAAoC,EAAa,EAAE;QAC9D,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IACzC,CAAC,CAAC;IAEF,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACtB,IAAI,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5D,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC;QAC1F,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC/B,IAAI,IAAI,EAAE,GAAG,GAAG,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACnD,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,IAAI,GAAY,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAU,EAAE,IAAI,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,eAAe;IACf,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;QACxB,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;QAClB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACX,CAAC;IACD,IAAI,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7C,EAAE,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAE,CAAC;QACnF,sBAAsB;QACtB,IAAI,IAAI,EAAE,GAAG,GAAG;YAAE,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAU,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/H,MAAM,IAAI,GAAY,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAU,EAAE,IAAI,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,GAAG,EAAE,CAAC;QACR,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,EAAE,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAWD,MAAM,OAAO,GAAG,CAAC,CAAM,EAAE,CAAM,EAAU,EAAE,CACzC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE5K;;;GAGG;AACH,uEAAuE;AACvE,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,SAAiB,EAAE,MAAM,GAAG,CAAC;IACnE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,SAAS,CAAC,MAAW,EAAE,IAAY,EAAE,CAAS,EAAE,IAAuC,EAAE,KAAK,GAAmB,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE;IACvJ,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;IAC1E,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9D,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;IAC1E,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC;IAC9D,uBAAuB;IACvB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;IAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACpN,MAAM,KAAK,GAAG,CAAC,CAAgC,EAAO,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACjE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QAChE,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;KACV,CAAC,CAAC;IACH,IAAI,IAAI,GAAe,IAAI,CAAC;IAC5B,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;YACpB,IAAI,GAAG,CAAC,CAAC;YACT,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,IAAI,KAAK,CAAC;gBAAE,MAAM;QACxB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAK,CAAC,IAAI,EAAE,GAAG,EAAE,IAAK,CAAC,GAAG,EAAE,CAAC;AAC9C,CAAC;AAED,2BAA2B;AAE3B;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,OAAO,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1B,CAAC;AAID,MAAM,UAAU,OAAO,CAAC,EAAU,EAAE,OAAe;IACjD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9E,IAAI,EAAE,GAAG,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACvD,IAAI,EAAE,GAAG,OAAO,GAAG,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC;IACvE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,GAAG,EAAE,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,KAAa,EAAU,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC;AACrF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,KAAa,EAAU,EAAE,CAAC,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC;AAEvF,gDAAgD;AAChD,MAAM,UAAU,WAAW,CAAC,CAAY;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAsC;QAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IAChI,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CAAC,EAAU,EAAE,OAAe,EAAE,IAAY,EAAE,EAAW;IAC7E,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACjF,OAAO,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAC5G,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,WAAW,CAAC,CAAY,EAAE,OAAe;IACvD,MAAM,GAAG,GAAkC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACrG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrG,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
1
|
+
{"version":3,"file":"fun-logic.js","sourceRoot":"","sources":["../src/fun-logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 牌桌聊天的界面(0.19.0,docs/chat.md 第 5 节):电脑上牌桌一角常驻的聊天框、手机上的"聊天"按钮和贴底输入条、弹幕、最近 30 条记录。
|
|
3
|
+
* 所有者 2026-10-18:聊天太简陋、不显眼,电脑上气泡太小。TableFun 建它、喂它,游戏不直接用(不进 package.json 的 exports)。
|
|
4
|
+
* 和 table-fun.ts 同样的规矩:import 时不碰 DOM;动画只动 transform、opacity;量位置只在摆放(refresh)和出一条弹幕时。
|
|
5
|
+
*/
|
|
6
|
+
import { type ChatBlockWhy } from './chat.js';
|
|
7
|
+
import { type Box } from './fun-logic.js';
|
|
8
|
+
export type ChatResultLike = {
|
|
9
|
+
ok: true;
|
|
10
|
+
} | {
|
|
11
|
+
ok: false;
|
|
12
|
+
code: string;
|
|
13
|
+
why?: ChatBlockWhy;
|
|
14
|
+
waitMs?: number;
|
|
15
|
+
};
|
|
16
|
+
/** 记录里的一行:打的字和快捷短语都记(只在内存里,关页面、换房间就没了) */
|
|
17
|
+
export interface ChatLine {
|
|
18
|
+
seat: number;
|
|
19
|
+
name: string;
|
|
20
|
+
text: string;
|
|
21
|
+
me: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface ChatHost {
|
|
24
|
+
/** 点得到的那一层(.atf-ui)和点击穿透的效果层(弹幕画在这里) */
|
|
25
|
+
ui: HTMLElement;
|
|
26
|
+
fx: HTMLElement;
|
|
27
|
+
prefsKey: string;
|
|
28
|
+
/** 快捷词:游戏的短语表,点了按短语发(走互动的发送通道,没开打字聊天也能用) */
|
|
29
|
+
phrases: readonly string[];
|
|
30
|
+
phrase(i: number): void;
|
|
31
|
+
/** 打字:好友房 RoomClient.chat、单机 localChat */
|
|
32
|
+
send(text: string): ChatResultLike;
|
|
33
|
+
/** 现在能不能发(旁观、没坐下不能) */
|
|
34
|
+
canSend(): boolean;
|
|
35
|
+
/** 不能盖的地方:游戏的禁区、"互动"按钮、头像、名牌 */
|
|
36
|
+
blocked(): Box[];
|
|
37
|
+
/** 正在显示的气泡(弹幕的轨道也避开) */
|
|
38
|
+
bubbles(): Box[];
|
|
39
|
+
/** 各家头像和名牌(默认弹幕区的上沿压到上方各家的下面) */
|
|
40
|
+
seatBoxes(): Box[];
|
|
41
|
+
/** 手机输入条不能盖的:游戏的禁区(手牌、操作按钮)、"互动"按钮、自己的头像和名牌(别家的头像打字时盖住没关系) */
|
|
42
|
+
barBlocked(): Box[];
|
|
43
|
+
/** "互动"按钮的矩形(手机版"聊天"按钮挨着它、跟它一样大),按同样的尺寸参数画 */
|
|
44
|
+
button(): Box | null;
|
|
45
|
+
styleButton(b: HTMLElement): void;
|
|
46
|
+
/** 游戏指定电脑版聊天框的位置(只用 left、top、width),不给就自己挑角 */
|
|
47
|
+
dock?(): Box | null;
|
|
48
|
+
/** 游戏指定手机版"聊天"按钮的位置,不给就挨着"互动"按钮 */
|
|
49
|
+
chatButton?(): Box | null;
|
|
50
|
+
/** 游戏指定弹幕区,不给就是牌桌上半部分 */
|
|
51
|
+
area?(): Box | null;
|
|
52
|
+
/** 省内存模式(弹幕默认关) */
|
|
53
|
+
lite(): boolean;
|
|
54
|
+
/** 手机版"记录":打开互动面板的聊天页 */
|
|
55
|
+
history(): void;
|
|
56
|
+
later(ms: number, fn: () => void): void;
|
|
57
|
+
now(): number;
|
|
58
|
+
log?(line: string): void;
|
|
59
|
+
}
|
|
60
|
+
export declare const CHAT_CSS = "\n.atc-dock{position:absolute;left:0;top:0;pointer-events:auto;display:flex;flex-direction:column;gap:6px;background:var(--ak-bg,rgba(43,29,20,.9));border:2px solid var(--ak-border,#d4a64a);border-radius:var(--ak-radius,14px);padding:8px;box-sizing:border-box;color:var(--ak-fg,#fff6e0);box-shadow:0 6px 18px rgba(0,0,0,.4)}\n.atc-head{display:flex;align-items:center;gap:6px}\n.atc-head b{flex:1;color:var(--ak-title,#f3d98b);font-size:1.05em}\n.atc-head .atf-chip{min-height:36px;padding:0 10px;font-size:.8em}\n.atc-log{display:flex;flex-direction:column;gap:2px;line-height:1.45;font-size:.9em;overflow-y:auto;overscroll-behavior:contain}\n.atc-log .atf-empty{opacity:.6}\n.atc-log b,.atf-log b{font-weight:700;margin-right:4px}\n.atc-quick{display:flex;gap:6px;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:none;flex-shrink:0;padding-right:28px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent)}\n.atc-quick::-webkit-scrollbar{display:none}\n.atc-quick .atf-chip{flex:none;white-space:nowrap;font-size:.8em}\n.atc-row{display:flex;gap:6px;align-items:center}\n.atc-row .atf-input{font-size:max(16px,.85em)}\n.atc-row .atf-chip{flex:none}\n.atc-pill{position:absolute;left:0;top:0;pointer-events:auto;min-height:44px;display:flex;align-items:center;gap:6px;padding:0 16px;border-radius:var(--ak-radius-btn,22px);border:2px solid var(--ak-border,#d4a64a);background:var(--ak-soft,#5a3a22);color:var(--ak-fg,#fff6e0);font:inherit;font-weight:700;cursor:pointer}\n.atc-pill svg{width:1.2em;height:1.2em}\n.atc-pill.atf-dot::after{content:'';position:absolute;right:4px;top:4px;width:10px;height:10px;border-radius:50%;background:#e8323a;border:2px solid var(--ak-fg,#fff6e0)}\n.atc-dock .atf-note:empty,.atc-bar .atf-note:empty{display:none}\n.atc-bar{position:absolute;left:8px;right:8px;top:0;pointer-events:auto;display:flex;flex-direction:column;gap:6px;background:var(--ak-bg,rgba(43,29,20,.94));border:2px solid var(--ak-border,#d4a64a);border-radius:var(--ak-radius,14px);padding:6px;box-sizing:border-box;color:var(--ak-fg,#fff6e0);box-shadow:0 -4px 16px rgba(0,0,0,.4)}\n.atc-dms{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}\n.atc-dm{position:absolute;left:0;top:0;white-space:nowrap;font-weight:700;color:#fff;padding:2px 12px;border-radius:999px;background:rgba(0,0,0,.38);text-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none;will-change:transform}\n.atc-dm.atc-me{background:rgba(122,42,30,.78);border:2px solid var(--ak-title,#f3d98b);color:#fff6e0}\n";
|
|
61
|
+
/** prefsKey 只认 `<游戏id>.<名字>` 的写法(存储前缀规则:kit 写的 key 一定带游戏前缀),不合格构造时就抛错 */
|
|
62
|
+
export declare function checkPrefsKey(key: unknown, storageKey: string): string;
|
|
63
|
+
export declare class ChatUi {
|
|
64
|
+
/** 最近 KEEP 条,新的在后 */
|
|
65
|
+
readonly lines: ChatLine[];
|
|
66
|
+
static readonly KEEP = 30;
|
|
67
|
+
private readonly h;
|
|
68
|
+
private readonly doc;
|
|
69
|
+
private prefs;
|
|
70
|
+
private on;
|
|
71
|
+
private mode;
|
|
72
|
+
private font;
|
|
73
|
+
private dockEl;
|
|
74
|
+
private pill;
|
|
75
|
+
private btn;
|
|
76
|
+
private bar;
|
|
77
|
+
/** 渲染记录的地方:电脑版聊天框里的那块、互动面板聊天页里的那块 */
|
|
78
|
+
private logs;
|
|
79
|
+
private unread;
|
|
80
|
+
private freeAt;
|
|
81
|
+
private live;
|
|
82
|
+
private pending;
|
|
83
|
+
private waiting;
|
|
84
|
+
private vvFix;
|
|
85
|
+
/** 弹幕自己一层,垫在效果层最底下:气泡、表情、道具永远在弹幕上面 */
|
|
86
|
+
private dm;
|
|
87
|
+
constructor(host: ChatHost);
|
|
88
|
+
private dmLayer;
|
|
89
|
+
private load;
|
|
90
|
+
private save;
|
|
91
|
+
/** 弹幕开着吗:设过就按设的;没设过,系统要求减少动态效果或省内存模式时关 */
|
|
92
|
+
danmaku(): boolean;
|
|
93
|
+
setDanmaku(on: boolean): void;
|
|
94
|
+
danmakuLabel(): string;
|
|
95
|
+
/** on = 这会儿有聊天(游戏开了聊天、设置没关)。窗口变了、座位挪了由 TableFun.refresh 调 */
|
|
96
|
+
refresh(on: boolean): void;
|
|
97
|
+
/** 聊天自己占的地方(气泡、弹幕要避开) */
|
|
98
|
+
rects(): Box[];
|
|
99
|
+
/** 有输入条或聊天框里的输入框正在用(游戏据此暂停快捷键) */
|
|
100
|
+
typing(): boolean;
|
|
101
|
+
private clearDesk;
|
|
102
|
+
private clearPhone;
|
|
103
|
+
private drawDesk;
|
|
104
|
+
private buildDock;
|
|
105
|
+
private fold;
|
|
106
|
+
private drawPhone;
|
|
107
|
+
/** 手机版输入条:快捷词一排、输入框、发送、记录、收起;贴在手牌和操作按钮上面 */
|
|
108
|
+
openBar(): void;
|
|
109
|
+
closeBar(): void;
|
|
110
|
+
private placeBar;
|
|
111
|
+
private hookViewport;
|
|
112
|
+
private unhookViewport;
|
|
113
|
+
private el;
|
|
114
|
+
chip(label: string, key: string, fn: () => void, cls?: string): HTMLButtonElement;
|
|
115
|
+
/** 输入框上方那排快捷词:点了直接按短语发(冷却和互动共用,被冷却挡住时不发) */
|
|
116
|
+
private quick;
|
|
117
|
+
/**
|
|
118
|
+
* 一行输入框 + 发送,下面一行小字(还能打几个字、为什么没发出去)。回车发送;被限速时"发送"倒计时。
|
|
119
|
+
* 电脑版聊天框、手机输入条、互动面板的聊天页共用
|
|
120
|
+
*/
|
|
121
|
+
inputRow(prefix: string, cls?: string): {
|
|
122
|
+
row: HTMLDivElement;
|
|
123
|
+
note: HTMLDivElement;
|
|
124
|
+
input: HTMLInputElement;
|
|
125
|
+
};
|
|
126
|
+
private countdown;
|
|
127
|
+
/** 房间拒了一条:看得见的小字行都说一声 */
|
|
128
|
+
note(text: string): void;
|
|
129
|
+
/** 互动面板的聊天页挂上 / 摘下它的记录区 */
|
|
130
|
+
bindLog(el: HTMLElement | null, old?: HTMLElement | null): void;
|
|
131
|
+
private render;
|
|
132
|
+
private renderOne;
|
|
133
|
+
/** 有人说了一句(打字或快捷短语):进记录、飘弹幕;看不见聊天的时候亮小红点 */
|
|
134
|
+
push(line: ChatLine, panelOpen: boolean): void;
|
|
135
|
+
setUnread(on: boolean): void;
|
|
136
|
+
private danmakuOf;
|
|
137
|
+
/**
|
|
138
|
+
* 弹幕区:游戏给了就用;不给是屏幕 8%–58%,上沿再压到最上面一排座位(头像顶边在屏高 20% 以内的,就是对家那一排)的头像、名牌下沿以下,
|
|
139
|
+
* 顶栏和对家名牌不被横穿;剩下不够两行时往下放宽(最多到 75%),不往上退
|
|
140
|
+
*/
|
|
141
|
+
private area;
|
|
142
|
+
/** 找空轨道飞一条;没有空的返回 false */
|
|
143
|
+
private fly;
|
|
144
|
+
/** 排着的弹幕:到最早那条轨道空出来时再试 */
|
|
145
|
+
private wake;
|
|
146
|
+
destroy(): void;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=table-chat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-chat.d.ts","sourceRoot":"","sources":["../src/table-chat.ts"],"names":[],"mappings":"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"}
|