3.1.1 DIRECTIONAL 일정 방향으로 직진하는 탄
- 방향탄 : 정해진 방향으로 직진하는 탄
- 예제 3-1 방향탄(Stage3.h) 을 쏘는 적
class CDirectionalShooter : public CEnemy
{
public:
// 발사 각도
float ShotAngle;
// 발사 속도
float ShotSpeed;
public:
CDirectionalShooter(float Angle = 0.25f, float Speed = 0.1f)
: CEnemy(DpEnemy)
, ShotAngle(Angle)
, ShotSpeed(Speed)
{}
public:
void Move()
{
// 지정된 각도와 지정된 속도로 탄을 발사
new CBullet(DpRedBullet, X, Y, ShotAngle, 0, ShotSpeed, 0);
}
};
- 탄을 발사하는 적기 클래스는 앞 장에서 설명했던 적 베이스 클래스(CEnemy)에서 파생
- [예제 3-1]에서는 ShotANgle과 ShotSpeed가 적기 클래스의 변수
- 위 두 변수에 변화를 주면 탄 방향이나 빠르기가 변화
- 접근 지정자는 바꿔도 무방