-
Notifications
You must be signed in to change notification settings - Fork 0
back 作成
tkr987 edited this page Aug 11, 2018
·
2 revisions
背景画像やBGMを実装するためにNyaBackを基底に持つクラスを定義する。背景画像の描画はtargetやuserの描画と同じように記述すれば良い。
#pragma once
#include "HNLIB.h"
class TeemoBack : public HNLIB::NyaBack
{
public:
TeemoBack();
private:
HNLIB::GraphicPropertyX1 gpx_;
void Act(void);
void Draw(void);
};#include "TeemoBack.h"
using namespace HNLIB;
TeemoBack::TeemoBack()
{
gpx_.draw_grid_x_ = -400;
gpx_.draw_grid_y_ = -2560 + 720;
NyaGraphic::Load("img/back/back1.png", &gpx_.file_);
}
void TeemoBack::Act(void)
{
const double limit_scroll_max_y = -4.0;
// 背景画像のスクロール
if (gpx_.draw_grid_y_ < limit_scroll_max_y)
gpx_.draw_grid_y_ += 0.4;
}
void TeemoBack::Draw(void)
{
NyaGraphic::Draw(&gpx_, eOBJECT::BACK_MAP1);
}NyaMission::AddBack()を使ってNyaBack型のTeemoBackインスタンスを登録する。
NyaMission::AddBack()プロトタイプ:
void NyaMission::AddBack(NyaBack* back);
- back; 登録する背景
#include "TeemoBack.h"
#include "TeemoMission.h"
#include "TeemoTarget.h"
#include "TeemoUser.h"
using namespace HNLIB;
void TeemoMission::Create(void)
{
AddBack(new TeemoBack);
AddTarget(1, 100, new TeemoTarget);
AddUser(new TeemoUser);
}
void TeemoMission::Delete(void)
{
ClearBack();
ClearTarget();
ClearUser();
}コンパイルして実行する。
