如何通过HTML5输出在游戏中显示得分?

时间:2014-10-13 14:35:25

标签: javascript html5 dart

所以我的HTML5有这个输出

<output id="counter" value="0" />

现在我的Dart有了这个

for (Gunner gunner in gunners) {
  if (bullet.checkCollision(gunner)) {
    deleteBullets.add(bullet);
    deleteGunners.add(gunner);
    int zero = 0;
    count() {
      zero = zero + 1;
      document.getElementById("counter").innerHtml = zero.toString(); 
    }
    count();
  }
}

所以我想要做的就是每当我杀死一个枪手时,我让计数器上升1但是在我杀死1个枪手后获得1点我不能再得到它,它保持在1并且不会在第一次杀戮之后继续计算我的杀戮。

1 个答案:

答案 0 :(得分:0)

您存储得分的变量是在循环中声明的,因此每次都会在0处创建新变量。您需要在其他地方声明变量(在循环之外,代码中不包含该变量)。

// Declared somewhere more global
int score = 0;
increaseScore(int incr) {
  score += incr;
  document.getElementById("counter").innerHtml = score.toString(); 
}

// Your normal loop/event handlers/whatever
renderLoop() {
  // ...
  for (Gunner gunner in gunners) {
    if (bullet.checkCollision(gunner)) {
      deleteBullets.add(bullet);
      deleteGunners.add(gunner);

      increaseScore(1);
    }
  }
  // ...
}