#include <CollisionComponent.hpp>
Inheritance diagram for se_core::CollisionComponent:
Public Types | |
typedef ComponentPtr< CollisionComponent, sct_COLLISION > | Ptr |
enum | GeomType { geom_CYLINDER, geom_LONG_CYLINDER } |
Public Member Functions | |
CollisionComponent (Composite *owner, const ComponentFactory *factory) | |
Constructor. | |
~CollisionComponent () | |
int | tag () const |
int | substance () const |
void | setSubstance (int s) |
void | setDoObstructView (bool f) |
bool | shouldIgnore (const CollisionComponent &cc) const |
void | resetIgnore () |
void | setIgnore (const CollisionComponent &cc) |
bool | isCollideable () const |
Can other PosNodes collide with this PosNode? | |
void | setCollideable (bool isCollideable) |
Set wether this thing can be collided with. | |
PosComponent & | posComponent () |
const PosComponent & | posComponent () const |
void | setCollide (const ThingCollide *collide) |
bool | pushThing (ContactInfo &pusher, ContactInfo &target) |
bool | isPusher () const |
bool | didGeometryCollide (const CollisionComponent &other) const |
bool | doesGeometryCollide (const CollisionComponent &other) const |
scale_t | whenDoesGeometryCollide (const CollisionComponent &other) const |
void | zoneChanged (int zoneType, Composite *newArea, Composite *oldArea) |
AreaChild should have area as parent. | |
const BoundingBox & | areaCovered () const |
void | updateAreaCovered () |
void | move () |
enum GeomType | geometryType () const |
coor_t | bouncePoint (const Point3 &c, const Point3 &testPoint, Point3 &dest) const |
coor_t | bouncePoint (scale_t alpha, const Point3 &testPoint, Point3 &dest) const |
coor_t | bouncePoints (scale_t alpha, const CollisionComponent &other, Point3 &d1, Point3 &d2) const |
coor_t | bouncePoints (const Point3 &o1, const Point3 &o2, Point3 &d1, Point3 &d2) const |
coor_t | penetration (const CollisionComponent &other) const |
bool | doObstructView () const |
bool | hasParent () const |
Does the Pos have a parent? | |
NodeComponent * | parent () |
Get parent. | |
const NodeComponent * | parent () const |
Get parent. | |
void | resetParent () |
Set parent to none. | |
void | setParent (NodeComponent &p) |
NodeComponentList & | children () |
virtual const char * | name () const |
By default returns name of composite, which returns name of composite factory. | |
Composite * | owner () |
const Composite * | owner () const |
Component type. | |
Component * | component (int type) |
const Component * | component (int type) const |
int | type () const |
const ComponentFactory * | factory () |
bool | isActive () |
bool | isDead () const |
Protected Member Functions | |
void | parentChanged (Composite *newParent, Composite *oldParent) |
Override NodeComponent with empty handler. | |
void | cleanup () |
Called by Composite. | |
void | addChild (NodeComponent &node) |
Add a NodeComponent as a child. | |
void | removeChild (NodeComponent &node) |
Add a NodeComponent from the child list. | |
virtual void | setActive (bool state) |
Called by Composite. | |
virtual void | setDead () |
Called by Composite. | |
virtual void | init () |
Called by Composite. | |
Protected Attributes | |
NodeComponent * | parent_ |
The parent of this position. | |
NodeComponentList | children_ |
List of child NodeComponents. | |
int | type_ |
The type of Component. | |
Composite * | owner_ |
const ComponentFactory * | factory_ |
Friends | |
class | Composite |
|
Definition at line 41 of file CollisionComponent.hpp. |
|
Definition at line 116 of file CollisionComponent.hpp. |
|
Constructor.
Definition at line 46 of file CollisionComponent.cpp. References Assert, se_core::sct_COLLISION, and se_core::sct_POS. |
|
Definition at line 58 of file CollisionComponent.cpp. |
|
Add a NodeComponent as a child. Called by setParent of child. Definition at line 60 of file NodeComponent.cpp. Referenced by se_core::NodeComponent::setParent(). |
|
|
Definition at line 287 of file CollisionComponent.cpp. |
|
Definition at line 252 of file CollisionComponent.cpp. References se_core::Tuple3::add(), se_core::Point3::nearestPoint(), and se_core::Tuple3::set(). Referenced by se_core::CollisionAreaComponent::_testCollisionCandidates(), se_core::CollisionAreaComponent::_testCollisionCandidates2(), bouncePoints(), se_core::ThingCollide::isGuilty(), and whenDoesGeometryCollide(). |
|
Definition at line 267 of file CollisionComponent.cpp. References se_core::Tuple3::add(), and se_core::Point3::nearestPoint(). |
|
Definition at line 294 of file CollisionComponent.cpp. References bouncePoint(), coor_t, posComponent(), se_core::PosComponent::worldCoor(), and se_core::Tuple3::y_. Referenced by se_core::CollisionAreaComponent::farthestLineOfSight(). |
|
Definition at line 63 of file NodeComponent.hpp. Referenced by se_core::NodeComponentList::TreeIterator::next(). |
|
Called by Composite.
Reimplemented from se_core::Component. Reimplemented in se_core::RootComponent, se_core::CutsceneComponent, se_core::SignalAreaComponent, se_core::SignalComponent, se_ogre::O3dAreaComponent, se_ogre::O3dThingComponent, and se_basic::NavMeshComponent. Definition at line 70 of file NodeComponent.hpp. |
|
Definition at line 71 of file Component.hpp. References se_core::Component::component(). |
|
Definition at line 67 of file Component.hpp. References se_core::Composite::component(). Referenced by se_core::Component::component(), se_core::Component::ComponentPtr< T, type >::ComponentPtr(), se_ogre::O3dThingComponent::get(), se_ogre::O3dNodeComponent::get(), and se_ogre::O3dAreaComponent::get(). |
|
Definition at line 207 of file CollisionComponent.cpp. References coor_t, and se_core::Point3::xzDistanceSquared(). Referenced by se_core::ThingCollide::isGuilty(). |
|
Definition at line 198 of file CollisionComponent.cpp. References coor_t, and se_core::Point3::xzDistanceSquared(). Referenced by se_core::_testCollision(), and se_core::_testCollision2(). |
|
Definition at line 63 of file CollisionComponent.cpp. Referenced by se_core::CollisionAreaComponent::farthestLineOfSight(). |
|
Definition at line 81 of file Component.hpp. Referenced by se_core::Composite::releaseComponents(). |
|
Definition at line 118 of file CollisionComponent.hpp. References se_core::BoundingBox::maxX_, se_core::BoundingBox::maxZ_, se_core::BoundingBox::minX_, and se_core::BoundingBox::minZ_. |
|
Does the Pos have a parent?
Definition at line 41 of file NodeComponent.hpp. |
|
Called by Composite.
Reimplemented in se_core::RootComponent, se_core::SignalAreaComponent, se_ogre::O3dAreaComponent, and se_ogre::O3dThingComponent. Definition at line 42 of file Component.cpp. Referenced by se_core::Composite::init(). |
|
Definition at line 26 of file Component.cpp. |
|
Can other PosNodes collide with this PosNode?
Definition at line 69 of file CollisionComponent.hpp. References se_core::Composite::isDead(), and se_core::Component::owner(). Referenced by se_core::CollisionAreaComponent::_collisionCandidates2(), se_core::CollisionAreaComponent::_testCollisionCandidates(), and se_core::CollisionAreaComponent::getContactList(). |
|
Definition at line 31 of file Component.cpp. Referenced by se_core::Actor::affect(). |
|
Definition at line 102 of file CollisionComponent.hpp. |
|
Definition at line 167 of file CollisionComponent.cpp. References Assert, se_core::BoundingBox::center(), se_core::CollisionAreaComponent::collisionGrid(), coor_t, se_core::CollisionGrid::move(), and se_core::BoundingBox::radius(). |
|
By default returns name of composite, which returns name of composite factory.
Reimplemented in se_core::CutsceneAreaComponent, se_core::CutsceneComponent, se_core::CutsceneManager, se_core::CollisionAreaComponent, se_core::SignalAreaComponent, se_core::SignalComponent, se_core::SpawnAreaComponent, se_core::SpawnManager, se_core::ZoneAreaComponent, se_core::ZoneComponent, se_core::ZoneManager, se_basic::NavMeshAreaComponent, se_basic::NavMeshComponent, and se_basic::NavMeshManager. Definition at line 21 of file Component.cpp. Referenced by se_core::Area::addNeighbour(), se_core::DefaultTC::collide(), se_core::CoDefault::collide(), se_basic::Say::perform(), and se_ogre::SpeechBubble::speechEvent(). |
|
Component type.
Definition at line 62 of file Component.hpp. |
|
|
Get parent. const version. Definition at line 52 of file NodeComponent.hpp. |
|
Get parent.
Definition at line 46 of file NodeComponent.hpp. |
|
Override NodeComponent with empty handler.
Reimplemented from se_core::NodeComponent. Definition at line 38 of file AreaChildComponent.hpp. |
|
Definition at line 187 of file CollisionComponent.cpp. References coor_t, and se_core::Point3::xzDistanceSquared(). |
|
Definition at line 85 of file CollisionComponent.hpp. |
|
Definition at line 81 of file CollisionComponent.hpp. Referenced by se_core::CollisionAreaComponent::_testCollisionCandidates(), se_core::CollisionAreaComponent::_testCollisionCandidates2(), bouncePoints(), se_core::ThingCollide::isGuilty(), and whenDoesGeometryCollide(). |
|
Definition at line 94 of file CollisionComponent.hpp. References se_core::ThingCollide::collide(). Referenced by se_core::CollisionManager::resolveContacts(). |
|
Add a NodeComponent from the child list. Called by setParent of child. Definition at line 68 of file NodeComponent.cpp. |
|
Definition at line 59 of file CollisionComponent.hpp. |
|
Set parent to none.
Definition at line 41 of file NodeComponent.cpp. |
|
|
Definition at line 89 of file CollisionComponent.hpp. Referenced by se_basic::SimpleActorFactory::create(). |
|
Set wether this thing can be collided with. This is a hint to the engine that this should be included in the collison space. Definition at line 68 of file CollisionComponent.cpp. References se_core::CollisionAreaComponent::addCollideable(), and se_core::CollisionAreaComponent::removeCollideable(). Referenced by se_basic::SimpleActorFactory::create(). |
|
Called by Composite.
Reimplemented in se_core::SignalComponent, and se_core::SpawnComponent. Definition at line 97 of file Component.hpp. Referenced by se_core::Composite::scheduleForDestruction(). |
|
Definition at line 55 of file CollisionComponent.hpp. Referenced by se_basic::SimpleActorFactory::create(). |
|
Definition at line 62 of file CollisionComponent.hpp. |
|
Definition at line 50 of file NodeComponent.cpp. References se_core::NodeComponent::addChild(). |
|
Definition at line 52 of file CollisionComponent.hpp. Referenced by se_basic::SimpleActorFactory::create(). |
|
Definition at line 304 of file CollisionComponent.cpp. References ignore_. Referenced by se_core::_testCollision(), and se_core::_testCollision2(). |
|
Definition at line 49 of file CollisionComponent.hpp. Referenced by se_core::DefaultTC::collide(), and se_core::CoDefault::collide(). |
|
Definition at line 246 of file CollisionComponent.cpp. |
|
Definition at line 76 of file Component.hpp. Referenced by se_core::Composite::component(). |
|
|
Definition at line 215 of file CollisionComponent.cpp. References bouncePoint(), se_core::Pos::bounds_, coor_double_t, coor_t, se_core::PosComponent::nextPos(), posComponent(), scale_t, se_core::BoundingBox::smallRadius(), se_core::PosComponent::worldCoor(), and se_core::Point3::xzDistanceSquared(). |
|
AreaChild should have area as parent.
Reimplemented from se_core::AreaChildComponent. Definition at line 87 of file CollisionComponent.cpp. References se_core::CollisionAreaComponent::addCollideable(), se_core::Composite::component(), and se_core::CollisionAreaComponent::removeCollideable(). |
|
Definition at line 89 of file Component.hpp. |
|
List of child NodeComponents.
Definition at line 92 of file NodeComponent.hpp. |
|
Definition at line 120 of file Component.hpp. |
|
Definition at line 118 of file Component.hpp. |
|
The parent of this position.
Definition at line 89 of file NodeComponent.hpp. |
|
The type of Component.
Definition at line 117 of file Component.hpp. |
Home Page | SagaEngine trunk (updated nightly) reference generated Sun Dec 2 20:06:27 2007 by Doxygen version 1.3.9.1.