Magic_Game/core/actions/Action.cpp

86 lines
985 B
C++
Raw Normal View History

2018-04-21 21:24:46 +08:00
#include "..\e2daction.h"
2017-10-19 00:50:04 +08:00
e2d::Action::Action()
2018-09-04 22:42:34 +08:00
: running_(false)
, done_(false)
, initialized_(false)
, target_(nullptr)
2017-10-19 00:50:04 +08:00
{
}
e2d::Action::~Action()
2017-10-19 00:50:04 +08:00
{
}
2018-09-04 22:42:34 +08:00
bool e2d::Action::IsRunning()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
return running_;
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Resume()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
running_ = true;
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Pause()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
running_ = false;
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Stop()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
done_ = true;
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
const e2d::String& e2d::Action::GetName() const
2018-03-06 09:56:17 +08:00
{
2018-09-04 22:42:34 +08:00
return name_;
2018-03-06 09:56:17 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::SetName(const String& name)
2018-03-06 09:56:17 +08:00
{
2018-09-04 22:42:34 +08:00
name_ = name;
2018-03-06 09:56:17 +08:00
}
2018-09-04 22:42:34 +08:00
e2d::Node * e2d::Action::GetTarget()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
return target_;
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Reset()
{
2018-09-04 22:42:34 +08:00
initialized_ = false;
done_ = false;
started_ = Time::Now();
}
2018-09-05 00:08:03 +08:00
bool e2d::Action::IsDone() const
{
2018-09-04 22:42:34 +08:00
return done_;
}
2018-09-04 22:42:34 +08:00
void e2d::Action::StartWithTarget(Node* target)
{
2018-09-04 22:42:34 +08:00
target_ = target;
running_ = true;
this->Reset();
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Init()
2017-10-19 00:50:04 +08:00
{
2018-09-04 22:42:34 +08:00
initialized_ = true;
started_ = Time::Now();
2017-10-19 00:50:04 +08:00
}
2018-09-04 22:42:34 +08:00
void e2d::Action::Update()
2017-11-03 12:51:01 +08:00
{
2018-09-04 22:42:34 +08:00
if (!initialized_)
{
2018-09-04 22:42:34 +08:00
Init();
}
}
2018-09-04 22:42:34 +08:00
void e2d::Action::ResetTime()
{
}