Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clicker Monsters: After collecting 100 coins, no more coins appear #15265

Open
Jmousy opened this issue Feb 18, 2024 · 1 comment · May be fixed by #15904
Open

Clicker Monsters: After collecting 100 coins, no more coins appear #15265

Jmousy opened this issue Feb 18, 2024 · 1 comment · May be fixed by #15904
Labels
bug Something isn't working

Comments

@Jmousy
Copy link
Contributor

Jmousy commented Feb 18, 2024

Describe the bug

In the game Clicker Monsters(AVM1), you earn coins every time you defeat a monster. (Coins are generated indefinitely, regardless of whether you clear the stage or not.)

However, after you collect a total of 100 coins, no more coins appear for defeating monsters.
If you move to a different stage or purchase an upgrade, the problem persists.

However, after restarting the game to load your saved history, the coins will appear again.

(If the video doesn't play, you can download it to watch)

clicker-monsters.mp4

Expected behavior

You should be able to earn coins every time you defeat a monster.

Content Location

Attached file:

clicker-monsters.zip

Affected platform

Desktop app

Operating system

Windows 10 22H2

Browser

Google Chrome 121

Additional information

No response

@Jmousy Jmousy added the bug Something isn't working label Feb 18, 2024
@turicfr
Copy link
Contributor

turicfr commented Apr 6, 2024

The issue occurs when a removed MovieClip is passed to a function named removeSpider in DefineSprite 927. Ruffle mistakenly passes a boxed undefined instead of the reference to the removed clip. An example that demonstrates this:

var mc = this.createEmptyMovieClip("mc", 1);
removeMovieClip(mc);
f(mc);

function f(a) {
    trace(a == undefined); // false in Flash, true in Ruffle
}

There is also an ignored test with the same issue -- string_paths_reference_launder.

@turicfr turicfr linked a pull request Apr 7, 2024 that will close this issue
turicfr added a commit to turicfr/ruffle that referenced this issue Apr 7, 2024
Previously, removed MovieClips that were passed to a function using one
of CallFunction/CallMethod/NewObject/NewMethod were coerced to a boxed
undefined object.
Fixes ruffle-rs#15265
Lord-McSweeney pushed a commit to turicfr/ruffle that referenced this issue Apr 15, 2024
Previously, removed MovieClips that were passed to a function using one
of CallFunction/CallMethod/NewObject/NewMethod were coerced to a boxed
undefined object.
Fixes ruffle-rs#15265
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants