#include "pch.h"

#include <iostream>

#include <conio.h>


int PLEVEL = 1;


class RpgMonster

{

private:

int MATT;

int MHP;

int MLEVEL = 1;

public:

int GETATT()

{

return MATT;

}


int GETMHP()

{

return MHP;

}


public:

void StatusRender()

{

printf_s("몬스터-------------------------\n");

printf_s("레  벨 : %d\n", this->MLEVEL);

printf_s("공격력 : %d\n", this->MATT);

printf_s("체  력 : %d\n", this->MHP);

printf_s("-------------------------------\n");

}


void Damage(int _ATT)

{

MHP -= _ATT;

HpControl();

this->StatusRender();

printf_s("플레이어가 %d의 공격력으로 몬스터를 때렸다.\n", _ATT);

_getch();

printf_s("몬스터는 HP가 %d 만큼 남았다.\n", MHP);

DieCheck();

}


void HpControl()

{

if (MHP < 0)

{

MHP = 0;

}

}


void DieCheck()

{

if (MHP == 0)

{

printf_s("몬스터가 죽었습니다.\n");

MLEVEL += 1;

PLEVEL += 1;

MHP = 50 * MLEVEL;

MATT = 2 * MLEVEL;

}

}


public:

RpgMonster() : MATT(2), MHP(50)

{


}


RpgMonster(int _ATT, int _HP) : MATT(_ATT), MHP(_HP)

{


}

};


class RpgPlayer

{

private:

int PATT;

int PHP;



public:

int GETATT()

{

return PATT;

}


int GETPHP()

{

return PHP;

}


void SETPLEVEL()

{

PLEVEL += 1;

}


void StatusRender()

{

printf_s("플레이어-----------------------\n");

printf_s("레  벨 : %d\n", PLEVEL);

printf_s("공격력 : %d\n", this->PATT);

printf_s("체  력 : %d\n", this->PHP);

printf_s("-------------------------------\n");

}


void Damage(int _ATT,RpgMonster _RM)

{

RpgMonster __RM = _RM;

PHP -= _ATT;

HpControl();

this->StatusRender();

__RM.StatusRender();

printf_s("몬스터가 %d의 공격력으로 플레이어를 때렸다.\n", _ATT);

_getch();

printf_s("플레이어는 HP가 %d 만큼 남았다.\n", PHP);

DieCheck();

}


void HpControl()

{

if (PHP < 0)

{

PHP = 0;

}

}


void DieCheck()

{

if (PHP == 0)

{

printf_s("플레이어가 죽었습니다.\n");

}

}


public:

RpgPlayer(int _ATT, int _HP) : PATT(_ATT), PHP(_HP)

{


}

};


int main()

{

RpgPlayer RP = { 10, 200 };

RpgMonster RM;

RP.StatusRender();

RM.StatusRender();

while (true)

{

_getch();

system("cls");

RP.StatusRender();

RM.Damage(RP.GETATT());

_getch();

system("cls");

RP.Damage(RM.GETATT(),RM);

if (0 >= RP.GETPHP())

{

break;

}

_getch();

}

}


간단한 소스입니다.. 과제에 사용하시면 F..

+ Recent posts