package ex01_객체배열;
public class Pokemon {
// 포켓몬 자료형
// 1. 필드
public static final Pokemon pikachu = null;
// 이름
private String name;
// 타입
private String type;
// 공격력
private int atk;
// 체력
private int hp;
// 스킬
private String skill;
// 2. 메서드
// 모든 필드를 초기화시킬 수 있는 생성자
public Pokemon(String name, String type, int atk, int hp, String skill) {
this.name = name;
this.type = type;
this.atk = atk;
this.hp = hp;
this.skill = skill;
}
// 모든 필드에 대한 getter, setter 메소드 생성
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int getAtk() {
return atk;
}
public void setAtk(int atk) {
this.atk = atk;
}
public int getHp() {
return hp;
}
public void setHp(int hp) {
this.hp = hp;
}
public String getSkill() {
return skill;
}
public void setSkill(String skill) {
this.skill = skill;
}
}
.
package ex01_객체배열;
import java.util.Scanner;
public class PokemonMain {
// 실행하는 환경
public static void main(String[] args) {
// 1. 게임에서 사용할 포켓몬 두 마리 생성
Pokemon pairi = new Pokemon("파이리", "불", 300, 1000, "불꽃세례~!");
Pokemon kkobuk = new Pokemon("꼬부기", "물", 350, 2000, "물대포~!");
Scanner sc = new Scanner(System.in);
while (pairi.getHp() > 0 && kkobuk.getHp() > 0) {
// 2. 사용자로부터 포켓몬 선택하게끔 만들기
System.out.print("포켓몬을 선택하세요. >> 1.파이리 2.꼬부기 >> ");
int choosePokemon = sc.nextInt();
// 3. 공격 혹은 스킬 공격 둘 중 하나를 선택하게 한다.
// 4. 선택한 포켓몬이 다른 포켓몬을 공격한다.
// 공격시 포켓몬 hp - 공격력
// 스킬 공격 시 공격력은 1.5배 증가한다.
if (choosePokemon == 1) {
System.out.print("공격 혹은 스킬 공격을 선택하세요. >> 1.공격 2.스킬공격 >> ");
int attackOrSkill = sc.nextInt();
if (attackOrSkill == 1) {
System.out.println("[파이리]님이 [꼬부기]님께 [일반공격]을 시전했습니다.");
int hp = kkobuk.getHp() - pairi.getAtk();
kkobuk.setHp(hp);
System.out.println("[꼬부기] hp : " + kkobuk.getHp());
} else {
System.out.println("[파이리]님이 [꼬부기]님께 [스킬공격]을 시전했습니다.");
System.out.println(pairi.getSkill());
int hp = kkobuk.getHp() - (pairi.getAtk()) * 3 / 2;
kkobuk.setHp(hp);
System.out.println("[꼬부기] hp : " + kkobuk.getHp());
}
} else {
System.out.print("공격 혹은 스킬 공격을 선택하세요. >> 1.공격 2.스킬공격 >>");
int attackOrSkill = sc.nextInt();
if (attackOrSkill == 1) {
System.out.print("[꼬부기]님이 [파이리]님께 [일반공격]을 시전했습니다.");
int hp = pairi.getHp() - kkobuk.getAtk();
pairi.setHp(hp);
System.out.println("[파이리] hp : " + pairi.getHp());
} else {
System.out.print("[꼬부기]님이 [파이리]님께 [스킬공격]을 시전했습니다.");
System.out.println(kkobuk.getSkill());
int hp = pairi.getHp() - (kkobuk.getAtk()) * 3 / 2;
pairi.setHp(hp);
System.out.println("[파이리] hp : " + pairi.getHp());
}
}
}
if (pairi.getHp() <= 0) {
System.out.println("[꼬부기]님의 승리! ");
}
if (kkobuk.getHp() <= 0) {
System.out.println("[파이리]님의 승리!");
}
// 한 마리의 포켓몬이 죽을 때까지 게임을 반복한다.
}
}
'Java' 카테고리의 다른 글
(자바) 상속(inheritance) (0) | 2024.04.21 |
---|---|
(자바) Collection과 ArrayList 어레이 리스트 정리 (feat.제네릭 기법) (0) | 2024.04.19 |
(자바) 객체 배열 Main (0) | 2024.04.19 |
(자바) 뮤직플레이어 프로그램 만들기(MVC패턴 적용) (0) | 2024.04.19 |
(자바) 뮤직플레이어 프로그램 만들기(MVC패턴 적용 안한 상태) (1) | 2024.04.19 |
package ex01_객체배열; public class Pokemon { // 포켓몬 자료형 // 1. 필드 public static final Pokemon pikachu = null; // 이름 private String name; // 타입 private String type; // 공격력 private int atk; // 체력 private int hp; // 스킬 private String skill; // 2. 메서드 // 모든 필드를 초기화시킬 수 있는 생성자 public Pokemon(String name, String type, int atk, int hp, String skill) { this.name = name; this.type = type; this.atk = atk; this.hp = hp; this.skill = skill; } // 모든 필드에 대한 getter, setter 메소드 생성 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getType() { return type; } public void setType(String type) { this.type = type; } public int getAtk() { return atk; } public void setAtk(int atk) { this.atk = atk; } public int getHp() { return hp; } public void setHp(int hp) { this.hp = hp; } public String getSkill() { return skill; } public void setSkill(String skill) { this.skill = skill; } }
.
package ex01_객체배열; import java.util.Scanner; public class PokemonMain { // 실행하는 환경 public static void main(String[] args) { // 1. 게임에서 사용할 포켓몬 두 마리 생성 Pokemon pairi = new Pokemon("파이리", "불", 300, 1000, "불꽃세례~!"); Pokemon kkobuk = new Pokemon("꼬부기", "물", 350, 2000, "물대포~!"); Scanner sc = new Scanner(System.in); while (pairi.getHp() > 0 && kkobuk.getHp() > 0) { // 2. 사용자로부터 포켓몬 선택하게끔 만들기 System.out.print("포켓몬을 선택하세요. >> 1.파이리 2.꼬부기 >> "); int choosePokemon = sc.nextInt(); // 3. 공격 혹은 스킬 공격 둘 중 하나를 선택하게 한다. // 4. 선택한 포켓몬이 다른 포켓몬을 공격한다. // 공격시 포켓몬 hp - 공격력 // 스킬 공격 시 공격력은 1.5배 증가한다. if (choosePokemon == 1) { System.out.print("공격 혹은 스킬 공격을 선택하세요. >> 1.공격 2.스킬공격 >> "); int attackOrSkill = sc.nextInt(); if (attackOrSkill == 1) { System.out.println("[파이리]님이 [꼬부기]님께 [일반공격]을 시전했습니다."); int hp = kkobuk.getHp() - pairi.getAtk(); kkobuk.setHp(hp); System.out.println("[꼬부기] hp : " + kkobuk.getHp()); } else { System.out.println("[파이리]님이 [꼬부기]님께 [스킬공격]을 시전했습니다."); System.out.println(pairi.getSkill()); int hp = kkobuk.getHp() - (pairi.getAtk()) * 3 / 2; kkobuk.setHp(hp); System.out.println("[꼬부기] hp : " + kkobuk.getHp()); } } else { System.out.print("공격 혹은 스킬 공격을 선택하세요. >> 1.공격 2.스킬공격 >>"); int attackOrSkill = sc.nextInt(); if (attackOrSkill == 1) { System.out.print("[꼬부기]님이 [파이리]님께 [일반공격]을 시전했습니다."); int hp = pairi.getHp() - kkobuk.getAtk(); pairi.setHp(hp); System.out.println("[파이리] hp : " + pairi.getHp()); } else { System.out.print("[꼬부기]님이 [파이리]님께 [스킬공격]을 시전했습니다."); System.out.println(kkobuk.getSkill()); int hp = pairi.getHp() - (kkobuk.getAtk()) * 3 / 2; pairi.setHp(hp); System.out.println("[파이리] hp : " + pairi.getHp()); } } } if (pairi.getHp() <= 0) { System.out.println("[꼬부기]님의 승리! "); } if (kkobuk.getHp() <= 0) { System.out.println("[파이리]님의 승리!"); } // 한 마리의 포켓몬이 죽을 때까지 게임을 반복한다. } }
'Java' 카테고리의 다른 글
(자바) 상속(inheritance) (0) | 2024.04.21 |
---|---|
(자바) Collection과 ArrayList 어레이 리스트 정리 (feat.제네릭 기법) (0) | 2024.04.19 |
(자바) 객체 배열 Main (0) | 2024.04.19 |
(자바) 뮤직플레이어 프로그램 만들기(MVC패턴 적용) (0) | 2024.04.19 |
(자바) 뮤직플레이어 프로그램 만들기(MVC패턴 적용 안한 상태) (1) | 2024.04.19 |