더북(TheBook)
class Game { // 게임 클래스
  (중략)
  onBattleMenuInput = (event) => { // 전투 메뉴 메서드
    event.preventDefault();
    const input = event.target['battle-input'].value; 
    if (input === '1') { // 공격
      const { hero, monster } = this; 
      hero.attack(monster); 
      monster.attack(hero);
      if (hero.hp <= 0) { // 주인공 체력이 0이면 게임 오버
        this.showMessage(`${hero.lev}레벨에서 전사. 주인공을 새로 생성하세요.`); 
        this.quit();
      } else if (monster.hp <= 0) { // 몬스터 체력이 0이면 경험치 획득
        this.showMessage(`몬스터를 잡아 ${monster.xp} 경험치를 얻었다.`);
        hero.getXp(monster.xp);
        this.monster = null;
        this.updateHeroStat(); 
        this.updateMonsterStat();
        this.changeScreen('game');
      } else { // 피해 주고받기
        this.showMessage(`${hero.att}의 피해를 주고, ${monster.att}의 피해를 받았다.`);
        this.updateHeroStat(); 
        this.updateMonsterStat();
      }
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.