SuperMarioOnlyChild

SuperMarioOnlyChild

Advanced Hands-on Rust: Flappy dimensions are wrong (height should be 45)

The actual height of the flappy image is 45 pixels:

$ file assets/flappy_dragon.png assets/flappy_sprite_sheet.png
assets/flappy_dragon.png:       PNG image data, 65 x 45, 8-bit/color RGBA, non-interlaced
assets/flappy_sprite_sheet.png: PNG image data, 249 x 45, 8-bit/color RGBA, non-interlaced

However, the height is listed as 65 for both the asset loading and collision detection for the entirety of the book. Here’s the asset loading code starting in chapter 7 (FlappyAnimation directory):

      .add_sprite_sheet("flappy", "flappy_sprite_sheet.png", 
        62.0, 65.0, 4, 1)?

And here’s the collision detection code starting in chapter 8 (FlappyCollision):

spawn_animated_sprite!(
    assets, commands, "flappy", -490.0, 0.0, 10.0, "Straight and Level",
    Flappy { gravity: 0.0 }, FlappyElement, Velocity::default(), ApplyGravity,
    AxisAlignedBoundingBox::new(62.0, 65.0)
);

I noticed this because you can make Flappy crash without touching the wall if you try to nose dive right after clearing the wall.

Where Next?

Popular Pragmatic Bookshelf topics Top

abtin
page 20: … protoc command… I had to additionally run the following go get commands in order to be able to compile protobuf code using go...
New
jon
Some minor things in the paper edition that says “3 2020” on the title page verso, not mentioned in the book’s errata online: p. 186 But...
New
jesse050717
Title: Web Development with Clojure, Third Edition, pg 116 Hi - I just started chapter 5 and I am stuck on page 116 while trying to star...
New
yulkin
your book suggests to use Image.toByteData() to convert image to bytes, however I get the following error: "the getter ‘toByteData’ isn’t...
New
rmurray10127
Title: Intuitive Python: docker run… denied error (page 2) Attempted to run the docker command in both CLI and Powershell PS C:\Users\r...
New
hgkjshegfskef
The test is as follows: Scenario: Intersecting a scaled sphere with a ray Given r ← ray(point(0, 0, -5), vector(0, 0, 1)) And s ← sphere...
New
dsmith42
Hey there, I’m enjoying this book and have learned a few things alredayd. However, in Chapter 4 I believe we are meant to see the “>...
New
adamwoolhether
Is there any place where we can discuss the solutions to some of the exercises? I can figure most of them out, but am having trouble with...
New
jwandekoken
Book: Programming Phoenix LiveView, page 142 (157/378), file lib/pento_web/live/product_live/form_component.ex, in the function below: d...
New
New

Other popular topics Top

PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
New
Margaret
Hello everyone! This thread is to tell you about what authors from The Pragmatic Bookshelf are writing on Medium.
1147 29994 760
New
PragmaticBookshelf
Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single...
New
New
PragmaticBookshelf
Programming Ruby is the most complete book on Ruby, covering both the language itself and the standard library as well as commonly used t...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
NewsBot
Node.js v22.14.0 has been released. Link: Release 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 · nodejs/node · GitHub
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New

Sub Categories: