scratchfoundation / scratchfoundation/scratch-editor

Add an eraser to the pen extension.

Open
#353 3 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
281
Forks
276
Avg merge
7d 8h
Merged PRs (30d)
6

Description

Original: https://github.com/scratchfoundation/scratch-gui/issues/5406

Add the ability to erase pen, just like how you draw with it.

After talking with a few people, we came to the conclusion that the best way to implement this, and the easiest for people to understand, would probably be adding the following blocks:

  • eraser down
    "eraser down" block
    • This would start erasing any pen trials, based on where the sprite is. Of course, if the pen is already down, it would pen up first, then turn on the eraser. (And the other way around, if the eraser is down when pen down is called, it would eraser up first.)
  • eraser up
    • This would stop erasing.

The size of the eraser would be the same size that pen is currently at.

Optionally we could add a cut/punch hole block, which is basically the stamp block but inverted. (Still trying to think of a good name for it.)

@cwillisf , I would like to start working on this as soon as possible, so if you could approve of this, it would be much appreciated.

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 by reviewing the original scratch-gui issue and the existing pen extension to determine where pen down/up blocks and pen size are defined. Define the eraser down/up behavior, including switching between eraser and pen modes, and verify that erasing uses the current pen size. The optional cut or punch-hole block is not required by this issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.