Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
daWtPillar_c Class Reference

Water Column/Pillar. More...

#include <d_a_obj_waterPillar.h>

+ Inheritance diagram for daWtPillar_c:
+ Collaboration diagram for daWtPillar_c:

Public Member Functions

 daWtPillar_c ()
 
 ~daWtPillar_c ()
 
void setBaseMtx ()
 
int CreateHeap ()
 
cPhs_Step create ()
 
int execute ()
 
void actionMain ()
 
void effectSet ()
 
void effectSet2 ()
 
void actionSwWaitInit ()
 
void actionSwWait ()
 
virtual bool eventStart ()
 
void actionWaitInit ()
 
void actionWait ()
 
void actionUpFirstInit ()
 
void actionUpFirst ()
 
void actionUpFirstWaitInit ()
 
void actionUpFirstWait ()
 
void actionUpInit ()
 
void actionUp ()
 
void actionUpWaitInit ()
 
void actionUpWait ()
 
void actionDownInit ()
 
void actionDown ()
 
void actionRockWaitInit ()
 
void actionRockWait ()
 
void actionRockOnInit ()
 
void actionRockOn ()
 
void actionEndInit ()
 
void actionEnd ()
 
f32 getPillarHeight ()
 
int draw ()
 
int _delete ()
 
void onRockFlag ()
 
cXyz getPos ()
 
u8 isRockYure ()
 
void clearRockYure ()
 
- Public Member Functions inherited from fopAc_ac_c
 fopAc_ac_c ()
 
 ~fopAc_ac_c ()
 
- Public Member Functions inherited from dEvLib_callback_c
 dEvLib_callback_c (fopAc_ac_c *param_0)
 
bool eventUpdate ()
 
bool setEvent (int, int, int)
 
void orderEvent (int, int, int)
 
bool setAction (action_class< dEvLib_callback_c > *)
 
bool initAction ()
 
bool executeAction ()
 
bool initStart ()
 
bool executeStart ()
 
bool initRun ()
 
bool executeRun ()
 
virtual ~dEvLib_callback_c ()
 
virtual bool eventRun ()
 
virtual bool eventEnd ()
 

Static Public Member Functions

static int createHeapCallBack (fopAc_ac_c *)
 
- Static Public Member Functions inherited from fopAc_ac_c
static u32 getStopStatus ()
 
static void setStopStatus (u32 status)
 

Static Public Attributes

static dCcD_SrcGObjInf const mCcDObjInfo
 
static dCcD_SrcGObjInf const mCcDObjCoInfo
 
static dCcD_SrcCps mCcDCps
 
static dCcD_SrcCyl mCcDCyl = {daWtPillar_c::mCcDObjCoInfo}
 
- Static Public Attributes inherited from fopAc_ac_c
static u32 stopStatus
 

Private Types

enum  Action_e {
  ACTION_SW_WAIT , ACTION_WAIT , ACTION_UP_FIRST , ACTION_UP_FIRST_WAIT ,
  ACTION_UP , ACTION_UP_WAIT , ACTION_DOWN , ACTION_ROCK_WAIT ,
  ACTION_ROCK_ON , ACTION_END
}
 
enum  Type_e { STATIC , RISES_AND_FALLS }
 

Private Member Functions

s32 getEventID ()
 
s32 getParam (int shift, int bit)
 

Private Attributes

request_of_phase_process_class mPhase
 
J3DModelmpModel
 
mDoExt_btkAnm mVTexScrollAnm
 
mDoExt_bckAnm mModelRotAnm
 
dBgS_ObjAcch mAcch
 
dBgS_AcchCir mAcchCir
 
dCcD_Stts mStts
 
dCcD_Cps mCapsuleCollider
 
dCcD_Cyl mCylinderCollider
 
u8 pad0 [0x30]
 
cXyz field_0xAC8
 
cXyz mDbgDrawScale
 
f32 mCurrentHeight
 
cM3dGCpsS mCapsuleSource
 
u8 mAction
 
u16 mWaitFrames
 
f32 mTargetSpeed
 
u8 mSwitchNo
 
u8 mType
 
u8 pad2 [0x6]
 
f32 mUpFirstTargetHeight
 
f32 mMaxHeight
 
f32 mTargetHeightStalactiteOffset
 
f32 mRelativeWaterHeight
 
u32 mVOscAngleStep
 
cXyz mVOscVOffset
 
f32 mVOscAngleQuantum
 
f32 mVOscAmplitude
 
f32 mVOscDampingScale
 
f32 mVOscMaxDecay
 
f32 mVOscMinDecay
 
u8 field_0xB44
 
u8 mIsUpOrStatic
 
u8 mIsUpFirst
 
u32 mBotAndTopEmmitters [7]
 
u32 mWaterSurfaceEmitters [2]
 
cXyz mTopPos
 
u8 mStartStalactiteShake
 
u8 mCarryingStalactite
 

Additional Inherited Members

- Public Attributes inherited from fopAc_ac_c
leafdraw_class base
 
int actor_type
 
create_tag_class actor_tag
 
create_tag_class draw_tag
 
profile_method_classsub_method
 
JKRSolidHeapheap
 
dEvt_info_c eventInfo
 
dKy_tevstr_c tevStr
 
u16 setID
 
u8 group
 
u8 cullType
 
u8 demoActorID
 
s8 argument
 
u8 carryType
 
u32 actor_status
 
u32 actor_condition
 
fpc_ProcID parentActorID
 
actor_place home
 
actor_place old
 
actor_place current
 
csXyz shape_angle
 
cXyz scale
 
cXyz speed
 
MtxP cullMtx
 
union { 
 
   cull_box   box 
 
   cull_sphere   sphere 
 
cull 
 
f32 cullSizeFar
 
J3DModelmodel
 
dJntCol_cjntCol
 
f32 speedF
 
f32 gravity
 
f32 maxFallSpeed
 
cXyz eyePos
 
actor_attention_types attention_info
 
s16 field_0x560
 
s16 health
 
u8 field_0x564
 
u8 field_0x565
 
s8 field_0x566
 
s8 field_0x567
 
- Public Attributes inherited from request_of_phase_process_class
cPhs__HandlermpHandlerTable
 
int id
 
- Public Attributes inherited from dEvLib_callback_c
fopAc_ac_cmActor
 
action_class< dEvLib_callback_c > * mAction
 
u16 _C
 

Detailed Description

Water Column/Pillar.

Water columns that can carry broken stalactites (see d_a_obj_syrock)

Member Enumeration Documentation

◆ Action_e

enum daWtPillar_c::Action_e
private
Enumerator
ACTION_SW_WAIT 
ACTION_WAIT 
ACTION_UP_FIRST 
ACTION_UP_FIRST_WAIT 
ACTION_UP 
ACTION_UP_WAIT 
ACTION_DOWN 
ACTION_ROCK_WAIT 
ACTION_ROCK_ON 
ACTION_END 

◆ Type_e

enum daWtPillar_c::Type_e
private
Enumerator
STATIC 
RISES_AND_FALLS 

Constructor & Destructor Documentation

◆ daWtPillar_c()

daWtPillar_c::daWtPillar_c ( )
inline

◆ ~daWtPillar_c()

daWtPillar_c::~daWtPillar_c ( )
inline

Member Function Documentation

◆ _delete()

int daWtPillar_c::_delete ( )

◆ actionDown()

void daWtPillar_c::actionDown ( )

◆ actionDownInit()

void daWtPillar_c::actionDownInit ( )

◆ actionEnd()

void daWtPillar_c::actionEnd ( )

◆ actionEndInit()

void daWtPillar_c::actionEndInit ( )

◆ actionMain()

void daWtPillar_c::actionMain ( )

◆ actionRockOn()

void daWtPillar_c::actionRockOn ( )

◆ actionRockOnInit()

void daWtPillar_c::actionRockOnInit ( )

◆ actionRockWait()

void daWtPillar_c::actionRockWait ( )

◆ actionRockWaitInit()

void daWtPillar_c::actionRockWaitInit ( )

◆ actionSwWait()

void daWtPillar_c::actionSwWait ( )

◆ actionSwWaitInit()

void daWtPillar_c::actionSwWaitInit ( )

◆ actionUp()

void daWtPillar_c::actionUp ( )

◆ actionUpFirst()

void daWtPillar_c::actionUpFirst ( )

◆ actionUpFirstInit()

void daWtPillar_c::actionUpFirstInit ( )

◆ actionUpFirstWait()

void daWtPillar_c::actionUpFirstWait ( )

◆ actionUpFirstWaitInit()

void daWtPillar_c::actionUpFirstWaitInit ( )

◆ actionUpInit()

void daWtPillar_c::actionUpInit ( )

◆ actionUpWait()

void daWtPillar_c::actionUpWait ( )

◆ actionUpWaitInit()

void daWtPillar_c::actionUpWaitInit ( )

◆ actionWait()

void daWtPillar_c::actionWait ( )

◆ actionWaitInit()

void daWtPillar_c::actionWaitInit ( )

◆ clearRockYure()

void daWtPillar_c::clearRockYure ( )
inline

◆ create()

cPhs_Step daWtPillar_c::create ( )
Note
Scaling is symmetric with respect to X and Z

See the east room in B1 of the Lakebed Temple as an example: When first entering entering the room after redirecting water towards it, a cutscene plays showing the water level rising; the bottom of the oscillating water pillar in this room starts above water, but ends up below water after the cutscene, resulting in its target height never being modified. However, exiting and re-entering the room does not result in the cutscene playing again, so its target height is modified upon subsequent entries to the room

◆ CreateHeap()

int daWtPillar_c::CreateHeap ( )

◆ createHeapCallBack()

int daWtPillar_c::createHeapCallBack ( fopAc_ac_c * i_this)
static

◆ draw()

int daWtPillar_c::draw ( )

◆ effectSet()

void daWtPillar_c::effectSet ( )

◆ effectSet2()

void daWtPillar_c::effectSet2 ( )

◆ eventStart()

bool daWtPillar_c::eventStart ( )
virtual

Reimplemented from dEvLib_callback_c.

◆ execute()

int daWtPillar_c::execute ( )

◆ getEventID()

s32 daWtPillar_c::getEventID ( )
inlineprivate

◆ getParam()

s32 daWtPillar_c::getParam ( int shift,
int bit )
inlineprivate

◆ getPillarHeight()

f32 daWtPillar_c::getPillarHeight ( )

◆ getPos()

cXyz daWtPillar_c::getPos ( )
inline

◆ isRockYure()

u8 daWtPillar_c::isRockYure ( )
inline

◆ onRockFlag()

void daWtPillar_c::onRockFlag ( )
inline

◆ setBaseMtx()

void daWtPillar_c::setBaseMtx ( )

Member Data Documentation

◆ field_0xAC8

cXyz daWtPillar_c::field_0xAC8
private

◆ field_0xB44

u8 daWtPillar_c::field_0xB44
private

◆ mAcch

dBgS_ObjAcch daWtPillar_c::mAcch
private

◆ mAcchCir

dBgS_AcchCir daWtPillar_c::mAcchCir
private

◆ mAction

u8 daWtPillar_c::mAction
private

◆ mBotAndTopEmmitters

u32 daWtPillar_c::mBotAndTopEmmitters[7]
private

◆ mCapsuleCollider

dCcD_Cps daWtPillar_c::mCapsuleCollider
private

◆ mCapsuleSource

cM3dGCpsS daWtPillar_c::mCapsuleSource
private

◆ mCarryingStalactite

u8 daWtPillar_c::mCarryingStalactite
private

◆ mCcDCps

dCcD_SrcCps daWtPillar_c::mCcDCps
static
Initial value:
= {
{ { {0.0f, 0.0f, 0.0f}, {0.0f,1100.0f, 0.0f}, 150.0f }}
}
static dCcD_SrcGObjInf const mCcDObjInfo
Definition d_a_obj_waterPillar.h:133

◆ mCcDCyl

dCcD_SrcCyl daWtPillar_c::mCcDCyl = {daWtPillar_c::mCcDObjCoInfo}
static

◆ mCcDObjCoInfo

const dCcD_SrcGObjInf daWtPillar_c::mCcDObjCoInfo
static
Initial value:
= {
{0x0, {{AT_TYPE_0, 0x0, 0x0}, {0x00, 0x0}, 0x79}},
{dCcD_SE_SWORD, 0x0, 0x0, dCcD_MTRL_NONE, 0x0},
{dCcD_SE_STONE, 0x0, 0x0, dCcD_MTRL_NONE, 0x0},
{},
}
@ AT_TYPE_0
Definition c_cc_d.h:33
@ dCcD_MTRL_NONE
Definition d_cc_d.h:40
@ dCcD_SE_STONE
Definition d_cc_d.h:23
@ dCcD_SE_SWORD
Definition d_cc_d.h:14

◆ mCcDObjInfo

const dCcD_SrcGObjInf daWtPillar_c::mCcDObjInfo
static
Initial value:
= {
{0x0, {{AT_TYPE_100, 0x0, 0x1D}, {AT_TYPE_0, 0x0}, 0x0}},
{dCcD_SE_SWORD, 0x0, 0x0, dCcD_MTRL_NONE, 0x0},
{dCcD_SE_STONE, 0x0, 0x0, dCcD_MTRL_NONE, 0x0},
{},
}
@ AT_TYPE_100
Definition c_cc_d.h:42

◆ mCurrentHeight

f32 daWtPillar_c::mCurrentHeight
private

◆ mCylinderCollider

dCcD_Cyl daWtPillar_c::mCylinderCollider
private

◆ mDbgDrawScale

cXyz daWtPillar_c::mDbgDrawScale
private

◆ mIsUpFirst

u8 daWtPillar_c::mIsUpFirst
private

◆ mIsUpOrStatic

u8 daWtPillar_c::mIsUpOrStatic
private

◆ mMaxHeight

f32 daWtPillar_c::mMaxHeight
private

◆ mModelRotAnm

mDoExt_bckAnm daWtPillar_c::mModelRotAnm
private

◆ mPhase

request_of_phase_process_class daWtPillar_c::mPhase
private

◆ mpModel

J3DModel* daWtPillar_c::mpModel
private

◆ mRelativeWaterHeight

f32 daWtPillar_c::mRelativeWaterHeight
private

◆ mStartStalactiteShake

u8 daWtPillar_c::mStartStalactiteShake
private

◆ mStts

dCcD_Stts daWtPillar_c::mStts
private

◆ mSwitchNo

u8 daWtPillar_c::mSwitchNo
private

◆ mTargetHeightStalactiteOffset

f32 daWtPillar_c::mTargetHeightStalactiteOffset
private

◆ mTargetSpeed

f32 daWtPillar_c::mTargetSpeed
private

◆ mTopPos

cXyz daWtPillar_c::mTopPos
private

◆ mType

u8 daWtPillar_c::mType
private

◆ mUpFirstTargetHeight

f32 daWtPillar_c::mUpFirstTargetHeight
private

◆ mVOscAmplitude

f32 daWtPillar_c::mVOscAmplitude
private

◆ mVOscAngleQuantum

f32 daWtPillar_c::mVOscAngleQuantum
private

◆ mVOscAngleStep

u32 daWtPillar_c::mVOscAngleStep
private

◆ mVOscDampingScale

f32 daWtPillar_c::mVOscDampingScale
private

◆ mVOscMaxDecay

f32 daWtPillar_c::mVOscMaxDecay
private

◆ mVOscMinDecay

f32 daWtPillar_c::mVOscMinDecay
private

◆ mVOscVOffset

cXyz daWtPillar_c::mVOscVOffset
private

◆ mVTexScrollAnm

mDoExt_btkAnm daWtPillar_c::mVTexScrollAnm
private

◆ mWaitFrames

u16 daWtPillar_c::mWaitFrames
private

◆ mWaterSurfaceEmitters

u32 daWtPillar_c::mWaterSurfaceEmitters[2]
private

◆ pad0

u8 daWtPillar_c::pad0[0x30]
private

◆ pad2

u8 daWtPillar_c::pad2[0x6]
private

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