0

我正在为 4 名玩家(3 名机器人和 1 名人类)设计一款适用于 android 的纸牌游戏,我想知道考虑到 UI 和游戏计算的正确方法。以下是两种方法,哪一种更好?

1-启动一个线程(或assignTask),循环遍历所有玩家并相应地更新屏幕

void doInBackground(){

   for (i=0;i<13;i++){
     player1.play();
     //update GUI
     thread.sleep(1000);
     player2.play();
     //update GUI
     thread.sleep(1000);
     player3.play();
     //update GUI
     thread.sleep(1000);
     player4.play();
     //update GUI
     thread.sleep(1000);

   }

}

2-第二个选项是让循环在后台线程上运行,但每个玩家的计算都在一个线程中

void OnCreat(){

.
.
.
.
   for (i=0;i<13;i++){
     new thread().execute(player1.play());
     new thread().execute(player2.play();
     new thread().execute(player3.play();
     new thread().execute(player4.play();


   }

}

我认为第一个选项会更好,因为我不必确保没有播放器 2 不会在播放器 1 之前播放,而且我可以在播放之间使用 thread.sleep() (在播放之间暂停)。

有什么想法吗 ?甚至更好的想法?谢谢

4

1 回答 1

0

我会建议第一个选项。因为看起来在你的游戏中,玩家一个一个地玩。

于 2013-04-04T19:08:11.100 回答