Arcade - Carnival Shooting Gallery

The object is to shoot all the targets in the allotted time. Once cleared the timer restarts with 5 secs. less each time. Enjoy!

5 Likes

Best one so far

I was working on changing Greg’s Shooting Gallery game so our kids could see how easy it is to make an Arcade game different with different code. 2 things. “Erasing” only erases the top layer of a scene. The white scribbles on right side is the eraser taking off the brown layer but below that is the black layer that Greg put in. So black is what shows up below the brown “wood” of the shooting gallery counter. The second thing is (I had to take a photo with my phone because screen grab does NOT record the mouse pointer or functions) the red “no” circle which is that you can’t go back, no un-do. I have not discovered why this is but will ask the Microsoft guys why un-do does not work when erasing. Thanks for the game Greg. I was making the projectiles into rotten tomatoes and that much, plus changing the shooter to a pop-gun.

1 Like

Greg, have you tried your shooting gallery game in BETA editor? For me, the projectiles do NOT score hits. They do score hits for me in standard Arcade the game works as expected. I see some developers recommending BETA as the Arcade platform that we should use (because it is more complete?). So just wondering… Also, the above is on the computer, now on PyGamer hardware (I have not loaded it onto BPArcade as yet) but on PyGamer the same happens, if in Beta Editor for Arcade, the projectiles do not score hits on hardware console. Have not tried it in regular Arcade because the PyGamer joystick does not work with standard Arcade I’m told; as yet. MakeCode Arcade PyGamer Shooting Gallery - YouTube

Frank, I’m not sure what the issue is. I will have to look more closely at what the cause might be. They may have changes something in beta that I used in my code. ???

In looking at is closer, it looks like they changed the way MakeCode handles the Sprites.
In the older version they used an enum for the SpriteKind like this. They’ve since changed it to SpriteKindLegacy. We are working with the Microsoft team this week and will bring up this issue.

enum SpriteKind {
    Player,
    Projectile,
    Food,
    Enemy
}
let mySprite = sprites.create(img`
    . . . . . . f f f f . . . . . .
    . . . . f f f 2 2 f f f . . . .
    . . . f f f 2 2 2 2 f f f . . .
    . . f f f e e e e e e f f f . .
    . . f f e 2 2 2 2 2 2 e e f . .
    . . f e 2 f f f f f f 2 e f . .
    . . f f f f e e e e f f f f . .
    . f f e f b f 4 4 f b f e f f .
    . f e e 4 1 f d d f 1 4 e e f .
    . . f e e d d d d d d e e f . .
    . . . f e e 4 4 4 4 e e f . . .
    . . e 4 f 2 2 2 2 2 2 f 4 e . .
    . . 4 d f 2 2 2 2 2 2 f d 4 . .
    . . 4 4 f 4 4 5 5 4 4 f 4 4 . .
    . . . . . f f f f f f . . . . .
    . . . . . f f . . f f . . . . .
`, SpriteKind.Player)

On the BETA side they are doing is this way now.

enum SpriteKindLegacy {
    Player,
    Projectile,
    Food,
    Enemy
}
let mySprite = sprites.create(img`
    . . . . . . f f f f . . . . . .
    . . . . f f f 2 2 f f f . . . .
    . . . f f f 2 2 2 2 f f f . . .
    . . f f f e e e e e e f f f . .
    . . f f e 2 2 2 2 2 2 e e f . .
    . . f e 2 f f f f f f 2 e f . .
    . . f f f f e e e e f f f f . .
    . f f e f b f 4 4 f b f e f f .
    . f e e 4 1 f d d f 1 4 e e f .
    . . f e e d d d d d d e e f . .
    . . . f e e 4 4 4 4 e e f . . .
    . . e 4 f 2 2 2 2 2 2 f 4 e . .
    . . 4 d f 2 2 2 2 2 2 f d 4 . .
    . . 4 4 f 4 4 5 5 4 4 f 4 4 . .
    . . . . . f f f f f f . . . . .
    . . . . . f f . . f f . . . . .
`, SpriteKindLegacy.Player)

I love Arcade Makecode but I gotta say: “It’s as quirky as a 3 dollar bill !”.

the software is in beta and changing. Give it a couple of months and it will be much better once it is out

1 Like