|
Wrath of Zeus
Made by Torchlight Games for CSE 125 SP24
|
#include <floorspike.hpp>
Public Member Functions | |
| FloorSpike (glm::vec3 corner, float grid_width) | |
| bool | shouldTrigger (ServerGameState &state) override |
| bool | shouldReset (ServerGameState &state) override |
| void | doCollision (Object *other, ServerGameState &state) override |
| Code to run when this object collides with another. More... | |
Public Member Functions inherited from Trap | |
| Trap (ObjectType type, bool movable, glm::vec3 corner, Collider collider, ModelType model, glm::vec3 dimensions=glm::vec3(1.0f)) | |
| virtual bool | shouldTrigger (ServerGameState &state)=0 |
| virtual void | trigger (ServerGameState &state) |
| virtual bool | shouldReset (ServerGameState &state)=0 |
| virtual void | reset (ServerGameState &state) |
| SharedObject | toShared () override |
| Generates a SharedObject representation of this object. More... | |
| void | setIsDMTrap (bool is_dm_trap) |
| void | setIsDMTrapHover (bool is_dm_trap_hover) |
| void | setExpiration (std::chrono::time_point< std::chrono::system_clock > expiration) |
| bool | getIsDMTrap () |
| std::chrono::time_point< std::chrono::system_clock > | getExpiration () |
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 () |
Static Public Attributes | |
| static const int | DAMAGE = 1 |
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... | |
Additional Inherited Members | |
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... | |
Protected Attributes inherited from Trap | |
| bool | is_dm_trap |
| std::chrono::time_point< std::chrono::system_clock > | expiration |
| SharedTrapInfo | info |
A spike trap which lines the floor and deals damage to players that walk over them
| FloorSpike::FloorSpike | ( | glm::vec3 | corner, |
| float | grid_width | ||
| ) |
| corner | Corner position of the floor spike trap |
| orientation | what orientation the floorspike should be in |
| grid_width | or how wide the longer axis should be (e.g. z if vertical, x if horizontal) |
|
overridevirtual |
Code to run when this object collides with another.
NOTE: default implementation does nothing only override behaviors will matter
Reimplemented from Object.
|
overridevirtual |
Resets the trap
| state | GameState, in case you need that to determine if the trap should reset |
Implements Trap.
|
overridevirtual |
Determines if the trap should be triggered
| state | GameState, in case you need that to determine if the trap should trigger |
Implements Trap.
|
static |