1#include <game/bases/d_cs_seq_manager.hpp>
3#include <game/bases/d_w_camera.hpp>
4#include <game/bases/d_wm_lib.hpp>
5#include <game/bases/d_a_wm_cloud.hpp>
6#include <game/sLib/s_GlobalData.hpp>
33 static const float UNUSED[] = { 200.0f, 0.0f };
77 bgmSync->m_18 = GLOBAL_DATA.mBgmValue;
97 static const ProcFunc Proc_tbl[PROC_COUNT] = {
128 nw4r::g3d::ResMdl resMdl =
mResFile.GetResMdl(
"CS_W7_Cloud");
129 mModel.create(resMdl, &
mAllocator, nw4r::g3d::ScnMdl::BUFFER_RESMATMISC, 1);
131 static const char *resAnmNames[ANIM_COUNT] = {
139 for (
int i = 0; i < ANIM_COUNT; i++) {
140 nw4r::g3d::ResAnmChr resAnmChr =
mResFile.GetResAnmChr(resAnmNames[i]);
142 mChrAnim[i].mPlayMode = playModes[i];
165 mChrAnim[CS_W7_Cloud].setRate(1.0f);
166 mChrAnim[CS_W7_Cloud].setFrame(0.0f);
167 mModel.setPriorityDraw(0, 0);
179 if (cutsceneCommandId != dCsSeqMng_c::CUTSCENE_CMD_NONE && !isStaff()) {
185 for (
int i = 0; i < NODE_COUNT; i++) {
196 for (
int i = 0; i < NODE_COUNT; i++) {
205 nw4r::g3d::ResMdl resMdl =
mModel.getResMdl();
206 nw4r::g3d::ResNode resNode = resMdl.GetResNode(
mGroupNodeIds[i]);
mMtx_c mMatrix
The actor's partial transformation matrix. See makeMtx() for details.
mVec3_c mScale
The actor's scale (defaults to 1).
mVec3_c mPos
The actor's position.
mAng3_c mAngle
The actor's rotation (for 2D actors).
static dResMng_c * m_instance
The instance of this class.
static dWCamera_c * m_instance
The instance of the camera.
dWmViewClip_c mViewClip
The camera's view clip.
static void setSoftLight_Map(m3d::bmdl_c &mdl)
Sets the soft light effect for map actors.
mSphere_c mClipSphere
A sphere representing the actor's visible area.
The actor for the decorative clouds used in the World 7 map.
nw4r::g3d::ResFile mResFile
The resource file.
void createModel()
Initializes the resources for the actor.
static const char * sGroupNodeNames[NODE_COUNT]
The bone names used for the culling mechanism.
virtual int doDelete()
do method for the delete operation.
virtual int execute()
do method for the execute operation.
virtual int draw()
do method for the draw operation.
m3d::anmChr_c mChrAnim[ANIM_COUNT]
The model animations.
dWmBgmSync_c * mpBgmSync
The background music synchronization helper.
virtual int create()
do method for the create operation.
mSphere_c mCurrNodeClipSphere
The sphere currently in use during per-node culling checks.
void calcModel()
Updates the model's transformation matrix.
daWmCloud_c()
Constructs a new object.
void initState()
Sets up the actor's initial state.
void calcCulling()
Performs per-node culling based on the camera frustum.
void mode_exec()
Process function for the exec process type.
dHeapAllocator_c mAllocator
The allocator.
int mGroupNodeIds[NODE_COUNT]
The bone indices, resolved from sGroupNodeNames.
PROC_TYPE_e mCurrProc
The current process type. See dWmObjActor_c::PROC_TYPE_e.
void init_exec()
Process initialization function for the exec process type.
virtual void processCutsceneCommand(int cutsceneCommandId, bool isFirstFrame)
Contains the actor-specific logic for processing the current world map cutscene.
void initGroupNodeIds()
Initializes the bone index values from the model bone names.
~daWmCloud_c()
Destroys the object.
m3d::smdl_c mModel
The model.
@ SUCCEEDED
The step was completed successfully.
A three-dimensional short angle vector.
A three-dimensional floating point vector.
static mVec3_c Zero
The null vector.
static const T::GlobalData_t mData
#define ACTOR_PROFILE(profName, className, properties)
Creates an actor profile, using the profile number as the execute and draw order value.
@ FORWARD_LOOP
Play the animation forward in a loop.
@ GAME_HEAP_DEFAULT
The default game heap (alias of MEM1 or MEM2).
EGG::ExpHeap * g_gameHeaps[GAME_HEAP_COUNT]
The game heaps.
The global configuration for the actor.