mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-03-21 17:55:13 -05:00
Document Battle Factory App graphics (#978)
This commit is contained in:
parent
e975136357
commit
b5701c9dea
|
|
@ -362,7 +362,7 @@ TEXT_BANK_UNK_0360
|
|||
TEXT_BANK_MENU_ENTRIES
|
||||
TEXT_BANK_DUMMY_0362
|
||||
TEXT_BANK_UNK_0363
|
||||
TEXT_BANK_UNK_0364
|
||||
TEXT_BANK_BATTLE_FACTORY_APP
|
||||
TEXT_BANK_BATTLE_FACTORY_SCENE
|
||||
TEXT_BANK_JOURNAL_ENTRIES
|
||||
TEXT_BANK_START_MENU
|
||||
|
|
|
|||
27
include/applications/frontier/battle_factory/cursor.h
Normal file
27
include/applications/frontier/battle_factory/cursor.h
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_CURSOR_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_CURSOR_H
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
#include "coordinates.h"
|
||||
|
||||
typedef struct BattleFactoryAppCursorSprite {
|
||||
u8 unk_00;
|
||||
u8 unk_01;
|
||||
u8 currentSlot;
|
||||
u8 unk_03;
|
||||
const CoordinatesS16 *positions;
|
||||
const u8 *animIDs;
|
||||
Sprite *sprite;
|
||||
u8 unk_10;
|
||||
} BattleFactoryAppCursor;
|
||||
|
||||
BattleFactoryAppCursor *BattleFactoryAppCursor_New(BattleFactoryAppSpriteManager *spriteMan, u8 param1, u8 param2, u8 param3, u8 startingSlot, const CoordinatesS16 *positions, const u8 *animIDs);
|
||||
void *BattleFactoryAppCursor_Free(BattleFactoryAppCursor *cursor);
|
||||
void BattleFactoryAppCursor_SetDrawFlag(BattleFactoryAppCursor *cursor, BOOL draw);
|
||||
void ov105_02246080(BattleFactoryAppCursor *cursor);
|
||||
u8 BattleFactoryAppCursor_GetCurrentSlot(BattleFactoryAppCursor *cursor);
|
||||
void ov105_022461A4(BattleFactoryAppCursor *cursor, int param1);
|
||||
void BattleFactoryAppCursor_UpdatePosition(BattleFactoryAppCursor *cursor, u8 slot);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_CURSOR_H
|
||||
13
include/applications/frontier/battle_factory/helpers.h
Normal file
13
include/applications/frontier/battle_factory/helpers.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_HELPERS_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_HELPERS_H
|
||||
|
||||
#include "struct_defs/pokemon.h"
|
||||
|
||||
#include "pokemon_sprite.h"
|
||||
|
||||
void BattleFactoryApp_Setup3D(void);
|
||||
void BattleFactoryApp_UpdateMonGraphics(PokemonSpriteManager *spriteMan);
|
||||
PokemonSprite *BattleFactoryApp_CreateMonSprite(PokemonSpriteManager *spriteMan, int polygonID, Pokemon *mon, int x, int y, int z);
|
||||
void BattleFactoryApp_FlipMonSprite(PokemonSprite *sprite, BOOL flipHorizontal);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_HELPERS_H
|
||||
14
include/applications/frontier/battle_factory/main.h
Normal file
14
include/applications/frontier/battle_factory/main.h
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_MAIN_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_MAIN_H
|
||||
|
||||
#include "overlay_manager.h"
|
||||
|
||||
int BattleFactoryApp_Init(ApplicationManager *appMan, int *state);
|
||||
int BattleFactoryApp_Main(ApplicationManager *appMan, int *state);
|
||||
int BattleFactoryApp_Exit(ApplicationManager *appMan, int *state);
|
||||
void ov105_0224569C(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_02245744(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_022457B8(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_022458A4(int param0, int param1, void *param2, void *param3);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_MAIN_H
|
||||
16
include/applications/frontier/battle_factory/panel_sprite.h
Normal file
16
include/applications/frontier/battle_factory/panel_sprite.h
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SCREEN_SPRITE_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SCREEN_SPRITE_H
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
typedef struct BattleFactoryAppPanelSprite {
|
||||
int x;
|
||||
int y;
|
||||
Sprite *sprite;
|
||||
} BattleFactoryAppPanelSprite;
|
||||
|
||||
BattleFactoryAppPanelSprite *BattleFactoryAppPanelSprite_New(BattleFactoryAppSpriteManager *spriteMan, u32 animID, int x, int y, enum HeapID heapID);
|
||||
void *BattleFactoryAppPanelSprite_Free(BattleFactoryAppPanelSprite *sprite);
|
||||
BOOL BattleFactoryAppPanelSprite_IsAnimated(BattleFactoryAppPanelSprite *sprite);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SCREEN_SPRITE_H
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_POKEBALL_SPRITE_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_POKEBALL_SPRITE_H
|
||||
|
||||
#include <nitro/fx/fx.h>
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
typedef struct BattleFactoryAppPokeballSprite {
|
||||
u16 isSelected;
|
||||
u16 unused;
|
||||
int x;
|
||||
int y;
|
||||
Sprite *sprite;
|
||||
} BattleFactoryAppPokeballSprite;
|
||||
|
||||
BattleFactoryAppPokeballSprite *BattleFactoryAppPokeballSprite_New(BattleFactoryAppSpriteManager *spriteMan, int x, int y, u32 heapID);
|
||||
void *BattleFactoryAppPokeballSprite_Free(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
void BattleFactoryAppPokeballSprite_SetDrawFlag(BattleFactoryAppPokeballSprite *ballSprite, BOOL draw);
|
||||
VecFx32 BattleFactoryAppPokeballSprite_SetAndGetPosition(BattleFactoryAppPokeballSprite *ballSprite, int x, int y);
|
||||
void BattleFactoryAppPokeballSprite_SetPosition(BattleFactoryAppPokeballSprite *ballSprite, int x, int y);
|
||||
const VecFx32 *BattleFactoryAppPokeballSprite_GetPosition(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
u8 BattleFactoryAppPokeballSprite_IsSelected(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
void BattleFactoryAppPokeballSprite_SelectMon(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
void BattleFactoryAppPokeballSprite_UnselectMon(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
void ov105_02245F5C(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
int BattleFactoryAppPokeballSprite_GetX(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
int BattleFactoryAppPokeballSprite_GetY(BattleFactoryAppPokeballSprite *ballSprite);
|
||||
void BattleFactoryAppPokeballSprite_SetAnim(BattleFactoryAppPokeballSprite *ballSprite, u32 animID);
|
||||
void BattleFactoryAppPokeballSprite_UpdatePalette(BattleFactoryAppPokeballSprite *ballSprite, u32 palette);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_POKEBALL_SPRITE_H
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SPRITE_MANAGER_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SPRITE_MANAGER_H
|
||||
|
||||
#include "sprite.h"
|
||||
#include "sprite_resource.h"
|
||||
#include "sprite_util.h"
|
||||
|
||||
enum BattleFactoryAppAnimIDs {
|
||||
ANIM_ID_MON_PANEL_OPEN = 0,
|
||||
ANIM_ID_MON_PANEL_CLOSE,
|
||||
ANIM_ID_PARTNER_PANEL_OPEN,
|
||||
ANIM_ID_PARTNER_PANEL_CLOSE,
|
||||
ANIM_ID_UNK_4,
|
||||
ANIM_ID_UNK_5,
|
||||
ANIM_ID_BALL_STATIC,
|
||||
ANIM_ID_BALL_SHAKING,
|
||||
ANIM_ID_CURSOR,
|
||||
ANIM_ID_MENU_CURSOR,
|
||||
ANIM_ID_BALL_ONE_SHAKE,
|
||||
ANIM_ID_UNK_11,
|
||||
ANIM_ID_UNK_12,
|
||||
ANIM_ID_CURSOR_SELECTED,
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
SpriteList *spriteList;
|
||||
G2dRenderer unk_04;
|
||||
SpriteResourceCollection *resourceCollection[4];
|
||||
SpriteResource *resources[1][4];
|
||||
} BattleFactoryAppSpriteManager;
|
||||
|
||||
void BattleFactoryApp_InitSpriteManager(BattleFactoryAppSpriteManager *sprites);
|
||||
Sprite *BattleFactoryApp_InitSprite(BattleFactoryAppSpriteManager *spriteMan, u32 resourceID, u32 animID, u32 priority, int resourcePriority, u8 onSubScreen);
|
||||
void BattleFactoryApp_FreeSprites(BattleFactoryAppSpriteManager *spriteMan);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_SPRITE_MANAGER_H
|
||||
11
include/applications/frontier/battle_factory/windows.h
Normal file
11
include/applications/frontier/battle_factory/windows.h
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
#ifndef POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_WINDOWS_H
|
||||
#define POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_WINDOWS_H
|
||||
|
||||
#include "bg_window.h"
|
||||
|
||||
void BattleFactoryApp_InitWindows(BgConfig *bgConfig, Window *windows);
|
||||
void BattleFactoryApp_FreeWindows(Window *windows);
|
||||
void BattleFactoryApp_DrawWindow(BgConfig *bgConfig, Window *window);
|
||||
void BattleFactoryApp_DrawMessageBox(Window *window, int frame);
|
||||
|
||||
#endif // POKEPLATINUM_APPLICATIONS_BATTLE_FACTORY_WINDOWS_H
|
||||
|
|
@ -95,7 +95,7 @@ enum HeapID {
|
|||
HEAP_ID_90,
|
||||
HEAP_ID_91,
|
||||
HEAP_ID_92,
|
||||
HEAP_ID_93,
|
||||
HEAP_ID_BATTLE_FACTORY_APP,
|
||||
HEAP_ID_94,
|
||||
HEAP_ID_95,
|
||||
HEAP_ID_96,
|
||||
|
|
@ -135,6 +135,7 @@ enum HeapSize {
|
|||
HEAP_SIZE_APPLICATION = 0x10D800,
|
||||
|
||||
HEAP_SIZE_BATTLE_HALL_APP = 0x20000,
|
||||
HEAP_SIZE_BATTLE_FACTORY_APP = 0x20000,
|
||||
HEAP_SIZE_BAG = 0x30000,
|
||||
|
||||
HEAP_SIZE_PRE_POKETCH_SUBSCREEN = 0x18000,
|
||||
|
|
|
|||
9
include/coordinates.h
Normal file
9
include/coordinates.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef POKEPLATINUM_COORDINATES_H
|
||||
#define POKEPLATINUM_COORDINATES_H
|
||||
|
||||
typedef struct CoordinatesS16 {
|
||||
s16 x;
|
||||
s16 y;
|
||||
} CoordinatesS16;
|
||||
|
||||
#endif // POKEPLATINUM_COORDINATES_H
|
||||
|
|
@ -8,6 +8,14 @@
|
|||
#define BATTLE_FACTORY_BATTLE_ROOM_TILEMAP 1
|
||||
#define BATTLE_FACTORY_CORRIDOR_TILEMAP 2
|
||||
#define BATTLE_FACTORY_CORRIDOR_FLOOR_TILEMAP 3
|
||||
#define BATTLE_FACTORY_APP_TILES 4
|
||||
#define BATTLE_FACTORY_APP_MON_SELECTION_TILEMAP 5
|
||||
#define BATTLE_FACTORY_APP_NO_SCREENS_TILEMAP 7
|
||||
#define BATTLE_FACTORY_APP_CONVEYOR_TILEMAP 8
|
||||
#define BATTLE_FACTORY_APP_WHEEL_TILEMAP 9
|
||||
#define BATTLE_FACTORY_APP_SUMMARY_TILEMAP 10
|
||||
#define BATTLE_FACTORY_APP_MULTI_MON_SELECTION_TILEMAP 11
|
||||
#define BATTLE_FACTORY_APP_MULTI_SUMMARY_TILEMAP 12
|
||||
#define BATTLE_HALL_BATTLE_ROOM_TILES 14
|
||||
#define BATTLE_HALL_CORRIDOR_TILES 16
|
||||
#define BATTLE_HALL_CORRIDOR_TILEMAP 17
|
||||
|
|
@ -48,6 +56,7 @@
|
|||
#define BATTLE_FRONTIER_APP_SUB_SCREEN_TILES 125
|
||||
#define BATTLE_FRONTIER_APP_SUB_SCREEN_TILEMAP 126
|
||||
#define BATTLE_FACTORY_PLTT 129
|
||||
#define BATTLE_FACTORY_APP_PLTT 130
|
||||
#define BATTLE_HALL_BATTLE_ROOM_PLTT 131
|
||||
#define BATTLE_HALL_CORRIDOR_PLTT 132
|
||||
#define BATTLE_HALL_BATTLE_ROOM_LIGHTS_PLTT 133
|
||||
|
|
|
|||
|
|
@ -4,12 +4,16 @@
|
|||
// frontier_obj.narc. This file should eventually be deleted and the constants
|
||||
// replaced with those from a naix file once the NARC is unpacked.
|
||||
|
||||
#define BATTLE_FACTORY_APP_SPRITES_NCGR 0
|
||||
#define BATTLE_FACTORY_APP_SPRITES_NANR 1
|
||||
#define BATTLE_FACTORY_APP_SPRITES_NCER 2
|
||||
#define BATTLE_HALL_APP_CURSOR_BOX_NCGR 12
|
||||
#define BATTLE_HALL_APP_CURSOR_BOX_NANR 13
|
||||
#define BATTLE_HALL_APP_CURSOR_BOX_NCER 14
|
||||
#define BATTLE_CASTLE_APP_SPRITES_NCGR 15
|
||||
#define BATTLE_CASTLE_APP_SPRITES_NANR 16
|
||||
#define BATTLE_CASTLE_APP_SPRITES_NCER 17
|
||||
#define BATTLE_FACTORY_APP_SPRITES_PLTT 36
|
||||
#define BATTLE_HALL_APP_CURSOR_BOX_PLTT 38
|
||||
#define BATTLE_CASTLE_APP_SPRITES_PLTT 39
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02241AE0_H
|
||||
#define POKEPLATINUM_OV105_02241AE0_H
|
||||
|
||||
#include "overlay_manager.h"
|
||||
|
||||
int ov105_02241AE0(ApplicationManager *appMan, int *param1);
|
||||
int ov105_02241BD8(ApplicationManager *appMan, int *param1);
|
||||
int ov105_02241F54(ApplicationManager *appMan, int *param1);
|
||||
void ov105_0224569C(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_02245744(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_022457B8(int param0, int param1, void *param2, void *param3);
|
||||
void ov105_022458A4(int param0, int param1, void *param2, void *param3);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02241AE0_H
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02245AAC_H
|
||||
#define POKEPLATINUM_OV105_02245AAC_H
|
||||
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
|
||||
#include "sprite.h"
|
||||
|
||||
void ov105_02245AAC(UnkStruct_ov105_02245AAC *param0);
|
||||
Sprite *ov105_02245BA4(UnkStruct_ov105_02245AAC *param0, u32 param1, u32 param2, u32 param3, int param4, u8 param5);
|
||||
void ov105_02245C50(UnkStruct_ov105_02245AAC *param0);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02245AAC_H
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02245CD0_H
|
||||
#define POKEPLATINUM_OV105_02245CD0_H
|
||||
|
||||
#include "pokemon.h"
|
||||
#include "pokemon_sprite.h"
|
||||
|
||||
void ov105_02245CD0(void);
|
||||
void ov105_02245D50(PokemonSpriteManager *param0);
|
||||
PokemonSprite *ov105_02245D88(PokemonSpriteManager *param0, int param1, Pokemon *param2, int param3, int param4, int param5);
|
||||
void ov105_02245DB8(PokemonSprite *param0, int param1);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02245CD0_H
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02245DC4_H
|
||||
#define POKEPLATINUM_OV105_02245DC4_H
|
||||
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245E1C_decl.h"
|
||||
|
||||
UnkStruct_ov105_02245E1C *ov105_02245DC4(UnkStruct_ov105_02245AAC *param0, u32 param1, int param2, int param3, enum HeapID heapID);
|
||||
void *ov105_02245E1C(UnkStruct_ov105_02245E1C *param0);
|
||||
void ov105_02245E30(UnkStruct_ov105_02245E1C *param0, int param1, int param2);
|
||||
BOOL ov105_02245E48(UnkStruct_ov105_02245E1C *param0);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02245DC4_H
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02245E54_H
|
||||
#define POKEPLATINUM_OV105_02245E54_H
|
||||
|
||||
#include <nitro/fx/fx.h>
|
||||
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245EA8_decl.h"
|
||||
|
||||
UnkStruct_ov105_02245EA8 *ov105_02245E54(UnkStruct_ov105_02245AAC *param0, int param1, int param2, u32 heapID);
|
||||
void *ov105_02245EA8(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245EBC(UnkStruct_ov105_02245EA8 *param0, int param1);
|
||||
VecFx32 ov105_02245EC8(UnkStruct_ov105_02245EA8 *param0, int param1, int param2);
|
||||
void ov105_02245F14(UnkStruct_ov105_02245EA8 *param0, int param1, int param2);
|
||||
const VecFx32 *ov105_02245F2C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F38(UnkStruct_ov105_02245EA8 *param0, u8 param1);
|
||||
u8 ov105_02245F3C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F44(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F50(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F5C(UnkStruct_ov105_02245EA8 *param0);
|
||||
int ov105_02245F88(UnkStruct_ov105_02245EA8 *param0);
|
||||
int ov105_02245F8C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F90(UnkStruct_ov105_02245EA8 *param0, u32 param1);
|
||||
void ov105_02245FAC(UnkStruct_ov105_02245EA8 *param0, u32 param1);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02245E54_H
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02245FB8_H
|
||||
#define POKEPLATINUM_OV105_02245FB8_H
|
||||
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02246060_decl.h"
|
||||
#include "overlay105/struct_ov105_02246394.h"
|
||||
|
||||
UnkStruct_ov105_02246060 *ov105_02245FB8(UnkStruct_ov105_02245AAC *param0, u8 param1, u8 param2, u8 param3, u8 param4, const UnkStruct_ov105_02246394 *param5, const u8 *param6);
|
||||
void *ov105_02246060(UnkStruct_ov105_02246060 *param0);
|
||||
void ov105_02246074(UnkStruct_ov105_02246060 *param0, int param1);
|
||||
void ov105_02246080(UnkStruct_ov105_02246060 *param0);
|
||||
u8 ov105_022461A0(UnkStruct_ov105_02246060 *param0);
|
||||
void ov105_022461A4(UnkStruct_ov105_02246060 *param0, int param1);
|
||||
void ov105_022461C0(UnkStruct_ov105_02246060 *param0, u8 param1);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02245FB8_H
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
#ifndef POKEPLATINUM_OV105_02246214_H
|
||||
#define POKEPLATINUM_OV105_02246214_H
|
||||
|
||||
#include "bg_window.h"
|
||||
|
||||
void ov105_02246214(BgConfig *param0, Window *param1);
|
||||
void ov105_02246244(Window *param0);
|
||||
void ov105_02246260(BgConfig *param0, Window *param1);
|
||||
void ov105_0224628C(Window *param0, int param1);
|
||||
|
||||
#endif // POKEPLATINUM_OV105_02246214_H
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02241FF4_DECL_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02241FF4_DECL_H
|
||||
|
||||
typedef struct UnkStruct_ov105_02241FF4_t UnkStruct_ov105_02241FF4;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02241FF4_DECL_H
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02245AAC_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02245AAC_H
|
||||
|
||||
#include "sprite.h"
|
||||
#include "sprite_resource.h"
|
||||
#include "sprite_util.h"
|
||||
|
||||
typedef struct {
|
||||
SpriteList *unk_00;
|
||||
G2dRenderer unk_04;
|
||||
SpriteResourceCollection *unk_190[4];
|
||||
SpriteResource *unk_1A0[1][4];
|
||||
} UnkStruct_ov105_02245AAC;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02245AAC_H
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02245E1C_DECL_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02245E1C_DECL_H
|
||||
|
||||
typedef struct UnkStruct_ov105_02245E1C_t UnkStruct_ov105_02245E1C;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02245E1C_DECL_H
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02245EA8_DECL_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02245EA8_DECL_H
|
||||
|
||||
typedef struct UnkStruct_ov105_02245EA8_t UnkStruct_ov105_02245EA8;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02245EA8_DECL_H
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02246060_DECL_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02246060_DECL_H
|
||||
|
||||
typedef struct UnkStruct_ov105_02246060_t UnkStruct_ov105_02246060;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02246060_DECL_H
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
#ifndef POKEPLATINUM_STRUCT_OV105_02246394_H
|
||||
#define POKEPLATINUM_STRUCT_OV105_02246394_H
|
||||
|
||||
typedef struct {
|
||||
s16 unk_00;
|
||||
s16 unk_02;
|
||||
} UnkStruct_ov105_02246394;
|
||||
|
||||
#endif // POKEPLATINUM_STRUCT_OV105_02246394_H
|
||||
|
|
@ -1573,13 +1573,13 @@ Overlay overlay104
|
|||
Overlay overlay105
|
||||
{
|
||||
After overlay104
|
||||
Object main.nef.p/src_overlay105_ov105_02241AE0.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02245AAC.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02245CD0.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02245DC4.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02245E54.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02245FB8.c.o
|
||||
Object main.nef.p/src_overlay105_ov105_02246214.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_main.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_sprite_manager.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_helpers.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_panel_sprite.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_pokeball_sprite.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_cursor.c.o
|
||||
Object main.nef.p/src_applications_frontier_battle_factory_windows.c.o
|
||||
}
|
||||
|
||||
Overlay battle_hall_app
|
||||
|
|
|
|||
|
|
@ -2,89 +2,89 @@
|
|||
"key": 3949,
|
||||
"messages": [
|
||||
{
|
||||
"id": "pl_msg_00000364_00000",
|
||||
"id": "BattleFactoryApp_Text_ChoosePokemon",
|
||||
"en_US": [
|
||||
"Please choose Pokémon\n",
|
||||
"no. {STRVAR_1 50, 0, 0}."
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00001",
|
||||
"id": "BattleFactoryApp_Text_OkWithSelection",
|
||||
"en_US": [
|
||||
"Are you OK with the\n",
|
||||
"chosen {STRVAR_1 50, 0, 0} Pokémon?"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00002",
|
||||
"id": "BattleFactoryApp_Text_PleaseWait",
|
||||
"en_US": "Please wait a moment."
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00003",
|
||||
"id": "BattleFactoryApp_Text_Yes",
|
||||
"en_US": "YES"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00004",
|
||||
"id": "BattleFactoryApp_Text_No",
|
||||
"en_US": "NO"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00005",
|
||||
"id": "BattleFactoryApp_Text_Summary",
|
||||
"en_US": "SUMMARY"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00006",
|
||||
"id": "BattleFactoryApp_Text_Rent",
|
||||
"en_US": "RENT"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00007",
|
||||
"id": "BattleFactoryApp_Text_Cancel",
|
||||
"en_US": "CANCEL"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00008",
|
||||
"id": "BattleFactoryApp_Text_Remove",
|
||||
"en_US": "REMOVE"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00009",
|
||||
"id": "BattleFactoryApp_Text_ChooseExchange",
|
||||
"en_US": [
|
||||
"Choose the Pokémon to\n",
|
||||
"be exchanged."
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00010",
|
||||
"id": "BattleFactoryApp_Text_CancelTrade",
|
||||
"en_US": [
|
||||
"Cancel the Pokémon\n",
|
||||
"trade?"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00011",
|
||||
"id": "BattleFactoryApp_Text_Dummy1",
|
||||
"garbage": 2
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00012",
|
||||
"id": "BattleFactoryApp_Text_Dummy2",
|
||||
"garbage": 3
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00013",
|
||||
"id": "BattleFactoryApp_Text_ChooseReceive",
|
||||
"en_US": [
|
||||
"Choose the Pokémon you\n",
|
||||
"want to receive."
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00014",
|
||||
"id": "BattleFactoryApp_Text_AcceptPokemon",
|
||||
"en_US": [
|
||||
"Will you accept this\n",
|
||||
"Pokémon?"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00015",
|
||||
"id": "BattleFactoryApp_Text_PleaseWait2",
|
||||
"en_US": "Please wait a moment."
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00016",
|
||||
"id": "BattleFactoryApp_Text_TradeOccurred",
|
||||
"en_US": [
|
||||
"{STRVAR_1 3, 0, 0} traded\n",
|
||||
"away {STRVAR_1 0, 1, 0} and\f",
|
||||
|
|
@ -92,43 +92,43 @@
|
|||
]
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00017",
|
||||
"id": "BattleFactoryApp_Text_Dummy3",
|
||||
"garbage": 2
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00018",
|
||||
"id": "BattleFactoryApp_Text_Dummy4",
|
||||
"garbage": 3
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00019",
|
||||
"id": "BattleFactoryApp_Text_Cancel2",
|
||||
"en_US": "CANCEL"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00020",
|
||||
"id": "BattleFactoryApp_Text_Dummy5",
|
||||
"garbage": 6
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00021",
|
||||
"id": "BattleFactoryApp_Text_Exchange",
|
||||
"en_US": "EXCHANGE"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00022",
|
||||
"id": "BattleFactoryApp_Text_Dummy6",
|
||||
"garbage": 3
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00023",
|
||||
"id": "BattleFactoryApp_Text_Back",
|
||||
"en_US": "BACK"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00024",
|
||||
"id": "BattleFactoryApp_Text_Cancel3",
|
||||
"en_US": "CANCEL"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00025",
|
||||
"id": "BattleFactoryApp_Text_MaleSymbol",
|
||||
"en_US": "♂"
|
||||
},
|
||||
{
|
||||
"id": "pl_msg_00000364_00026",
|
||||
"id": "BattleFactoryApp_Text_FemaleSymbol",
|
||||
"en_US": "♀"
|
||||
}
|
||||
]
|
||||
159
src/applications/frontier/battle_factory/cursor.c
Normal file
159
src/applications/frontier/battle_factory/cursor.c
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
#include "applications/frontier/battle_factory/cursor.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
#include "system.h"
|
||||
|
||||
BattleFactoryAppCursor *BattleFactoryAppCursor_New(BattleFactoryAppSpriteManager *spriteMan, u8 param1, u8 param2, u8 param3, u8 startingSlot, const CoordinatesS16 *positions, const u8 *animIDs)
|
||||
{
|
||||
BattleFactoryAppCursor *cursor = Heap_Alloc(HEAP_ID_BATTLE_FACTORY_APP, sizeof(BattleFactoryAppCursor));
|
||||
memset(cursor, 0, sizeof(BattleFactoryAppCursor));
|
||||
|
||||
cursor->unk_00 = param1;
|
||||
cursor->unk_10 = param2;
|
||||
cursor->unk_01 = param3;
|
||||
cursor->currentSlot = startingSlot;
|
||||
cursor->positions = positions;
|
||||
cursor->animIDs = animIDs;
|
||||
|
||||
if (animIDs != NULL) {
|
||||
cursor->sprite = BattleFactoryApp_InitSprite(spriteMan, 0, cursor->animIDs[startingSlot], 0, 0, FALSE);
|
||||
} else {
|
||||
if (param3 == 0) {
|
||||
cursor->sprite = BattleFactoryApp_InitSprite(spriteMan, 0, ANIM_ID_CURSOR, 0, 0, FALSE);
|
||||
} else {
|
||||
cursor->sprite = BattleFactoryApp_InitSprite(spriteMan, 0, ANIM_ID_MENU_CURSOR, 0, 0, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
VecFx32 position;
|
||||
position.x = cursor->positions[cursor->currentSlot].x * FX32_ONE;
|
||||
position.y = cursor->positions[cursor->currentSlot].y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(cursor->sprite, &position);
|
||||
return cursor;
|
||||
}
|
||||
|
||||
void *BattleFactoryAppCursor_Free(BattleFactoryAppCursor *cursor)
|
||||
{
|
||||
Sprite_Delete(cursor->sprite);
|
||||
Heap_Free(cursor);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void BattleFactoryAppCursor_SetDrawFlag(BattleFactoryAppCursor *cursor, BOOL draw)
|
||||
{
|
||||
Sprite_SetDrawFlag(cursor->sprite, draw);
|
||||
}
|
||||
|
||||
void ov105_02246080(BattleFactoryAppCursor *cursor)
|
||||
{
|
||||
if (cursor->unk_03 == 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (gSystem.pressedKeys == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (cursor->unk_01 == 2) {
|
||||
if (JOY_NEW(PAD_KEY_LEFT)) {
|
||||
if (cursor->currentSlot == 0) {
|
||||
cursor->currentSlot = (cursor->unk_00 - 1);
|
||||
} else {
|
||||
cursor->currentSlot--;
|
||||
}
|
||||
} else if (JOY_NEW(PAD_KEY_RIGHT)) {
|
||||
if (cursor->currentSlot == (cursor->unk_00 - 1)) {
|
||||
cursor->currentSlot = 0;
|
||||
} else {
|
||||
cursor->currentSlot++;
|
||||
}
|
||||
} else if (JOY_NEW(PAD_KEY_DOWN)) {
|
||||
if (cursor->currentSlot < (cursor->unk_10)) {
|
||||
cursor->currentSlot = cursor->unk_10;
|
||||
} else if (cursor->currentSlot == (cursor->unk_00 - 1)) {
|
||||
cursor->currentSlot = 0;
|
||||
} else {
|
||||
cursor->currentSlot++;
|
||||
}
|
||||
} else if (JOY_NEW(PAD_KEY_UP)) {
|
||||
if (cursor->currentSlot < (cursor->unk_10)) {
|
||||
cursor->currentSlot = (cursor->unk_00 - 1);
|
||||
} else {
|
||||
cursor->currentSlot--;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
u32 v1, v2;
|
||||
if (cursor->unk_01 == 0) {
|
||||
v1 = PAD_KEY_RIGHT;
|
||||
v2 = PAD_KEY_LEFT;
|
||||
} else {
|
||||
v1 = PAD_KEY_DOWN;
|
||||
v2 = PAD_KEY_UP;
|
||||
}
|
||||
|
||||
if (JOY_NEW(v1)) {
|
||||
cursor->currentSlot++;
|
||||
|
||||
if (cursor->currentSlot >= cursor->unk_00) {
|
||||
cursor->currentSlot = 0;
|
||||
}
|
||||
} else if (JOY_NEW(v2)) {
|
||||
if (cursor->currentSlot == 0) {
|
||||
cursor->currentSlot = cursor->unk_00;
|
||||
}
|
||||
|
||||
cursor->currentSlot--;
|
||||
}
|
||||
}
|
||||
|
||||
if (cursor->animIDs != NULL) {
|
||||
Sprite_SetAnimNoRestart(cursor->sprite, cursor->animIDs[cursor->currentSlot]);
|
||||
}
|
||||
|
||||
VecFx32 position = *Sprite_GetPosition(cursor->sprite);
|
||||
position.x = cursor->positions[cursor->currentSlot].x * FX32_ONE;
|
||||
position.y = cursor->positions[cursor->currentSlot].y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(cursor->sprite, &position);
|
||||
}
|
||||
|
||||
u8 BattleFactoryAppCursor_GetCurrentSlot(BattleFactoryAppCursor *cursor)
|
||||
{
|
||||
return cursor->currentSlot;
|
||||
}
|
||||
|
||||
void ov105_022461A4(BattleFactoryAppCursor *cursor, int param1)
|
||||
{
|
||||
cursor->unk_03 = param1;
|
||||
|
||||
if (param1 == 0) {
|
||||
Sprite_SetAnimNoRestart(cursor->sprite, ANIM_ID_CURSOR);
|
||||
} else {
|
||||
Sprite_SetAnimNoRestart(cursor->sprite, ANIM_ID_CURSOR_SELECTED);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleFactoryAppCursor_UpdatePosition(BattleFactoryAppCursor *cursor, u8 slot)
|
||||
{
|
||||
cursor->currentSlot = slot;
|
||||
|
||||
if (cursor->animIDs != NULL) {
|
||||
Sprite_SetAnimNoRestart(cursor->sprite, cursor->animIDs[cursor->currentSlot]);
|
||||
}
|
||||
|
||||
VecFx32 position = *Sprite_GetPosition(cursor->sprite);
|
||||
|
||||
position.x = cursor->positions[cursor->currentSlot].x * FX32_ONE;
|
||||
position.y = cursor->positions[cursor->currentSlot].y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(cursor->sprite, &position);
|
||||
}
|
||||
56
src/applications/frontier/battle_factory/helpers.c
Normal file
56
src/applications/frontier/battle_factory/helpers.c
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
#include "applications/frontier/battle_factory/helpers.h"
|
||||
|
||||
#include "nitro/hw/common/lcd.h"
|
||||
#include <nitro.h>
|
||||
|
||||
#include "constants/graphics.h"
|
||||
|
||||
#include "gx_layers.h"
|
||||
#include "pokemon.h"
|
||||
#include "pokemon_sprite.h"
|
||||
#include "unk_0202419C.h"
|
||||
|
||||
void BattleFactoryApp_Setup3D(void)
|
||||
{
|
||||
GXLayers_EngineAToggleLayers(GX_PLANEMASK_BG0, TRUE);
|
||||
G2_SetBG0Priority(0);
|
||||
|
||||
G3X_SetShading(GX_SHADING_TOON);
|
||||
G3X_AntiAlias(TRUE);
|
||||
G3X_AlphaTest(FALSE, 0);
|
||||
G3X_AlphaBlend(TRUE);
|
||||
G3X_EdgeMarking(FALSE);
|
||||
G3X_SetFog(FALSE, GX_FOGBLEND_COLOR_ALPHA, GX_FOGSLOPE_0x8000, 0);
|
||||
G3X_SetClearColor(GX_RGB(0, 0, 0), 0, G3X_DEPTH_MAX, 63, FALSE);
|
||||
|
||||
G3_ViewPort(0, 0, HW_LCD_WIDTH - 1, HW_LCD_HEIGHT - 1);
|
||||
}
|
||||
|
||||
void BattleFactoryApp_UpdateMonGraphics(PokemonSpriteManager *spriteMan)
|
||||
{
|
||||
G3_ResetG3X();
|
||||
|
||||
G3_MtxMode(GX_MTXMODE_PROJECTION);
|
||||
G3_Identity();
|
||||
G3_MtxMode(GX_MTXMODE_POSITION_VECTOR);
|
||||
G3_Identity();
|
||||
|
||||
NNS_G3dGlbFlush();
|
||||
NNS_G2dSetupSoftwareSpriteCamera();
|
||||
|
||||
PokemonSpriteManager_DrawSprites(spriteMan);
|
||||
G3_SwapBuffers(GX_SORTMODE_MANUAL, GX_BUFFERMODE_Z);
|
||||
}
|
||||
|
||||
PokemonSprite *BattleFactoryApp_CreateMonSprite(PokemonSpriteManager *spriteMan, int polygonID, Pokemon *mon, int x, int y, int z)
|
||||
{
|
||||
PokemonSpriteTemplate template;
|
||||
Pokemon_BuildSpriteTemplate(&template, mon, FACE_FRONT);
|
||||
|
||||
return PokemonSpriteManager_CreateSprite(spriteMan, &template, x, y, z, polygonID, NULL, NULL);
|
||||
}
|
||||
|
||||
void BattleFactoryApp_FlipMonSprite(PokemonSprite *sprite, BOOL flipHorizontal)
|
||||
{
|
||||
PokemonSprite_SetAttribute(sprite, MON_SPRITE_FLIP_H, flipHorizontal);
|
||||
}
|
||||
3191
src/applications/frontier/battle_factory/main.c
Normal file
3191
src/applications/frontier/battle_factory/main.c
Normal file
File diff suppressed because it is too large
Load Diff
48
src/applications/frontier/battle_factory/panel_sprite.c
Normal file
48
src/applications/frontier/battle_factory/panel_sprite.c
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
#include "applications/frontier/battle_factory/panel_sprite.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
|
||||
static void SetSpritePosition(BattleFactoryAppPanelSprite *sprite, int x, int y);
|
||||
|
||||
BattleFactoryAppPanelSprite *BattleFactoryAppPanelSprite_New(BattleFactoryAppSpriteManager *spriteMan, u32 animID, int x, int y, enum HeapID heapID)
|
||||
{
|
||||
BattleFactoryAppPanelSprite *panelSprite = Heap_Alloc(heapID, sizeof(BattleFactoryAppPanelSprite));
|
||||
memset(panelSprite, 0, sizeof(BattleFactoryAppPanelSprite));
|
||||
|
||||
panelSprite->x = x;
|
||||
panelSprite->y = y;
|
||||
panelSprite->sprite = BattleFactoryApp_InitSprite(spriteMan, 0, animID, 0, 1, FALSE);
|
||||
|
||||
SetSpritePosition(panelSprite, x, y);
|
||||
|
||||
return panelSprite;
|
||||
}
|
||||
|
||||
void *BattleFactoryAppPanelSprite_Free(BattleFactoryAppPanelSprite *panelSprite)
|
||||
{
|
||||
Sprite_Delete(panelSprite->sprite);
|
||||
Heap_Free(panelSprite);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void SetSpritePosition(BattleFactoryAppPanelSprite *panelSprite, int x, int y)
|
||||
{
|
||||
VecFx32 position;
|
||||
|
||||
position.x = x * FX32_ONE;
|
||||
position.y = y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(panelSprite->sprite, &position);
|
||||
}
|
||||
|
||||
BOOL BattleFactoryAppPanelSprite_IsAnimated(BattleFactoryAppPanelSprite *panelSprite)
|
||||
{
|
||||
return Sprite_IsAnimated(panelSprite->sprite);
|
||||
}
|
||||
117
src/applications/frontier/battle_factory/pokeball_sprite.c
Normal file
117
src/applications/frontier/battle_factory/pokeball_sprite.c
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
#include "applications/frontier/battle_factory/pokeball_sprite.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
|
||||
static void BattleFactoryAppPokeballSprite_SetSelected(BattleFactoryAppPokeballSprite *ballSprite, u8 isSelected);
|
||||
|
||||
BattleFactoryAppPokeballSprite *BattleFactoryAppPokeballSprite_New(BattleFactoryAppSpriteManager *spriteMan, int x, int y, u32 heapID)
|
||||
{
|
||||
BattleFactoryAppPokeballSprite *ballSprite = Heap_Alloc(heapID, sizeof(BattleFactoryAppPokeballSprite));
|
||||
memset(ballSprite, 0, sizeof(BattleFactoryAppPokeballSprite));
|
||||
|
||||
ballSprite->isSelected = 0;
|
||||
ballSprite->x = x;
|
||||
ballSprite->y = y;
|
||||
ballSprite->sprite = BattleFactoryApp_InitSprite(spriteMan, 0, ANIM_ID_BALL_STATIC, 0, 0, FALSE);
|
||||
|
||||
BattleFactoryAppPokeballSprite_SetPosition(ballSprite, x, y);
|
||||
Sprite_SetExplicitPalette(ballSprite->sprite, 1);
|
||||
|
||||
return ballSprite;
|
||||
}
|
||||
|
||||
void *BattleFactoryAppPokeballSprite_Free(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
Sprite_Delete(ballSprite->sprite);
|
||||
Heap_Free(ballSprite);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_SetDrawFlag(BattleFactoryAppPokeballSprite *ballSprite, BOOL draw)
|
||||
{
|
||||
Sprite_SetDrawFlag(ballSprite->sprite, draw);
|
||||
}
|
||||
|
||||
VecFx32 BattleFactoryAppPokeballSprite_SetAndGetPosition(BattleFactoryAppPokeballSprite *ballSprite, int x, int y)
|
||||
{
|
||||
VecFx32 position = *Sprite_GetPosition(ballSprite->sprite);
|
||||
position.x += x * FX32_ONE;
|
||||
position.y += y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(ballSprite->sprite, &position);
|
||||
return *Sprite_GetPosition(ballSprite->sprite);
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_SetPosition(BattleFactoryAppPokeballSprite *ballSprite, int x, int y)
|
||||
{
|
||||
VecFx32 position;
|
||||
|
||||
position.x = x * FX32_ONE;
|
||||
position.y = y * FX32_ONE;
|
||||
|
||||
Sprite_SetPosition(ballSprite->sprite, &position);
|
||||
}
|
||||
|
||||
const VecFx32 *BattleFactoryAppPokeballSprite_GetPosition(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
return Sprite_GetPosition(ballSprite->sprite);
|
||||
}
|
||||
|
||||
static void BattleFactoryAppPokeballSprite_SetSelected(BattleFactoryAppPokeballSprite *ballSprite, u8 isSelected)
|
||||
{
|
||||
ballSprite->isSelected = isSelected;
|
||||
}
|
||||
|
||||
u8 BattleFactoryAppPokeballSprite_IsSelected(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
return ballSprite->isSelected;
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_SelectMon(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
BattleFactoryAppPokeballSprite_SetSelected(ballSprite, TRUE);
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_UnselectMon(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
BattleFactoryAppPokeballSprite_SetSelected(ballSprite, FALSE);
|
||||
}
|
||||
|
||||
void ov105_02245F5C(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
const VecFx32 *oldPos = BattleFactoryAppPokeballSprite_GetPosition(ballSprite);
|
||||
|
||||
VecFx32 newPos;
|
||||
newPos.x = ((oldPos->x / FX32_ONE) + 248) * FX32_ONE;
|
||||
newPos.y = oldPos->y;
|
||||
|
||||
Sprite_SetPosition(ballSprite->sprite, &newPos);
|
||||
}
|
||||
|
||||
int BattleFactoryAppPokeballSprite_GetX(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
return ballSprite->x;
|
||||
}
|
||||
|
||||
int BattleFactoryAppPokeballSprite_GetY(BattleFactoryAppPokeballSprite *ballSprite)
|
||||
{
|
||||
return ballSprite->y;
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_SetAnim(BattleFactoryAppPokeballSprite *ballSprite, u32 animID)
|
||||
{
|
||||
Sprite_SetAnimSpeed(ballSprite->sprite, FX32_ONE);
|
||||
Sprite_SetAnim(ballSprite->sprite, animID);
|
||||
}
|
||||
|
||||
void BattleFactoryAppPokeballSprite_UpdatePalette(BattleFactoryAppPokeballSprite *ballSprite, u32 palette)
|
||||
{
|
||||
Sprite_SetExplicitPalette(ballSprite->sprite, palette);
|
||||
}
|
||||
107
src/applications/frontier/battle_factory/sprite_manager.c
Normal file
107
src/applications/frontier/battle_factory/sprite_manager.c
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
#include "applications/frontier/battle_factory/sprite_manager.h"
|
||||
|
||||
#include <nitro.h>
|
||||
|
||||
#include "char_transfer.h"
|
||||
#include "gx_layers.h"
|
||||
#include "narc_frontier_obj.h"
|
||||
#include "pltt_transfer.h"
|
||||
#include "render_oam.h"
|
||||
#include "sprite.h"
|
||||
#include "sprite_resource.h"
|
||||
#include "sprite_transfer.h"
|
||||
#include "sprite_util.h"
|
||||
|
||||
static void InitCharPlttTransferBuffers(void);
|
||||
|
||||
static const u8 sCapacities[4] = { 1, 1, 1, 1 };
|
||||
|
||||
void BattleFactoryApp_InitSpriteManager(BattleFactoryAppSpriteManager *sprites)
|
||||
{
|
||||
InitCharPlttTransferBuffers();
|
||||
NNS_G2dInitOamManagerModule();
|
||||
RenderOam_Init(0, 128, 0, 32, 0, 128, 0, 32, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
|
||||
sprites->spriteList = SpriteList_InitRendering(9, &sprites->unk_04, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
|
||||
for (int i = 0; i < MAX_SPRITE_RESOURCE_GEN4; i++) {
|
||||
sprites->resourceCollection[i] = SpriteResourceCollection_New(sCapacities[i], i, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
}
|
||||
|
||||
sprites->resources[0][0] = SpriteResourceCollection_AddTiles(sprites->resourceCollection[0], NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_OBJ, BATTLE_FACTORY_APP_SPRITES_NCGR, TRUE, 0, NNS_G2D_VRAM_TYPE_2DMAIN, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
sprites->resources[0][1] = SpriteResourceCollection_AddPalette(sprites->resourceCollection[1], NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_OBJ, BATTLE_FACTORY_APP_SPRITES_PLTT, FALSE, 0, NNS_G2D_VRAM_TYPE_2DMAIN, 8, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
sprites->resources[0][2] = SpriteResourceCollection_Add(sprites->resourceCollection[2], NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_OBJ, BATTLE_FACTORY_APP_SPRITES_NCER, TRUE, 0, SPRITE_RESOURCE_CELL, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
sprites->resources[0][3] = SpriteResourceCollection_Add(sprites->resourceCollection[3], NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_OBJ, BATTLE_FACTORY_APP_SPRITES_NANR, TRUE, 0, SPRITE_RESOURCE_ANIM, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
|
||||
SpriteTransfer_RequestChar(sprites->resources[0][SPRITE_RESOURCE_CHAR]);
|
||||
SpriteTransfer_RequestPlttWholeRange(sprites->resources[0][SPRITE_RESOURCE_PLTT]);
|
||||
|
||||
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, TRUE);
|
||||
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, TRUE);
|
||||
}
|
||||
|
||||
Sprite *BattleFactoryApp_InitSprite(BattleFactoryAppSpriteManager *spriteMan, u32 resourceID, u32 animID, u32 priority, int resourcePriority, u8 onSubScreen)
|
||||
{
|
||||
SpriteResourcesHeader resourceHeader;
|
||||
SpriteResourcesHeader_Init(&resourceHeader, resourceID, resourceID, resourceID, resourceID, -1, -1, FALSE, resourcePriority, spriteMan->resourceCollection[SPRITE_RESOURCE_CHAR], spriteMan->resourceCollection[SPRITE_RESOURCE_PLTT], spriteMan->resourceCollection[SPRITE_RESOURCE_CELL], spriteMan->resourceCollection[SPRITE_RESOURCE_ANIM], NULL, NULL);
|
||||
|
||||
AffineSpriteListTemplate spriteTemplate;
|
||||
|
||||
spriteTemplate.list = spriteMan->spriteList;
|
||||
spriteTemplate.resourceData = &resourceHeader;
|
||||
spriteTemplate.position.x = 0;
|
||||
spriteTemplate.position.y = 0;
|
||||
spriteTemplate.position.z = 0;
|
||||
spriteTemplate.affineScale.x = FX32_ONE;
|
||||
spriteTemplate.affineScale.y = FX32_ONE;
|
||||
spriteTemplate.affineScale.z = FX32_ONE;
|
||||
spriteTemplate.affineZRotation = 0;
|
||||
spriteTemplate.priority = priority;
|
||||
|
||||
if (!onSubScreen) {
|
||||
spriteTemplate.vramType = NNS_G2D_VRAM_TYPE_2DMAIN;
|
||||
} else {
|
||||
spriteTemplate.vramType = NNS_G2D_VRAM_TYPE_2DSUB;
|
||||
}
|
||||
|
||||
spriteTemplate.heapID = HEAP_ID_BATTLE_FACTORY_APP;
|
||||
|
||||
if (onSubScreen == TRUE) {
|
||||
spriteTemplate.position.y += FX32_CONST(HW_LCD_HEIGHT);
|
||||
}
|
||||
|
||||
Sprite *sprite = SpriteList_AddAffine(&spriteTemplate);
|
||||
|
||||
Sprite_SetAnimateFlag(sprite, TRUE);
|
||||
Sprite_SetAnim(sprite, animID);
|
||||
|
||||
return sprite;
|
||||
}
|
||||
|
||||
void BattleFactoryApp_FreeSprites(BattleFactoryAppSpriteManager *spriteMan)
|
||||
{
|
||||
SpriteTransfer_ResetCharTransfer(spriteMan->resources[0][SPRITE_RESOURCE_CHAR]);
|
||||
SpriteTransfer_ResetPlttTransfer(spriteMan->resources[0][SPRITE_RESOURCE_PLTT]);
|
||||
|
||||
for (u8 i = 0; i < MAX_SPRITE_RESOURCE_GEN4; i++) {
|
||||
SpriteResourceCollection_Delete(spriteMan->resourceCollection[i]);
|
||||
}
|
||||
|
||||
SpriteList_Delete(spriteMan->spriteList);
|
||||
RenderOam_Free();
|
||||
CharTransfer_Free();
|
||||
PlttTransfer_Free();
|
||||
}
|
||||
|
||||
static void InitCharPlttTransferBuffers(void)
|
||||
{
|
||||
CharTransferTemplate transferTemplate = {
|
||||
32, 2048, 2048, HEAP_ID_BATTLE_FACTORY_APP
|
||||
};
|
||||
|
||||
CharTransfer_InitWithVramModes(&transferTemplate, GX_OBJVRAMMODE_CHAR_1D_64K, GX_OBJVRAMMODE_CHAR_1D_64K);
|
||||
|
||||
PlttTransfer_Init(8, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
CharTransfer_ClearBuffers();
|
||||
PlttTransfer_Clear();
|
||||
}
|
||||
51
src/applications/frontier/battle_factory/windows.c
Normal file
51
src/applications/frontier/battle_factory/windows.c
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
#include "applications/frontier/battle_factory/windows.h"
|
||||
|
||||
#include <nitro.h>
|
||||
|
||||
#include "constants/field_base_tiles.h"
|
||||
|
||||
#include "bg_window.h"
|
||||
#include "render_window.h"
|
||||
|
||||
#define BASE_TILE_WINDOW_FRAME (1024 - STANDARD_WINDOW_TILE_COUNT)
|
||||
|
||||
void BattleFactoryApp_InitWindows(BgConfig *bgConfig, Window *windows)
|
||||
{
|
||||
static const WindowTemplate sWinTemplates[] = {
|
||||
{ BG_LAYER_MAIN_1, 1, 1, 10, 2, 13, 1 },
|
||||
{ BG_LAYER_MAIN_1, 22, 1, 10, 2, 13, 21 },
|
||||
{ BG_LAYER_MAIN_1, 1, 4, 9, 2, 13, 41 },
|
||||
{ BG_LAYER_MAIN_1, 1, 6, 9, 2, 13, 59 },
|
||||
{ BG_LAYER_MAIN_1, 1, 8, 9, 2, 13, 77 },
|
||||
{ BG_LAYER_MAIN_1, 2, 19, 17, 4, 12, 95 },
|
||||
{ BG_LAYER_MAIN_1, 23, 19, 8, 4, 13, 163 },
|
||||
{ BG_LAYER_MAIN_1, 23, 17, 8, 6, 13, 195 },
|
||||
{ BG_LAYER_MAIN_1, 22, 4, 9, 2, 13, 243 },
|
||||
{ BG_LAYER_MAIN_1, 22, 6, 9, 2, 13, 261 }
|
||||
};
|
||||
|
||||
for (u8 i = 0; i < 10; i++) {
|
||||
Window_AddFromTemplate(bgConfig, &windows[i], &sWinTemplates[i]);
|
||||
Window_FillTilemap(&windows[i], 0);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleFactoryApp_FreeWindows(Window *windows)
|
||||
{
|
||||
for (u16 i = 0; i < 10; i++) {
|
||||
Window_Remove(&windows[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void BattleFactoryApp_DrawWindow(BgConfig *bgConfig, Window *window)
|
||||
{
|
||||
LoadStandardWindowGraphics(bgConfig, BG_LAYER_MAIN_1, BASE_TILE_WINDOW_FRAME, PLTT_11, STANDARD_WINDOW_SYSTEM, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
Window_DrawStandardFrame(window, TRUE, BASE_TILE_WINDOW_FRAME, PLTT_11);
|
||||
}
|
||||
|
||||
void BattleFactoryApp_DrawMessageBox(Window *window, int frame)
|
||||
{
|
||||
LoadMessageBoxGraphics(window->bgConfig, Window_GetBgLayer(window), BASE_TILE_STANDARD_WINDOW_FRAME, PLTT_10, frame, HEAP_ID_BATTLE_FACTORY_APP);
|
||||
Window_FillTilemap(window, 15);
|
||||
Window_DrawMessageBoxWithScrollCursor(window, TRUE, BASE_TILE_STANDARD_WINDOW_FRAME, PLTT_10);
|
||||
}
|
||||
|
|
@ -952,13 +952,13 @@ pokeplatinum_c = files(
|
|||
'overlay104/ov104_0223D9E4.c',
|
||||
'overlay104/ov104_0223DC7C.c',
|
||||
'overlay104/ov104_0223E894.c',
|
||||
'overlay105/ov105_02241AE0.c',
|
||||
'overlay105/ov105_02245AAC.c',
|
||||
'overlay105/ov105_02245CD0.c',
|
||||
'overlay105/ov105_02245DC4.c',
|
||||
'overlay105/ov105_02245E54.c',
|
||||
'overlay105/ov105_02245FB8.c',
|
||||
'overlay105/ov105_02246214.c',
|
||||
'applications/frontier/battle_factory/main.c',
|
||||
'applications/frontier/battle_factory/sprite_manager.c',
|
||||
'applications/frontier/battle_factory/helpers.c',
|
||||
'applications/frontier/battle_factory/panel_sprite.c',
|
||||
'applications/frontier/battle_factory/pokeball_sprite.c',
|
||||
'applications/frontier/battle_factory/cursor.c',
|
||||
'applications/frontier/battle_factory/windows.c',
|
||||
'applications/frontier/battle_hall/main.c',
|
||||
'applications/frontier/battle_hall/sprite_manager.c',
|
||||
'applications/frontier/battle_hall/sprites.c',
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "constants/heap.h"
|
||||
|
||||
#include "applications/frontier/battle_factory/main.h"
|
||||
#include "overlay104/frontier_script_context.h"
|
||||
#include "overlay104/frscrcmd.h"
|
||||
#include "overlay104/ov104_0222DCE0.h"
|
||||
|
|
@ -15,7 +16,6 @@
|
|||
#include "overlay104/struct_ov104_02234130.h"
|
||||
#include "overlay104/struct_ov104_0223ADA0.h"
|
||||
#include "overlay104/struct_ov104_0223C4CC.h"
|
||||
#include "overlay105/ov105_02241AE0.h"
|
||||
|
||||
#include "bg_window.h"
|
||||
#include "field_battle_data_transfer.h"
|
||||
|
|
@ -85,9 +85,9 @@ BOOL FrontierScrCmd_5F(FrontierScriptContext *param0)
|
|||
FS_EXTERN_OVERLAY(overlay105);
|
||||
|
||||
static const ApplicationManagerTemplate v4 = {
|
||||
ov105_02241AE0,
|
||||
ov105_02241BD8,
|
||||
ov105_02241F54,
|
||||
BattleFactoryApp_Init,
|
||||
BattleFactoryApp_Main,
|
||||
BattleFactoryApp_Exit,
|
||||
FS_OVERLAY_ID(overlay105)
|
||||
};
|
||||
|
||||
|
|
@ -144,9 +144,9 @@ BOOL FrontierScrCmd_62(FrontierScriptContext *param0)
|
|||
FS_EXTERN_OVERLAY(overlay105);
|
||||
|
||||
static const ApplicationManagerTemplate v4 = {
|
||||
ov105_02241AE0,
|
||||
ov105_02241BD8,
|
||||
ov105_02241F54,
|
||||
BattleFactoryApp_Init,
|
||||
BattleFactoryApp_Main,
|
||||
BattleFactoryApp_Exit,
|
||||
FS_OVERLAY_ID(overlay105)
|
||||
};
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,138 +0,0 @@
|
|||
#include "overlay105/ov105_02245AAC.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
|
||||
#include "char_transfer.h"
|
||||
#include "gx_layers.h"
|
||||
#include "pltt_transfer.h"
|
||||
#include "render_oam.h"
|
||||
#include "sprite.h"
|
||||
#include "sprite_resource.h"
|
||||
#include "sprite_transfer.h"
|
||||
#include "sprite_util.h"
|
||||
|
||||
void ov105_02245AAC(UnkStruct_ov105_02245AAC *param0);
|
||||
Sprite *ov105_02245BA4(UnkStruct_ov105_02245AAC *param0, u32 param1, u32 param2, u32 param3, int param4, u8 param5);
|
||||
void ov105_02245C50(UnkStruct_ov105_02245AAC *param0);
|
||||
static void ov105_02245C98(void);
|
||||
|
||||
static const u8 Unk_ov105_02246444[4] = {
|
||||
0x1,
|
||||
0x1,
|
||||
0x1,
|
||||
0x1
|
||||
};
|
||||
|
||||
void ov105_02245AAC(UnkStruct_ov105_02245AAC *param0)
|
||||
{
|
||||
int v0;
|
||||
|
||||
ov105_02245C98();
|
||||
NNS_G2dInitOamManagerModule();
|
||||
RenderOam_Init(0, 128, 0, 32, 0, 128, 0, 32, 93);
|
||||
|
||||
param0->unk_00 = SpriteList_InitRendering((6 + 2 + 1), ¶m0->unk_04, HEAP_ID_93);
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
param0->unk_190[v0] = SpriteResourceCollection_New(Unk_ov105_02246444[v0], v0, HEAP_ID_93);
|
||||
}
|
||||
|
||||
param0->unk_1A0[0][0] = SpriteResourceCollection_AddTiles(param0->unk_190[0], 151, 0, 1, 0, NNS_G2D_VRAM_TYPE_2DMAIN, HEAP_ID_93);
|
||||
param0->unk_1A0[0][1] = SpriteResourceCollection_AddPalette(param0->unk_190[1], 151, 36, 0, 0, NNS_G2D_VRAM_TYPE_2DMAIN, 8, HEAP_ID_93);
|
||||
param0->unk_1A0[0][2] = SpriteResourceCollection_Add(param0->unk_190[2], 151, 2, 1, 0, 2, HEAP_ID_93);
|
||||
param0->unk_1A0[0][3] = SpriteResourceCollection_Add(param0->unk_190[3], 151, 1, 1, 0, 3, HEAP_ID_93);
|
||||
|
||||
for (v0 = 0; v0 < 1; v0++) {
|
||||
SpriteTransfer_RequestChar(param0->unk_1A0[v0][0]);
|
||||
SpriteTransfer_RequestPlttWholeRange(param0->unk_1A0[v0][1]);
|
||||
}
|
||||
|
||||
GXLayers_EngineBToggleLayers(GX_PLANEMASK_OBJ, 1);
|
||||
GXLayers_EngineAToggleLayers(GX_PLANEMASK_OBJ, 1);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
Sprite *ov105_02245BA4(UnkStruct_ov105_02245AAC *param0, u32 param1, u32 param2, u32 param3, int param4, u8 param5)
|
||||
{
|
||||
int v0;
|
||||
SpriteResourcesHeader v1;
|
||||
Sprite *v2;
|
||||
|
||||
SpriteResourcesHeader_Init(&v1, param1, param1, param1, param1, 0xffffffff, 0xffffffff, 0, param4, param0->unk_190[0], param0->unk_190[1], param0->unk_190[2], param0->unk_190[3], NULL, NULL);
|
||||
|
||||
{
|
||||
AffineSpriteListTemplate v3;
|
||||
|
||||
v3.list = param0->unk_00;
|
||||
v3.resourceData = &v1;
|
||||
v3.position.x = 0;
|
||||
v3.position.y = 0;
|
||||
v3.position.z = 0;
|
||||
v3.affineScale.x = FX32_ONE;
|
||||
v3.affineScale.y = FX32_ONE;
|
||||
v3.affineScale.z = FX32_ONE;
|
||||
v3.affineZRotation = 0;
|
||||
v3.priority = param3;
|
||||
|
||||
if (param5 == 0) {
|
||||
v3.vramType = NNS_G2D_VRAM_TYPE_2DMAIN;
|
||||
} else {
|
||||
v3.vramType = NNS_G2D_VRAM_TYPE_2DSUB;
|
||||
}
|
||||
|
||||
v3.heapID = HEAP_ID_93;
|
||||
|
||||
if (param5 == 1) {
|
||||
v3.position.y += (192 << FX32_SHIFT);
|
||||
}
|
||||
|
||||
v2 = SpriteList_AddAffine(&v3);
|
||||
|
||||
Sprite_SetAnimateFlag(v2, 1);
|
||||
Sprite_SetAnim(v2, param2);
|
||||
}
|
||||
|
||||
return v2;
|
||||
}
|
||||
|
||||
void ov105_02245C50(UnkStruct_ov105_02245AAC *param0)
|
||||
{
|
||||
u8 v0;
|
||||
|
||||
for (v0 = 0; v0 < 1; v0++) {
|
||||
SpriteTransfer_ResetCharTransfer(param0->unk_1A0[v0][0]);
|
||||
SpriteTransfer_ResetPlttTransfer(param0->unk_1A0[v0][1]);
|
||||
}
|
||||
|
||||
for (v0 = 0; v0 < 4; v0++) {
|
||||
SpriteResourceCollection_Delete(param0->unk_190[v0]);
|
||||
}
|
||||
|
||||
SpriteList_Delete(param0->unk_00);
|
||||
RenderOam_Free();
|
||||
CharTransfer_Free();
|
||||
PlttTransfer_Free();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void ov105_02245C98(void)
|
||||
{
|
||||
{
|
||||
CharTransferTemplate v0 = {
|
||||
32, 2048, 2048, 93
|
||||
};
|
||||
|
||||
CharTransfer_InitWithVramModes(&v0, GX_OBJVRAMMODE_CHAR_1D_64K, GX_OBJVRAMMODE_CHAR_1D_64K);
|
||||
}
|
||||
|
||||
PlttTransfer_Init(8, HEAP_ID_93);
|
||||
CharTransfer_ClearBuffers();
|
||||
PlttTransfer_Clear();
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
@ -1,68 +0,0 @@
|
|||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "gx_layers.h"
|
||||
#include "pokemon.h"
|
||||
#include "pokemon_sprite.h"
|
||||
#include "unk_0202419C.h"
|
||||
|
||||
void ov105_02245CD0(void);
|
||||
void ov105_02245D50(PokemonSpriteManager *param0);
|
||||
PokemonSprite *ov105_02245D88(PokemonSpriteManager *param0, int param1, Pokemon *param2, int param3, int param4, int param5);
|
||||
void ov105_02245DB8(PokemonSprite *param0, int param1);
|
||||
|
||||
void ov105_02245CD0(void)
|
||||
{
|
||||
GXLayers_EngineAToggleLayers(GX_PLANEMASK_BG0, 1);
|
||||
G2_SetBG0Priority(0);
|
||||
|
||||
G3X_SetShading(GX_SHADING_TOON);
|
||||
G3X_AntiAlias(1);
|
||||
G3X_AlphaTest(0, 0);
|
||||
G3X_AlphaBlend(1);
|
||||
G3X_EdgeMarking(0);
|
||||
G3X_SetFog(0, GX_FOGBLEND_COLOR_ALPHA, GX_FOGSLOPE_0x8000, 0);
|
||||
G3X_SetClearColor(GX_RGB(0, 0, 0), 0, 0x7fff, 63, 0);
|
||||
|
||||
G3_ViewPort(0, 0, 255, 191);
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02245D50(PokemonSpriteManager *param0)
|
||||
{
|
||||
G3_ResetG3X();
|
||||
|
||||
G3_MtxMode(GX_MTXMODE_PROJECTION);
|
||||
G3_Identity();
|
||||
G3_MtxMode(GX_MTXMODE_POSITION_VECTOR);
|
||||
G3_Identity();
|
||||
|
||||
NNS_G3dGlbFlush();
|
||||
NNS_G2dSetupSoftwareSpriteCamera();
|
||||
|
||||
PokemonSpriteManager_DrawSprites(param0);
|
||||
G3_SwapBuffers(GX_SORTMODE_MANUAL, GX_BUFFERMODE_Z);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
PokemonSprite *ov105_02245D88(PokemonSpriteManager *param0, int param1, Pokemon *param2, int param3, int param4, int param5)
|
||||
{
|
||||
PokemonSpriteTemplate v0;
|
||||
PokemonSprite *v1;
|
||||
int v2;
|
||||
u32 v3;
|
||||
|
||||
Pokemon_BuildSpriteTemplate(&v0, param2, 2);
|
||||
|
||||
v2 = 0;
|
||||
v1 = PokemonSpriteManager_CreateSprite(param0, &v0, param3, param4 + v2, param5, param1, NULL, NULL);
|
||||
|
||||
return v1;
|
||||
}
|
||||
|
||||
void ov105_02245DB8(PokemonSprite *param0, int param1)
|
||||
{
|
||||
PokemonSprite_SetAttribute(param0, MON_SPRITE_FLIP_H, param1);
|
||||
return;
|
||||
}
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
#include "overlay105/ov105_02245DC4.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "overlay105/ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245E1C_decl.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
|
||||
struct UnkStruct_ov105_02245E1C_t {
|
||||
int unk_00;
|
||||
int unk_04;
|
||||
Sprite *unk_08;
|
||||
};
|
||||
|
||||
void *ov105_02245E1C(UnkStruct_ov105_02245E1C *param0);
|
||||
void ov105_02245E30(UnkStruct_ov105_02245E1C *param0, int param1, int param2);
|
||||
BOOL ov105_02245E48(UnkStruct_ov105_02245E1C *param0);
|
||||
|
||||
UnkStruct_ov105_02245E1C *ov105_02245DC4(UnkStruct_ov105_02245AAC *param0, u32 param1, int param2, int param3, enum HeapID heapID)
|
||||
{
|
||||
UnkStruct_ov105_02245E1C *v0 = Heap_Alloc(heapID, sizeof(UnkStruct_ov105_02245E1C));
|
||||
memset(v0, 0, sizeof(UnkStruct_ov105_02245E1C));
|
||||
|
||||
v0->unk_00 = param2;
|
||||
v0->unk_04 = param3;
|
||||
v0->unk_08 = ov105_02245BA4(param0, 0, param1, 0, 1, 0);
|
||||
|
||||
ov105_02245E30(v0, param2, param3);
|
||||
|
||||
return v0;
|
||||
}
|
||||
|
||||
void *ov105_02245E1C(UnkStruct_ov105_02245E1C *param0)
|
||||
{
|
||||
Sprite_Delete(param0->unk_08);
|
||||
Heap_Free(param0);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void ov105_02245E30(UnkStruct_ov105_02245E1C *param0, int param1, int param2)
|
||||
{
|
||||
VecFx32 v0;
|
||||
|
||||
v0.x = (param1 * FX32_ONE);
|
||||
v0.y = (param2 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(param0->unk_08, &v0);
|
||||
return;
|
||||
}
|
||||
|
||||
BOOL ov105_02245E48(UnkStruct_ov105_02245E1C *param0)
|
||||
{
|
||||
return Sprite_IsAnimated(param0->unk_08);
|
||||
}
|
||||
|
|
@ -1,151 +0,0 @@
|
|||
#include "overlay105/ov105_02245E54.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "overlay105/ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245EA8_decl.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
|
||||
struct UnkStruct_ov105_02245EA8_t {
|
||||
u16 unk_00;
|
||||
u16 unk_02;
|
||||
int unk_04;
|
||||
int unk_08;
|
||||
Sprite *unk_0C;
|
||||
};
|
||||
|
||||
void *ov105_02245EA8(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245EBC(UnkStruct_ov105_02245EA8 *param0, int param1);
|
||||
VecFx32 ov105_02245EC8(UnkStruct_ov105_02245EA8 *param0, int param1, int param2);
|
||||
void ov105_02245F14(UnkStruct_ov105_02245EA8 *param0, int param1, int param2);
|
||||
const VecFx32 *ov105_02245F2C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F38(UnkStruct_ov105_02245EA8 *param0, u8 param1);
|
||||
u8 ov105_02245F3C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F44(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F50(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F5C(UnkStruct_ov105_02245EA8 *param0);
|
||||
int ov105_02245F88(UnkStruct_ov105_02245EA8 *param0);
|
||||
int ov105_02245F8C(UnkStruct_ov105_02245EA8 *param0);
|
||||
void ov105_02245F90(UnkStruct_ov105_02245EA8 *param0, u32 param1);
|
||||
void ov105_02245FAC(UnkStruct_ov105_02245EA8 *param0, u32 param1);
|
||||
|
||||
UnkStruct_ov105_02245EA8 *ov105_02245E54(UnkStruct_ov105_02245AAC *param0, int param1, int param2, u32 heapID)
|
||||
{
|
||||
UnkStruct_ov105_02245EA8 *v0 = Heap_Alloc(heapID, sizeof(UnkStruct_ov105_02245EA8));
|
||||
memset(v0, 0, sizeof(UnkStruct_ov105_02245EA8));
|
||||
|
||||
v0->unk_00 = 0;
|
||||
v0->unk_04 = param1;
|
||||
v0->unk_08 = param2;
|
||||
v0->unk_0C = ov105_02245BA4(param0, 0, 6, 0, 0, 0);
|
||||
|
||||
ov105_02245F14(v0, param1, param2);
|
||||
Sprite_SetExplicitPalette(v0->unk_0C, 1);
|
||||
|
||||
return v0;
|
||||
}
|
||||
|
||||
void *ov105_02245EA8(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
Sprite_Delete(param0->unk_0C);
|
||||
Heap_Free(param0);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void ov105_02245EBC(UnkStruct_ov105_02245EA8 *param0, int param1)
|
||||
{
|
||||
Sprite_SetDrawFlag(param0->unk_0C, param1);
|
||||
return;
|
||||
}
|
||||
|
||||
VecFx32 ov105_02245EC8(UnkStruct_ov105_02245EA8 *param0, int param1, int param2)
|
||||
{
|
||||
VecFx32 v0;
|
||||
|
||||
v0 = *(Sprite_GetPosition(param0->unk_0C));
|
||||
v0.x += (param1 * FX32_ONE);
|
||||
v0.y += (param2 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(param0->unk_0C, &v0);
|
||||
return *(Sprite_GetPosition(param0->unk_0C));
|
||||
}
|
||||
|
||||
void ov105_02245F14(UnkStruct_ov105_02245EA8 *param0, int param1, int param2)
|
||||
{
|
||||
VecFx32 v0;
|
||||
|
||||
v0.x = (param1 * FX32_ONE);
|
||||
v0.y = (param2 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(param0->unk_0C, &v0);
|
||||
return;
|
||||
}
|
||||
|
||||
const VecFx32 *ov105_02245F2C(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
return Sprite_GetPosition(param0->unk_0C);
|
||||
}
|
||||
|
||||
void ov105_02245F38(UnkStruct_ov105_02245EA8 *param0, u8 param1)
|
||||
{
|
||||
param0->unk_00 = param1;
|
||||
return;
|
||||
}
|
||||
|
||||
u8 ov105_02245F3C(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
return param0->unk_00;
|
||||
}
|
||||
|
||||
void ov105_02245F44(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
ov105_02245F38(param0, 1);
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02245F50(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
ov105_02245F38(param0, 0);
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02245F5C(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
VecFx32 v0;
|
||||
const VecFx32 *v1 = ov105_02245F2C(param0);
|
||||
|
||||
v0.x = ((v1->x / FX32_ONE) + 248) * FX32_ONE;
|
||||
v0.y = v1->y;
|
||||
|
||||
Sprite_SetPosition(param0->unk_0C, &v0);
|
||||
return;
|
||||
}
|
||||
|
||||
int ov105_02245F88(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
return param0->unk_04;
|
||||
}
|
||||
|
||||
int ov105_02245F8C(UnkStruct_ov105_02245EA8 *param0)
|
||||
{
|
||||
return param0->unk_08;
|
||||
}
|
||||
|
||||
void ov105_02245F90(UnkStruct_ov105_02245EA8 *param0, u32 param1)
|
||||
{
|
||||
Sprite_SetAnimSpeed(param0->unk_0C, FX32_ONE);
|
||||
Sprite_SetAnim(param0->unk_0C, param1);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02245FAC(UnkStruct_ov105_02245EA8 *param0, u32 param1)
|
||||
{
|
||||
Sprite_SetExplicitPalette(param0->unk_0C, param1);
|
||||
return;
|
||||
}
|
||||
|
|
@ -1,192 +0,0 @@
|
|||
#include "overlay105/ov105_02245FB8.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "overlay105/ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02245AAC.h"
|
||||
#include "overlay105/struct_ov105_02246060_decl.h"
|
||||
#include "overlay105/struct_ov105_02246394.h"
|
||||
|
||||
#include "heap.h"
|
||||
#include "sprite.h"
|
||||
#include "system.h"
|
||||
|
||||
struct UnkStruct_ov105_02246060_t {
|
||||
u8 unk_00;
|
||||
u8 unk_01;
|
||||
u8 unk_02;
|
||||
u8 unk_03;
|
||||
const UnkStruct_ov105_02246394 *unk_04;
|
||||
const u8 *unk_08;
|
||||
Sprite *unk_0C;
|
||||
u8 unk_10;
|
||||
};
|
||||
|
||||
UnkStruct_ov105_02246060 *ov105_02245FB8(UnkStruct_ov105_02245AAC *param0, u8 param1, u8 param2, u8 param3, u8 param4, const UnkStruct_ov105_02246394 *param5, const u8 *param6);
|
||||
void *ov105_02246060(UnkStruct_ov105_02246060 *param0);
|
||||
void ov105_02246074(UnkStruct_ov105_02246060 *param0, int param1);
|
||||
void ov105_02246080(UnkStruct_ov105_02246060 *param0);
|
||||
u8 ov105_022461A0(UnkStruct_ov105_02246060 *param0);
|
||||
void ov105_022461A4(UnkStruct_ov105_02246060 *param0, int param1);
|
||||
void ov105_022461C0(UnkStruct_ov105_02246060 *param0, u8 param1);
|
||||
|
||||
UnkStruct_ov105_02246060 *ov105_02245FB8(UnkStruct_ov105_02245AAC *param0, u8 param1, u8 param2, u8 param3, u8 param4, const UnkStruct_ov105_02246394 *param5, const u8 *param6)
|
||||
{
|
||||
UnkStruct_ov105_02246060 *v0;
|
||||
VecFx32 v1;
|
||||
|
||||
v0 = Heap_Alloc(HEAP_ID_93, sizeof(UnkStruct_ov105_02246060));
|
||||
memset(v0, 0, sizeof(UnkStruct_ov105_02246060));
|
||||
|
||||
v0->unk_00 = param1;
|
||||
v0->unk_10 = param2;
|
||||
v0->unk_01 = param3;
|
||||
v0->unk_02 = param4;
|
||||
v0->unk_04 = param5;
|
||||
v0->unk_08 = param6;
|
||||
|
||||
if (param6 != NULL) {
|
||||
v0->unk_0C = ov105_02245BA4(param0, 0, v0->unk_08[param4], 0, 0, 0);
|
||||
} else {
|
||||
if (param3 == 0) {
|
||||
v0->unk_0C = ov105_02245BA4(param0, 0, 8, 0, 0, 0);
|
||||
} else {
|
||||
v0->unk_0C = ov105_02245BA4(param0, 0, 9, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
v1.x = (v0->unk_04[v0->unk_02].unk_00 * FX32_ONE);
|
||||
v1.y = (v0->unk_04[v0->unk_02].unk_02 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(v0->unk_0C, &v1);
|
||||
return v0;
|
||||
}
|
||||
|
||||
void *ov105_02246060(UnkStruct_ov105_02246060 *param0)
|
||||
{
|
||||
Sprite_Delete(param0->unk_0C);
|
||||
Heap_Free(param0);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void ov105_02246074(UnkStruct_ov105_02246060 *param0, int param1)
|
||||
{
|
||||
Sprite_SetDrawFlag(param0->unk_0C, param1);
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02246080(UnkStruct_ov105_02246060 *param0)
|
||||
{
|
||||
VecFx32 v0;
|
||||
u32 v1, v2;
|
||||
|
||||
if (param0->unk_03 == 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (gSystem.pressedKeys == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (param0->unk_01 == 2) {
|
||||
if (gSystem.pressedKeys & PAD_KEY_LEFT) {
|
||||
if (param0->unk_02 == 0) {
|
||||
param0->unk_02 = (param0->unk_00 - 1);
|
||||
} else {
|
||||
param0->unk_02--;
|
||||
}
|
||||
} else if (gSystem.pressedKeys & PAD_KEY_RIGHT) {
|
||||
if (param0->unk_02 == (param0->unk_00 - 1)) {
|
||||
param0->unk_02 = 0;
|
||||
} else {
|
||||
param0->unk_02++;
|
||||
}
|
||||
} else if (gSystem.pressedKeys & PAD_KEY_DOWN) {
|
||||
if (param0->unk_02 < (param0->unk_10)) {
|
||||
param0->unk_02 = param0->unk_10;
|
||||
} else if (param0->unk_02 == (param0->unk_00 - 1)) {
|
||||
param0->unk_02 = 0;
|
||||
} else {
|
||||
param0->unk_02++;
|
||||
}
|
||||
} else if (gSystem.pressedKeys & PAD_KEY_UP) {
|
||||
if (param0->unk_02 < (param0->unk_10)) {
|
||||
param0->unk_02 = (param0->unk_00 - 1);
|
||||
} else {
|
||||
param0->unk_02--;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (param0->unk_01 == 0) {
|
||||
v1 = PAD_KEY_RIGHT;
|
||||
v2 = PAD_KEY_LEFT;
|
||||
} else {
|
||||
v1 = PAD_KEY_DOWN;
|
||||
v2 = PAD_KEY_UP;
|
||||
}
|
||||
|
||||
if (gSystem.pressedKeys & v1) {
|
||||
param0->unk_02++;
|
||||
|
||||
if (param0->unk_02 >= param0->unk_00) {
|
||||
param0->unk_02 = 0;
|
||||
}
|
||||
} else if (gSystem.pressedKeys & v2) {
|
||||
if (param0->unk_02 == 0) {
|
||||
param0->unk_02 = param0->unk_00;
|
||||
}
|
||||
|
||||
param0->unk_02--;
|
||||
}
|
||||
}
|
||||
|
||||
if (param0->unk_08 != NULL) {
|
||||
Sprite_SetAnimNoRestart(param0->unk_0C, param0->unk_08[param0->unk_02]);
|
||||
}
|
||||
|
||||
v0 = *(Sprite_GetPosition(param0->unk_0C));
|
||||
v0.x = (param0->unk_04[param0->unk_02].unk_00 * FX32_ONE);
|
||||
v0.y = (param0->unk_04[param0->unk_02].unk_02 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(param0->unk_0C, &v0);
|
||||
return;
|
||||
}
|
||||
|
||||
u8 ov105_022461A0(UnkStruct_ov105_02246060 *param0)
|
||||
{
|
||||
return param0->unk_02;
|
||||
}
|
||||
|
||||
void ov105_022461A4(UnkStruct_ov105_02246060 *param0, int param1)
|
||||
{
|
||||
param0->unk_03 = param1;
|
||||
|
||||
if (param1 == 0) {
|
||||
Sprite_SetAnimNoRestart(param0->unk_0C, 8);
|
||||
} else {
|
||||
Sprite_SetAnimNoRestart(param0->unk_0C, 13);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_022461C0(UnkStruct_ov105_02246060 *param0, u8 param1)
|
||||
{
|
||||
VecFx32 v0;
|
||||
|
||||
param0->unk_02 = param1;
|
||||
|
||||
if (param0->unk_08 != NULL) {
|
||||
Sprite_SetAnimNoRestart(param0->unk_0C, param0->unk_08[param0->unk_02]);
|
||||
}
|
||||
|
||||
v0 = *(Sprite_GetPosition(param0->unk_0C));
|
||||
|
||||
v0.x = (param0->unk_04[param0->unk_02].unk_00 * FX32_ONE);
|
||||
v0.y = (param0->unk_04[param0->unk_02].unk_02 * FX32_ONE);
|
||||
|
||||
Sprite_SetPosition(param0->unk_0C, &v0);
|
||||
return;
|
||||
}
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
#include "overlay105/ov105_02246214.h"
|
||||
|
||||
#include <nitro.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "bg_window.h"
|
||||
#include "render_window.h"
|
||||
|
||||
void ov105_02246214(BgConfig *param0, Window *param1);
|
||||
void ov105_02246244(Window *param0);
|
||||
void ov105_02246260(BgConfig *param0, Window *param1);
|
||||
void ov105_0224628C(Window *param0, int param1);
|
||||
|
||||
static const WindowTemplate Unk_ov105_02246458[] = {
|
||||
{ 0x1, 0x1, 0x1, 0xA, 0x2, 0xD, 0x1 },
|
||||
{ 0x1, 0x16, 0x1, 0xA, 0x2, 0xD, 0x15 },
|
||||
{ 0x1, 0x1, 0x4, 0x9, 0x2, 0xD, 0x29 },
|
||||
{ 0x1, 0x1, 0x6, 0x9, 0x2, 0xD, 0x3B },
|
||||
{ 0x1, 0x1, 0x8, 0x9, 0x2, 0xD, 0x4D },
|
||||
{ 0x1, 0x2, 0x13, 0x11, 0x4, 0xC, 0x5F },
|
||||
{ 0x1, 0x17, 0x13, 0x8, 0x4, 0xD, 0xA3 },
|
||||
{ 0x1, 0x17, 0x11, 0x8, 0x6, 0xD, 0xC3 },
|
||||
{ 0x1, 0x16, 0x4, 0x9, 0x2, 0xD, 0xF3 },
|
||||
{ 0x1, 0x16, 0x6, 0x9, 0x2, 0xD, 0x105 }
|
||||
};
|
||||
|
||||
void ov105_02246214(BgConfig *param0, Window *param1)
|
||||
{
|
||||
u8 v0;
|
||||
const WindowTemplate *v1 = Unk_ov105_02246458;
|
||||
|
||||
for (v0 = 0; v0 < 10; v0++) {
|
||||
Window_AddFromTemplate(param0, ¶m1[v0], &v1[v0]);
|
||||
Window_FillTilemap(¶m1[v0], 0);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02246244(Window *param0)
|
||||
{
|
||||
u16 v0;
|
||||
|
||||
for (v0 = 0; v0 < 10; v0++) {
|
||||
Window_Remove(¶m0[v0]);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_02246260(BgConfig *param0, Window *param1)
|
||||
{
|
||||
LoadStandardWindowGraphics(param0, BG_LAYER_MAIN_1, (1024 - 9), 11, 0, HEAP_ID_93);
|
||||
Window_DrawStandardFrame(param1, 1, (1024 - 9), 11);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void ov105_0224628C(Window *param0, int param1)
|
||||
{
|
||||
LoadMessageBoxGraphics(param0->bgConfig, Window_GetBgLayer(param0), ((1024 - 9) - (18 + 12)), 10, param1, HEAP_ID_93);
|
||||
Window_FillTilemap(param0, 15);
|
||||
Window_DrawMessageBoxWithScrollCursor(param0, 1, ((1024 - 9) - (18 + 12)), 10);
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
@ -11,10 +11,10 @@
|
|||
|
||||
#include "applications/frontier/battle_castle/opponent_app.h"
|
||||
#include "applications/frontier/battle_castle/self_app.h"
|
||||
#include "applications/frontier/battle_factory/main.h"
|
||||
#include "applications/frontier/battle_hall/main.h"
|
||||
#include "overlay104/ov104_0222ECE8.h"
|
||||
#include "overlay104/ov104_0223C164.h"
|
||||
#include "overlay105/ov105_02241AE0.h"
|
||||
#include "overlay108/ov108_02241AE0.h"
|
||||
|
||||
#include "communication_system.h"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user