Wrath of Zeus
Made by Torchlight Games for CSE 125 SP24
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
Potion Class Reference

#include <potion.hpp>

Inheritance diagram for Potion:
Item Object

Public Member Functions

 Potion (glm::vec3 corner, glm::vec3 dimensions, PotionType type)
 
void useItem (Object *other, ServerGameState &state, int itemSelected) override
 
bool timeOut ()
 
UsedItemsMap::iterator revertEffect (ServerGameState &state)
 
- Public Member Functions inherited from Item
 Item (ObjectType type, bool movable, glm::vec3 corner, ModelType model, glm::vec3 dimensions)
 
virtual void useItem (Object *other, ServerGameState &state, int itemSelected)
 
virtual void dropItem (Object *other, ServerGameState &state, int itemSelected, float dropDistance)
 
void doCollision (Object *other, ServerGameState &state) override
 Code to run when this object collides with another. More...
 
SharedObject toShared () override
 Generates a SharedObject representation of this object. More...
 
- Public Member Functions inherited from Object
 Object (ObjectType type, Physics physics, ModelType modelType)
 
virtual ~Object ()
 
void setModel (ModelType type)
 Sets this Object's model and initializes its dimensions to the given model's default dimensions. More...
 
virtual SharedObject toShared ()
 Generates a SharedObject representation of this object. More...
 
virtual void doCollision (Object *other, ServerGameState &state)
 Code to run when this object collides with another. More...
 
std::string to_string (unsigned int tab_offset)
 
std::string to_string ()
 

Data Fields

int duration
 
int effectScalar
 
PotionType potType
 
- Data Fields inherited from Item
SharedItemInfo iteminfo
 
- Data Fields inherited from Object
EntityID globalID {}
 Unique object ID (used to index into the ServerGameState::objects vector) More...
 
SpecificID typeID {}
 Type-specific Object ID (used to index into the type-specific objects vector in ServerGameState) More...
 
MovableID movableID {}
 Movable ID (used to index into the movable objects vector in ServerGameState) More...
 
ObjectType type
 Identifies this object's type (derived class) More...
 
Physics physics
 Object's Physics-related properties. More...
 
ModelType modelType
 Object's render model type (specifies this Object's render model to the client) More...
 
AnimState animState
 Object's animation state and current action. For non-animated objects, this defaults as AnimState::IdleAnim. More...
 
bool is_sprinting
 used to determine if the player is sprinting for animation purposes More...
 
std::vector< glm::ivec2 > gridCellPositions
 Vector of (x, y) positions of GridCells currently occupied by this object. More...
 
float distance_moved
 Distance moved, for use in deciding when to play footsteps IMPORTANT: reset every time a footstep sound is performed for objects that play foosteps. More...
 

Additional Inherited Members

- Static Public Attributes inherited from Object
static std::unordered_map< ModelType, glm::vec3 > models
 Maps from ModelType to a model's dimensions as read from the model files. (At present, these values are hard-coded in object.cpp) More...
 

Constructor & Destructor Documentation

◆ Potion()

Potion::Potion ( glm::vec3  corner,
glm::vec3  dimensions,
PotionType  type 
)
Parameters
cornerCorner position of the Potion
dimensionsDimensions applied for the Potion
typeType of Potion

Member Function Documentation

◆ revertEffect()

UsedItemsMap::iterator Potion::revertEffect ( ServerGameState state)

◆ timeOut()

bool Potion::timeOut ( )

◆ useItem()

void Potion::useItem ( Object other,
ServerGameState state,
int  itemSelected 
)
overridevirtual

Reimplemented from Item.

Field Documentation

◆ duration

int Potion::duration

◆ effectScalar

int Potion::effectScalar

◆ potType

PotionType Potion::potType

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