heaventaker/src/game/maps.js
2021-05-26 15:25:00 +02:00

85 lines
No EOL
2.9 KiB
JavaScript

function wind(direction) {
return {
type: "wind",
direction
}
}
const pillar = {
type: "pillar",
destroyable: false
}
const cloud = {
type: "cloud",
destroyable: true
}
/**
* @type {
[key: string]: {
background: string,
sprite: string,
offset: { x: number, y: nunber },
size: { x: number, y: number },
px: number,
steps: number,
map: {
x: number,
y: number,
type: string
}[]
}
}
*/
export const maps = {
uriel: {
background: "level1",
sprite: "uriel",
next: "uriel_entrance",
offset: { // map offset for alignment
x: 60,
y: 100
},
size: { // map size (per block)
x: 5,
y: 7
},
steps: 13,
px: 100, // block size
map: [
["barrier", "barrier", "angel" , "barrier", "barrier"],
["barrier", "barrier", null , "barrier", "barrier"],
[pillar , null , null , null , pillar ],
[null , wind(4) , wind(4) , wind(4) , wind(4) ],
[null , cloud , wind(2) , wind(2) , pillar ],
[null , "lyre" , null , null , pillar ],
[null , "lyre" , "spawn" , null , pillar ]
]
},
michael: {
background: "level2",
sprite: "uriel",
next: "michael_heretic",
size: {
x: 11,
y: 8
},
offset: {
x: 40,
y: 90
},
px: 100,
steps: 177013,
map: [
["barrier" , "barrier" , "barrier" , "cloud" , "cloud" , "cloud" , "cloud" , "cloud" , "cloud" , "cloud" , "cloud" ],
["barrier" , "barrier" , "barrier" , "cloud" , "barrier" , "barrier" , "barrier" , "barrier" , "barrier" , "pillar" , "cloud" ],
["cloud" , "cloud" , "cloud" , "cloud" , "barrier" , "barrier" , "barrier" , "barrier" , "barrier" , "pillar" , "cloud" ],
["cloud" , "barrier" , "barrier" , "barrier" , "barrier" , "barrier" , "barrier" , "barrier" , null , "angel" , "cloud" ],
["cloud" , null , "lyre" , null , null , null , null , "lyre" , null , null , "barrier" ],
[null , null , null , "lyre" , "lyre" , null , "lyre" , null , "lyre" , "lyre" , null ],
["spawn" , null , "lyre" , null , null , "lyre" , null , "lyre" , null , null , "barrier" ],
["barrier" , "barrier" , null , "lyre" , null , null , "lyre" , "barrier" , "barrier" , "barrier" , "barrier" ]
]
}
};