#include <ObjectBulldozer.hh>
Represents the bulldozers at the end of Toad's Factory.
Their oscillation is represented as a sin wave, with two resting periods.
Definition at line 9 of file ObjectBulldozer.hh.
Public Member Functions | |
ObjectBulldozer (const System::MapdataGeoObj ¶ms) | |
void | calc () override |
u32 | loadFlags () const override |
f32 | colRadiusAdditionalLength () const override |
void | initCollision () override |
const EGG::Matrix34f & | getUpdatedMatrix (u32 timeOffset) override |
bool | checkCollision (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkCollisionCached (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
f32 | calcStateAndPosition (u32 timeOffset) const |
![]() | |
ObjectKCL (const System::MapdataGeoObj ¶ms) | |
void | createCollision () override |
void | calcCollisionTransform () override |
const EGG::Vector3f & | getPosition () const override |
f32 | getCollisionRadius () const override |
void | initCollision () override |
bool | checkPointPartial (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut) override |
bool | checkPointPartialPush (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut) override |
bool | checkPointFull (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut) override |
bool | checkPointFullPush (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut) override |
bool | checkSpherePartial (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSpherePartialPush (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSphereFull (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSphereFullPush (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
void | narrScLocal (f32 radius, const EGG::Vector3f &pos, KCLTypeMask mask, u32 timeOffset) override |
bool | checkPointCachedPartial (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut) override |
bool | checkPointCachedPartialPush (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut) override |
bool | checkPointCachedFull (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut) override |
bool | checkPointCachedFullPush (const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut) override |
bool | checkSphereCachedPartial (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSphereCachedPartialPush (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfoPartial *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSphereCachedFull (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
bool | checkSphereCachedFullPush (f32 radius, const EGG::Vector3f &pos, const EGG::Vector3f &prevPos, KCLTypeMask mask, CollisionInfo *info, KCLTypeMask *maskOut, u32 timeOffset) override |
virtual void | update (u32 timeOffset) |
virtual void | calcScale (u32 timeOffset) |
virtual void | setMovingObjVel (const EGG::Vector3f &v) |
virtual f32 | getScaleY (u32) const |
virtual bool | shouldCheckColNoPush () const |
virtual bool | shouldCheckColPush () const |
![]() | |
ObjectDrivable (const System::MapdataGeoObj ¶ms) | |
void | load () override |
virtual void | loadAABB (f32 radius) |
![]() | |
ObjectBase (const System::MapdataGeoObj ¶ms) | |
ObjectBase (const char *name, const EGG::Vector3f &pos, const EGG::Vector3f &rot, const EGG::Vector3f &scale) | |
virtual void | init () |
virtual void | calcModel () |
virtual const char * | getResources () const |
virtual void | loadGraphics () |
virtual void | loadAnims () |
virtual void | loadRail () |
virtual const char * | getName () const |
virtual const char * | getKclName () const |
virtual ObjectId | id () const |
const EGG::Vector3f & | pos () const |
void | setPos (const EGG::Vector3f &pos) |
Public Attributes | |
const EGG::Vector3f | m_initialPos |
const EGG::Vector3f | m_initialRot |
u16 | m_timeOffset |
u16 | m_periodDenom |
u16 | m_restFrames |
How long bulldozers stop moving for. | |
u16 | m_fullPeriod |
m_periodDenom + 2 * m_restFrames | |
u16 | m_amplitude |
bool | m_left |
Flips the sin wave direction. | |
f32 | m_period |
u16 | m_halfPeriod |
EGG::Matrix34f | m_rtMat |
Exists solely so getUpdatedMatrix can return a reference. | |
|
0x807FD938 |
Definition at line 10 of file ObjectBulldozer.cc.
|
overridevirtual0x807FDC50 |
Reimplemented from Field::ObjectBase.
Definition at line 26 of file ObjectBulldozer.cc.
|
nodiscard0x807FDE5C |
Definition at line 88 of file ObjectBulldozer.cc.
|
nodiscardoverridevirtual0x807FE03C |
Reimplemented from Field::ObjectKCL.
Definition at line 68 of file ObjectBulldozer.cc.
|
nodiscardoverridevirtual0x807FE2CC |
Reimplemented from Field::ObjectKCL.
Definition at line 78 of file ObjectBulldozer.cc.
|
inlinenodiscardoverridevirtual0x807FE4FC |
Reimplemented from Field::ObjectKCL.
Definition at line 22 of file ObjectBulldozer.hh.
|
nodiscardoverridevirtual0x807FE534 |
Reimplemented from Field::ObjectKCL.
Definition at line 56 of file ObjectBulldozer.cc.
|
overridevirtual0x807FE364 |
Reimplemented from Field::ObjectDrivable.
Definition at line 38 of file ObjectBulldozer.cc.
|
inlinenodiscardoverridevirtual0x807FE5E8 |
Reimplemented from Field::ObjectBase.
Definition at line 17 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_amplitude |
Definition at line 45 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_fullPeriod |
m_periodDenom + 2 * m_restFrames
Definition at line 44 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_halfPeriod |
Definition at line 48 of file ObjectBulldozer.hh.
const EGG::Vector3f Field::ObjectBulldozer::m_initialPos |
Definition at line 39 of file ObjectBulldozer.hh.
const EGG::Vector3f Field::ObjectBulldozer::m_initialRot |
Definition at line 40 of file ObjectBulldozer.hh.
bool Field::ObjectBulldozer::m_left |
Flips the sin wave direction.
Definition at line 46 of file ObjectBulldozer.hh.
f32 Field::ObjectBulldozer::m_period |
Definition at line 47 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_periodDenom |
Definition at line 42 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_restFrames |
How long bulldozers stop moving for.
Definition at line 43 of file ObjectBulldozer.hh.
EGG::Matrix34f Field::ObjectBulldozer::m_rtMat |
Exists solely so getUpdatedMatrix can return a reference.
Definition at line 49 of file ObjectBulldozer.hh.
u16 Field::ObjectBulldozer::m_timeOffset |
Definition at line 41 of file ObjectBulldozer.hh.