将函数内部的Int更新为global

问题描述

我是Scala的初学者,在编写涉及到围绕2D数组移动的游戏的代码时遇到了一些麻烦。

class Game(
  wall: List[(Int,Int)],bounty: List[(Int,Int,Int => Int)],var playerX: Int,var playerY: Int
) 

在这里初始化playerXplayerY的值。

def getPlayerPos(): (Int,Int) = {
  return (playerX,playerY);
}

这里的功能getPlayerPos()是更新原始的playerXplayerY

def al() {
  if (playerX - 1 >= 0)
    if (field(playerX - 1)(playerY) == true) {
      if (!wall.contains(playerX - 1,playerY))
        playerX - 1
      checkBounty();
      checkBounties();
      getPlayerPos();
    }
}

此代码“应”将播放器向左移动,但是playerXplayerY在移动一次后始终重置为0。

我错过了重要的事情吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)