mirror of
https://github.com/zeldaret/ss
synced 2026-06-05 11:18:01 -04:00
b5aa43ff37
* Initial Commit - Starting to translate from TP * Collision Updates * Actor Collision -> dBgW (DZB Collision) * bg .text splits complete * fix errors * file organization * missed files * progress * weee * most of cM3dG * Revert mAng change * Progress * Progress -> Need to update from main * Fixup Merge * d_bg_s symbols.... * TList Changes * oops * d_bg_s large progress * d_bg_s_acch majority done * d_bg_s_chk OK * d_bg_s_gnd_chk OK * d_bg_s_grp_pass_chk OK * d_bg_lin_chk OK * d_bg_s_poly_pass_chk OK * d_bg_s_roof_chk and d_bg_s_sph_chk OK * d_bg_s_spl_grp_chk OK * d_bg_s_wtr_chk OK * d_bg_w started * d_bg_w_base OK * name d_bg_w_kcol symbols * d_bg_w_sv split/started * most of d_bg_w_time * stopping d_bg_w_kcol for now * d_bg_w_sv OK * work on d_bg_w_time * revert TList to take offset arg * fixup some compiler warnings * set c_bg_w OK * Update rel_sieve.py * Remove TList Macros * Bomb Header started
39 lines
625 B
C++
39 lines
625 B
C++
#ifndef D_BG_PLC_H
|
|
#define D_BG_PLC_H
|
|
|
|
#include "d/col/bg/d_bg_pc.h"
|
|
|
|
enum {
|
|
ZELDA_CODE_SIZE = 0x14
|
|
};
|
|
|
|
struct PLC {
|
|
/* 0x0 */ u32 magic;
|
|
/* 0x4 */ u16 m_code_size;
|
|
/* 0x6 */ u16 m_num;
|
|
/* 0x8 */ sBgPc field_0x8[0];
|
|
};
|
|
|
|
class dBgPlc {
|
|
public:
|
|
dBgPlc() : mBase(nullptr) {}
|
|
void setBase(void *);
|
|
|
|
const sBgPc *getCode(int idx) const {
|
|
sBgPc *rv = mBase->field_0x8;
|
|
rv += idx;
|
|
return rv;
|
|
}
|
|
|
|
const dBgPc *GetDBgPc(int idx) const {
|
|
return (const dBgPc *)getCode(idx);
|
|
}
|
|
|
|
u32 getGrpCode(int idx) const;
|
|
|
|
private:
|
|
/* 0x00 */ PLC *mBase;
|
|
};
|
|
|
|
#endif
|