29#ifndef NOMLIB_ACTIONS_FADE_ALPHA_BY_ACTION_HPP
30#define NOMLIB_ACTIONS_FADE_ALPHA_BY_ACTION_HPP
34#include "nomlib/config.hpp"
35#include "nomlib/actions/IActionObject.hpp"
50 typedef IActionObject derived_type;
65 virtual std::unique_ptr<IActionObject>
clone()
const override;
71 virtual void pause(real32 delta_time)
override;
73 virtual void resume(real32 delta_time)
override;
75 virtual void rewind(real32 delta_time)
override;
80 static const char* DEBUG_CLASS_NAME;
84 void first_frame(real32 delta_time);
85 void last_frame(real32 delta_time);
87 const real32 total_displacement_ = 0.0f;
88 real32 initial_alpha_ = 0.0f;
90 std::shared_ptr<Sprite> drawable_;
virtual void resume(real32 delta_time) override
Resume the internal state of the action.
virtual void rewind(real32 delta_time) override
Reset the internal state of the action back to its initial starting values.
virtual void pause(real32 delta_time) override
Freeze the action's internal state.
virtual void release() override
Free externally referenced resources held by the action.
FadeAlphaByAction(const std::shared_ptr< Sprite > &drawable, real32 delta, real32 seconds)
Fade a sprite by a relative alpha value.
uint8 alpha_
The current alpha value of the drawable.
friend class ActionTest
Allow access into our private parts for unit testing.
virtual IActionObject::FrameState next_frame(real32 delta_time) override
Play the action forward in time by one time step.
virtual std::unique_ptr< IActionObject > clone() const override
Create a deep copy instance of the action.
virtual IActionObject::FrameState prev_frame(real32 delta_time) override
Play the action backwards in time by one time step.
FrameState
The update status of the action.
Base class for bitmap objects.