mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-06 11:37:25 -04:00
Merge remote-tracking branch 'upstream/main'
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
#ifndef D_A_MGAMEBOARD_H
|
||||
#define D_A_MGAMEBOARD_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_seafightgame.h"
|
||||
#include "d/d_lib.h"
|
||||
|
||||
class dDlst_2DNumber_c;
|
||||
class dDlst_2DMinigame_c;
|
||||
class dDlst_2DObject_c;
|
||||
|
||||
class daMgBoard_c : public fopAc_ac_c {
|
||||
public:
|
||||
void checkClearGame();
|
||||
void getScore();
|
||||
void reqStartGame();
|
||||
void checkEndGame();
|
||||
void setGInfoDraw();
|
||||
void clrGInfoDraw();
|
||||
void CreateHeap();
|
||||
void set_2dposition();
|
||||
void CreateInit();
|
||||
void MiniGameInit();
|
||||
void set_mtx();
|
||||
void _execute();
|
||||
void execGameMain();
|
||||
void execEndGame();
|
||||
void MinigameMain();
|
||||
void CursorMove();
|
||||
void _draw();
|
||||
|
||||
/* 0x290 */ request_of_phase_process_class mPhase;
|
||||
/* 0x298 */ J3DModel* mpBoardModel;
|
||||
/* 0x29C */ J3DModel* mpCursorModel;
|
||||
/* 0x2A0 */ J3DModel* mpHitModel[20];
|
||||
/* 0x2F0 */ J3DModel* mpMissModel[32];
|
||||
/* 0x370 */ J3DModel* mpShip2Model[2];
|
||||
/* 0x378 */ J3DModel* mpShip3Model[2];
|
||||
/* 0x380 */ J3DModel* mpShip4Model;
|
||||
/* 0x384 */ u8 field_0x384[0x468 - 0x384];
|
||||
/* 0x468 */ u8 mBoardPosX;
|
||||
/* 0x469 */ u8 mBoardPosY;
|
||||
/* 0x46A */ u8 field_0x46A[0x46C - 0x46A];
|
||||
/* 0x46C */ int mLastFirePosX;
|
||||
/* 0x470 */ int mLastFirePosY;
|
||||
/* 0x474 */ u8 field_0x474[0x47C - 0x474];
|
||||
/* 0x47C */ dSeaFightGame_info_c mSeaFightGame;
|
||||
/* 0x57C */ u8 field_0x57C[0x580 - 0x57C];
|
||||
/* 0x580 */ int mMissModelCount;
|
||||
/* 0x584 */ int mHitModelCount;
|
||||
/* 0x588 */ s16 mMinigameStartIdx;
|
||||
/* 0x58A */ s16 mMinigameEndIdx;
|
||||
/* 0x58C */ STControl mStickControl;
|
||||
/* 0x5B4 */ cXyz mNPCPos;
|
||||
/* 0x5C0 */ dDlst_2DNumber_c* mpNumber0;
|
||||
/* 0x5C4 */ dDlst_2DNumber_c* mpNumber1;
|
||||
/* 0x5C8 */ dDlst_2DMinigame_c* mpMinigameDList;
|
||||
/* 0x5CC */ dDlst_2DObject_c* mpSquidIcon[3];
|
||||
/* 0x5D8 */ u8 mpBombIcons;
|
||||
/* 0x5D9 */ u8 field_0x5D9[0x638 - 0x5D9];
|
||||
/* 0x638 */ int mState;
|
||||
/* 0x63C */ u8 mbDraw;
|
||||
/* 0x63D */ u8 mbStartGame;
|
||||
/* 0x63E */ u8 mbEndGame;
|
||||
/* 0x63F */ u8 mbForceEnd;
|
||||
/* 0x640 */ u8 mTimer;
|
||||
};
|
||||
|
||||
#endif /* D_A_MGAMEBOARD_H */
|
||||
+4
-1
@@ -4,10 +4,13 @@
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
class dBgS_GndChk;
|
||||
class cBgS_PolyInfo;
|
||||
|
||||
namespace daObj {
|
||||
template <typename T>
|
||||
int PrmAbstract(const fopAc_ac_c* actor, T width, T shift) {
|
||||
u32 param = fopAcM_GetParam(actor);
|
||||
u32 param = fopAcM_GetParam((fopAc_ac_c*)actor);
|
||||
return ((1 << width) - 1) & (param >> shift);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
#ifndef D_LIB_H
|
||||
#define D_LIB_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class STControl {
|
||||
public:
|
||||
void STControl(s16, s16, s16, s16, f32, f32, s16, s16);
|
||||
void setWaitParm(s16, s16, s16, s16, f32, f32, s16, s16);
|
||||
void init();
|
||||
void Xinit();
|
||||
void Yinit();
|
||||
void getValueStick();
|
||||
void getAngleStick();
|
||||
void checkTrigger();
|
||||
void checkLeftTrigger();
|
||||
void checkRightTrigger();
|
||||
void checkUpTrigger();
|
||||
void checkDownTrigger();
|
||||
|
||||
/* 0x00 */ void* vtbl;
|
||||
/* 0x04 */ f32 field_0x04;
|
||||
/* 0x08 */ f32 field_0x08;
|
||||
/* 0x0C */ u8 field_0x0c;
|
||||
/* 0x0D */ u8 field_0x0d;
|
||||
/* 0x0E */ u16 field_0x0e;
|
||||
/* 0x10 */ u16 field_0x10;
|
||||
/* 0x12 */ u16 field_0x12;
|
||||
/* 0x14 */ s16 field_0x14;
|
||||
/* 0x16 */ s16 field_0x16;
|
||||
/* 0x18 */ u16 field_0x18;
|
||||
/* 0x1A */ u16 field_0x1a;
|
||||
/* 0x1C */ u16 field_0x1c;
|
||||
/* 0x1E */ u16 field_0x1e;
|
||||
/* 0x20 */ u16 field_0x20;
|
||||
/* 0x22 */ u16 field_0x22;
|
||||
/* 0x24 */ s16 field_0x24;
|
||||
/* 0x26 */ s16 field_0x26;
|
||||
};
|
||||
|
||||
#endif /* D_LIB_H */
|
||||
@@ -0,0 +1,32 @@
|
||||
#ifndef D_SEAFIGHTGAME_H
|
||||
#define D_SEAFIGHTGAME_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
struct dSeaFightGame_ship_data {
|
||||
/* 0x0 */ u8 m_pos[4][2];
|
||||
/* 0x8 */ u8 field_0x8;
|
||||
/* 0x9 */ u8 field_0x9;
|
||||
/* 0xA */ u8 field_0xa;
|
||||
/* 0xB */ u8 field_0xb;
|
||||
/* 0xC */ u8 field_0xc;
|
||||
/* 0xD */ u8 field_0xd;
|
||||
/* 0xE */ u8 field_0xe;
|
||||
};
|
||||
|
||||
class dSeaFightGame_info_c {
|
||||
public:
|
||||
int init(int, int);
|
||||
int put_ship(u8, u8);
|
||||
bool checkPutShip(int, int, int, int);
|
||||
int attack(u8, u8);
|
||||
|
||||
/* 0x00 */ u8 mGrid[8][8];
|
||||
/* 0x40 */ dSeaFightGame_ship_data mShips[4];
|
||||
/* 0x7C */ u8 mAliveShipNum;
|
||||
/* 0x7D */ u8 mBulletNum;
|
||||
/* 0x7E */ u8 mScore;
|
||||
/* 0x80 */ int mDeadShipNum;
|
||||
};
|
||||
|
||||
#endif /* D_SEAFIGHTGAME_H */
|
||||
Reference in New Issue
Block a user