more forgiving movement/bloackers#123
Conversation
📝 WalkthroughWalkthroughAdds a ChangesMine POI, proximity gating, and collision geometry
Sequence Diagram(s)sequenceDiagram
actor Player
participant MapDashboardClient
participant isPointInPOITrigger
participant MapLocationDialog
Player->>MapDashboardClient: move character (keyboard/dpad)
MapDashboardClient->>isPointInPOITrigger: check each enabled open-dialog POI vs sourcePosition
isPointInPOITrigger-->>MapDashboardClient: nearbyPOIIDs set
MapDashboardClient-->>Player: render nearby POI markers as active (pulse animation)
Player->>MapDashboardClient: click "Inspect cave-in" marker
MapDashboardClient->>MapDashboardClient: travelToLocation — guard: id in nearbyPOIIDs
MapDashboardClient->>MapLocationDialog: open mine dialog
MapLocationDialog-->>Player: display Mine / cave-in blocked message
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
scripts/convert-tiled-map.mjsOops! Something went wrong! :( ESLint: 9.39.3 TypeError: Converting circular structure to JSON ... [truncated 445 characters] ... c/dist/eslintrc.cjs:3261:25) scripts/validate-map-manifest.mjsOops! Something went wrong! :( ESLint: 9.39.3 TypeError: Converting circular structure to JSON ... [truncated 445 characters] ... c/dist/eslintrc.cjs:3261:25) src/app/(frontend)/dashboard/map/MapCharacterSelector.tsxOops! Something went wrong! :( ESLint: 9.39.3 TypeError: Converting circular structure to JSON ... [truncated 445 characters] ... c/dist/eslintrc.cjs:3261:25)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
src/app/(frontend)/globals.css (1)
359-387: 🧹 Nitpick | 🔵 Trivial | ⚡ Quick winRespect reduced-motion preferences for the POI pulse animation.
The new infinite pulse runs for all users. Add a
prefers-reduced-motion: reduceoverride to disable or tone down this animation.Suggested patch
.map-location-pin { align-items: center; animation: map-poi-pulse 2.8s ease-in-out infinite; @@ } +@media (prefers-reduced-motion: reduce) { + .map-location-pin { + animation: none; + transform: none; + } +} + `@keyframes` map-poi-pulse { 0%, 100% {🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/app/`(frontend)/globals.css around lines 359 - 387, The `.map-location-pin` class applies an infinite pulse animation that runs continuously for all users without respecting accessibility preferences. Add a `@media (prefers-reduced-motion: reduce)` media query that overrides the animation property on the `.map-location-pin` selector to disable the animation by setting it to none, ensuring users who prefer reduced motion will not see the map-poi-pulse animation.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@src/app/`(frontend)/globals.css:
- Around line 359-387: The `.map-location-pin` class applies an infinite pulse
animation that runs continuously for all users without respecting accessibility
preferences. Add a `@media (prefers-reduced-motion: reduce)` media query that
overrides the animation property on the `.map-location-pin` selector to disable
the animation by setting it to none, ensuring users who prefer reduced motion
will not see the map-poi-pulse animation.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 42b16f99-449d-4931-93ee-37555d466b9b
📒 Files selected for processing (12)
docs/map-dashboard-feature-spec.mdpublic/assets/map/maps/adventure/adventure.tiled.jsonpublic/assets/map/maps/adventure/map.jsonscripts/convert-tiled-map.mjsscripts/validate-map-manifest.mjssrc/app/(frontend)/dashboard/map/MapCharacterSelector.tsxsrc/app/(frontend)/dashboard/map/MapDashboardClient.tsxsrc/app/(frontend)/dashboard/map/MapLocationDialog.tsxsrc/app/(frontend)/dashboard/map/MapSprite.tsxsrc/app/(frontend)/dashboard/map/mapConfig.tssrc/app/(frontend)/globals.csstests/e2e/app.spec.ts
Summary
Enables a more playable free-walk map experience and tightens point-of-interest interactions.
Summary by CodeRabbit
Release Notes
New Features
Updates
Documentation