mirror of
https://github.com/zeldaret/tp
synced 2026-07-04 21:35:31 -04:00
85ad8b190d
daBaseNpc_c::setBckAnm and J3DAnmTransform* daBaseNpc_c daBaseNpc_c::setBtpAnm daBaseNpc_c::attnSttsOn daBaseNpc_c::orderEvent daBaseNpc_c::setEnvTevColor daBaseNpc_c::setRoomNo daBaseNpc_c::checkEndAnm attempt CheckCreateHeap daNpcF_addIdx daNpcF_subIdx daNpcF_incIdx daNpcF_decIdx daNpcF_ActorMngr_c::initialize() daNpcF_ActorMngr_c::entry cleanup daNpcF_ActorMngr_c::entry daNpcF_ActorMngr_c::remove daNpcF_ActorMngr_c::getActorP daNpcF_MatAnm_c::calc attempt daNpcF_SPCurve_c::initialize minor fixes daNpcF_Path_c::initialize daNpcF_Path_c::setPathInfo daNpcF_Path_c::chkPassed daNpcF_Path_c::reverse daNpcF_Path_c::setNextIdx daNpcF_Path_c::getNextIdx daNpcF_Path_c::getBeforeIdx daNpcF_Path_c::getBeforePos daNpcF_Path_c::getNextPos daNpcT_MatAnm_c::initialize daNpcT_MatAnm_c::calc daNpcT_addIdx daNpcT_subIdx daNpcT_decIdx daNpcT_Path_c::hermite daNpcT_Path_c::initialize daNpcT_Path_c::setPathInfo attempt daNpcT_Path_c::setNextPathInfo daNpcT_Path_c::reverse daNpcT_Path_c::setNextIdx daNpcT_Path_c::getDstPos attempt daNpcT_DmgStagger_c::setParam Add FLOAT_LABEL where possible fopEn_enemy / fix e_wb move jasper's jsystem work over d_attention / d_demo / d_lib work remove asm clean up dolphin files / work on some rels (#212) * d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop * dolphin OS work / cleanup * dolphin GX work / cleanup * finish changing dolphin files to C * more files into C * match rest of MSL_C math functions * more dolphin files converted to C * remove asm * d_bg_w work * remove asm * d_a_alink work / kytag14 initial changes to d_a_e_yc checkpoint until virtual destructor issue is solved daNpcF_Lookat_c::adjustMoveDisAngle daBaseNpc_c::setMtx daBaseNpc_moveBgActor_c::daBaseNpc_moveBgActor_c() daNpcT_c::ctrlFaceMotion daNpcT_c::ctrlMsgAnm attempt daNpcT_c::initTalk daNpcF_clearMessageTmpBit daNpcF_getDistTableIdx daNpcF_offTmpBit daNpcF_onTmpBit daNpcF_chkTmpBit daNpcF_onEvtBit daNpcF_chkEvtBit daNpcF_c::getDistTableIdx daNpcF_chkPointInArea daNpcF_chkDoBtnEqSpeak daNpcF_getPlayerInfoFromPlayerList attempt daNpcF_pntVsLineSegmentLengthSquare2D daNpcF_c::chkPointInArea daNpcF_c::chkPointInArea daNpcF_c::getAttentionPos daNpcT_chkTmpBit daNpcT_offTmpBit daNpcT_onTmpBit daNpcT_chkEvtBit daNpcT_offEvtBit daNpcT_onEvtBit daNpcT_chkDoBtnIsSpeak daNpcT_getDistTableIdx daBaseNpc_acMngr_c::entry daNpcF_c::initTalk undo override
111 lines
3.3 KiB
C++
111 lines
3.3 KiB
C++
#ifndef STB_DATA_PARSE_H
|
|
#define STB_DATA_PARSE_H
|
|
|
|
#include "JSystem/JGadget/binary.h"
|
|
#include "JSystem/JStudio/JStudio/stb-data.h"
|
|
|
|
using namespace JGadget::binary;
|
|
|
|
namespace JStudio {
|
|
namespace stb {
|
|
namespace data {
|
|
|
|
// Parses a THeader
|
|
class TParse_THeader : public TParseData_aligned<4> {
|
|
public:
|
|
TParse_THeader(const void* p) : TParseData_aligned<4>(p) {}
|
|
|
|
const THeader* get() const { return (THeader*)getRaw(); }
|
|
const void* getContent() const { return ((THeader*)getRaw())->content; }
|
|
const char* get_signature() const { return get()->signature; }
|
|
u16 get_byteOrder() const { return get()->byte_order; }
|
|
u16 get_version() const { return get()->version; }
|
|
u32 get_blockNumber() const { return get()->block_number; }
|
|
};
|
|
|
|
class TParse_TBlock : public TParseData_aligned<4> {
|
|
public:
|
|
TParse_TBlock(const void* content) : TParseData_aligned<4>(content) {}
|
|
|
|
const TBlock* get() const { return (TBlock*)getRaw(); }
|
|
const TBlock* getNext() const { return (TBlock*)((u8*)getRaw() + get_size()); }
|
|
|
|
u32 get_size() const { return get()->size; }
|
|
u32 get_type() const { return get()->type; }
|
|
};
|
|
|
|
class TParse_TSequence : public TParseData_aligned<4> {
|
|
public:
|
|
struct TData {
|
|
/* 0x00 */ u8 type;
|
|
/* 0x04 */ u32 param;
|
|
/* 0x08 */ const void* content;
|
|
/* 0x0C */ const void* next;
|
|
};
|
|
|
|
TParse_TSequence(const void* content) : TParseData_aligned<4>(content) {}
|
|
/* 802899BC */ void getData(TData*) const;
|
|
|
|
const void* get() const { return getRaw(); }
|
|
u32 get_head() const { return *(u32*)get(); }
|
|
};
|
|
|
|
class TParse_TParagraph : public TParseData_aligned<4> {
|
|
public:
|
|
struct TData {
|
|
/* 0x00 */ u32 type;
|
|
/* 0x04 */ u32 param;
|
|
/* 0x08 */ const void* content;
|
|
/* 0x0C */ const void* next;
|
|
};
|
|
|
|
TParse_TParagraph(const void* content) : TParseData_aligned<4>(content) {}
|
|
/* 80289A08 */ void getData(TData*) const;
|
|
};
|
|
|
|
struct TParse_TParagraph_data : public TParseData_aligned<4> {
|
|
struct TData {
|
|
/* 0x00 */ u8 _0;
|
|
/* 0x04 */ u32 _4;
|
|
/* 0x08 */ u32 _8;
|
|
/* 0x0C */ const void* _c;
|
|
/* 0x10 */ const void* _10;
|
|
};
|
|
|
|
TParse_TParagraph_data(const void* content) : TParseData_aligned<4>(content) {}
|
|
/* 80289A80 */ void getData(TData* pData) const;
|
|
};
|
|
|
|
// Parses a TObject ("demo object")
|
|
class TParse_TBlock_object : public TParse_TBlock {
|
|
public:
|
|
TParse_TBlock_object(const void* content) : TParse_TBlock(content) {}
|
|
|
|
const TBlock_object* get() const { return (TBlock_object*)getRaw(); }
|
|
const void* getContent() const {
|
|
return ((TBlock_object*)getRaw())->id + align_roundUp(get_IDSize(), 4);
|
|
}
|
|
|
|
u16 get_flag() const { return get()->flag; }
|
|
u16 get_IDSize() const { return get()->id_size; }
|
|
const void* get_ID() const { return get()->id; }
|
|
};
|
|
|
|
class TParse_TParagraph_dataID : public TParseData_aligned<4> {
|
|
public:
|
|
TParse_TParagraph_dataID(const void* pContent) : TParseData_aligned<4>(pContent) {}
|
|
|
|
const TParagraph* get() const { return (TParagraph*)getRaw(); }
|
|
u16 get_IDSize() const { return get()->id_size; }
|
|
const void* get_ID() const { return get()->id; }
|
|
const void* getContent() const {
|
|
return ((TParagraph*)getRaw())->id + align_roundUp(get_IDSize(), 4);
|
|
}
|
|
};
|
|
|
|
} // namespace data
|
|
} // namespace stb
|
|
} // namespace JStudio
|
|
|
|
#endif /* STB_DATA_PARSE_H */
|