Magic_Game/core/Node/Scene.cpp

44 lines
776 B
C++
Raw Normal View History

2018-08-13 23:47:10 +08:00
#include "..\e2dbase.h"
#include "..\e2dnode.h"
#include "..\e2dmanager.h"
e2d::Scene::Scene()
2018-08-19 15:11:20 +08:00
: _outlineVisible(false)
, _colliderVisible(false)
2018-08-13 23:47:10 +08:00
{
}
e2d::Scene::~Scene()
{
}
2018-08-19 15:11:20 +08:00
e2d::Scene& e2d::Scene::outlineVisible(bool visible)
2018-08-19 15:11:20 +08:00
{
_outlineVisible = visible;
return *this;
2018-08-19 15:11:20 +08:00
}
e2d::Scene& e2d::Scene::colliderVisible(bool visible)
2018-08-19 15:11:20 +08:00
{
_colliderVisible = visible;
return *this;
2018-08-19 15:11:20 +08:00
}
void e2d::Scene::visit(Game * game)
{
Node::visit(game);
if (_outlineVisible)
{
auto brush = game->renderer()->solidBrush();
2018-08-19 15:11:20 +08:00
brush->SetColor(D2D1::ColorF(D2D1::ColorF::Red, 0.6f));
brush->SetOpacity(1.f);
this->drawOutline(game->renderer());
2018-08-19 15:11:20 +08:00
}
if (_colliderVisible)
{
game->renderer()->renderTarget()->SetTransform(D2D1::Matrix3x2F::Identity());
2018-08-19 15:11:20 +08:00
this->drawCollider();
}
}