0

내 컴퓨터 수업을위한 게임을 Java에 만들고 있는데, NetBeans을 사용하고 있습니다. 그것은 마치 자신의 모험 게임을 선택하는 것과 같습니다. 이것은 그들이 자신에게 피해를 줄 수있는 옵션을 선택하면 부르는 나의 건강 방법입니다.건강 상태가 0 일 때 어떻게 내 게임 오버를 호출합니까?

괜찮 으면 좋겠어. 내가 원하는 방식으로 피해를 입는다. 내가 가지고있는 한가지 문제는 그것을 gameover 메서드로 보내는 if 문을 넣는 것입니다.

incompatible types 
Required: boolean 
Found: int 

날이 문제를 해결 도와주세요 - 그것은 나에게 아래의 오류를주고있다.

package sauvelostdog; 

import java.awt.Toolkit; 
import java.util.Scanner; 

public class SauveLostDog { 

    //set starting health to 10 

    static int playerHealth = 10; 

    public static void health(int damageAmount) { 

     int damage; 

     //player taking 3 damage 
     if (damageAmount == 3) { 
      damage = 3; 
      playerHealth = playerHealth - damage; 
      System.out.println(playerHealth); 
     } else if (damageAmount == 4) { 
      //player taking 4 damage 
      damage = 4; 
      playerHealth = playerHealth - damage; 
      System.out.println(playerHealth); 
     } else if (damageAmount == 5) { 
      //player taking 5 damage 
      damage = 5; 
      playerHealth = playerHealth - damage; 
      System.out.println(playerHealth); 
     } 
      //this is what is giving me problems 
      if(playerHealth => 0){ 
      gameover(); 

    } 
} 
+0

그런데 두 번째'if' 문에는'}'이 없습니다. –

+0

'=>'?? 연산자를 확인하십시오. http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html – exexzian

답변

1

변수 playerhealth는 0보다 작거나 같아야합니다. 상태가 0보다 크거나 같을 때 본질적으로 gameover();을 출력합니다.

if(playerHealth <= 0){ 
    gameover(); 
} 
+0

이건 좀 오래된 것이지만'=>'는'> ='과 같지 않습니다. 그는 gameover()를 출력하지 않습니다. heath가 0보다 크거나 같을 때 부울을 기대하기 때문에 오류가 발생하지만 대신 playerHealth에 값 0을 할당하므로 int가됩니다. (나는 그것이 일어난다라고 생각한다, 100 % 확신하지 않는다'=>'는 자바에서한다) – Jordan

관련 문제