debug(g15): логи в shim fireTargetEvent + click — найти где обрывается
This commit is contained in:
parent
8abbde9d67
commit
12efef7ff5
@ -2173,6 +2173,10 @@ export function registerRobloxShim(lua, opts) {
|
|||||||
if (!p) return;
|
if (!p) return;
|
||||||
const id = p.primId ?? p.target;
|
const id = p.primId ?? p.target;
|
||||||
const part = partById.get(Number(id));
|
const part = partById.get(Number(id));
|
||||||
|
if (p.kind === 'click') {
|
||||||
|
// eslint-disable-next-line no-console
|
||||||
|
console.warn('[shim fireTargetEvent click] primId=', id, 'part=', !!part);
|
||||||
|
}
|
||||||
if (!part) return;
|
if (!part) return;
|
||||||
if (p.kind === 'touch' || p.kind === 'touched') {
|
if (p.kind === 'touch' || p.kind === 'touched') {
|
||||||
part.Touched.Fire(hrp);
|
part.Touched.Fire(hrp);
|
||||||
@ -2180,13 +2184,16 @@ export function registerRobloxShim(lua, opts) {
|
|||||||
part.TouchEnded.Fire(hrp);
|
part.TouchEnded.Fire(hrp);
|
||||||
} else if (p.kind === 'click') {
|
} else if (p.kind === 'click') {
|
||||||
// ClickDetector создаётся лениво — стрельба по 3D-объектам.
|
// ClickDetector создаётся лениво — стрельба по 3D-объектам.
|
||||||
// Юзер делает: part.ClickDetector = Instance.new('ClickDetector', part)
|
// Фейерим без аргумента (передача объектов в Lua через wasmoon
|
||||||
// + clickDet.MouseClick:Connect(fn). Здесь фейерим сигнал.
|
// может крашить с null.then).
|
||||||
try {
|
try {
|
||||||
const cd = part._clickDetector;
|
const cd = part._clickDetector;
|
||||||
if (cd && cd.MouseClick) cd.MouseClick.Fire(localPlayer);
|
// eslint-disable-next-line no-console
|
||||||
} catch (_) {}
|
console.warn('[shim click]', 'partId=', id, 'cd=', !!cd, 'sig=', !!cd?.MouseClick, 'conns=', cd?.MouseClick?.connections?.length);
|
||||||
// Также фейерим Part.Clicked если есть (наш расширенный API).
|
if (cd && cd.MouseClick) cd.MouseClick.Fire();
|
||||||
|
} catch (e) {
|
||||||
|
console.warn('[shim click err]', e?.message || e);
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
if (part.Clicked) part.Clicked.Fire();
|
if (part.Clicked) part.Clicked.Fire();
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user