YAPOG  0.0.1
Yet Another Pokemon Online Game
yap::DestructibleObject Class Reference

#include <DestructibleObject.hpp>

Inheritance diagram for yap::DestructibleObject:
Collaboration diagram for yap::DestructibleObject:

List of all members.

Public Member Functions

 DestructibleObject (const ID &id)
virtual ~DestructibleObject ()
virtual void Accept (IDynamicWorldObjectVisitor &visitor)
virtual void Accept (IDynamicWorldObjectConstVisitor &visitor) const
void SetDestructionBox (BoundingBox *destructionBox)
ICloneable members.
virtual DestructibleObjectClone () const
- Public Member Functions inherited from yap::DynamicWorldObject
virtual ~DynamicWorldObject ()
const IDGetWorldID () const
void SetWorldID (const ID &id)
const IDGetTypeID () const
 Returns the ID of this type from the ObjectFactory.
const Vector2GetMaxVelocity () const
void SetMaxVelocity (const Vector2 &maxVelocity)
void SetPhysicsCore (PhysicsCore *physicsCore)
void ApplyForce (const Vector2 &force)
const Vector2GetMove () const
void RawSetVelocity (const Vector2 &velocity)
const StringGetState () const
const StringGetLogicalState () const
bool TryChangeState (const String &state)
void SetInactive ()
void RawSetState (const String &state)
 Directly changes this DynamicWorldObject state. Used for synchronizing the attribut.
bool IsActive () const
bool IsMoving () const
void AddTriggerBoundingBox (BoundingBox *boundingBox)
void AddEvent (MapEvent *event)
void RemoveEvent (MapEvent *event)
void GetEventsCollidingWith (const CollidableArea &collidableArea, MapEventQueue &events) const
virtual void Update (const Time &dt)
 Makes the object evolve for one frame of the game.
- Public Member Functions inherited from yap::WorldObject
virtual ~WorldObject ()
const IDGetID () const
void SetID (const ID &id)
void SetCollidableArea (CollidableArea *collidableArea)
void AddPhysicsBoundingBox (BoundingBox *boundingBox)
void RemovePhysicsBoundingBox (BoundingBox *boundingBox)
bool CollidesWith (const CollidableArea &collidableArea, const Vector2 &offset) const
void AdjustCollidablePosition (ICollidable &collidable) const
 Moves the ICollidable collidable to this WorldObject position. To call once when adding the ICollidable to this WorldObject.
virtual const Vector2GetPosition () const
 Gets the coordinates in pixels of the origin of this ISpatial from the global origin.
virtual const Vector2GetSize () const
 Gets the size in pixels of this ISpatial.
virtual const Vector2GetTopLeft () const
virtual const Vector2GetBottomRight () const
virtual const Vector2GetCenter () const
virtual const FloatRectGetRectangle () const
virtual void Move (const Vector2 &offset)
virtual void Scale (const Vector2 &factor)
virtual void SetPosition (const Vector2 &position)
virtual void SetSize (const Vector2 &size)
virtual const int & GetZ () const
 Gets the highness of this ISpatial3.
virtual void SetZ (int z)
 Sets the highness of this ISpatial3.
virtual const int & GetH () const
 Gets the height of this ISpatial3.
virtual void SetH (int h)
 Sets the height of this ISpatial3.
virtual bool CollidesWith (const ICollidable &other) const
virtual bool CollidesWith (const ICollidable &other, const Vector2 &offset) const
- Public Member Functions inherited from yap::ICollidable
virtual ~ICollidable ()
- Public Member Functions inherited from yap::ISpatial3
virtual ~ISpatial3 ()
- Public Member Functions inherited from yap::ISpatial
virtual ~ISpatial ()
- Public Member Functions inherited from yap::IIDLoadable
virtual ~IIDLoadable ()
- Public Member Functions inherited from yap::ICloneable
virtual ~ICloneable ()
- Public Member Functions inherited from yap::IUpdateable
virtual ~IUpdateable ()

Protected Member Functions

 DestructibleObject (const DestructibleObject &copy)
virtual void HandleSetWorldID (const ID &worldID)
virtual const StringGetObjectFactoryTypeName () const
- Protected Member Functions inherited from yap::DynamicWorldObject
 DynamicWorldObject (const ID &id)
 DynamicWorldObject (const DynamicWorldObject &copy)
virtual void HandleSetCollidableArea (CollidableArea *collidableArea)
virtual void HandleApplyForce (const Vector2 &force)
virtual void HandleUpdate (const Time &dt)
virtual void HandleSetState (const String &state)
virtual void HandleMove (const Vector2 &offset)
virtual void HandleScale (const Vector2 &factor)
virtual void HandleSetZ (int z)
virtual void HandleSetH (int h)
virtual void HandleOnVelocityChanged (const Vector2 &oldVelocity, const Vector2 &currentVelocity)
- Protected Member Functions inherited from yap::WorldObject
 WorldObject (const ID &id)
 WorldObject (const WorldObject &copy)
const
PhysicsBoundingBoxCollection
GetPhysicsBoundingBoxes () const
virtual Vector2 HandleGetSize () const

Private Member Functions

 DISALLOW_ASSIGN (DestructibleObject)

Private Attributes

BoundingBoxdestructionBox_
DestroyObjectMapEventActiondestructionEventAction_

Static Private Attributes

static const String OBJECT_FACTORY_TYPE_NAME = "DestructibleObject"

Additional Inherited Members

- Public Attributes inherited from yap::DynamicWorldObject
Event< DynamicWorldObject
&, const Vector2 & > 
OnMoved
Event< DynamicWorldObject
&, const ChangeEventArgs
< const Vector2 & > & > 
OnVelocityChanged
Event< DynamicWorldObject
&, const ChangeEventArgs
< const String & > & > 
OnStateChanged
- Static Public Attributes inherited from yap::DynamicWorldObject
static const Vector2 DEFAULT_MAX_VELOCITY

Detailed Description

Definition at line 12 of file DestructibleObject.hpp.


Constructor & Destructor Documentation

yap::DestructibleObject::DestructibleObject ( const ID id)
explicit

Reimplemented in ycl::DestructibleObject.

Definition at line 13 of file DestructibleObject.cpp.

Here is the caller graph for this function:

yap::DestructibleObject::~DestructibleObject ( )
virtual

Reimplemented in ycl::DestructibleObject.

Definition at line 20 of file DestructibleObject.cpp.

yap::DestructibleObject::DestructibleObject ( const DestructibleObject copy)
protected

Definition at line 24 of file DestructibleObject.cpp.

Here is the call graph for this function:


Member Function Documentation

void yap::DestructibleObject::Accept ( IDynamicWorldObjectVisitor visitor)
virtual

Reimplemented from yap::DynamicWorldObject.

Definition at line 37 of file DestructibleObject.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void yap::DestructibleObject::Accept ( IDynamicWorldObjectConstVisitor visitor) const
virtual

Reimplemented from yap::DynamicWorldObject.

Definition at line 44 of file DestructibleObject.cpp.

Here is the call graph for this function:

DestructibleObject * yap::DestructibleObject::Clone ( ) const
virtual

Reimplemented from yap::WorldObject.

Reimplemented in ycl::DestructibleObject.

Definition at line 32 of file DestructibleObject.cpp.

Here is the call graph for this function:

yap::DestructibleObject::DISALLOW_ASSIGN ( DestructibleObject  )
private
const String & yap::DestructibleObject::GetObjectFactoryTypeName ( ) const
protectedvirtual

Implements yap::DynamicWorldObject.

Reimplemented in ycl::DestructibleObject.

Definition at line 73 of file DestructibleObject.cpp.

void yap::DestructibleObject::HandleSetWorldID ( const ID worldID)
protectedvirtual

Reimplemented from yap::DynamicWorldObject.

Definition at line 66 of file DestructibleObject.cpp.

Here is the call graph for this function:

void yap::DestructibleObject::SetDestructionBox ( BoundingBox destructionBox)

Definition at line 52 of file DestructibleObject.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

BoundingBox* yap::DestructibleObject::destructionBox_
private

Definition at line 43 of file DestructibleObject.hpp.

DestroyObjectMapEventAction* yap::DestructibleObject::destructionEventAction_
private

Definition at line 44 of file DestructibleObject.hpp.

const String yap::DestructibleObject::OBJECT_FACTORY_TYPE_NAME = "DestructibleObject"
staticprivate

Reimplemented in ycl::DestructibleObject.

Definition at line 41 of file DestructibleObject.hpp.


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