javascript - 改变状态后保存健康、乐趣、金币

标签 javascript android phaser-framework

//编辑

我想在切换状态和返回状态后保存生命值、金币、乐趣值。

我创建了游戏对象/数组:

game.yourGameData = {};
game.yourGameData.health = 100;
game.yourGameData.coin = 100;
game.yourGameData.fun = 100;

接下来我定义参数 pet 的值:

//设置生命值

var health, fun, coin;


    health = this.game.yourGameData.health;
    fun = this.game.yourGameData.fun;
    coin = this.game.yourGameData.coin;

    //custom properties of the pet
    this.pet.customParams = {health, fun, coin};

并且值显示没有错误。 现在我通过函数打开子游戏:

showtry: function()
{
    this.game.state.start('brick_destro_game');
},

当我完成子游戏并切换回主状态时,生命值值为 100。

切换回状态函数:

clickOnActionExit: function()
    {
        this.game.state.start('GameState');
    },

我想看到什么: 宠物盯着100健康,然后他不吃任何东西。生命值降至 70。 我将状态切换到子游戏并开始游戏。我完成游戏并返回主状态。 宠物的生命值应为 70,但已重置为 100。

All project code here

game

最佳答案

就像您提到的,您可以将数据保留在带外(全局),或者我喜欢使用一种我认为比全局变量更好的方法,即将一个新对象附加到“游戏”来保存您的数据。这将在游戏中持续存在。

例如

this.game.yourGameData = {};
this.game.yourGameData.health = 70;
this.game.yourGameData.cons = 100;

关于javascript - 改变状态后保存健康、乐趣、金币,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37942489/

相关文章:

android - Urban Airship 起飞失误

javascript - 扩展 Phaser.js 类

javascript - Meteor 和 Phaser - 加载资源时出错

javascript - 在 json 构造中更改索引

javascript - Apollo 服务器+ Sequelize 错误不可为空的字段

android - 没有取消按钮的时间选择器?

android - 是否可以在 android 中使用单个 Intent 发送图像和文本文件?

javascript - Phaser 将物理应用到 Phaser.Sprite (ES6) 的子类

javascript - 防止用户在 Discord 的昵称前加点 (discord.js/Discord Bot)

javascript - jQuery UI 和 AngularJS UI 路由器中的 DOM