gpt4 book ai didi

Java:CPU 播放器值未计算

转载 作者:行者123 更新时间:2023-12-01 22:41:06 25 4
gpt4 key购买 nike

我有一个非常简单的游戏:两个玩家一开始有 10 个攻击点,然后选择一些攻击点来攻击另一个玩家,目标是将另一个玩家的生命从 40 减少到零。我已经让两个播放器功能工作得很好,但是当涉及到为单人播放器中的计算机播放器生成值时(使用 switch-case 设置),似乎没有生成任何值。难度标志是通过单选按钮组设置的,但无论难度设置为多少,都不会生成计算机玩家的攻击值。

//This code calculates remaining attack/life points with the selected attack values.
//It's here that CPU player attack values SHOULD be set as well.
if(attackVal1 <= player1AtkPoints)
{
player1AtkPoints = player1AtkPoints - attackVal1;
}
else
if(attackVal1 > player1AtkPoints)
{
attackVal1 = player1AtkPoints;
player1AtkPoints = 0;
}

life2 = life2 - attackVal1;

if(P2ACTIVE = false)
{
switch(difficultyFlag)
{

case 1:
attackVal2 = cpuPlayer.nextInt(3) + 1;
break;

case 2:
attackVal2 = cpuPlayer.nextInt(4) + 1;
break;

case 3:
attackVal2 = cpuPlayer.nextInt(5) + 1;
break;

case 4:
attackVal2 = cpuPlayer.nextInt(8) + 1;
break;

default:
attackVal2 = cpuPlayer.nextInt(3)+ 1;
break;
}
}

if(attackVal2 <= player2AtkPoints)
{
player2AtkPoints = player2AtkPoints - attackVal2;
}
else
if(attackVal2 > player2AtkPoints)
{
attackVal2 = player2AtkPoints;
player2AtkPoints = 0;
}

life1 = life1 - attackVal2;

以上是相关代码。对于单人玩家和两个玩家,玩家一计算会减少玩家两个生命点,而两个玩家模式会减少玩家一的生命。只有当设置为单人游戏时,玩家的生命值不会发生任何变化,从而导致战斗一边倒。

最佳答案

当您打算将其与 false 进行比较时,您已将这一行中的 P2ACTIVE 指定为 false

if(P2ACTIVE = false)

您可以使用 == 比较运算符,但它已经是一个 boolean,因此只需使用 ! 运算符:

if (!P2ACTIVE)

关于Java:CPU 播放器值未计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26108675/

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