gameui-for-phaser-js更新到最新版本

Hola Cantk是一个功能强大的游戏引擎,它拥有丰富的GUI控件,配合Hola Studio可以快速开发出游戏的UI界面。Phaser是一个流行而且强大的游戏引擎,但是它的GUI控件很少,而且缺乏界面编辑器,导出开发游戏UI界面比较低效。gameui-for-phaser-js就是为了发挥两者的长处,让你可以用Hola StudioUI界面,用Phaser开发游戏,然后把两者无缝结合起来。

集成到Phaser项目

1.创建Phaser项目。

2.把本项目的gameui目录中的文件拷贝到Phaser项目中。

3.用Hola Studio创建游戏的UI。

4.在Hola Studio的文件菜单中导出『HTML文件』。

5.把导出的zip文件中的myapp.js,assets目录拷贝到Phaser项目。

6.在index.html中添加下列脚本:

    <script src="myapp.js"></script>
    <script src="cantk-phaser/cantk-core.js"></script>
    <script src="cantk-phaser/phaser-widget.js"></script>
    <script src="cantk-phaser/phaser-cantk.js"></script>

7.初始化。

    Phaser.CanTK.init(game, guiData);

8.打开窗口。

    Phaser.CanTK.openWindow("dialog", 0, 0, game.width, game.height, function(retInfo) {
        console.log("dialog closed, and return " + retInfo);
    });
抽象类: ```java abstract class MaterialObject{ String name; // 物品名称 int weight; // 物品重量 public MaterialObject(String name, int weight) { this.name = name; this.weight = weight; } // 其他方法 } abstract class AbstractTransport{ String place; // 表示当前所在地点 int capacity; // 表示容量 List<MaterialObject> goods; // 货物列表 public AbstractTransport(String place, int capacity) { this.place = place; this.capacity = capacity; this.goods = new ArrayList<>(); } abstract void moveTo(String destination); // 移动到目的地 // 其他方法 } abstract class AbstractRule{ abstract boolean judge(); // 根据规则判断结果 } abstract class AbstractGame{ AbstractRule gameOverRule; // 游戏结束规则 AbstractRule gameSuccessRule; // 游戏输赢规则 Map<String, Object> gameData; // 游戏数据 abstract void play(); // 执行游戏 // 其他方法 } abstract class Animal{ List<MaterialObject> recipe; // 食谱 public Animal() { this.recipe = new ArrayList<>(); } void addedToRecipe(MaterialObject m){ // 添加某物品进该动物的食谱 this.recipe.add(m); } boolean isFood(MaterialObject m){ // 判断某物品是否在它的食谱中 return this.recipe.contains(m); } abstract boolean canBeEat(MaterialObject m); // 判断某物品能不能被吃到 abstract void eat(MaterialObject m); // 吃某样食物 } abstract class Plant{ // 植物相关属性和方法 } ``` Boat类: ```java class Boat extends AbstractTransport{ public Boat(String place, int capacity) { super(place, capacity); } void crossRiver(){ // 过河 // 执行过河的操作 } void crossRiver(Person person){ // 将人运载过河 // 执行运载人的操作 } void crossRiver(Person person, MaterialObject m){ // 将人和某样物品运载过河 // 执行运载人和物品的操作 } void board(MaterialObject m){ // 物品m上船 // 执行上船的操作 } void offboard(MaterialObject m){ // 物品m下船 // 执行下船的操作 } } ``` 其他类: ```java class CrossRiverRule extends AbstractRule{ @Override boolean judge() { // 根据具体规则判断是否都渡过河 return false; } } class ObjectExistRule extends AbstractRule{ @Override boolean judge() { // 根据具体规则判断物品是否都还存在 return false; } } class GameOverRule extends AbstractRule{ @Override boolean judge() { // 根据具体规则判断游戏是否结束 return false; } } class GameSuccessRule extends AbstractRule{ @Override boolean judge() { // 根据具体规则判断游戏输赢 return false; } } class GameUI{ // 游戏界面相关属性和方法 } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值