2

我正在制作一个虚拟宠物游戏。在这个阶段我已经加载了一个保存文件,但是当我开始包含核心功能时程序没有运行。

我发现了这个:格式错误的字符(期望引用,得到了我)〜处理 这让我认为这是我的加载功能的问题,但我是处理的新手,不知道如何调试它。

Creature creature;
String data[];
boolean gameInfo[];
int tempData[];
boolean food;

void setup() {
  size(100,100);
  String data[] = loadStrings("save.txt");
  String[] tempData = split(data[0], ',');
  gameInfo = int(tempData);
  for (int i = 0; i < data.length; i++) { 
    creature = new Creature(gameInfo[0], gameInfo[1], gameInfo[2], gameInfo[3]);
  }
  food = false;
}

void draw() {
  creature.think(food);
}

//creature class

class Creature {
  boolean idle;
  int hungry;
  int age;
  int gender;
  int asleep;


  Creature(int gender, int age, int hungry, int asleep) {
    this.gender = gender;
    this.age = age;
    this.hungry = hungry;
    this.asleep = asleep;
    boolean idle = true;
  }
  void whatDo(boolean food) {
    println('whatdo');
    if (idle = true && hungry == true) {
      if (food == true) {
        creature.eat();
      }
      else 
        creature.ask();
    }
  }

  void ask() {
    if (hungry == true) {
      println("HUNGRY");
    }
  }
  void eat() {
    println("EAT");
    idle = false;
  }
}
4

1 回答 1

2

好吧,正如您指出的链接所解释的那样,问题在于单引号用于字符分配,因此它应该是两个单引号之间的字符,例如'c',并且 println() 期望在双引号之间定义一个字符串"a string"。只需println('whatdo');用(双引号)替换第 40 行println("whatdo");,您就可以摆脱这个错误。但是我在修复之后遇到了其他错误。

于 2013-02-21T22:15:43.757 回答