mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-08-14 04:52:19 -04:00
wire decomp static savestates with macros (#6904)
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
#include "soh/Enhancements/audio/AudioEditor.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
// TODO: can these macros be shared between files? code_800F9280 seems to use
|
||||
// versions without any casts...
|
||||
@@ -848,24 +849,24 @@ s32 sOcarinaB4BtnMap = BTN_CLEFT;
|
||||
s32 sOcarinaA4BtnMap = BTN_CRIGHT;
|
||||
s32 sOcarinaF4BtnMap = BTN_CDOWN;
|
||||
s32 sOcarinaD4BtnMap = BTN_A;
|
||||
u8 sOcarinaInpEnabled = 0;
|
||||
s8 D_80130F10 = 0; // "OCA", ocarina active?
|
||||
u8 sCurOcarinaBtnVal = 0xFF;
|
||||
u8 sPrevOcarinaNoteVal = 0;
|
||||
u8 sCurOcarinaBtnIdx = 0; // note index?
|
||||
u8 sLearnSongLastBtn = 0;
|
||||
f32 D_80130F24 = 1.0f;
|
||||
static u8 sOcarinaInpEnabled = 0;
|
||||
static s8 D_80130F10 = 0; // "OCA", ocarina active?
|
||||
static u8 sCurOcarinaBtnVal = 0xFF;
|
||||
static u8 sPrevOcarinaNoteVal = 0;
|
||||
static u8 sCurOcarinaBtnIdx = 0; // note index?
|
||||
static u8 sLearnSongLastBtn = 0;
|
||||
static f32 D_80130F24 = 1.0f;
|
||||
f32 D_80130F28 = 87.0f / 127.0f;
|
||||
s8 D_80130F2C = 0; // pitch?
|
||||
s8 D_80130F30 = 0x57;
|
||||
s8 D_80130F34 = 0;
|
||||
u8 sPlaybackState = 0; // 80130F38
|
||||
u32 D_80130F3C = 0; // "SEQ"
|
||||
u32 sNotePlaybackTimer = 0;
|
||||
u16 sPlaybackNotePos = 0;
|
||||
u16 sStaffPlaybackPos = 0;
|
||||
static s8 D_80130F2C = 0; // pitch?
|
||||
static s8 D_80130F30 = 0x57;
|
||||
static s8 D_80130F34 = 0;
|
||||
static u8 sPlaybackState = 0; // 80130F38
|
||||
static u32 D_80130F3C = 0; // "SEQ"
|
||||
static u32 sNotePlaybackTimer = 0;
|
||||
static u16 sPlaybackNotePos = 0;
|
||||
static u16 sStaffPlaybackPos = 0;
|
||||
u16 D_80130F4C = 0;
|
||||
u8 sDisplayedNoteValue = 0xFF; // Note to display on screen?
|
||||
static u8 sDisplayedNoteValue = 0xFF; // Note to display on screen?
|
||||
u8 sNotePlaybackVolume = 0;
|
||||
u8 sNotePlaybackVibrato = 0;
|
||||
s8 sNotePlaybackTone = 0;
|
||||
@@ -1231,25 +1232,64 @@ typedef struct {
|
||||
s8 y;
|
||||
} OcarinaStick;
|
||||
OcarinaStick sCurOcaStick;
|
||||
u32 sCurOcarinaBtnPress;
|
||||
u32 D_8016BA10;
|
||||
u32 sPrevOcarinaBtnPress;
|
||||
s32 D_8016BA18;
|
||||
s32 D_8016BA1C;
|
||||
u8 sCurOcarinaSong[8];
|
||||
u8 sOcarinaSongAppendPos;
|
||||
u8 sOcarinaHasStartedSong;
|
||||
u8 sOcarinaSongNoteStartIdx;
|
||||
u8 sOcarinaSongCnt;
|
||||
u16 sOcarinaAvailSongs;
|
||||
u8 sStaffPlayingPos;
|
||||
u16 sLearnSongPos[0x10];
|
||||
u16 D_8016BA50[0x10];
|
||||
u16 D_8016BA70[0x10];
|
||||
u8 sLearnSongExpectedNote[0x10];
|
||||
OcarinaNote D_8016BAA0;
|
||||
u8 sAudioHasMalonBgm;
|
||||
f32 sAudioMalonBgmDist;
|
||||
static u32 sCurOcarinaBtnPress;
|
||||
static u32 D_8016BA10;
|
||||
static u32 sPrevOcarinaBtnPress;
|
||||
static s32 D_8016BA18;
|
||||
static s32 D_8016BA1C;
|
||||
static u8 sCurOcarinaSong[8];
|
||||
static u8 sOcarinaSongAppendPos;
|
||||
static u8 sOcarinaHasStartedSong;
|
||||
static u8 sOcarinaSongNoteStartIdx;
|
||||
static u8 sOcarinaSongCnt;
|
||||
static u16 sOcarinaAvailSongs;
|
||||
static u8 sStaffPlayingPos;
|
||||
static u16 sLearnSongPos[0x10];
|
||||
static u16 D_8016BA50[0x10];
|
||||
static u16 D_8016BA70[0x10];
|
||||
static u8 sLearnSongExpectedNote[0x10];
|
||||
static OcarinaNote D_8016BAA0;
|
||||
static u8 sAudioHasMalonBgm;
|
||||
static f32 sAudioMalonBgmDist;
|
||||
|
||||
#define AUDIO_OCA_SHIP_SAVESTATE_FIELDS(F) \
|
||||
F(sOcarinaInpEnabled) \
|
||||
F(D_80130F10) \
|
||||
F(sCurOcarinaBtnVal) \
|
||||
F(sPrevOcarinaNoteVal) \
|
||||
F(sCurOcarinaBtnIdx) \
|
||||
F(sLearnSongLastBtn) \
|
||||
F(D_80130F24) \
|
||||
F(D_80130F28) \
|
||||
F(D_80130F2C) \
|
||||
F(D_80130F30) \
|
||||
F(D_80130F34) \
|
||||
F(sPlaybackState) \
|
||||
F(D_80130F3C) \
|
||||
F(sNotePlaybackTimer) \
|
||||
F(sPlaybackNotePos) \
|
||||
F(sStaffPlaybackPos) \
|
||||
F(sCurOcarinaBtnPress) \
|
||||
F(D_8016BA10) \
|
||||
F(sPrevOcarinaBtnPress) \
|
||||
F(D_8016BA18) \
|
||||
F(D_8016BA1C) \
|
||||
F(sCurOcarinaSong) \
|
||||
F(sOcarinaSongAppendPos) \
|
||||
F(sOcarinaHasStartedSong) \
|
||||
F(sOcarinaSongNoteStartIdx) \
|
||||
F(sOcarinaSongCnt) \
|
||||
F(sOcarinaAvailSongs) \
|
||||
F(sStaffPlayingPos) \
|
||||
F(sLearnSongPos) \
|
||||
F(D_8016BA50) \
|
||||
F(D_8016BA70) \
|
||||
F(sLearnSongExpectedNote) \
|
||||
F(D_8016BAA0) \
|
||||
F(sAudioHasMalonBgm) \
|
||||
F(sAudioMalonBgmDist) \
|
||||
F(sDisplayedNoteValue)
|
||||
SHIP_SAVESTATE_DEFINE(AudioOca, AUDIO_OCA_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
// Start debug bss
|
||||
u32 sDebugPadHold;
|
||||
|
||||
@@ -379,9 +379,6 @@ void Audio_ProcessSeqCmd(u32 cmd) {
|
||||
}
|
||||
}
|
||||
|
||||
extern f32 D_80130F24;
|
||||
extern f32 D_80130F28;
|
||||
|
||||
void Audio_QueueSeqCmd(u32 cmd) {
|
||||
// Replacement is resolved per-command in func_800F9280().
|
||||
sAudioSeqCmds[sSeqCmdWrPos++] = cmd;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include "global.h"
|
||||
|
||||
#include "soh/frame_interpolation.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
#include <assert.h>
|
||||
|
||||
// clang-format off
|
||||
@@ -19,8 +20,13 @@ MtxF gMtxFClear = {
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
MtxF* sMatrixStack; // "Matrix_stack"
|
||||
MtxF* sCurrentMatrix; // "Matrix_now"
|
||||
static MtxF* sMatrixStack; // "Matrix_stack"
|
||||
static MtxF* sCurrentMatrix; // "Matrix_now"
|
||||
|
||||
void Matrix_SaveState(SaveStateCtx* ctx) {
|
||||
SaveState_Blob(ctx, sMatrixStack, sizeof(MtxF) * 20);
|
||||
SaveState_Blob(ctx, sCurrentMatrix, sizeof(MtxF));
|
||||
}
|
||||
|
||||
void Matrix_Init(GameState* gameState) {
|
||||
sCurrentMatrix = GAMESTATE_ALLOC_MC(gameState, 20 * sizeof(MtxF));
|
||||
|
||||
+35
-6
@@ -9,6 +9,7 @@
|
||||
#include "soh/frame_interpolation.h"
|
||||
#include "soh/Enhancements/controls/Mouse.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags);
|
||||
s32 Camera_ChangeModeFlags(Camera* camera, s16 mode, u8 flags);
|
||||
@@ -573,9 +574,9 @@ s16 Camera_XZAngle(Vec3f* to, Vec3f* from) {
|
||||
return DEGF_TO_BINANG(RADF_TO_DEGF(Math_FAtan2F(from->x - to->x, from->z - to->z)));
|
||||
}
|
||||
|
||||
f32 D_8015CE50;
|
||||
f32 D_8015CE54;
|
||||
CamColChk D_8015CE58;
|
||||
static f32 D_8015CE50;
|
||||
static f32 D_8015CE54;
|
||||
static CamColChk D_8015CE58;
|
||||
s16 func_80044ADC(Camera* camera, s16 yaw, s16 arg2) {
|
||||
Vec3f playerPos;
|
||||
Vec3f rotatedPos;
|
||||
@@ -7424,8 +7425,8 @@ s32 Camera_DbgChangeMode(Camera* camera) {
|
||||
return true;
|
||||
}
|
||||
|
||||
s16 depthPhase = 0x3F0;
|
||||
s16 screenPlanePhase = 0x156;
|
||||
static s16 depthPhase = 0x3F0;
|
||||
static s16 screenPlanePhase = 0x156;
|
||||
void Camera_UpdateDistortion(Camera* camera) {
|
||||
f32 scaleFactor;
|
||||
f32 speedFactor;
|
||||
@@ -7509,7 +7510,7 @@ void Camera_UpdateDistortion(Camera* camera) {
|
||||
}
|
||||
}
|
||||
|
||||
s32 sOOBTimer = 0;
|
||||
static s32 sOOBTimer = 0;
|
||||
Vec3s Camera_Update(Camera* camera) {
|
||||
Vec3f viewAt;
|
||||
Vec3f viewEye;
|
||||
@@ -8353,3 +8354,31 @@ s16 func_8005B1A4(Camera* camera) {
|
||||
|
||||
return camera->thisIdx;
|
||||
}
|
||||
|
||||
#define CAMERA_SHIP_SAVESTATE_FIELDS(F) \
|
||||
F(sInitRegs) \
|
||||
F(gDbgCamEnabled) \
|
||||
F(sDbgModeIdx) \
|
||||
F(sNextUID) \
|
||||
F(sCameraInterfaceFlags) \
|
||||
F(sCameraInterfaceAlpha) \
|
||||
F(sCameraShrinkWindowVal) \
|
||||
F(D_8011D3AC) \
|
||||
F(sDemo5PrevAction12Frame) \
|
||||
F(sDemo5PrevSfxFrame) \
|
||||
F(D_8011D3F0) \
|
||||
F(D_8011D6AC) \
|
||||
F(D_8011D724) \
|
||||
F(D_8011D79C) \
|
||||
F(D_8011D83C) \
|
||||
F(D_8011D88C) \
|
||||
F(D_8011D8DC) \
|
||||
F(D_8011D954) \
|
||||
F(D_8011D9F4) \
|
||||
F(depthPhase) \
|
||||
F(screenPlanePhase) \
|
||||
F(sOOBTimer) \
|
||||
F(D_8015CE50) \
|
||||
F(D_8015CE54) \
|
||||
F(D_8015CE58)
|
||||
SHIP_SAVESTATE_DEFINE(Camera, CAMERA_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
@@ -2220,16 +2220,16 @@ s32 (*sCameraFunctions[])(Camera*) = {
|
||||
Camera_Special9,
|
||||
};
|
||||
|
||||
s32 sInitRegs = 1;
|
||||
static s32 sInitRegs = 1;
|
||||
|
||||
s32 gDbgCamEnabled = 0;
|
||||
s32 sDbgModeIdx = -1;
|
||||
s16 sNextUID = 0;
|
||||
static s32 sDbgModeIdx = -1;
|
||||
static s16 sNextUID = 0;
|
||||
|
||||
s32 sCameraInterfaceFlags = 1;
|
||||
static s32 sCameraInterfaceFlags = 1;
|
||||
|
||||
s32 sCameraInterfaceAlpha = 0x02;
|
||||
s32 sCameraShrinkWindowVal = 0x20;
|
||||
static s32 sCameraInterfaceAlpha = 0x02;
|
||||
static s32 sCameraShrinkWindowVal = 0x20;
|
||||
s32 D_8011D3AC = -1;
|
||||
|
||||
s16 D_8011D3B0[] = {
|
||||
@@ -2242,9 +2242,9 @@ s16 D_8011D3CC[] = {
|
||||
|
||||
s32 sUpdateCameraDirection = 0;
|
||||
s32 D_8011D3EC = 0;
|
||||
s32 D_8011D3F0 = 0;
|
||||
static s32 D_8011D3F0 = 0;
|
||||
|
||||
s32 sDemo5PrevAction12Frame = -16;
|
||||
static s32 sDemo5PrevAction12Frame = -16;
|
||||
|
||||
char sCameraFunctionNames[][8] = {
|
||||
"NONE ", "NORM0()", "NORM1()", "NORM2()", "NORM3()", "NORM4()", "PARA0()", "PARA1()", "PARA2()", "PARA3()",
|
||||
@@ -2274,10 +2274,10 @@ Vec3f D_8011D678[] = {
|
||||
/*******************************************************
|
||||
* OnePoint initalization values for Demo5
|
||||
********************************************************/
|
||||
s32 sDemo5PrevSfxFrame = -200;
|
||||
static s32 sDemo5PrevSfxFrame = -200;
|
||||
|
||||
// target is player, far from eye
|
||||
OnePointCsFull D_8011D6AC[] = {
|
||||
static OnePointCsFull D_8011D6AC[] = {
|
||||
{ // initflags & 0x00FF (at): 2, atTarget is view lookAt + atInit
|
||||
// initFlags & 0xFF00 (eye): none
|
||||
// action: 15, copy at, eye, roll, fov to camera
|
||||
@@ -2319,14 +2319,14 @@ OnePointCsFull D_8011D6AC[] = {
|
||||
};
|
||||
|
||||
// target is player close to current eye
|
||||
OnePointCsFull D_8011D724[] = {
|
||||
static OnePointCsFull D_8011D724[] = {
|
||||
{ 0x8F, 0xFF, 0x2424, 0x0001, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 10.0f, -20.0f } },
|
||||
{ 0x81, 0xFF, 0x2121, 0x0013, 0x0000, 50.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 60.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
// target is close to player
|
||||
OnePointCsFull D_8011D79C[] = {
|
||||
static OnePointCsFull D_8011D79C[] = {
|
||||
{ 0xCF, 0xFF, 0x0002, 0x0001, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0xC1, 0xFF, 0x0303, 0x0013, 0x0000, 45.0f, 1.0f, { 0.0f, -20.0f, 0.0f }, { 0.0f, -10.0f, 5.0f } },
|
||||
{
|
||||
@@ -2344,7 +2344,7 @@ OnePointCsFull D_8011D79C[] = {
|
||||
};
|
||||
|
||||
// target is within 300 units of eye, and player is within 30 units of eye
|
||||
OnePointCsFull D_8011D83C[] = {
|
||||
static OnePointCsFull D_8011D83C[] = {
|
||||
{ 0x83, 0xFF, 0x2141, 0x0014, 0x0000, 45.0f, 0.2f, { 0.0f, 0.0f, 10.0f }, { 0.0f, 0.0f, 10.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
@@ -2352,20 +2352,20 @@ OnePointCsFull D_8011D83C[] = {
|
||||
// target is within 700 units of eye, angle between player/eye and target/eye is less than
|
||||
// 76.9 degrees. The x/y coordinates of the target on screen is between (21, 41) and (300, 200),
|
||||
// and the player is farther than 30 units of the eye
|
||||
OnePointCsFull D_8011D88C[] = {
|
||||
static OnePointCsFull D_8011D88C[] = {
|
||||
{ 0x81, 0xFF, 0x0303, 0x0014, 0x0000, 45.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
// same as above, but the target is NOT within the screen area.
|
||||
OnePointCsFull D_8011D8DC[] = {
|
||||
static OnePointCsFull D_8011D8DC[] = {
|
||||
{ 0x8F, 0xFF, 0x0404, 0x0014, 0x0001, 50.0f, 1.0f, { 0.0f, 5.0f, 10.0f }, { 0.0f, 10.0f, -80.0f } },
|
||||
{ 0x82, 0xFF, 0x2121, 0x0005, 0x0000, 60.0f, 1.0f, { 0.0f, 5.0f, 0.0f }, { 5.0f, 5.0f, -200.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
// target is a door.
|
||||
OnePointCsFull D_8011D954[] = {
|
||||
static OnePointCsFull D_8011D954[] = {
|
||||
{ 0x0F, 0xFF, 0xC1C1, 0x0014, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 50.0f }, { 0.0f, 0.0f, 250.0f } },
|
||||
{ 0x83, 0xFF, 0x05B1, 0x0005, 0x0000, 60.0f, 0.1f, { 0.0f, 10.0f, 50.0f }, { 0.0f, 10.0f, 100.0f } },
|
||||
{ 0x82, 0xFF, 0x2121, 0x0005, 0x0002, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } },
|
||||
@@ -2373,7 +2373,7 @@ OnePointCsFull D_8011D954[] = {
|
||||
};
|
||||
|
||||
// otherwise
|
||||
OnePointCsFull D_8011D9F4[] = {
|
||||
static OnePointCsFull D_8011D9F4[] = {
|
||||
{ 0x8F, 0xFF, 0x0504, 0x0014, 0x0002, 60.0f, 1.0f, { 0.0f, 5.0f, 50.0f }, { 0.0f, 20.0f, 300.0f } },
|
||||
{ 0x82, 0xFF, 0x2121, 0x0005, 0x0002, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "soh/ResourceManagerHelpers.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ LENS_FLARE_CIRCLE0,
|
||||
@@ -59,6 +60,9 @@ u8 gSkyboxBlendingEnabled = false;
|
||||
|
||||
u16 gTimeIncrement = 0;
|
||||
|
||||
#define ENVIRONMENT_SHIP_SAVESTATE_FIELDS(F) F(gTimeIncrement)
|
||||
SHIP_SAVESTATE_DEFINE(Environment, ENVIRONMENT_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
u16 D_8011FB44 = 0xFFFC;
|
||||
|
||||
struct_8011FB48 D_8011FB48[][7] = {
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include "soh/frame_interpolation.h"
|
||||
#include "soh/OTRGlobals.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
#define LIGHTS_BUFFER_SIZE 32
|
||||
//#define LIGHTS_BUFFER_SIZE 1024 // Kill me
|
||||
@@ -16,7 +17,10 @@ typedef struct {
|
||||
/* 0x008 */ LightNode buf[LIGHTS_BUFFER_SIZE];
|
||||
} LightsBuffer; // size = 0x188
|
||||
|
||||
LightsBuffer sLightsBuffer;
|
||||
static LightsBuffer sLightsBuffer;
|
||||
|
||||
#define LIGHTS_SHIP_SAVESTATE_FIELDS(F) F(sLightsBuffer)
|
||||
SHIP_SAVESTATE_DEFINE(Lights, LIGHTS_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
void Lights_PointSetInfo(LightInfo* info, s16 x, s16 y, s16 z, u8 r, u8 g, u8 b, s16 radius, s32 type) {
|
||||
info->type = type;
|
||||
|
||||
@@ -9,14 +9,21 @@
|
||||
#include "soh/OTRGlobals.h"
|
||||
#include "soh/Enhancements/cosmetics/cosmeticsTypes.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
MapData* gMapData;
|
||||
|
||||
s16 sPlayerInitialPosX = 0;
|
||||
s16 sPlayerInitialPosZ = 0;
|
||||
s16 sPlayerInitialDirection = 0;
|
||||
static s16 sPlayerInitialPosX = 0;
|
||||
static s16 sPlayerInitialPosZ = 0;
|
||||
static s16 sPlayerInitialDirection = 0;
|
||||
s16 sEntranceIconMapIndex = 0;
|
||||
|
||||
#define MAP_EXP_SHIP_SAVESTATE_FIELDS(F) \
|
||||
F(sPlayerInitialPosX) \
|
||||
F(sPlayerInitialPosZ) \
|
||||
F(sPlayerInitialDirection)
|
||||
SHIP_SAVESTATE_DEFINE(MapExp, MAP_EXP_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
s16 Top_MM_Margin = 0;
|
||||
s16 Left_MM_Margin = 0;
|
||||
s16 Right_MM_Margin = 0;
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "soh/OTRGlobals.h"
|
||||
#include "soh/ResourceManagerHelpers.h"
|
||||
#include "soh/Enhancements/cosmetics/cosmeticsTypes.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ void* texture;
|
||||
@@ -55,7 +56,10 @@ static MapMarkInfo sMapMarkInfoTable[] = {
|
||||
// gMapMarkDataTableVanilla,
|
||||
// };
|
||||
|
||||
MapMarkData** sLoadedMarkDataTable;
|
||||
static MapMarkData** sLoadedMarkDataTable;
|
||||
|
||||
#define MAP_MARK_SHIP_SAVESTATE_FIELDS(F) F(sLoadedMarkDataTable)
|
||||
SHIP_SAVESTATE_DEFINE(MapMark, MAP_MARK_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
void MapMark_Init(PlayState* play) {
|
||||
// MapMarkDataOverlay* overlay = &sMapMarkDataOvl;
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "soh/OTRGlobals.h"
|
||||
#include "soh/SaveManager.h"
|
||||
#include "soh/ResourceManagerHelpers.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
// #region SOH [NTSC] - Allows custom messages to work on japanese
|
||||
static bool sDisplayNextMessageAsEnglish = false;
|
||||
@@ -23,27 +24,27 @@ static u16 sTextBoxNum = 0;
|
||||
|
||||
s16 sTextFade = false; // original name: key_off_flag ?
|
||||
|
||||
u8 D_8014B2F4 = 0;
|
||||
static u8 D_8014B2F4 = 0;
|
||||
|
||||
s16 sOcarinaNoteBufPos = 0;
|
||||
static s16 sOcarinaNoteBufPos = 0;
|
||||
|
||||
s16 sOcarinaNoteBufLen = 0;
|
||||
static s16 sOcarinaNoteBufLen = 0;
|
||||
|
||||
u8 sTextboxSkipped = false;
|
||||
static u8 sTextboxSkipped = false;
|
||||
|
||||
u16 sNextTextId = 0;
|
||||
static u16 sNextTextId = 0;
|
||||
|
||||
s16 sTextIsCredits = false;
|
||||
|
||||
UNK_TYPE D_8014B30C = 0;
|
||||
|
||||
s16 sLastPlayedSong = 0xFF; // last played song?
|
||||
static s16 sLastPlayedSong = 0xFF; // last played song?
|
||||
|
||||
s16 sHasSunsSong = false;
|
||||
static s16 sHasSunsSong = false;
|
||||
|
||||
s16 sMessageHasSetSfx = false;
|
||||
|
||||
u16 sOcarinaSongBitFlags = 0; // ocarina bit flags
|
||||
static u16 sOcarinaSongBitFlags = 0; // ocarina bit flags
|
||||
|
||||
MessageTableEntry* sNesMessageEntryTablePtr = NULL;
|
||||
MessageTableEntry* sGerMessageEntryTablePtr = NULL;
|
||||
@@ -71,7 +72,7 @@ s16 sTextboxBackgroundYOffsets[] = {
|
||||
};
|
||||
|
||||
// original name: onpu_buff
|
||||
u8 sOcarinaNoteBuf[12] = { 0 };
|
||||
static u8 sOcarinaNoteBuf[12] = { 0 };
|
||||
|
||||
s16 sOcarinaNotesAlphaValues[9] = { 0 };
|
||||
|
||||
@@ -4706,3 +4707,17 @@ UNK_TYPE D_80153D7C = 0x00000000;
|
||||
// This should be part of z_game_over.c, but cannot be moved there as the entire
|
||||
// late_rodata section of this file is in the way
|
||||
s16 gGameOverTimer = 0;
|
||||
|
||||
#define MESSAGE_PAL_SHIP_SAVESTATE_FIELDS(F) \
|
||||
F(sOcarinaNoteBufPos) \
|
||||
F(sOcarinaNoteBufLen) \
|
||||
F(sOcarinaNoteBuf) \
|
||||
F(D_8014B2F4) \
|
||||
F(sTextboxSkipped) \
|
||||
F(sNextTextId) \
|
||||
F(sLastPlayedSong) \
|
||||
F(sHasSunsSong) \
|
||||
F(sMessageHasSetSfx) \
|
||||
F(sOcarinaSongBitFlags) \
|
||||
F(gGameOverTimer)
|
||||
SHIP_SAVESTATE_DEFINE(MessagePAL, MESSAGE_PAL_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
@@ -2,13 +2,53 @@
|
||||
#include "vt.h"
|
||||
#include "overlays/actors/ovl_En_Sw/z_en_sw.h"
|
||||
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
|
||||
#include "soh/Enhancements/savestate_serialize.h"
|
||||
|
||||
static s16 sDisableAttention = false;
|
||||
static s16 sUnused = -1;
|
||||
s32 sPrevFrameCs1100 = -4096;
|
||||
static s32 sPrevFrameCs1100 = -4096;
|
||||
|
||||
#include "z_onepointdemo_data.inc"
|
||||
|
||||
#define ONE_POINT_CUTSCENE_SHIP_SAVESTATE_FIELDS(F) \
|
||||
F(sPrevFrameCs1100) \
|
||||
F(D_8012013C) \
|
||||
F(D_8012021C) \
|
||||
F(D_801204D4) \
|
||||
F(D_801205B4) \
|
||||
F(D_801208EC) \
|
||||
F(D_80120964) \
|
||||
F(D_801209B4) \
|
||||
F(D_80120ACC) \
|
||||
F(D_80120B94) \
|
||||
F(D_80120D4C) \
|
||||
F(D_80120FA4) \
|
||||
F(D_80121184) \
|
||||
F(D_801211D4) \
|
||||
F(D_8012133C) \
|
||||
F(D_801213B4) \
|
||||
F(D_8012151C) \
|
||||
F(D_8012156C) \
|
||||
F(D_801215BC) \
|
||||
F(D_80121C24) \
|
||||
F(D_80121D3C) \
|
||||
F(D_80121F1C) \
|
||||
F(D_80121FBC) \
|
||||
F(D_801220D4) \
|
||||
F(D_80122714) \
|
||||
F(D_80122CB4) \
|
||||
F(D_80122D04) \
|
||||
F(D_80122E44) \
|
||||
F(D_8012313C) \
|
||||
F(D_801231B4) \
|
||||
F(D_80123254) \
|
||||
F(D_801232A4) \
|
||||
F(D_80123894) \
|
||||
F(D_8012390C) \
|
||||
F(D_8012395C) \
|
||||
F(D_801239D4)
|
||||
SHIP_SAVESTATE_DEFINE(OnePointCutscene, ONE_POINT_CUTSCENE_SHIP_SAVESTATE_FIELDS)
|
||||
|
||||
void OnePointCutscene_AddVecSphToVec3f(Vec3f* dst, Vec3f* src, VecSph* vecSph) {
|
||||
Vec3f out;
|
||||
Vec3f vec;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#include "global.h"
|
||||
|
||||
CutsceneCameraPoint D_8012013C[14] = {
|
||||
static CutsceneCameraPoint D_8012013C[14] = {
|
||||
{ CS_CMD_CONTINUE, 25, 40, 70.79991f, { -1814, 533, -1297 } },
|
||||
{ CS_CMD_CONTINUE, 20, 40, 70.99991f, { -1805, 434, -1293 } },
|
||||
{ CS_CMD_CONTINUE, 10, 30, 60.0f, { -1794, 323, -1280 } },
|
||||
@@ -16,7 +16,7 @@ CutsceneCameraPoint D_8012013C[14] = {
|
||||
{ CS_CMD_STOP, 0, 50, 60.0f, { -1974, 12, -1179 } },
|
||||
{ CS_CMD_STOP, 0, 30, 60.0f, { -1974, 12, -1179 } },
|
||||
};
|
||||
CutsceneCameraPoint D_8012021C[14] = {
|
||||
static CutsceneCameraPoint D_8012021C[14] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 604, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1752, 516, -1233 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 417, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1767, 306, -1219 } },
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -1776, 257, -1205 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1881, 147, -1149 } },
|
||||
@@ -54,7 +54,7 @@ static CutsceneCameraPoint D_80120434[10] = {
|
||||
{ CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } }, { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } },
|
||||
};
|
||||
|
||||
CutsceneCameraPoint D_801204D4[14] = {
|
||||
static CutsceneCameraPoint D_801204D4[14] = {
|
||||
{ CS_CMD_CONTINUE, -15, 40, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CMD_CONTINUE, -22, 30, 80.600006f, { -60, 332, 183 } },
|
||||
{ CS_CMD_CONTINUE, -20, 38, 80.600006f, { -118, 344, 41 } },
|
||||
@@ -70,7 +70,7 @@ CutsceneCameraPoint D_801204D4[14] = {
|
||||
{ CS_CMD_STOP, 6, 30, 85.199936f, { 25, 127, -950 } },
|
||||
{ CS_CMD_STOP, 0, 30, 85.199936f, { 25, 127, -950 } },
|
||||
};
|
||||
CutsceneCameraPoint D_801205B4[14] = {
|
||||
static CutsceneCameraPoint D_801205B4[14] = {
|
||||
{ CS_CMD_CONTINUE, 0, 0, 60.0f, { -225, 785, -242 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -245, 784, -242 } },
|
||||
{ CS_CMD_CONTINUE, -21, 0, 80.600006f, { -288, 485, -379 } },
|
||||
@@ -118,18 +118,18 @@ static s16 D_801208E0 = 12;
|
||||
static s16 D_801208E4 = 90;
|
||||
static s16 D_801208E8 = 8;
|
||||
|
||||
OnePointCsFull D_801208EC[3] = {
|
||||
static OnePointCsFull D_801208EC[3] = {
|
||||
{ 0x0F, 0x08, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x81, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80120964[2] = {
|
||||
static OnePointCsFull D_80120964[2] = {
|
||||
{ 0x8F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x81, 0xFF, 0xA121, 1, 0, 75.0f, 0.6f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801209B4[4] = {
|
||||
static OnePointCsFull D_801209B4[4] = {
|
||||
{ 0x8F, 0x08, 0x0101, 1, 0, 60.0f, 0.9f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x84, 0x01, 0x0100, 29, 0, 45.0f, 0.1f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
{ 0x83, 0xFF, 0x0000, 10, 0, 60.0f, 0.2f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
@@ -142,7 +142,7 @@ static OnePointCsFull D_80120A54[3] = {
|
||||
{ 0x8B, 0xFF, 0x0022, 5000, 0, 75.0f, 0.005f, { 0.0f, 0.0f, -10.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80120ACC[5] = {
|
||||
static OnePointCsFull D_80120ACC[5] = {
|
||||
{ 0x8F, 0xFF, 0x0442, 10, 0, 40.0f, 1.0f, { -10.0f, 45.0f, 20.0f }, { 20.0f, 30.0f, 160.0f } },
|
||||
{ 0x95, 0xFF, 0x0000, 1, 0, 40.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
{ 0x8F, 0x01, 0x0442, 10, 0, 40.0f, 1.0f, { -10.0f, 45.0f, 20.0f }, { 20.0f, 30.0f, 160.0f } },
|
||||
@@ -150,7 +150,7 @@ OnePointCsFull D_80120ACC[5] = {
|
||||
{ 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80120B94[11] = {
|
||||
static OnePointCsFull D_80120B94[11] = {
|
||||
{ 0x8F, 0x01, 0x2142, 1, 0, 40.0f, 1.0f, { 20.0f, 40.0f, 20.0f }, { -20.0f, 0.0f, -30.0f } },
|
||||
{ 0x84, 0xFF, 0x0404, 19, 5, 70.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } },
|
||||
{ 0x84, 0xFF, 0x0404, 20, 0, 60.0f, 0.01f, { 0.0f, 20.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } },
|
||||
@@ -164,7 +164,7 @@ OnePointCsFull D_80120B94[11] = {
|
||||
{ 0x98, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80120D4C[7] = {
|
||||
static OnePointCsFull D_80120D4C[7] = {
|
||||
{ 0x8F, 0x01, 0x2142, 1, 0, 40.0f, 1.0f, { 20.0f, 40.0f, 20.0f }, { -20.0f, 0.0f, -30.0f } },
|
||||
{ 0x84, 0xFF, 0x0404, 19, 5, 70.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } },
|
||||
{ 0x84, 0xFF, 0x0404, 20, 0, 60.0f, 0.01f, { 0.0f, 20.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } },
|
||||
@@ -185,7 +185,7 @@ static OnePointCsFull D_80120E64[8] = {
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80120FA4[6] = {
|
||||
static OnePointCsFull D_80120FA4[6] = {
|
||||
{ 0x8F, 0x01, 0x2143, 30, 0, 70.0f, 0.4f, { 0.0f, 40.0f, 50.0f }, { 30.0f, 10.0f, -50.0f } },
|
||||
{ 0x95, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
{ 0x8F, 0xFF, 0x2222, 10, 0, 42.0f, 1.0f, { 0.0f, 40.0f, 0.0f }, { 0.0f, 85.0f, 45.0f } },
|
||||
@@ -206,12 +206,12 @@ static OnePointCsFull D_8012110C[3] = {
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80121184[2] = {
|
||||
static OnePointCsFull D_80121184[2] = {
|
||||
{ 0x83, 0x01, 0x0101, 40, 0, -1.0f, 0.1f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801211D4[2] = {
|
||||
static OnePointCsFull D_801211D4[2] = {
|
||||
{ 0x8F, 0x08, 0x0101, 50, 0, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { -10.0f, 85.0f, 0.0f } },
|
||||
{ 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
@@ -229,13 +229,13 @@ static OnePointCsFull D_80121314[1] = {
|
||||
{ 0x8F, 0x08, 0x4141, 1000, 0, 75.0f, 0.6f, { 0.0f, 0.0f, 10.0f }, { 0.0f, 0.0f, 100.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012133C[3] = {
|
||||
static OnePointCsFull D_8012133C[3] = {
|
||||
{ 0x8F, 0x01, 0x0141, 40, 0, 75.0f, 1.0f, { 0.0f, 60.0f, 0.0f }, { 0.0f, 0.0f, 100.0f } },
|
||||
{ 0x83, 0xFF, 0x2121, 20, 0, 60.0f, 0.2f, { 0.0f, -10.0f, -10.0f }, { 0.0f, 10.0f, -100.0f } },
|
||||
{ 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801213B4[5] = {
|
||||
static OnePointCsFull D_801213B4[5] = {
|
||||
{ 0x8F, 0x08, 0xC2C2, 40, 0, 70.0f, 1.0f, { 80.0f, 0.0f, 20.0f }, { 20.0f, 0.0f, 80.0f } },
|
||||
{ 0x8B, 0x01, 0xC2C2, 120, 0, 70.0f, 0.1f, { 80.0f, 0.0f, 20.0f }, { 20.0f, 0.0f, 80.0f } },
|
||||
{ 0x8F, 0x53, 0xC2C2, 30, 0, 50.0f, 1.0f, { 60.0f, 0.0f, 20.0f }, { 60.0f, 0.0f, 60.0f } },
|
||||
@@ -250,17 +250,17 @@ static OnePointCsFull D_8012147C[4] = {
|
||||
{ 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012151C[2] = {
|
||||
static OnePointCsFull D_8012151C[2] = {
|
||||
{ 0x0F, 0x01, 0x0101, 29, 0, 60.0f, 1.0f, { -700.0f, 875.0f, -100.0f }, { -550.0f, 920.0f, -150.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012156C[2] = {
|
||||
static OnePointCsFull D_8012156C[2] = {
|
||||
{ 0x8F, 0x4D, 0x4242, 1, 0, 65.0f, 1.0f, { 60.0f, 30.0f, 0.0f }, { 50.0f, 20.0f, 150.0f } },
|
||||
{ 0x81, 0xFF, 0x4242, -1, 0, 65.0f, 1.0f, { -50.0f, 60.0f, 0.0f }, { -60.0f, 40.0f, 150.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801215BC[1] = {
|
||||
static OnePointCsFull D_801215BC[1] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 5, 0, 65.0f, 1.0f, { -1185.0f, 655.0f, 1185.0f }, { -1255.0f, 735.0f, 1255.0f } },
|
||||
};
|
||||
|
||||
@@ -331,7 +331,7 @@ static OnePointCsFull D_80121A44[12] = {
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80121C24[7] = {
|
||||
static OnePointCsFull D_80121C24[7] = {
|
||||
{ 0x0F, 0x05, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x03, 0xFF, 0x0101, 89, 0, 50.0f, 0.4f, { 125.0f, 320.0f, -1500.0f }, { 125.0f, 500.0f, -1150.0f } },
|
||||
{ 0x0F, 0x08, 0x0101, 40, 4, 55.0f, 1.0f, { 0.0f, 375.0f, -1440.0f }, { 5.0f, 365.0f, -1315.0f } },
|
||||
@@ -341,7 +341,7 @@ OnePointCsFull D_80121C24[7] = {
|
||||
{ 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80121D3C[3] = {
|
||||
static OnePointCsFull D_80121D3C[3] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 1023.0f, 738.0f, -2628.0f }, { 993.0f, 770.0f, -2740.0f } },
|
||||
{ 0x02, 0xFF, 0x0101, 4, 0, 50.0f, 1.0f, { 1255.0f, 350.0f, -1870.0f }, { 1240.0f, 575.0f, -2100.0f } },
|
||||
{ 0x0F, 0xFF, 0x0000, -1, 0, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
@@ -359,14 +359,14 @@ static OnePointCsFull D_80121DB4[9] = {
|
||||
{ 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80121F1C[4] = {
|
||||
static OnePointCsFull D_80121F1C[4] = {
|
||||
{ 0x0F, 0x08, 0x0101, 10, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x01, 0xFF, 0x2121, 10, 0, 50.0f, 0.5f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
{ 0x01, 0x02, 0x2121, 23, 0, 50.0f, 0.5f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } },
|
||||
{ 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80121FBC[4] = {
|
||||
static OnePointCsFull D_80121FBC[4] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x01, 0xFF, 0x0101, 10, 0, 30.0f, 1.0f, { -2130.0f, 2885.0f, -1055.0f }, { -2085.0f, 2875.0f, -1145.0f } },
|
||||
{ 0x0F, 0xFF, 0x0000, 30, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
@@ -379,7 +379,7 @@ static OnePointCsFull D_8012205C[3] = {
|
||||
{ 0x01, 0x01, 0x21A1, 10, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, -200.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801220D4[5] = {
|
||||
static OnePointCsFull D_801220D4[5] = {
|
||||
{ 0x0F, 0x01, 0x0101, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x01, 0xFF, 0x4141, 10, 5, 55.0f, 0.75f, { 400.0f, -50.0f, 800.0f }, { 600.0f, -60.0f, 800.0f } },
|
||||
{ 0x01, 0xFF, 0x4141, 15, 10, 40.0f, 0.75f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 10.0f, 200.0f } },
|
||||
@@ -443,7 +443,7 @@ static OnePointCsFull D_8012269C[3] = {
|
||||
{ 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80122714[4] = {
|
||||
static OnePointCsFull D_80122714[4] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 20, 0, 45.0f, 1.0f, { -915.0f, -2185.0f, 6335.0f }, { -915.0f, -2290.0f, 6165.0f } },
|
||||
{ 0x02, 0xFF, 0x0101, -1, 0, 80.0f, 0.8f, { -920.0f, -2270.0f, 6140.0f }, { -920.0f, -2280.0f, 6070.0f } },
|
||||
{ 0x02, 0xFF, 0x0101, 20, 0, 80.0f, 0.9f, { -920.0f, -2300.0f, 6140.0f }, { -920.0f, -2300.0f, 6070.0f } },
|
||||
@@ -512,12 +512,12 @@ static OnePointCsFull D_80122C8C[1] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 999, 5, 60.0f, 1.0f, { -70.0f, 140.0f, 25.0f }, { 10.0f, 180.0f, 195.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80122CB4[2] = {
|
||||
static OnePointCsFull D_80122CB4[2] = {
|
||||
{ 0x0F, 0xFF, 0x4242, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 1000.0f }, { 0.0f, 0.0f, 1100.0f } },
|
||||
{ 0x02, 0xFF, 0x4242, -1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, -100.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80122D04[2] = {
|
||||
static OnePointCsFull D_80122D04[2] = {
|
||||
{ 0x0F, 0xFF, 0x4242, 10, 0, 60.0f, 1.0f, { 0.0f, 0.0f, -100.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x02, 0xFF, 0x4242, -1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 1000.0f }, { 0.0f, 0.0f, 1100.0f } },
|
||||
};
|
||||
@@ -534,7 +534,7 @@ static OnePointCsFull D_80122DCC[3] = {
|
||||
{ 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80122E44[2][7] = {
|
||||
static OnePointCsFull D_80122E44[2][7] = {
|
||||
{
|
||||
{ 0x83, 0xFF, 0x2222, 10, 5, 90.0f, 0.2f, { 50.0f, 100.0f, 140.0f }, { -30.0f, 10.0f, -20.0f } },
|
||||
{ 0x8F, 0xFF, 0x0000, 20, 0, 90.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
@@ -563,25 +563,25 @@ static OnePointCsFull D_80123074[5] = {
|
||||
{ 0x92, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012313C[3] = {
|
||||
static OnePointCsFull D_8012313C[3] = {
|
||||
{ 0x8F, 0xFF, 0xA2A2, 20, 8, 70.0f, 1.0f, { 65.0f, -150.0f, 50.0f }, { 30.0f, 10.0f, 90.0f } },
|
||||
{ 0x81, 0xFF, 0xA2A2, 100, 0, 60.0f, 1.0f, { 70.0f, -160.0f, 50.0f }, { 25.0f, 180.0f, 180.0f } },
|
||||
{ 0x92, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801231B4[4] = {
|
||||
static OnePointCsFull D_801231B4[4] = {
|
||||
{ 0x8F, 0xC5, 0x4343, 1, 0, 50.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 5.0f, -1.0f } },
|
||||
{ 0x81, 0xC5, 0x4343, 48, 0, 50.0f, 0.75f, { 0.0f, 80.0f, 0.0f }, { 0.0f, 15.0f, -1.0f } },
|
||||
{ 0x8F, 0xC5, 0x4343, 1, 5, 45.0f, 1.0f, { 0.0f, 0.0f, 30.0f }, { 30.0f, 120.0f, 60.0f } },
|
||||
{ 0x81, 0xC5, 0x4343, -1, 0, -1.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80123254[2] = {
|
||||
static OnePointCsFull D_80123254[2] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x03, 0xC5, 0x0101, 49, 0, 50.0f, 0.05f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801232A4[1] = {
|
||||
static OnePointCsFull D_801232A4[1] = {
|
||||
{ 0x0F, 0x45, 0x0101, 9999, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
};
|
||||
|
||||
@@ -646,24 +646,24 @@ static OnePointCsFull D_801237CC[5] = {
|
||||
{ 0x0F, 0xFF, 0x0000, 100, -45, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_80123894[3] = {
|
||||
static OnePointCsFull D_80123894[3] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 60, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x0F, 0xFF, 0x4242, 30, 0, 50.0f, 1.0f, { 0.0f, 28.0f, 0.0f }, { 0.0f, 20.0f, 40.0f } },
|
||||
{ 0x0D, 0xFF, 0x0000, 120, 0, 180.0f, 0.4f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 2.0f, 40.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012390C[2] = {
|
||||
static OnePointCsFull D_8012390C[2] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 30, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x0F, 0xFF, 0x4242, 180, 0, 60.0f, 1.0f, { 0.0f, 78.0f, 0.0f }, { 0.0f, 78.0f, 200.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_8012395C[3] = {
|
||||
static OnePointCsFull D_8012395C[3] = {
|
||||
{ 0x0F, 0xFF, 0x0101, 60, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x0F, 0xFF, 0x4242, 30, 0, 50.0f, 1.0f, { 0.0f, 28.0f, 0.0f }, { 0.0f, 20.0f, -45.0f } },
|
||||
{ 0x0D, 0xFF, 0x0000, 120, 0, 180.0f, 0.4f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 2.0f, 45.0f } },
|
||||
};
|
||||
|
||||
OnePointCsFull D_801239D4[3] = {
|
||||
static OnePointCsFull D_801239D4[3] = {
|
||||
{ 0x0F, 0xFF, 0x4242, 5, 0, 60.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 40.0f, -120.0f } },
|
||||
{ 0x09, 0xFF, 0x4242, 0, 0, 60.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } },
|
||||
{ 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } },
|
||||
|
||||
Reference in New Issue
Block a user