fix(engine): findOne(x).onTouch + findOne �� ������ + ������� Instance-proxy #11
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "fix/pointer-ontouch-findone"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
������������ ����� �������-��������� �� studio. find/findOne/all ��������� � Instance-proxy (�������), ��������� onTouch/onUntouch/onClick, ��������� snapshot � init. ��������� �� player.rublox.pro/333.
?? Generated with Claude Code
Портирование фикса из studio (фича-парность движков). Баг: стрелка-указатель game.fx.pointer не переключалась на следующую цель. - find/findOne/all раньше возвращали голую строку-ref → .onTouch невозможен. Приведены к студийному Instance-proxy (_getOrCreateInstance, coerces в строку через Symbol.toPrimitive → обратно совместимо со старым кодом). - Instance-proxy: + onTouch/onUntouch/onClick → inst.watchTouch{ref}. Worker: _instTouchHandlers + маршрут instTouch/instUntouch/instClick; _detectSnapshotDeltas для changed/destroying-событий. - GameRuntime: inst.watchTouch/watchClick → _watchedTouchRefs; routeInstEvent. - BabylonScene._detectTouchEvents: блок watched-объектов + _refToTarget; _touchState.clear() в enterPlayMode. - Первичный snapshot сцены в init (setInitialScene) → findOne на старте. Проверено на проде player.rublox.pro/333: стрелка переключается red-cube→blue-sphere→gold-chest, на финале удаляется. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>