Rehti MMORPG  1.0.0
Rehti MMORPG is a free and open source MMORPG game.
Equipment Class Reference

Class for representing the items an entity has equipped. More...

#include <Equipment.hpp>

Collaboration diagram for Equipment:
Collaboration graph

Public Member Functions

 Equipment (Entity *owner)
 
bool equip (std::shared_ptr< EquippableItem > item)
 Equip an EquippableItem to the proper slot. More...
 
void unequip (Slot slotToUnequip)
 Unequip item from slot. More...
 
ItemStats getEquipmentStats ()
 Get combined stats of equipped items. More...
 
std::vector< std::shared_ptr< EquippableItem > > getAllEquipment ()
 Get all equipped items in vector. More...
 
std::map< Slot, std::shared_ptr< EquippableItem > > & getSlotMap ()
 Get the slot map which maps item slots to the items that are equipped in the slots. More...
 

Private Attributes

EntityownerM
 
std::map< Slot, std::shared_ptr< EquippableItem > > slotMapM
 
std::shared_ptr< EquippableItemheadSlotM = nullptr
 
std::shared_ptr< EquippableItemneckSlotM = nullptr
 
std::shared_ptr< EquippableItemtopSlotM = nullptr
 
std::shared_ptr< EquippableItemmainHandSlotM = nullptr
 
std::shared_ptr< EquippableItemoffHandSlotM = nullptr
 
std::shared_ptr< EquippableItembottomSlotM = nullptr
 
std::shared_ptr< EquippableItembootsSlotM = nullptr
 
std::shared_ptr< EquippableItemglovesSlotM = nullptr
 
std::shared_ptr< EquippableItemringSlotM = nullptr
 

Detailed Description

Class for representing the items an entity has equipped.

Constructor & Destructor Documentation

◆ Equipment()

Equipment::Equipment ( Entity owner)

Member Function Documentation

◆ equip()

bool Equipment::equip ( std::shared_ptr< EquippableItem item)

Equip an EquippableItem to the proper slot.

Parameters
item
Returns
Whether the operation was successful
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAllEquipment()

std::vector< std::shared_ptr< EquippableItem > > Equipment::getAllEquipment ( )

Get all equipped items in vector.

Returns
Vector of equipped items

◆ getEquipmentStats()

ItemStats Equipment::getEquipmentStats ( )

Get combined stats of equipped items.

Returns
ItemStats struct with the combined stats
Here is the caller graph for this function:

◆ getSlotMap()

std::map< Slot, std::shared_ptr< EquippableItem > > & Equipment::getSlotMap ( )

Get the slot map which maps item slots to the items that are equipped in the slots.

Returns
std::map<Slot, std::shared_ptr<EquippableItem>>&

◆ unequip()

void Equipment::unequip ( Slot  slotToUnequip)

Unequip item from slot.

Parameters
slotToUnequip
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ bootsSlotM

std::shared_ptr<EquippableItem> Equipment::bootsSlotM = nullptr
private

◆ bottomSlotM

std::shared_ptr<EquippableItem> Equipment::bottomSlotM = nullptr
private

◆ glovesSlotM

std::shared_ptr<EquippableItem> Equipment::glovesSlotM = nullptr
private

◆ headSlotM

std::shared_ptr<EquippableItem> Equipment::headSlotM = nullptr
private

◆ mainHandSlotM

std::shared_ptr<EquippableItem> Equipment::mainHandSlotM = nullptr
private

◆ neckSlotM

std::shared_ptr<EquippableItem> Equipment::neckSlotM = nullptr
private

◆ offHandSlotM

std::shared_ptr<EquippableItem> Equipment::offHandSlotM = nullptr
private

◆ ownerM

Entity* Equipment::ownerM
private

◆ ringSlotM

std::shared_ptr<EquippableItem> Equipment::ringSlotM = nullptr
private

◆ slotMapM

std::map<Slot, std::shared_ptr<EquippableItem> > Equipment::slotMapM
private

◆ topSlotM

std::shared_ptr<EquippableItem> Equipment::topSlotM = nullptr
private

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