mirror of
https://github.com/pyscript/pyscript.git
synced 2022-05-01 19:47:48 +03:00
48 lines
1.1 KiB
JavaScript
48 lines
1.1 KiB
JavaScript
(function() {
|
|
if (typeof Mario === 'undefined')
|
|
window.Mario = {};
|
|
|
|
Flag = Mario.Flag = function(pos) {
|
|
//afaik flags always have the same height and Y-position
|
|
this.pos = [pos, 49];
|
|
this.hitbox = [0,0,0,0];
|
|
this.vel = [0,0];
|
|
this.acc = [0,0];
|
|
}
|
|
|
|
Flag.prototype.collideWall = function() {;
|
|
}
|
|
|
|
Flag.prototype.update = function(dt){
|
|
if (!this.done && this.pos[1] >= 170) {
|
|
this.vel = [0,0];
|
|
this.pos[1] = 170;
|
|
player.exit();
|
|
this.done = true;
|
|
}
|
|
this.pos[1] += this.vel[1];
|
|
}
|
|
|
|
Flag.prototype.checkCollisions = function() {
|
|
this.isPlayerCollided();
|
|
}
|
|
|
|
Flag.prototype.isPlayerCollided = function() {
|
|
if (this.hit) return;
|
|
if (player.pos[0] + 8 >= this.pos[0]) {
|
|
music.overworld.pause();
|
|
sounds.flagpole.play();
|
|
setTimeout(function() {
|
|
music.clear.play();
|
|
}, 2000);
|
|
this.hit = true;
|
|
player.flag();
|
|
this.vel = [0, 2];
|
|
}
|
|
}
|
|
|
|
Flag.prototype.render = function() {
|
|
level.flagpoleSprites[2].render(ctx, this.pos[0]-8, this.pos[1], vX, vY);
|
|
}
|
|
})();
|