WorldSim  inDev
2D tile-based sandbox RPG with procedurally generated fantasy world simulator 🌏
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Item Class Reference

#include <Item.hpp>

Inheritance diagram for Item:
Inheritance graph
[legend]
Collaboration diagram for Item:
Collaboration graph
[legend]

Public Member Functions

 Item ()
 
virtual ~Item ()
 
virtual std::string getName ()
 
virtual std::string getExtendedInfo ()
 
virtual std::string getQuality ()
 
virtual bool canUseInRecipe (Recipe *_recipe)
 
virtual void interact (WorldObject *obj, int interactionType=0)
 
virtual void interact (LocalTile *obj, int interactionType=0)
 
virtual void interact (Item *obj, int interactionType=0)
 
virtual void interact (Character *obj, int interactionType=0)
 
virtual void interact (Creature *obj, int interactionType=0)
 
virtual int interactTime (WorldObject *_w)
 
virtual int interactTime (LocalTile *_w)
 
virtual Vector< std::string > * getInteractNames (WorldObject *_w)
 
virtual Vector< std::string > * getInteractNames (Item *_w)
 
virtual Vector< std::string > * getInteractNames (Character *_w)
 
virtual Vector< std::string > * getInteractNames (Creature *_w)
 
virtual Vector< std::string > * getInteractNames (LocalTile *_w)
 
virtual Vector< std::string > * getInteractNames (Static *_w)
 
bool sameType (WorldObject _obj)
 
bool sameType (Item *_item)
 
virtual std::string getInteractName (WorldObject *_w)
 
virtual std::string getInteractName (LocalTile *_w)
 
virtual void addToRecipeManager ()
 
virtual void attachInformation (Item_Information *_information)
 
virtual Texture * currentTexture ()
 
std::string getColumn (std::string _column)
 
std::string getColumnType (std::string _column)
 
std::string getSaveData ()
 
void loadData (std::string)
 
- Public Member Functions inherited from WorldObject
 WorldObject ()
 
virtual ~WorldObject ()
 
virtual void wander ()
 
int distanceTo (WorldObject *)
 
int distanceFrom (WorldObject *)
 
int distanceTo (int, int)
 
std::string getBaseData ()
 
std::string getSaveData ()
 
void loadData (std::string)
 
- Public Member Functions inherited from Craftable
 Craftable ()
 
Itemproduce ()
 

Static Public Member Functions

static StockpileRequirement getStockpileRequirement ()
 

Public Attributes

short int count
 
ItemType type
 
Item_Attributes attributes
 
std::unordered_map< ItemAction, char > mAction
 
short int meleeDamage
 
short int throwDamage
 
short int reach
 
char ammunitionType
 
Characterowner
 
int consumeTime
 
int hungerRestore
 
Item_Informationinformation
 
int slashDamage
 
int bluntDamage
 
int pierceDamage
 
float throwMultiplier
 
int chopTreeCost
 
int fishingCost
 
- Public Attributes inherited from WorldObject
short int x
 
short int y
 
bool isUnderground
 
long unsigned int fullX
 
long unsigned int fullY
 
int worldX
 
int worldY
 
bool stackable
 
double weight
 
double bulk
 
bool blocksView
 
bool blocksMovement
 
bool canCook
 
int chopAmount
 
bool canHarvest
 
- Public Attributes inherited from Craftable
bool requiresLocation
 

Constructor & Destructor Documentation

◆ Item()

Item::Item ( )

◆ ~Item()

Item::~Item ( )
virtual

Member Function Documentation

◆ addToRecipeManager()

void Item::addToRecipeManager ( )
virtual

Reimplemented in Item_DeerPelt, Item_Plank, Item_Fish, and Item_Log.

◆ attachInformation()

virtual void Item::attachInformation ( Item_Information _information)
inlinevirtual

◆ canUseInRecipe()

virtual bool Item::canUseInRecipe ( Recipe _recipe)
inlinevirtual

Reimplemented in Item_Plank.

◆ currentTexture()

Texture * Item::currentTexture ( )
virtual

◆ getColumn()

std::string Item::getColumn ( std::string  _column)

◆ getColumnType()

std::string Item::getColumnType ( std::string  _column)

◆ getExtendedInfo()

std::string Item::getExtendedInfo ( )
virtual

Reimplemented from WorldObject.

◆ getInteractName() [1/2]

virtual std::string Item::getInteractName ( WorldObject _w)
inlinevirtual

Reimplemented in Item_Axe, and Item_Fishrod.

◆ getInteractName() [2/2]

virtual std::string Item::getInteractName ( LocalTile _w)
inlinevirtual

Reimplemented in Item_Log, Item_Axe, and Item_Fishrod.

◆ getInteractNames() [1/6]

virtual Vector<std::string>* Item::getInteractNames ( WorldObject _w)
inlinevirtual

Reimplemented in Item_Log, Item_Axe, Item_Sword, and Item_Hand.

◆ getInteractNames() [2/6]

virtual Vector<std::string>* Item::getInteractNames ( Item _w)
inlinevirtual

Reimplemented in Item_DeerMeat, Item_Fish, Item_Log, Item_Axe, and Item_Sword.

◆ getInteractNames() [3/6]

virtual Vector<std::string>* Item::getInteractNames ( Character _w)
inlinevirtual

◆ getInteractNames() [4/6]

virtual Vector<std::string>* Item::getInteractNames ( Creature _w)
inlinevirtual

Reimplemented in Item_Log, Item_Axe, Item_Longbow, Item_Knife, and Item_Sword.

◆ getInteractNames() [5/6]

virtual Vector<std::string>* Item::getInteractNames ( LocalTile _w)
inlinevirtual

◆ getInteractNames() [6/6]

virtual Vector<std::string>* Item::getInteractNames ( Static _w)
inlinevirtual

Reimplemented in Item_Hand.

◆ getName()

std::string Item::getName ( )
virtual

◆ getQuality()

std::string Item::getQuality ( )
virtual

◆ getSaveData()

std::string Item::getSaveData ( )

◆ getStockpileRequirement()

static StockpileRequirement Item::getStockpileRequirement ( )
inlinestatic

◆ interact() [1/5]

virtual void Item::interact ( WorldObject obj,
int  interactionType = 0 
)
inlinevirtual

◆ interact() [2/5]

virtual void Item::interact ( LocalTile obj,
int  interactionType = 0 
)
inlinevirtual

◆ interact() [3/5]

virtual void Item::interact ( Item obj,
int  interactionType = 0 
)
inlinevirtual

Reimplemented in Item_DeerMeat, Item_Fish, and Item_Axe.

◆ interact() [4/5]

virtual void Item::interact ( Character obj,
int  interactionType = 0 
)
inlinevirtual

◆ interact() [5/5]

virtual void Item::interact ( Creature obj,
int  interactionType = 0 
)
inlinevirtual

Reimplemented in Item_Longbow, Item_Knife, and Item_Sword.

◆ interactTime() [1/2]

virtual int Item::interactTime ( WorldObject _w)
inlinevirtual

Reimplemented in Item_Log, Item_Axe, and Item_Fishrod.

◆ interactTime() [2/2]

virtual int Item::interactTime ( LocalTile _w)
inlinevirtual

Reimplemented in Item_Log, and Item_Fishrod.

◆ loadData()

void Item::loadData ( std::string  _saveData)

◆ sameType() [1/2]

bool Item::sameType ( WorldObject  _obj)
inline

◆ sameType() [2/2]

bool Item::sameType ( Item _item)
inline

Member Data Documentation

◆ ammunitionType

char Item::ammunitionType

◆ attributes

Item_Attributes Item::attributes

◆ bluntDamage

int Item::bluntDamage

◆ chopTreeCost

int Item::chopTreeCost

◆ consumeTime

int Item::consumeTime

◆ count

short int Item::count

◆ fishingCost

int Item::fishingCost

◆ hungerRestore

int Item::hungerRestore

◆ information

Item_Information* Item::information

◆ mAction

std::unordered_map<ItemAction, char> Item::mAction

◆ meleeDamage

short int Item::meleeDamage

◆ owner

Character* Item::owner

◆ pierceDamage

int Item::pierceDamage

◆ reach

short int Item::reach

◆ slashDamage

int Item::slashDamage

◆ throwDamage

short int Item::throwDamage

◆ throwMultiplier

float Item::throwMultiplier

◆ type

ItemType Item::type

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