actionscript-3 - AS3 : if-function doesn't listen to a boolean in another class

标签 actionscript-3 class if-statement boolean

所以...我正在制作一个国际象棋游戏,并试图让“公共(public)静态 boolean 值”(转弯)决定哪个玩家可以下棋。这个 boolean 值属于一个类 (Board.as),它导入所有棋子的所有类(例如 QueenW.as(白皇后))。

我尝试了多种方法:尝试让函数不再运行,并将片段(按钮)替换为其他对象(不可点击的动画片段)。决定选择后者。我已经在 ENTER_FRAME 函数中跟踪了棋子类和 Board 类中的 boolean 值。当值发生变化时,两者似乎都能正确追踪。

问题是:Flash 不会删除棋子并将其替换为不可单击的对象,即使它应该发生的类 (Board.as) 在跟踪时确实会监听 boolean 值。有人知道解决方案吗?

我的一小段代码,与问题相关:

Board 类(这是我的 .fla 文件的文档类)

package
{
 import QueenWclass; //imports the class used for example.

 public class Board extends MovieClip
 {
  public static var turn:Boolean = new Boolean; //creates public static bool.
  var queenW:QueenWclass = new QueenWclass(); //creates aforementioned chess-piece.

  var queenWnoturn:QueenWnoturn = new QueenWnoturn; //creates a non-clickable object.
 }

 public function Board()
 {
  turn = true;

  this.addEventListener(Event.ENTER_FRAME, frameEnter);

  addChild(queenW); //adds pieces to the screen.
 }

 if (turn == true)
 {

 }

 if (turn == false)
 {
  removeChild(queenW); //Removes chess-piece.
  addChild(queenWnoturn); //Adds a non-clickable object.
 }
}

还有我的 QueenWclass.as 类:

package
{
 public class QueenWclass extends MovieClip
 {
  var queenW:QueenW = new QueenW();
 }

 public function QueenWclass()
 {
  addChild(queenW);

  this.addEventListener(MouseEvent.CLICK, CLICKqueenW);
 }

 function CLICKqueenW(event.MouseEvent):void
 {
  Board.turn = false;
 }
}

我希望我正确且易于理解地编写了这个示例。我的项目没有真正的时间限制,因为我已经不得不在一个小时前完成它(但由于努力以及我在这个相当复杂的游戏中取得的进展,仍然得到了 6/10)。我只想自己完成它...提前致谢!

最佳答案

可能是代码没抄对或者有小问题。

这段代码:

 if (turn == true)
 {

 }

 if (turn == false)
 {
    removeChild(queenW); //Removes chess-piece.
    addChild(queenWnoturn); //Adds a non-clickable object.
 }

只会运行一次,创建“Board”时,“turn”状态改变时不会运行。

关于actionscript-3 - AS3 : if-function doesn't listen to a boolean in another class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13194651/

相关文章:

actionscript-3 - AS3 - 通过方括号表示法获取另一个属性中的属性值

apache-flex - 使用 COMPC 编译 SWC,不包括第 3 方库

c++ - 实现二进制搜索树时对类的怀疑

python - 在 if 中定义变量

flash - SampleDataEvent.data.writeFloat() - 为什么调用它两次?

actionscript-3 - 带有 DELETE 方法的 URLRequest

java - 计算 Java 类校验和的最佳方法是什么?

c++ - 在类中存储指向 sqlite3 数据库的指针会引发段错误

r - R 中的条件转换

java - 递归搜索错误