Platform Data Engine 0.0.1
A data-driven game engine for platformers
PlatformDataEngine::PhysicsBody Class Reference

A component that enables collision and rigidbody for a gameObject More...

#include <PhysicsBody.h>

Inheritance diagram for PlatformDataEngine::PhysicsBody:
PlatformDataEngine::Component PlatformDataEngine::Networkable

Public Member Functions

void copy (std::shared_ptr< Component > otherCompPtr)
 Essentially a copy constructor except the generic shared pointer must be converted to the derived type using std::dynamic_pointer_cast More...
 
void init ()
 Called once on startup More...
 
void update (const float &dt, const float &elapsedTime)
 Called every update cycle More...
 
void draw (sf::RenderTarget &target, sf::RenderStates states) const
 Called every draw cycle More...
 
void networkSerialize (PDEPacket &output)
 Use this function to serialize any members you want replicated this is handy for animation components that should copy their state to all client instances More...
 
void networkDeserialize (PDEPacket &input)
 Use this function to deserialize data coming from the server for this specific client More...
 
void loadDefinition (nlohmann::json object)
 Called when game object definitions are loaded More...
 
b2Body * getBody ()
 
sf::FloatRect getBounds ()
 
float getDensity () const
 
bool getIsContinuous () const
 
float getBouncy () const
 
float getFriction () const
 
bool getDoesRotate () const
 
- Public Member Functions inherited from PlatformDataEngine::Component
virtual void copy (std::shared_ptr< Component > otherCompPtr)
 Essentially a copy constructor except the generic shared pointer must be converted to the derived type using std::dynamic_pointer_cast More...
 
void registerHierarchy (GameObject *parent)
 
virtual void init ()
 Called once on startup More...
 
virtual void update (const float &dt, const float &elapsedTime)
 Called every update cycle More...
 
virtual void draw (sf::RenderTarget &target, sf::RenderStates states) const
 Called every draw cycle More...
 
virtual void networkSerializeInit (PDEPacket &output)
 Called when sending data for the first time More...
 
virtual void networkDeserializeInit (PDEPacket &input)
 Called when recieving data for the first time More...
 
virtual void networkSerialize (PDEPacket &output)
 Use this function to serialize any members you want replicated this is handy for animation components that should copy their state to all client instances More...
 
virtual void networkDeserialize (PDEPacket &input)
 Use this function to deserialize data coming from the server for this specific client More...
 
virtual void loadDefinition (nlohmann::json object)
 Called when game object definitions are loaded More...
 
std::string getType () const
 
nlohmann::json getProps () const
 
void setType (const std::string &type)
 
void setProps (nlohmann::json &props)
 
void setIsDefinition (bool isDef)
 
virtual void networkSerializeInit (PDEPacket &output)=0
 Called when an object is sent to the clients for the first time More...
 
virtual void networkDeserializeInit (PDEPacket &input)=0
 Called when an object is recieved on a client for the first time More...
 
virtual void networkSerialize (PDEPacket &output)=0
 Called every time an object is sent to a client More...
 
virtual void networkDeserialize (PDEPacket &input)=0
 Called every time an object is recieved from a client More...
 

Additional Inherited Members

- Protected Attributes inherited from PlatformDataEngine::Component
std::map< std::string, nlohmann::json > m_properties
 
GameObjectm_parent
 
bool m_isDefinition
 
nlohmann::json m_all_props
 
std::string m_type
 

Detailed Description

A component that enables collision and rigidbody for a gameObject

Member Function Documentation

◆ copy()

void PhysicsBody::copy ( std::shared_ptr< Component otherCompPtr)
virtual

Essentially a copy constructor except the generic shared pointer must be converted to the derived type using std::dynamic_pointer_cast

Parameters
otherCompPtr

Reimplemented from PlatformDataEngine::Component.

◆ draw()

void PhysicsBody::draw ( sf::RenderTarget &  target,
sf::RenderStates  states 
) const
virtual

Called every draw cycle

Parameters
target
states

Reimplemented from PlatformDataEngine::Component.

◆ init()

void PhysicsBody::init ( )
virtual

Called once on startup

Reimplemented from PlatformDataEngine::Component.

◆ loadDefinition()

void PhysicsBody::loadDefinition ( nlohmann::json  object)
virtual

Called when game object definitions are loaded

Parameters
object

Reimplemented from PlatformDataEngine::Component.

◆ networkDeserialize()

void PhysicsBody::networkDeserialize ( PDEPacket input)
virtual

Use this function to deserialize data coming from the server for this specific client

Parameters
input

Reimplemented from PlatformDataEngine::Component.

◆ networkSerialize()

void PhysicsBody::networkSerialize ( PDEPacket output)
virtual

Use this function to serialize any members you want replicated this is handy for animation components that should copy their state to all client instances

Parameters
output

Reimplemented from PlatformDataEngine::Component.

◆ update()

void PhysicsBody::update ( const float &  dt,
const float &  elapsedTime 
)
virtual

Called every update cycle

Parameters
dtdelta time
elapsedTimeelapsed time

Reimplemented from PlatformDataEngine::Component.


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