현재 Java 게임을하고 있으며, 플레이어의 건강 상태를 나타내는 int 값이 100으로 시작하고 건강이 매회 5 씩 감소합니다 그러나 적과 교차 할 때마다 1 초에 60 번 확인합니다. 따라서 초 당 60 초 동안 빠르게 감소합니다. 플레이어는 적과 접촉하여 매초마다 300 초씩 내려갑니다. int 값이 약 3-5 초 동안 변경되는 것을 막을 수 있는지 궁금합니다.특정 시간 동안 증가 또는 감소하는 것을 중지하십시오.
try {
Thread.sleep(4000);
} catch(InterruptedException ie) {
Thread.currentThread().interrupt();
}
그리고 다음 INT는 그 이후에 추가 할 수 있지만,이 단 4 초 동안 전체 프로그램을 중지하고 무슨 다른 일이 : 그게 가능하다면, 나는이 시도 모른다 그 시간에.
여기에 더 많은 정보를 제공해야한다고 생각합니다. – Vegard
세터 메소드 작성 및 제어 ............. – pinkpanther
"int가 감소하는 것을 막는 방법"에 집중하지 말고 게임 루프가 어떻게 작동하는지 다시 고려해야합니다. 이런 일은 단지 한 번 발생하는 "사건"으로 통합 될 필요가 있습니다. 플레이어가 * 처음 * 적을 만졌을 때 "접촉"이벤트가 발생하고 플레이어가 적과 접촉을 멈출 때까지 (그리고 히스테리 시스라고하는 시간이 경과 할 때까지) 이벤트가 다시 발생할 수 있습니다. 까다 롭지 만 올바른 방법을 강구해야합니다. 그렇지 않으면 코드가 빠르게 김을내는 거대한 더미가됩니다. –