mirror of
https://github.com/He4eT/DotDashPit.git
synced 2026-05-04 17:37:23 +00:00
game: extract types
This commit is contained in:
parent
cd6ac763f7
commit
b41c0c4a4f
1 changed files with 38 additions and 43 deletions
81
game.js
81
game.js
|
|
@ -23,26 +23,6 @@ let currentStage = 'mainMenu'
|
|||
|
||||
/* State */
|
||||
|
||||
/**
|
||||
* @typedef {{ x: number, y: number }} Point
|
||||
*/
|
||||
|
||||
/**
|
||||
* @typedef {{ x: number, y: number }} Point
|
||||
*
|
||||
* @typedef {{
|
||||
* screenPosition: Point,
|
||||
* bounds: {
|
||||
* top: number,
|
||||
* right: number,
|
||||
* bottom: number,
|
||||
* left: number,
|
||||
* },
|
||||
* spriteHalfSize: number,
|
||||
* wave: number,
|
||||
* }} Arena
|
||||
*/
|
||||
|
||||
/** @type {Arena} */
|
||||
let arena = {
|
||||
screenPosition: {
|
||||
|
|
@ -59,13 +39,6 @@ let arena = {
|
|||
wave: 0,
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {{
|
||||
* sprite: number,
|
||||
* speed: number,
|
||||
* position: Point,
|
||||
* }} Player
|
||||
*/
|
||||
/** @type {Player} */
|
||||
let player = {
|
||||
sprite: 64,
|
||||
|
|
@ -76,25 +49,9 @@ let player = {
|
|||
},
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {{
|
||||
* type: keyof typeof enemyBehaviors,
|
||||
* positions: Point[],
|
||||
* letter: string,
|
||||
* dangerZone: number,
|
||||
* }} Enemy
|
||||
*/
|
||||
/** @type {Enemy[]} */
|
||||
let enemies = []
|
||||
|
||||
/**
|
||||
* @typedef {{
|
||||
* type: keyof typeof effectHandlers
|
||||
* from: Point,
|
||||
* to: Point,
|
||||
* frames: number[],
|
||||
* }} Effect
|
||||
*/
|
||||
/** @type {Effect[]} */
|
||||
let effects = []
|
||||
|
||||
|
|
@ -450,6 +407,44 @@ const [BTN_U, BTN_D, BTN_L, BTN_R, BTN_A, BTN_B, BTN_X, BTN_Y] = [
|
|||
...Array(8).keys(),
|
||||
]
|
||||
|
||||
/* Types */
|
||||
|
||||
/**
|
||||
* @typedef {{ x: number, y: number }} Point
|
||||
*
|
||||
* @typedef {{
|
||||
* screenPosition: Point,
|
||||
* bounds: {
|
||||
* top: number,
|
||||
* right: number,
|
||||
* bottom: number,
|
||||
* left: number,
|
||||
* },
|
||||
* spriteHalfSize: number,
|
||||
* wave: number,
|
||||
* }} Arena
|
||||
*
|
||||
* @typedef {{
|
||||
* sprite: number,
|
||||
* speed: number,
|
||||
* position: Point,
|
||||
* }} Player
|
||||
*
|
||||
* @typedef {{
|
||||
* type: keyof typeof enemyBehaviors,
|
||||
* positions: Point[],
|
||||
* letter: string,
|
||||
* dangerZone: number,
|
||||
* }} Enemy
|
||||
*
|
||||
* @typedef {{
|
||||
* type: keyof typeof effectHandlers
|
||||
* from: Point,
|
||||
* to: Point,
|
||||
* frames: number[],
|
||||
* }} Effect
|
||||
*/
|
||||
|
||||
// <TILES>
|
||||
// 001:1111110012222100123321001233210012222100111111000000000000000000
|
||||
// 002:1111111112222221123333211233332112222221111111110000000000000000
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue