tile-picking-interaction — скилл для Claude Code: выбор тайла по клику
Превращает позицию курсора или касания в точный тайл изометрической карты — с учётом панорамирования и зума камеры. Нужен, когда клики попадают не в тот тайл.
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a claude-codeЧто делает tile-picking-interaction
Скилл описывает порядок шагов для выбора тайла: сначала берётся позиция указателя в экранных координатах, затем применяется обратное преобразование камеры, потом экранные координаты переводятся в сетку и округляются до тайла. Результат ограничивается границами карты, при необходимости проверяется проходимость. Выбранный тайл подсвечивается, а по клику его координаты уходят в игровой обработчик.
Внутри — инструкция из семи шагов и короткий пример кода: screenToWorld(pointer, cam), затем worldToGrid(world, W, H) с округлением. Скилл ссылается на соседние camera-pan-zoom-controls и isometric-grid-math — без них шаги с обратным преобразованием и переводом в сетку брать негде.
Отдельный блок разбирает типовые отговорки: пропустить инверсию камеры или не рисовать подсветку. Пропустишь инверсию — выбор сломается при первом же сдвиге камеры. Проверка в конце требует, чтобы тайл определялся верно при любом панорамировании и зуме, подсветка совпадала с реальным выбором, а клик отправлял правильную координату сетки.
Какие задачи решает
- починить выбор тайла, который сбивается при панорамировании камеры
- добавить подсветку тайла под курсором
- сделать постановку объекта по клику на нужную клетку
- ограничить выбор границами карты
- проверить попадание по тайлу на разных уровнях зума
Примеры запросов агенту
- У меня клик выбирает не тот тайл после сдвига камеры — пройди по скиллу tile-picking-interaction и почини
- Добавь подсветку тайла под курсором и постановку объекта по клику
- Проверь выбор тайла при разных зумах и смещениях камеры
Как установить tile-picking-interaction
1Через Skills CLI (Vercel)
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a claude-code2Вручную: положить файлы
~/.claude/skills/tile-picking-interaction/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/tile-picking-interaction/
1Через Skills CLI (Vercel)
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a codex2Вручную: положить файлы
.agents/skills/tile-picking-interaction/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a cursor2Вручную: положить файлы
.cursor/skills/tile-picking-interaction/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install 0xheycat/isometric-game-skills tile-picking-interaction2Вручную: положить файлы
.github/skills/tile-picking-interaction/SKILL.md1Через Skills CLI (Vercel)
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a gemini-cli2Командой платформы
gemini skills install https://github.com/0xheycat/isometric-game-skills --path skills/tile-picking-interactionВручную: положить файлы
.devin/skills/tile-picking-interaction/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о tile-picking-interaction
Как установить tile-picking-interaction в Claude Code?
Выполните npx skills add 0xheycat/isometric-game-skills --skill tile-picking-interaction -a claude-code. Файл скилла появится по пути ~/.claude/skills/tile-picking-interaction/SKILL.md.
Что делает tile-picking-interaction?
Переводит позицию указателя в координаты тайла изометрической сетки: применяет обратное преобразование камеры, округляет до клетки, ограничивает границами карты и подсвечивает результат. По клику координата уходит в игровой обработчик.
Почему выбор тайла ломается при зуме?
Если пропустить обратное преобразование камеры, попадание считается в экранных координатах и перестаёт совпадать с картой при любом сдвиге или зуме. Скилл требует инверсию на каждом шаге.
Исходный текст
SKILL.md · MIT
--- name: tile-picking-interaction description: Use when converting a mouse/touch position into the correct isometric tile for selection, highlighting, and placement. license: MIT --- # Tile Picking & Interaction ## Overview Picking is screen->grid with the camera inverse applied first. This skill turns a pointer position into the exact tile under it, with a highlight and hit-test that respects camera pan/zoom. ## When to Use - Clicking selects the wrong tile. - You need hover highlight or click-to-place. - Picking ignores camera pan/zoom. ## Process 1. Take the pointer position in screen space. 2. Apply the inverse camera transform (see `camera-pan-zoom-controls`). 3. Apply screen->grid from `isometric-grid-math` and round to a tile. 4. Clamp the result to map bounds and check walkable if needed. 5. Draw a highlight on the picked tile for feedback. 6. On click, dispatch the tile coord to the gameplay handler. 7. Test picking at multiple zoom levels and pan offsets. ```js const world = screenToWorld(pointer, cam); const tile = worldToGrid(world, W, H); // then round ``` ## Rationalizations (Stop Lying to Yourself) | Excuse | Reality | |---|---| | "I will skip the camera inverse" | Then picking breaks the moment you pan/zoom. Always invert. | | "No need to highlight" | Players need feedback on what they will click. Highlight. | ## Red Flags - STOP if you catch yourself: - Picking that ignores camera pan/zoom. - No rounding so edge tiles mis-select. - No visual highlight feedback. ## Verification You are NOT done until every box is checked: - [ ] Picked tile is correct at any pan and zoom. - [ ] Hover highlight matches the actual selected tile. - [ ] Clicks dispatch the right grid coordinate.
© 0xheycat · MIT · 0xheycat/isometric-game-skills