Skip to content

Commit

Permalink
Merge pull request pret#241 from Fexty12573/cell-actor
Browse files Browse the repository at this point in the history
Document Cell Actor (Collection) API (Cell Actor Part 2)
  • Loading branch information
lhearachel authored Jul 1, 2024
2 parents ca70aea + 89099a6 commit 34dce4f
Show file tree
Hide file tree
Showing 289 changed files with 6,530 additions and 6,926 deletions.
193 changes: 193 additions & 0 deletions include/cell_actor.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,193 @@
#ifndef POKEPLATINUM_CELL_ACTOR_H
#define POKEPLATINUM_CELL_ACTOR_H

#include <nitro/gx.h>
#include <nnsys.h>
#include <nitro/fx/fx.h>

#include "constants/heap.h"

#define CELL_ACTOR_FLIP_NONE 0
#define CELL_ACTOR_FLIP_H 1
#define CELL_ACTOR_FLIP_V 2

#define CELL_ACTOR_ANIM_DATA_SIZE 29
#define MAX_SIMULTANEOUS_SPRITES 128

enum CellAnimType {
CELL_ANIM_TYPE_NONE = 0,
CELL_ANIM_TYPE_CELL,
CELL_ANIM_TYPE_MULTI_CELL,
CELL_ANIM_TYPE_VRAM_CELL,
};

enum AffineOverwriteMode {
AFFINE_OVERWRITE_MODE_NONE = 0,
AFFINE_OVERWRITE_MODE_NORMAL,
AFFINE_OVERWRITE_MODE_DOUBLE, // Extends the cell actor's drawable area by 2x, use when the cell actor is scaled up
};

typedef struct CellActorCollection CellActorCollection;

typedef struct CellAnimationData {
const NNSG2dCellDataBank *cellBank;
const NNSG2dCellAnimBankData *animBank;
NNSG2dCellAnimation anim;
} CellAnimationData;

typedef struct VRamCellAnimationData {
NNSG2dCellDataBank *cellBank;
const NNSG2dCellAnimBankData *animBank;
NNSG2dCellAnimation anim;
u32 transferHandle;
} VRamCellAnimationData;

typedef struct MultiCellAnimationData {
const NNSG2dCellDataBank *individualCellBank;
const NNSG2dCellAnimBankData *individualAnimBank;
NNSG2dMultiCellAnimation anim;
const NNSG2dMultiCellDataBank *cellBank;
const NNSG2dMultiCellAnimBankData *animBank;
NNSG2dNode *nodes;
NNSG2dCellAnimation *cellAnims;
} MultiCellAnimationData;

typedef struct CellActor {
VecFx32 position;
VecFx32 affineTranslation;
VecFx32 affineScale;
u16 affineZRotation;
u8 affineOverwriteMode;
u8 flip;
u8 overwriteFlags; // Specifies which of the 'explicit' fields are used. Overwrites data provided by the OAM.
u8 explicitPalette; // An explicit palette index.
u8 explicitPaletteOffset; // An explicit palette index offset added onto the index specified by the OAM.
BOOL explicitMosaic;
GXOamMode explicitOamMode;
u8 draw;
u8 animate;
fx32 animSpeed;
CellActorCollection *collection; // The collection this actor belongs to

// This field is supposed to be a union between CellAnimationData, VRamCellAnimationData, and MultiCellAnimationData
// but it's actually too small to hold the largest of these types. This should really be u32 animData[31].
u32 animData[CELL_ACTOR_ANIM_DATA_SIZE];
NNSG2dImageProxy imageProxy;
NNSG2dImagePaletteProxy paletteProxy;
u32 type;
u16 activeAnimID;
u8 explicitPriority;
u16 priority;
NNS_G2D_VRAM_TYPE vramType;
struct CellActor *prev;
struct CellActor *next;
} CellActor;

struct CellActorCollection {
CellActor *actors;
int maxActors;
CellActor **actorStack; // Stack of currently unused actors
int stackPointer;
CellActor sentinelData;
NNSG2dRendererInstance *renderer;
void *rawAnimData;
NNSG2dCellAnimBankData *defaultAnimBank;
BOOL active;
};

typedef struct CellActorCollectionParams {
int maxElements;
NNSG2dRendererInstance *renderer;
enum HeapId heapID;
} CellActorCollectionParams;

typedef struct CellActorResourceData {
const NNSG2dImageProxy *imageProxy;
const NNSG2dCharacterData *charData;
const NNSG2dImagePaletteProxy *paletteProxy;
NNSG2dCellDataBank *cellBank;
const NNSG2dCellAnimBankData *cellAnimBank;
const NNSG2dMultiCellDataBank *multiCellBank;
const NNSG2dMultiCellAnimBankData *multiCellAnimBank;
BOOL isVRamTransfer;
u8 priority;
u8 padding_21[3];
} CellActorResourceData;

typedef struct CellActorInitParams {
CellActorCollection *collection;
const CellActorResourceData *resourceData;
VecFx32 position;
u32 priority;
NNS_G2D_VRAM_TYPE vramType;
enum HeapId heapID;
} CellActorInitParams;

typedef struct CellActorInitParamsEx {
CellActorCollection *collection;
const CellActorResourceData *resourceData;
VecFx32 position;
VecFx32 affineScale;
u16 affineZRotation;
u32 priority;
NNS_G2D_VRAM_TYPE vramType;
enum HeapId heapID;
} CellActorInitParamsEx;


CellActorCollection *CellActorCollection_New(const CellActorCollectionParams *params);
BOOL CellActorCollection_Delete(CellActorCollection *collection);
BOOL CellActorCollection_SetActive(CellActorCollection *collection, u8 active);
BOOL CellActorCollection_DeleteAll(CellActorCollection *collection);
void CellActorCollection_Update(const CellActorCollection *collection);
void CellActor_Reset(CellActor *actor);
CellActor *CellActorCollection_AddEx(const CellActorInitParamsEx *params);
CellActor *CellActorCollection_Add(const CellActorInitParams *params);
void CellActor_Delete(CellActor *gfxElem);
void CellActor_SetPosition(CellActor *actor, const VecFx32 *position);
void CellActor_SetAffineTranslation(CellActor *actor, const VecFx32 *translation);
void CellActor_SetAffineScale(CellActor *actor, const VecFx32 *scale);
void CellActor_SetAffineScaleEx(CellActor *actor, const VecFx32 *scale, enum AffineOverwriteMode mode);
void CellActor_SetAffineZRotation(CellActor *actor, u16 angle);
void CellActor_SetAffineZRotationEx(CellActor *actor, u16 angle, enum AffineOverwriteMode mode);
void CellActor_SetDrawFlag(CellActor *actor, BOOL draw);
void CellActor_SetAnimateFlag(CellActor *actor, BOOL animate);
void CellActor_SetAnimSpeed(CellActor *actor, fx32 speed);
void CellActor_SetAffineOverwriteMode(CellActor *actor, enum AffineOverwriteMode mode);
void CellActor_SetFlipMode(CellActor *actor, u32 mode);
const VecFx32 *CellActor_GetPosition(const CellActor *actor);
const VecFx32 *CellActor_GetAffineScale(const CellActor *actor);
u16 CellActor_GetAffineZRotation(const CellActor *actor);
BOOL CellActor_GetDrawFlag(const CellActor *actor);
BOOL CellActor_GetAnimateFlag(const CellActor *actor);
u32 CellActor_GetAnimCount(const CellActor *actor);
void CellActor_SetAnim(CellActor *actor, u32 animID);
void CellActor_SetAnimNoRestart(CellActor *actor, u32 animID);
void CellActor_RestartAnim(CellActor *actor);
u32 CellActor_GetActiveAnim(const CellActor *actor);
void CellActor_UpdateAnim(CellActor *actor, fx32 frames);
void SpriteActor_SetAnimFrame(CellActor *actor, u16 frame);
u16 CellActor_GetAnimFrame(const CellActor *actor);
void CellActor_SetExplicitPriority(CellActor *actor, u8 priority);
u8 CellActor_GetExplicitPriority(const CellActor *actor);
void CellActor_SetExplicitPalette(CellActor *actor, u32 palette);
void CellActor_SetExplicitPaletteWithOffset(CellActor *actor, u32 palette);
u32 CellActor_GetExplicitPalette(const CellActor *actor);
void CellActor_SetExplicitPaletteOffset(CellActor *actor, u32 paletteOffset);
void CellActor_SetExplicitPaletteOffsetAutoAdjust(CellActor *actor, u32 paletteOffset);
u32 CellActor_GetExplicitPaletteOffset(const CellActor *actor);
void CellActor_SetPriority(CellActor *actor, u32 priority);
u32 CellActor_GetPriority(const CellActor *actor);
void CellActor_SetImageProxy(CellActor *actor, const NNSG2dImageProxy *imageProxy);
NNSG2dImageProxy *SpriteActor_ImageProxy(CellActor *actor);
NNSG2dImagePaletteProxy *CellActor_GetPaletteProxy(CellActor *paletteProxy);
void CellActor_SetPixelated(CellActor *actor, BOOL pixelated);
NNS_G2D_VRAM_TYPE CellActor_GetVRamType(const CellActor *actor);
BOOL CellActor_IsAnimated(CellActor *actor);
void CellActor_SetExplicitOAMMode(CellActor *actor, GXOamMode mode);
void Utility_Clear2DMainOAM(enum HeapId heapID);
void Utility_Clear2DSubOAM(enum HeapId heapID);
u32 CellActor_GetUserAttrForAnimFrame(const CellActor *actor, u32 animID, u32 frame);
u32 CellActor_GetUserAttrForCurrentAnimFrame(const CellActor *actor);

#endif // POKEPLATINUM_CELL_ACTOR_H
6 changes: 3 additions & 3 deletions include/overlay005/encounter_effect.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "struct_decls/struct_02006C24_decl.h"
#include "struct_decls/struct_02018340_decl.h"
#include "sys_task_manager.h"
#include "struct_decls/struct_02022550_decl.h"
#include "cell_actor.h"
#include "field/field_system_decl.h"
#include "struct_defs/struct_0205AA50.h"
#include "overlay005/encounter_effect.h"
Expand Down Expand Up @@ -141,8 +141,8 @@ void ov5_021DE47C(UnkStruct_ov5_021DE47C *param0, int param1, int param2);
void ov5_021DE4AC(UnkStruct_ov5_021DE47C *param0);
void ov5_021DE4CC(NARC *param0, UnkStruct_ov5_021DE47C *param1, UnkStruct_ov5_021DE5A4 *param2, u32 param3, u32 param4, u32 param5, u32 param6, u32 param7, u32 param8);
void ov5_021DE5A4(UnkStruct_ov5_021DE47C *param0, UnkStruct_ov5_021DE5A4 *param1);
void ov5_021DE5D0(GraphicElementData *param0, u32 param1, u32 param2, u8 param3, u16 param4);
GraphicElementData *ov5_021DE62C(UnkStruct_ov5_021DE47C *param0, UnkStruct_ov5_021DE5A4 *param1, fx32 param2, fx32 param3, fx32 param4, int param5);
void ov5_021DE5D0(CellActor *param0, u32 param1, u32 param2, u8 param3, u16 param4);
CellActor *ov5_021DE62C(UnkStruct_ov5_021DE47C *param0, UnkStruct_ov5_021DE5A4 *param1, fx32 param2, fx32 param3, fx32 param4, int param5);
VecFx32 VecFx32_FromXYZ(fx32 param0, fx32 param1, fx32 param2);
UnkStruct_ov5_021DE6BC *ov5_021DE6A4(u32 param0);
void ov5_021DE6BC(UnkStruct_ov5_021DE6BC *param0);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay005/ov5_021D2F14.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

#include "struct_decls/struct_02006C24_decl.h"
#include "struct_decls/cell_actor_data.h"
#include "struct_decls/struct_02022550_decl.h"
#include "cell_actor.h"
#include "overlay005/struct_ov5_021D30A8.h"
#include "overlay007/struct_ov7_0224F2EC.h"
#include "overlay007/struct_ov7_0224F358.h"
Expand All @@ -12,7 +12,7 @@

void ov5_021D2F14(UnkStruct_ov5_021D30A8 * param0, const UnkStruct_ov7_0224F2EC * param1, u32 param2, u32 param3);
void ov5_021D30A8(UnkStruct_ov5_021D30A8 * param0);
GraphicElementData * ov5_021D3104(UnkStruct_ov5_021D30A8 * param0, const UnkStruct_ov7_0224F358 * param1);
CellActor * ov5_021D3104(UnkStruct_ov5_021D30A8 * param0, const UnkStruct_ov7_0224F358 * param1);
void ov5_021D3190(UnkStruct_ov5_021D30A8 * param0, UnkStruct_ov104_02241308 * param1, u32 param2, u32 param3);
void ov5_021D3270(UnkStruct_ov5_021D30A8 * param0, int param1, int param2, int param3, int param4, int param5, int param6);
void ov5_021D32E8(UnkStruct_ov5_021D30A8 * param0, NARC * param1, int param2, int param3, int param4, int param5, int param6);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay005/struct_ov5_021D30A8.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
#include "struct_decls/struct_02009714_decl.h"
#include "struct_defs/struct_02009CFC.h"
#include "struct_defs/struct_0200C738.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"

typedef struct {
GraphicElementManager * unk_00;
CellActorCollection * unk_00;
UnkStruct_0200C738 unk_04;
UnkStruct_02009508 * unk_190;
UnkStruct_02009714 * unk_194[6];
Expand Down
4 changes: 2 additions & 2 deletions include/overlay005/struct_ov5_021DE47C.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@

#include "struct_decls/struct_02009714_decl.h"
#include "struct_defs/struct_0200C738.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"

typedef struct {
GraphicElementManager * unk_00;
CellActorCollection * unk_00;
UnkStruct_0200C738 unk_04;
UnkStruct_02009714 * unk_190[4];
} UnkStruct_ov5_021DE47C;
Expand Down
4 changes: 2 additions & 2 deletions include/overlay005/struct_ov5_021DE5A4.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
#define POKEPLATINUM_STRUCT_OV5_021DE5A4_H

#include "struct_decls/struct_02009DC8_decl.h"
#include "overlay019/struct_ov19_021DA864.h"
#include "cell_actor.h"

typedef struct {
UnkStruct_02009DC8 * unk_00[4];
UnkStruct_ov19_021DA864 unk_10;
CellActorResourceData unk_10;
} UnkStruct_ov5_021DE5A4;

#endif // POKEPLATINUM_STRUCT_OV5_021DE5A4_H
4 changes: 2 additions & 2 deletions include/overlay007/struct_ov7_0224D008.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#include "struct_decls/struct_02013A04_decl.h"
#include "struct_decls/struct_02018340_decl.h"
#include "camera.h"
#include "struct_decls/struct_02022550_decl.h"
#include "cell_actor.h"
#include "strbuf.h"
#include "trainer_info.h"
#include "game_options.h"
Expand All @@ -33,7 +33,7 @@ typedef struct {
StringTemplate * unk_8C;
Camera * camera;
UnkStruct_ov5_021D30A8 unk_94;
GraphicElementData * unk_25C[4];
CellActor * unk_25C[4];
u16 unk_26C[2];
TrainerInfo * unk_270;
void * unk_274;
Expand Down
4 changes: 2 additions & 2 deletions include/overlay012/funcptr_ov12_02239E64_1.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@

#include "struct_decls/struct_0200C6E4_decl.h"
#include "struct_decls/struct_0200C704_decl.h"
#include "struct_decls/struct_02022550_decl.h"
#include "cell_actor.h"
#include "overlay012/struct_ov12_0221FCDC_decl.h"

typedef void (* UnkFuncPtr_ov12_02239E64_1)(UnkStruct_ov12_0221FCDC *, SpriteRenderer *, SpriteGfxHandler *, GraphicElementData *);
typedef void (* UnkFuncPtr_ov12_02239E64_1)(UnkStruct_ov12_0221FCDC *, SpriteRenderer *, SpriteGfxHandler *, CellActor *);

#endif // POKEPLATINUM_FUNCPTR_OV12_02239E64_1_H
10 changes: 4 additions & 6 deletions include/overlay019/ov19_021D61B0.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,14 @@

#include "struct_decls/struct_02007768_decl.h"
#include "sys_task_manager.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "struct_decls/struct_02022550_decl.h"
#include "overlay019/struct_ov19_021D4DF0.h"
#include "overlay019/struct_ov19_021D5DF8_decl.h"
#include "overlay019/struct_ov19_021D61B0_decl.h"
#include "overlay019/funcptr_ov19_021D79B8.h"
#include "overlay019/struct_ov19_021D8318.h"
#include "overlay019/struct_ov19_021D8E00.h"
#include "overlay019/struct_ov19_021DA384.h"
#include "overlay019/struct_ov19_021DA864.h"
#include "cell_actor.h"
#include "overlay019/struct_ov19_021DBA9C.h"
#include "overlay019/struct_ov19_021DC680.h"
#include "overlay019/struct_ov19_021DE3E8_decl.h"
Expand All @@ -34,9 +32,9 @@ UnkStruct_ov19_021DE3E8 * ov19_021D7800(UnkStruct_ov19_021D61B0 * param0);
UnkStruct_ov19_021DBA9C * ov19_021D780C(UnkStruct_ov19_021D61B0 * param0);
UnkStruct_02007768 * ov19_021D7818(UnkStruct_ov19_021D61B0 * param0);
int ov19_021D7820(UnkStruct_ov19_021D61B0 * param0);
void ov19_021D783C(UnkStruct_ov19_021DA864 * param0, NNSG2dImageProxy * param1, NNSG2dImagePaletteProxy * param2, NNSG2dCellDataBank * param3, NNSG2dCellAnimBankData * param4, u32 param5);
GraphicElementData * ov19_021D785C(GraphicElementManager * param0, UnkStruct_ov19_021DA864 * param1, u32 param2, u32 param3, u32 param4, int param5);
void ov19_021D78AC(GraphicElementData * param0, u32 param1);
void ov19_021D783C(CellActorResourceData * param0, NNSG2dImageProxy * param1, NNSG2dImagePaletteProxy * param2, NNSG2dCellDataBank * param3, NNSG2dCellAnimBankData * param4, u32 param5);
CellActor * ov19_021D785C(CellActorCollection * param0, CellActorResourceData * param1, u32 param2, u32 param3, u32 param4, int param5);
void ov19_021D78AC(CellActor * param0, u32 param1);
void ov19_021D78C8(const u16 * param0, u16 * param1, u32 param2, u16 param3, u32 param4);
const UnkStruct_ov19_021D5DF8 * ov19_021D7964(UnkStruct_ov19_021D61B0 * param0);
void ov19_021D79B8(void * param0, UnkFuncPtr_ov19_021D79B8 param1, void * param2);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay019/ov19_021D79F8.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
#define POKEPLATINUM_OV19_021D79F8_H

#include "struct_decls/struct_02018340_decl.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"
#include "overlay019/struct_ov19_021D4DF0.h"
#include "overlay019/struct_ov19_021D4F5C.h"
#include "overlay019/struct_ov19_021D61B0_decl.h"
#include "overlay019/struct_ov19_021D8318.h"
#include "overlay019/struct_ov19_021DCD18.h"

BOOL ov19_021D79F8(UnkStruct_ov19_021D8318 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, BGL * param3, GraphicElementManager * param4);
BOOL ov19_021D79F8(UnkStruct_ov19_021D8318 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, BGL * param3, CellActorCollection * param4);
void ov19_021D7A74(UnkStruct_ov19_021D8318 * param0);
void ov19_021D7A9C(UnkStruct_ov19_021D8318 * param0);
void ov19_021D7B4C(UnkStruct_ov19_021D8318 * param0, const UnkStruct_ov19_021D4F5C * param1, int param2, BOOL param3);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay019/ov19_021D8B54.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
#define POKEPLATINUM_OV19_021D8B54_H

#include "struct_decls/struct_02006C24_decl.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"
#include "overlay019/struct_ov19_021D4DF0.h"
#include "overlay019/struct_ov19_021D61B0_decl.h"
#include "overlay019/struct_ov19_021D8E00.h"

#include <nitro/fx/fx.h>

BOOL ov19_021D8B54(UnkStruct_ov19_021D8E00 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, GraphicElementManager * param3, NARC * param4);
BOOL ov19_021D8B54(UnkStruct_ov19_021D8E00 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, CellActorCollection * param3, NARC * param4);
void ov19_021D8C1C(UnkStruct_ov19_021D8E00 * param0, NARC * param1);
void ov19_021D8E84(UnkStruct_ov19_021D8E00 * param0);
void ov19_021D8F60(UnkStruct_ov19_021D8E00 * param0);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay019/ov19_021DA270.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#define POKEPLATINUM_OV19_021DA270_H

#include "struct_decls/struct_02006C24_decl.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"
#include "pokemon.h"
#include "overlay019/struct_ov19_021D4DF0.h"
#include "overlay019/struct_ov19_021D61B0_decl.h"
Expand All @@ -11,7 +11,7 @@

#include <nnsys.h>

BOOL ov19_021DA270(UnkStruct_ov19_021DA384 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, GraphicElementManager * param3, NARC * param4);
BOOL ov19_021DA270(UnkStruct_ov19_021DA384 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, CellActorCollection * param3, NARC * param4);
void ov19_021DA384(UnkStruct_ov19_021DA384 * param0);
void ov19_021DA3CC(UnkStruct_ov19_021DA384 * param0, UnkStruct_ov19_021DCD18 * param1, u32 param2);
void ov19_021DA3F0(UnkStruct_ov19_021DA384 * param0, UnkStruct_ov19_021DCD18 * param1, u32 param2);
Expand Down
4 changes: 2 additions & 2 deletions include/overlay019/ov19_021DA814.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
#define POKEPLATINUM_OV19_021DA814_H

#include "struct_decls/struct_02006C24_decl.h"
#include "struct_decls/struct_020218BC_decl.h"
#include "cell_actor.h"
#include "overlay019/struct_ov19_021D4DF0.h"
#include "overlay019/struct_ov19_021D61B0_decl.h"
#include "overlay019/struct_ov19_021DA8D8.h"

BOOL ov19_021DA814(UnkStruct_ov19_021DA8D8 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, GraphicElementManager * param3, NARC * param4);
BOOL ov19_021DA814(UnkStruct_ov19_021DA8D8 * param0, UnkStruct_ov19_021D61B0 * param1, const UnkStruct_ov19_021D4DF0 * param2, CellActorCollection * param3, NARC * param4);
void ov19_021DA864(UnkStruct_ov19_021DA8D8 * param0, NARC * param1);
void ov19_021DA8D8(UnkStruct_ov19_021DA8D8 * param0);
void ov19_021DA8FC(UnkStruct_ov19_021DA8D8 * param0, int param1);
Expand Down
Loading

0 comments on commit 34dce4f

Please sign in to comment.