https://github.com/open-node/open-game
https://github.com/open-node/open-game
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/open-node/open-game
- Owner: open-node
- Created: 2019-07-15T02:38:54.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-07-24T07:31:55.000Z (almost 6 years ago)
- Last Synced: 2025-02-22T11:46:00.425Z (4 months ago)
- Language: JavaScript
- Size: 1.15 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# open-game
npm i open-game --save# Examples
* [Flappy bird](https://github.com/open-node/flappy-bird)### Table of Contents
- [Actor][1]
- [Parameters][2]
- [reset][3]
- [update][4]
- [render][5]
- [aabb][6]
- [Parameters][7]
- [isItOn][8]
- [Parameters][9]
- [isOut][10]
- [Game][11]
- [Parameters][12]
- [reset][13]
- [init][14]
- [Parameters][15]
- [progress][16]
- [Parameters][17]
- [loadResources][18]
- [Parameters][19]
- [drawImageAlignCenterByName][20]
- [Parameters][21]
- [drawImageByName][22]
- [Parameters][23]
- [registCallback][24]
- [Parameters][25]
- [Scene][26]
- [Parameters][27]
- [update][28]
- [render][29]
- [enter][30]
- [click][31]
- [Parameters][32]## Actor
Actor 类
### Parameters
- `game` **[Game][33]** 游戏实例
- `size`Returns **[Actor][34]** Instance
### reset
重置参数值
Returns **void**
### update
更新参数值
Returns **void**
### render
渲染自己
Returns **void**
### aabb
碰撞判断
#### Parameters
- `x`
- `y`
- `w`
- `h`
- `target` **[Actor][34]**Returns **[boolean][35]**
### isItOn
给定一组 x, y判断是否在角色身上
#### Parameters
- `cX`
- `cY`Returns **[boolean][35]**
### isOut
判断是否已经出去在画布之外
Returns **[boolean][35]**
## Game
Game 类
### Parameters
- `canvas` **[Object][36]** DOM对象,或者node.js 下 require('canvas').createCanvas()
- `Image` **[Function][37]** 图片构造函数,浏览器下为 window.Image, node.js 下为 require('canvas').Image
- `width` **[Number][38]** 期望的画布宽度,浏览器下全拼为 document.documentElement.clientWidth
- `height` **[Number][38]** 期望的画布高度,浏览器下全拼为 document.documentElement.clientHeight
- `widthRange` **\[[Number][38]]?** 画布宽度取值范围,不设置则宽度严格等于 width
- `heightRange` **\[[Number][38]]?** 画布高度取值范围,不设置则宽度严格等于 heigth### reset
重置游戏参数, 例如积分
Returns **void**
### init
初始化并开始游戏
#### Parameters
- `resources` **Array.Object** 游戏所需静态资源对象 key => value 格式, key 为资源名称,value为object,格式如下
{
type: 'image', // audio, video, image
name: 'name', // 资源名称,预加载后会存入 this.R 方便随时获取
url: '[https://urladress/'][39], // 资源地址
map: '[https://urladress/][40]' // 图片资源对应的定位信息文件, 仅 type = image 有效
}Returns **void**
### progress
显示资源加载 loading 效果
#### Parameters
- `percent`
- `resources` **Array.URL** 游戏所需静态资源url列表Returns **void**
### loadResources
加载游戏所需静态资源
#### Parameters
- `resources` **Array.Object** 游戏所需静态资源对象 key => value 格式, key 为资源名称,value为object,格式如下
{
type: 'image', // audio, video, image
name: 'name', // 资源名称,预加载后会存入 this.R 方便随时获取
url: '[https://urladress/'][39], // 资源地址
map: '[https://urladress/][40]' // 图片资源对应的定位信息文件, 仅 type = image 有效
}Returns **void**
### drawImageAlignCenterByName
水平居中绘制图片获取图片切片
#### Parameters
- `name` **[string][41]** 图片名称
- `y` **[number][38]** 在画布上的y坐标Returns **void**
### drawImageByName
绘制图片获取图片切片
#### Parameters
- `name` **[string][41]** 图片名称
- `x` **[number][38]** 在画布上的x坐标
- `y` **[number][38]** 在画布上的y坐标Returns **void**
### registCallback
注册帧回调函数
#### Parameters
- `frames` **[number][38]** 多少帧之后
- `handler` **[function][37]** 执行的事件函数Returns **void**
## Scene
Scene 类
### Parameters
- `game` **[Game][33]** 游戏实例
- `name`Returns **[Scene][42]** Instance
### update
更新各成员
Returns **void**
### render
渲染各成员
Returns **void**
### enter
进入场景
Returns **void**
### click
点击事件
#### Parameters
- `x`
- `y`Returns **void**
[1]: #actor
[2]: #parameters
[3]: #reset
[4]: #update
[5]: #render
[6]: #aabb
[7]: #parameters-1
[8]: #isiton
[9]: #parameters-2
[10]: #isout
[11]: #game
[12]: #parameters-3
[13]: #reset-1
[14]: #init
[15]: #parameters-4
[16]: #progress
[17]: #parameters-5
[18]: #loadresources
[19]: #parameters-6
[20]: #drawimagealigncenterbyname
[21]: #parameters-7
[22]: #drawimagebyname
[23]: #parameters-8
[24]: #registcallback
[25]: #parameters-9
[26]: #scene
[27]: #parameters-10
[28]: #update-1
[29]: #render-1
[30]: #enter
[31]: #click
[32]: #parameters-11
[33]: #game
[34]: #actor
[35]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
[36]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object
[37]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function
[38]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number
[39]: https://urladress/'
[40]: https://urladress/
[41]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
[42]: #scene