#include <item.h>
Public Member Functions | |
ItemVisual (Object *parent, byte subType, uint16 index, const Common::String &name) | |
void | readData (Formats::XRCReadStream *stream) override |
void | onAllLoaded () override |
void | saveLoad (ResourceSerializer *serializer) override |
void | saveLoadCurrent (ResourceSerializer *serializer) override |
void | setEnabled (bool enabled) override |
ItemVisual * | getSceneInstance () override |
void | setAnimHierarchy (AnimHierarchy *animHierarchy) override |
virtual void | setPosition2D (const Common::Point &position) |
int | getHotspotIndexForPoint (const Common::Point &point) |
Common::String | getHotspotTitle (uint32 hotspotIndex) |
bool | canPerformAction (uint32 action, uint32 hotspotIndex) |
bool | doAction (uint32 action, uint32 hotspotIndex) |
void | setAnimActivity (int32 activity) |
int32 | getAnimActivity () const |
Anim * | getAnim () const |
Anim * | getActionAnim () const |
void | playActionAnim (Anim *anim) |
void | resetActionAnim () |
Public Member Functions inherited from Stark::Resources::Item | |
Item (Object *parent, byte subType, uint16 index, const Common::String &name) | |
void | onGameLoop () override |
bool | isEnabled () const |
int32 | getCharacterIndex () const |
virtual Gfx::RenderEntry * | getRenderEntry (const Common::Point &positionOffset) |
void | setMovement (Movement *movement) |
Movement * | getMovement () const |
void | setMovementSuspendedScript (Script *script) |
virtual Common::Array< Common::Point > | listExitPositions () |
Public Member Functions inherited from Stark::Resources::Object | |
Type | getType () const |
byte | getSubType () const |
uint16 | getIndex () const |
Common::String | getIndexAsString () const |
Common::String | getName () const |
virtual void | onPostRead () |
virtual void | onEnterLocation () |
virtual void | onEnginePause (bool pause) |
virtual void | onExitLocation () |
virtual void | onPreDestroy () |
template<class T > | |
T * | findParent () |
Object * | findChildWithIndex (Type type, uint16 index, int subType=-1) const |
Object * | findChildWithOrder (Type type, uint16 order, int subType=-1) const |
Object * | findChildWithName (Type type, const Common::String &name, int subType=-1) const |
template<class T > | |
T * | findChild (bool mustBeUnique=true) const |
template<class T > | |
T * | findChildWithSubtype (int subType, bool mustBeUnique=true) const |
template<class T > | |
T * | findChildWithIndex (uint16 index, int subType=-1) const |
template<class T > | |
T * | findChildWithOrder (uint16 order, int subType=-1) const |
template<class T > | |
T * | findChildWithName (const Common::String &name, int subType=-1) const |
template<class T > | |
Common::Array< T * > | listChildren (int subType=-1) const |
template<class T > | |
Common::Array< T * > | listChildrenRecursive (int subType=-1) |
void | addChild (Object *child) |
virtual void | print (uint depth=0) |
template<> | |
Object * | cast (Object *resource) |
template<> | |
Object * | findParent () |
template<> | |
Common::Array< Object * > | listChildren (int subType) const |
Protected Member Functions | |
void | printData () override |
Common::Array< Common::Point > | listExitPositionsImpl () |
Visual * | getVisual () |
Protected Member Functions inherited from Stark::Resources::Object | |
Object (Object *parent, byte subType, uint16 index, const Common::String &name) | |
void | printWithDepth (uint depth, const Common::String &string) const |
void | printDescription (uint depth) const |
Protected Attributes | |
Gfx::RenderEntry * | _renderEntry |
Anim * | _actionAnim |
AnimHierarchy * | _animHierarchy |
int32 | _currentAnimActivity |
bool | _clickable |
Protected Attributes inherited from Stark::Resources::Item | |
bool | _enabled |
int32 | _characterIndex |
Movement * | _movement |
Script * | _movementSuspendedScript |
Protected Attributes inherited from Stark::Resources::Object | |
Type | _type |
byte | _subType |
uint16 | _index |
Common::String | _name |
Object * | _parent |
Common::Array< Object * > | _children |
Additional Inherited Members | |
Public Types inherited from Stark::Resources::Item | |
enum | SubType { kItemGlobalTemplate = 1, kItemInventory = 2, kItemLevelTemplate = 3, kItemStaticProp = 5, kItemAnimatedProp = 6, kItemBackgroundElement = 7, kItemBackground = 8, kItemModel = 10 } |
Static Public Member Functions inherited from Stark::Resources::Item | |
static Object * | construct (Object *parent, byte subType, uint16 index, const Common::String &name) |
Static Public Member Functions inherited from Stark::Resources::Object | |
template<class T > | |
static T * | cast (Object *resource) |
Static Public Attributes inherited from Stark::Resources::Item | |
static const Type::ResourceType | TYPE = Type::kItem |
A renderable item
Renderable items are found in location layers
|
overridevirtual |
Deserialize the resource static data and initial state.
Reimplemented from Stark::Resources::Item.
Reimplemented in Stark::Resources::ImageItem, Stark::Resources::ModelItem, and Stark::Resources::FloorPositionedImageItem.
|
overridevirtual |
Called when the resource sub-tree is entirely loaded.
Allows to load data from other nodes.
Reimplemented from Stark::Resources::Object.
Reimplemented in Stark::Resources::ModelItem.
|
overridevirtual |
Persist / restore the resource state
Reimplemented from Stark::Resources::Item.
Reimplemented in Stark::Resources::FloorPositionedItem.
|
overridevirtual |
Persist / restore the resource state
Called only for active locations
Reimplemented from Stark::Resources::Item.
Reimplemented in Stark::Resources::ModelItem.
|
overridevirtual |
Enable or disable the item
Reimplemented from Stark::Resources::Item.
Reimplemented in Stark::Resources::InventoryItem.
|
overridevirtual |
Obtain the concrete instance of an item template
Implements Stark::Resources::Item.
|
overridevirtual |
Set the currently active anim hierarchy
Implements Stark::Resources::Item.
|
virtual |
Change the item's 2D position.
Only applies to 2D items
Reimplemented in Stark::Resources::ImageItem, and Stark::Resources::FloorPositionedImageItem.
int Stark::Resources::ItemVisual::getHotspotIndexForPoint | ( | const Common::Point & | point | ) |
Get the hotspot index for an item relative position
Common::String Stark::Resources::ItemVisual::getHotspotTitle | ( | uint32 | hotspotIndex | ) |
Obtain the title for one of the item's hotspots
bool Stark::Resources::ItemVisual::canPerformAction | ( | uint32 | action, |
uint32 | hotspotIndex | ||
) |
Check whether the item has runnable scripts for the specified action
bool Stark::Resources::ItemVisual::doAction | ( | uint32 | action, |
uint32 | hotspotIndex | ||
) |
Perform an action on one of the item's hotspots
void Stark::Resources::ItemVisual::setAnimActivity | ( | int32 | activity | ) |
Define the current animation kind for the item
int32 Stark::Resources::ItemVisual::getAnimActivity | ( | ) | const |
Get the current animation kind
Anim* Stark::Resources::ItemVisual::getAnim | ( | ) | const |
Get the currently playing animation
Anim* Stark::Resources::ItemVisual::getActionAnim | ( | ) | const |
Get the currently playing action animation, if any
void Stark::Resources::ItemVisual::playActionAnim | ( | Anim * | anim | ) |
Replace the current generic animation with an action specific animation
void Stark::Resources::ItemVisual::resetActionAnim | ( | ) |
Remove the current specific animation and revert to a generic one
|
protected |
Implemented version used in FloorPositionedImageItem and ImageItem