pxt-common-packages
Version:
Microsoft MakeCode (PXT) common packages
61 lines (51 loc) • 1.33 kB
text/typescript
namespace sprites {
enum ObstacleFlags {
Moved = 1 << 4,
Dead = 1 << 5
}
export interface Obstacle {
x: number;
y: number;
left: number;
right: number;
top: number;
bottom: number;
width: number;
height: number;
layer: number;
image: Image;
tileIndex: number;
}
export class StaticObstacle implements Obstacle {
layer: number;
image: Image;
tileIndex: number;
top: number;
left: number;
constructor(image: Image, top: number, left: number, layer: number, tileIndex?: number) {
this.image = image;
this.layer = layer;
this.top = top;
this.left = left;
this.tileIndex = tileIndex;
}
get x(): number {
return this.left + (this.width >> 1);
}
get y(): number {
return this.top + (this.height >> 1);
}
get height(): number {
return this.image.height;
}
get width(): number {
return this.image.width;
}
get bottom(): number {
return this.top + this.height;
}
get right(): number {
return this.left + this.width;
}
}
}