gpt4 book ai didi

java - 通过交替切换 Action 在游戏中实现暂停

转载 作者:行者123 更新时间:2023-11-29 08:32:24 25 4
gpt4 key购买 nike

我想知道在小游戏中实现计算机和人类 Action 交替切换的更好方法。电脑先玩,然后人类通过点击一些按钮来玩,然后是电脑,再是人类等等。

frame.computerPlaysRandom();
while(!frame.end)
{
//if(frame.alreadyExecuted)
// {
frame.computerPlaysRandom();

// }
// frame.computerPlaysRandom();
}

我想把 boolean 变量 alreadyExecuted 放在humanPlays 方法,但它不起作用。

public void computerPlaysRandom()
{
......
if(activeColour == RED)
{
.....
}
activeColour = YELLOW;
}

我不喜欢这种方式,首先它看起来不自然,就像人类和电脑同时玩一样。另一个是它不断循环。

我尽力解释了,请给我建议更好的方法。

最佳答案

作为@Andrew Thompson comments ,“游戏模型应该跟踪它是谁玩的。”一个简单的MVC实例游戏查看here .在这个更复杂的回合制中 game ,当按下一个键时,玩家会移动以逃离前进的敌人。 key 处理程序,参见 here , 使用给定的 Key 调用游戏模型的 move() 方法:

game.move(k.getMove());

游戏模型的move()方法更新玩家的位置并相应地移动敌人。然后模型在调用 moveBots() 时触发更新事件。 .每个监听 View 然后呈现其新游戏状态的一部分。例如,RCView绘制新的玩家/敌人位置,其他 View 更新分数和状态显示。

如果您的模型的游戏逻辑过于复杂,它可能会减慢 event dispatch thread .如果是这样,请在 SwingWorker 的后台运行模型.

关于java - 通过交替切换 Action 在游戏中实现暂停,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46801830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com