• 💒 es6 + canvas 开源 盖楼小游戏 完整代码注释 从零教你做游戏(一)


    盖楼游戏

    一个基于 Canvas 的盖楼游戏

    Demo 预览

    在线预览地址 (Demo Link)

    手机设备可以扫描下方二维码

    github

    https://github.com/bmqb/tower_game 喜欢的朋友 给个star 支持一下哦

    Game Rule 游戏规则

    以下为默认游戏规则,也可参照下节自定义游戏参数

    • 每局游戏生命值为3,掉落一块楼层生命值减1,掉落3块后游戏结束,单局游戏无时间限制

    • 成功盖楼加25分,完美盖楼加50分,连续完美盖楼额外加25分,楼层掉落扣除生命值1,单局游戏共有3次掉落机会

    栗子:第一块完美盖楼加50分,第二块连续完美盖楼加75分,第三块连续完美盖楼加100分,依此类推……

    Customise 自定义

    git clone https://github.com/bmqb/tower_game.git
    cd tower_game
    npm install
    npm start
    

    打开 http://localhost:8082

    • 图片、音频资源可以直接替换 assets 目录下对应的资源文件
    • 游戏规则可以修改 index.html 文件 L480option 对象

    Option 自定义选项

    可以使用以下 option 表格里的参数,完成游戏自定义,所有参数都是非必填项

    Option Type Description
    width number 游戏主画面宽度
    height number 游戏主画面高度
    canvasId string Canvas 的 DOM ID
    soundOn boolean 是否开启声音
    successScore number 成功盖楼分数
    perfectScore number 完美盖楼额外奖励分数
    hookSpeed function 钩子平移速度
    hookAngle function 钩子摆动角度
    landBlockSpeed function 下方楼房横向速度
    setGameScore function 当前游戏分数hook
    setGameSuccess function 当前游戏成功次数hook
    setGameFailed function 当前游戏失败次数hook

    hookSpeed

    钩子平移速度
    函数接收两个参数,当前成功楼层和当前分数,返回速度数值

    function(currentFloor, currentScore) {
      return number
    }
    

    hookAngle

    钩子摆动角度
    函数接收两个参数,当前成功楼层和当前分数,返回角度数值

    function(currentFloor, currentScore) {
      return number
    }
    

    landBlockSpeed

    下方楼房平移速度
    函数接收两个参数,当前成功楼层和当前分数,返回速度数值

    function(currentFloor, currentScore) {
      return number
    }
    

    setGameScore

    当前游戏分数hook
    函数接收一个参数,当前游戏分数

    function(score) {
      // your logic
    }
    

    setGameSuccess

    当前游戏成功次数hook
    函数接收一个参数,当前游戏成功次数

    function(successCount) {
      // your logic
    }
    

    setGameFailed

    当前游戏失败次数hook
    函数接收一个参数,当前游戏失败次数

    function(failedCount) {
      // your logic
    }
    

    License

    MIT license.

  • 相关阅读:
    理解AXI Quad Serial Peripheral Interface(SPI) IP核
    xilinx 高速收发器Serdes深入研究-Comma码(转)
    Zynq-PL中创建AXI Master接口IP及AXI4-Lite总线主从读写时序测试(转)
    一步一步开始FPGA逻辑设计
    万兆网调试(转)
    自定义AXI-IP核(转)
    在嵌入式设计中使用MicroBlaze(Vivado版本)(转)
    MicroBlaze核的串行接口实验:SPI UART
    Git超实用总结
    无法获取 vmci 驱动程序版本: 句柄无效
  • 原文地址:https://www.cnblogs.com/iamkun/p/8616104.html
Copyright © 2020-2023  润新知