phaserjs / phaserjs/phaser

HitArea is not updated correctly when changing an Arc’s size via Tween

Open
#7,218 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

⌨️ Input
Dominant language
JavaScript
Stars
40.3k
Forks
7.2k
PR merge metrics
No merged PRs in 30d

Description

Version

  • Phaser Version:

v3.90.0

  • Operating system:

Linux

  • Browser:

Google Chrome 142.0.7444.175

Description

When changing the radius of an Arc via a tween, its hitArea remains at the size it had when it was first created.
As a result, the clickable area no longer matches what is visually displayed.

While investigating, I also noticed that the hitArea for Arc appears to be implemented as a Rectangle. Since there seems to be a dedicated hitArea class for arcs, this may also be unintended behavior.

Example Test Code

Below is a minimal reproduction demo:
https://codepen.io/laineus/pen/raewXYB

The circle has a pointerdown handler that count up.
Even if the circle grows larger, clicking the bottom-right area of the circle does not trigger the event.

Additional Information

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked CodePen reproduction and the Arc hitArea behavior described in the issue. Trace how the Arc radius changes through a tween and how pointer input uses the hit area; done means the clickable region follows the resized visual Arc, including its expanded bottom-right area.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.