博客
关于我
超小白的 入门 phaser
阅读量:652 次
发布时间:2019-03-15

本文共 2167 字,大约阅读时间需要 7 分钟。

安装必要的依赖:

  • 在项目根目录执行 npm init -y

  • 安装以下依赖:

    "@babel/core": "^7.11.1",  "@babel/preset-env": "^7.11.0",  "@babel/preset-typescript": "^7.10.4",  "babel-loader": "^8.1.0",  "html-webpack-plugin": "^4.3.0",  "phaser": "^3.24.1",  "webpack": "^5.0.0-beta.24",  "webpack-cli": "^3.3.12"
  • 修改 package.json 中的 scripts

    "dev": "webpack --mode development"
  • 创建必要文件:

    • webpack.config.js

      const path = require('path')  const HtmlWebpackPlugin = require('html-webpack-plugin')  module.exports = {    entry: {      app: './src/web/index.ts'    },    module: {      rules: [        {          test: /\.ts$/,          exclude: /(node_modules|bower_components)/,          use: {            loader: 'babel-loader'          }        }      ]    },    plugins: [      new HtmlWebpackPlugin({        filename: 'index.html',        template: './src/web/index.html'      })    ]  }
    • tsconfig.json

      {    "compilerOptions": {      "target": "ES5"    },    "include": ["src"],    "exclude": ["node_modules"]  }
    • .babelrc

      {    "presets": ["@babel/preset-env", "@babel/preset-typescript"]  }

    创建 src/web 文件夹内的文件:

    • src/web/index.html

      h5 game
    • src/web/index.ts

      import { AUTO, Game, Scene } from 'phaser';  class Demo extends Scene {    constructor() {      super("demo");    }    public preload() {      this.load.setBaseURL("http://labs.phaser.io");      this.load.image("sky", "assets/skies/space");      this.load.image("red", "assets/skies/space");      this.load.image("logo", "assets/skies/space");    }    public create() {      this.add.image(400, 300, "sky");      const particles = this.add.particles("red");      const emitter = particles.createEmitter({        speed: 100,        scale: { start: 1, end: 0 },        blendMode: "ADD"      });      const logo = this.physics.add.image(400, 100, "logo");      logo.setVelocity(100, 200);      logo.setBounce(1, 1);      logo.setCollideWorldBounds(true);      emitter.startFollow(logo);    }  }  const config: Phaser.Types.Core.GameConfig = {    type: AUTO,    width: 800,    height: 600,    parent: "main",    physics: {      default: "arcade",      arcade: {        gravity: { y: 200 }      }    }  };  const game = new Game(config);

    转载地址:http://lafmz.baihongyu.com/

    你可能感兴趣的文章
    MySQL修改密码报错ERROR 1396 (HY000): Operation ALTER USER failed for ‘root‘@‘localhost‘
    查看>>
    Mysql全局优化参数
    查看>>
    MySQL全文索引实现简单版搜索引擎
    查看>>
    MySQL全面瓦解:安装部署与准备
    查看>>
    mysql共享锁与排他锁
    查看>>
    MySQL内存表使用技巧
    查看>>
    MySQL再叙(体系结构、存储引擎、索引、SQL执行过程)
    查看>>
    mysql出现错误的解决办法
    查看>>
    MySQL函数
    查看>>
    mysql函数汇总之字符串函数
    查看>>
    mysql函数汇总之数学函数
    查看>>
    mysql函数汇总之日期和时间函数
    查看>>
    mysql函数汇总之条件判断函数
    查看>>
    mysql函数汇总之系统信息函数
    查看>>
    MySQL函数简介
    查看>>
    mysql函数遍历json数组
    查看>>
    MySQL函数(转发)
    查看>>
    mysql分区表
    查看>>
    MySQL分层架构与运行机制详解
    查看>>
    mysql分库分表中间件简书_MySQL分库分表
    查看>>