Ok, so the page refreshed to Javascript and now is frozen.
this is not a lot of code but it is all there was. It did not save all the code.
namespace SpriteKind {
export const lostCoins = SpriteKind.create()
}
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile21`, function (sprite, location) {
mySprite.setVelocity(-5 - mySprite.vx, -5 - mySprite.vy)
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile33`, function (sprite, location) {
controller.moveSprite(mySprite, 0, 0)
mySprite.vx = -200
})
controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
if (mySprite.isHittingTile(CollisionDirection.Bottom)) {
mySprite.vy = -125
}
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile34`, function (sprite, location) {
controller.moveSprite(mySprite, 100, 0)
mySprite.setVelocity(0, 0)
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile35`, function (sprite, location) {
controller.moveSprite(mySprite, 0, 0)
mySprite.vy = -200
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile11`, function (sprite, location) {
currentLevel += 1
levelUpdate()
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`Tile0`, function (sprite, location) {
mySprite.vy = -250
timer.after(200, function () {
for (let index = 0; index < 5; index++) {
tiles.setTileAt(location, assets.tile`Tile1`)
pause(500)
tiles.setTileAt(location, assets.tile`Tile2`)
pause(500)
}
})
})
controller.menu.onEvent(ControllerButtonEvent.Pressed, function () {
levelUpdate()
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile13`, function (sprite, location) {
mySprite.setVelocity(0 - mySprite.vx, 0 - Math.abs(mySprite.vy))
if (info.score() > 0) {
if (info.score() > 1000) {
for (let index = 0; index < 10; index++) {
mySprite2 = sprites.create(img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`, SpriteKind.lostCoins)
mySprite2.ay = 200
mySprite2.fx = 50
mySprite2.setPosition(mySprite.x, mySprite.y)
mySprite2.setVelocity(randint(-125, 125), randint(-125, 125))
mySprite2.lifespan = 2000
animation.runImageAnimation(
mySprite2,
[img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`],
100,
true
)
info.changeScoreBy(-100)
}
} else {
for (let index = 0; index < info.score() / 100; index++) {
mySprite2 = sprites.create(img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`, SpriteKind.lostCoins)
mySprite2.ay = 200
mySprite2.fx = 50
mySprite2.setPosition(mySprite.x, mySprite.y)
mySprite2.setVelocity(randint(-125, 125), randint(-125, 125))
mySprite2.lifespan = 2000
animation.runImageAnimation(
mySprite2,
[img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`],
100,
true
)
}
info.setScore(0)
}
} else {
info.changeLifeBy(-1)
levelUpdate()
}
mySprite.setFlag(SpriteFlag.GhostThroughTiles, true)
timer.after(500, function () {
mySprite.setFlag(SpriteFlag.GhostThroughTiles, false)
})
})
sprites.onOverlap(SpriteKind.Player, SpriteKind.Food, function (sprite, otherSprite) {
otherSprite.destroy()
music.playTone(622, music.beat(BeatFraction.Eighth))
music.playTone(659, music.beat(BeatFraction.Quarter))
info.changeScoreBy(100)
})
scene.onOverlapTile(SpriteKind.Player, assets.tile`tile20`, function (sprite, location) {
controller.moveSprite(mySprite, 0, 0)
mySprite.vx = 200
})
function levelUpdate () {
tiles.replaceAllTiles(assets.tile`Tile1`, assets.tile`Tile0`)
tiles.replaceAllTiles(assets.tile`Tile2`, assets.tile`Tile0`)
mySprite.setVelocity(0, 0)
controller.moveSprite(mySprite, 100, 0)
tiles.destroySpritesOfKind(SpriteKind.Food)
if (currentLevel < list.length) {
tiles.loadMap(list[currentLevel])
for (let value of tiles.getTilesByType(assets.tile`tile10`)) {
mySprite2 = sprites.create(img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`, SpriteKind.Food)
animation.runImageAnimation(
mySprite2,
[img`
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
`],
100,
true
)
tiles.placeOnTile(mySprite2, value)
tiles.setTileAt(value, assets.tile`transparency16`)
}
tiles.placeOnRandomTile(mySprite, assets.tile`tile12`)
} else {
game.over(true)
}
}
scene.onOverlapTile(SpriteKind.Player, assets.tile`Tile7`, function (sprite, location) {
mySprite.setVelocity(mySprite.vx, -5 - Math.abs(mySprite.vy))
})
let mySprite2: Sprite = null
let currentLevel = 0
let list: tiles.WorldMap[] = []
let mySprite: Sprite = null
scene.setBackgroundImage(img`
a e 3 . a 7 e d 1 b 7
`)
mySprite = sprites.create(img`
a e 3 . a 7 e a d e
`, SpriteKind.Player)
scene.cameraFollowSprite(mySprite)
mySprite.ay = 200
controller.moveSprite(mySprite, 100, 0)
list = [
tiles.createMap(tilemap`level1`),
tiles.createMap(tilemap`level4`),
tiles.createMap(tilemap`level6`),
tiles.createMap(tilemap`level8`),
tiles.createMap(tilemap`level9`),
tiles.createMap(tilemap`level11`),
tiles.createMap(tilemap`level12`)
]
currentLevel = game.askForNumber("")
levelUpdate()
spriteutils.setLifeImage(img`
a e 3 . a 7 e a d e
`)
info.setLife(3)
info.setScore(0)
game.onUpdate(function () {
if (mySprite.tileKindAt(TileDirection.Bottom, assets.tile`tile2`) || (mySprite.tileKindAt(TileDirection.Bottom, assets.tile`tile8`) || mySprite.tileKindAt(TileDirection.Bottom, assets.tile`tile9`))) {
mySprite.setImage(img`
a e 3 . a 7 e a d e
`)
} else {
mySprite.setImage(img`
a e 3 . a 7 e d 1 b 7
`)
}
if (mySprite.bottom >= tiles.tilemapRows() * tiles.tileWidth()) {
info.changeLifeBy(-1)
levelUpdate()
}
})