ScummVM API documentation
Stark::Resources::ItemVisual Class Reference

#include <item.h>

Inheritance diagram for Stark::Resources::ItemVisual:
Stark::Resources::Item Stark::Resources::Object Stark::Resources::FloorPositionedItem Stark::Resources::ImageItem Stark::Resources::InventoryItem Stark::Resources::FloorPositionedImageItem Stark::Resources::ModelItem

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
 
ItemVisualgetSceneInstance () 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
 
AnimgetAnim () const
 
AnimgetActionAnim () 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::RenderEntrygetRenderEntry (const Common::Point &positionOffset)
 
void setMovement (Movement *movement)
 
MovementgetMovement () const
 
void setMovementSuspendedScript (Script *script)
 
virtual Common::Array< Common::PointlistExitPositions ()
 
- 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 ()
 
ObjectfindChildWithIndex (Type type, uint16 index, int subType=-1) const
 
ObjectfindChildWithOrder (Type type, uint16 order, int subType=-1) const
 
ObjectfindChildWithName (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<>
Objectcast (Object *resource)
 
template<>
ObjectfindParent ()
 
template<>
Common::Array< Object * > listChildren (int subType) const
 

Protected Member Functions

void printData () override
 
Common::Array< Common::PointlistExitPositionsImpl ()
 
VisualgetVisual ()
 
- 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 Objectconstruct (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
 

Detailed Description

A renderable item

Renderable items are found in location layers

Member Function Documentation

◆ readData()

void Stark::Resources::ItemVisual::readData ( Formats::XRCReadStream stream)
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.

◆ onAllLoaded()

void Stark::Resources::ItemVisual::onAllLoaded ( )
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.

◆ saveLoad()

void Stark::Resources::ItemVisual::saveLoad ( ResourceSerializer serializer)
overridevirtual

Persist / restore the resource state

Reimplemented from Stark::Resources::Item.

Reimplemented in Stark::Resources::FloorPositionedItem.

◆ saveLoadCurrent()

void Stark::Resources::ItemVisual::saveLoadCurrent ( ResourceSerializer serializer)
overridevirtual

Persist / restore the resource state

Called only for active locations

Reimplemented from Stark::Resources::Item.

Reimplemented in Stark::Resources::ModelItem.

◆ setEnabled()

void Stark::Resources::ItemVisual::setEnabled ( bool  enabled)
overridevirtual

Enable or disable the item

Reimplemented from Stark::Resources::Item.

Reimplemented in Stark::Resources::InventoryItem.

◆ getSceneInstance()

ItemVisual* Stark::Resources::ItemVisual::getSceneInstance ( )
overridevirtual

Obtain the concrete instance of an item template

Implements Stark::Resources::Item.

◆ setAnimHierarchy()

void Stark::Resources::ItemVisual::setAnimHierarchy ( AnimHierarchy animHierarchy)
overridevirtual

Set the currently active anim hierarchy

Implements Stark::Resources::Item.

◆ setPosition2D()

virtual void Stark::Resources::ItemVisual::setPosition2D ( const Common::Point position)
virtual

Change the item's 2D position.

Only applies to 2D items

Reimplemented in Stark::Resources::ImageItem, and Stark::Resources::FloorPositionedImageItem.

◆ getHotspotIndexForPoint()

int Stark::Resources::ItemVisual::getHotspotIndexForPoint ( const Common::Point point)

Get the hotspot index for an item relative position

◆ getHotspotTitle()

Common::String Stark::Resources::ItemVisual::getHotspotTitle ( uint32  hotspotIndex)

Obtain the title for one of the item's hotspots

◆ canPerformAction()

bool Stark::Resources::ItemVisual::canPerformAction ( uint32  action,
uint32  hotspotIndex 
)

Check whether the item has runnable scripts for the specified action

◆ doAction()

bool Stark::Resources::ItemVisual::doAction ( uint32  action,
uint32  hotspotIndex 
)

Perform an action on one of the item's hotspots

◆ setAnimActivity()

void Stark::Resources::ItemVisual::setAnimActivity ( int32  activity)

Define the current animation kind for the item

◆ getAnimActivity()

int32 Stark::Resources::ItemVisual::getAnimActivity ( ) const

Get the current animation kind

◆ getAnim()

Anim* Stark::Resources::ItemVisual::getAnim ( ) const

Get the currently playing animation

◆ getActionAnim()

Anim* Stark::Resources::ItemVisual::getActionAnim ( ) const

Get the currently playing action animation, if any

◆ playActionAnim()

void Stark::Resources::ItemVisual::playActionAnim ( Anim anim)

Replace the current generic animation with an action specific animation

◆ resetActionAnim()

void Stark::Resources::ItemVisual::resetActionAnim ( )

Remove the current specific animation and revert to a generic one

◆ listExitPositionsImpl()

Common::Array<Common::Point> Stark::Resources::ItemVisual::listExitPositionsImpl ( )
protected

Implemented version used in FloorPositionedImageItem and ImageItem


The documentation for this class was generated from the following file: