FIFE
|
InstanceActivity gets allocated in case there is some runtime activity related to the instance. More...
Public Member Functions | |
InstanceActivity (Instance &source) | |
~InstanceActivity () | |
void | update (Instance &source) |
updates cached variables, marks changes More... | |
Public Attributes | |
Location | m_location |
location on previous round More... | |
Location | m_oldLocation |
location on previous cell More... | |
int32_t | m_rotation |
rotation on previous round More... | |
int32_t | m_oldRotation |
rotation on previous round More... | |
Action * | m_action |
action on previous round. : might become invalid, only used for address comparison More... | |
double | m_speed |
speed on previous round More... | |
float | m_timeMultiplier |
time multiplier on previous round More... | |
std::string | m_sayText |
say text on previous round More... | |
std::vector < InstanceChangeListener * > | m_changeListeners |
listeners for changes More... | |
std::vector < InstanceActionListener * > | m_actionListeners |
listeners for action related events More... | |
ActionInfo * | m_actionInfo |
action information, allocated when actions are bind More... | |
SayInfo * | m_sayInfo |
text to say + duration, allocated when something is said More... | |
TimeProvider * | m_timeProvider |
time scaler for this instance More... | |
bool | m_blocking |
blocking status on previous round More... | |
InstanceChangeInfo | m_additional |
additional change info, used for visual class (transparency, visible, stackpos) More... | |
InstanceActivity gets allocated in case there is some runtime activity related to the instance.
Keeping activity related variables in separate class keeps memory consumption lower e.g. for large tile areas. Class also keeps track of changes since the previous update call. With this bookkeeping, it is possible to optimize several spots in the engine, basically only reacting to changes instead of polling.
Definition at line 456 of file instance.h.
FIFE::Instance::InstanceActivity::InstanceActivity | ( | Instance & | source | ) |
Definition at line 116 of file instance.cpp.
FIFE::Instance::InstanceActivity::~InstanceActivity | ( | ) |
Definition at line 134 of file instance.cpp.
void FIFE::Instance::InstanceActivity::update | ( | Instance & | source | ) |
updates cached variables, marks changes
Definition at line 140 of file instance.cpp.
References FIFE::Location::getLayer(), FIFE::Location::getLayerCoordinates(), FIFE::ICHANGE_ACTION, FIFE::ICHANGE_BLOCK, FIFE::ICHANGE_CELL, FIFE::ICHANGE_LOC, FIFE::ICHANGE_NO_CHANGES, FIFE::ICHANGE_ROTATION, FIFE::ICHANGE_SAYTEXT, FIFE::ICHANGE_SPEED, FIFE::ICHANGE_TIME_MULTIPLIER, FIFE::Instance::m_blocking, FIFE::Instance::m_changeInfo, FIFE::Instance::m_location, and FIFE::Instance::m_rotation.
Referenced by FIFE::Instance::update().
Action* FIFE::Instance::InstanceActivity::m_action |
action on previous round. : might become invalid, only used for address comparison
Definition at line 473 of file instance.h.
ActionInfo* FIFE::Instance::InstanceActivity::m_actionInfo |
action information, allocated when actions are bind
Definition at line 487 of file instance.h.
Referenced by FIFE::Instance::act(), FIFE::Instance::cancelMovement(), FIFE::Instance::finalizeAction(), FIFE::Instance::follow(), FIFE::Instance::getActionRuntime(), FIFE::Instance::getCurrentAction(), FIFE::Instance::getMovementSpeed(), FIFE::Instance::getRoute(), FIFE::Instance::getTargetLocation(), FIFE::Instance::initializeAction(), FIFE::Instance::move(), FIFE::Instance::onInstanceDeleted(), FIFE::Instance::processMovement(), FIFE::Instance::setActionRuntime(), FIFE::Instance::update(), and FIFE::Instance::~Instance().
std::vector<InstanceActionListener*> FIFE::Instance::InstanceActivity::m_actionListeners |
listeners for action related events
Definition at line 485 of file instance.h.
Referenced by FIFE::Instance::addActionListener(), FIFE::Instance::callOnActionFrame(), FIFE::Instance::finalizeAction(), FIFE::Instance::removeActionListener(), FIFE::Instance::update(), and FIFE::Instance::~Instance().
InstanceChangeInfo FIFE::Instance::InstanceActivity::m_additional |
additional change info, used for visual class (transparency, visible, stackpos)
Definition at line 495 of file instance.h.
Referenced by FIFE::Instance::callOnStackPositionChange(), FIFE::Instance::callOnTransparencyChange(), and FIFE::Instance::callOnVisibleChange().
bool FIFE::Instance::InstanceActivity::m_blocking |
blocking status on previous round
Definition at line 493 of file instance.h.
std::vector<InstanceChangeListener*> FIFE::Instance::InstanceActivity::m_changeListeners |
listeners for changes
Definition at line 481 of file instance.h.
Referenced by FIFE::Instance::addChangeListener(), and FIFE::Instance::removeChangeListener().
Location FIFE::Instance::InstanceActivity::m_location |
location on previous round
Definition at line 465 of file instance.h.
Location FIFE::Instance::InstanceActivity::m_oldLocation |
location on previous cell
Definition at line 467 of file instance.h.
Referenced by FIFE::Instance::getOldLocationRef().
int32_t FIFE::Instance::InstanceActivity::m_oldRotation |
rotation on previous round
Definition at line 471 of file instance.h.
Referenced by FIFE::Instance::getOldRotation().
int32_t FIFE::Instance::InstanceActivity::m_rotation |
rotation on previous round
Definition at line 469 of file instance.h.
SayInfo* FIFE::Instance::InstanceActivity::m_sayInfo |
text to say + duration, allocated when something is said
Definition at line 489 of file instance.h.
Referenced by FIFE::Instance::getSayText(), FIFE::Instance::say(), and FIFE::Instance::update().
std::string FIFE::Instance::InstanceActivity::m_sayText |
say text on previous round
Definition at line 479 of file instance.h.
double FIFE::Instance::InstanceActivity::m_speed |
speed on previous round
Definition at line 475 of file instance.h.
float FIFE::Instance::InstanceActivity::m_timeMultiplier |
time multiplier on previous round
Definition at line 477 of file instance.h.
TimeProvider* FIFE::Instance::InstanceActivity::m_timeProvider |
time scaler for this instance
Definition at line 491 of file instance.h.
Referenced by FIFE::Instance::bindTimeProvider(), FIFE::Instance::getActionRuntime(), FIFE::Instance::getRuntime(), FIFE::Instance::getTimeMultiplier(), FIFE::Instance::getTotalTimeMultiplier(), FIFE::Instance::processMovement(), FIFE::Instance::setTimeMultiplier(), and FIFE::Instance::update().