cleanup event stuff (#2688)

* cleanup event stuff

* fix debug
This commit is contained in:
TakaRikka
2025-09-23 04:20:38 -07:00
committed by GitHub
parent 47abdf82fa
commit 125f2325a5
20 changed files with 2843 additions and 1715 deletions
@@ -1,11 +1,15 @@
#ifndef STD_CMATH_H_
#define STD_CMATH_H_
#ifndef STD_CSTRING_H_
#define STD_CSTRING_H_
#include "string.h"
namespace std {
using ::strlen;
using ::strcpy;
inline char* strchr(char* str, int c) {
return ::strchr(str, c);
}
}; // namespace std
#endif
+1 -1
View File
@@ -1525,7 +1525,7 @@ void daTbox_c::settingDropDemoCamera() {
stage_camera_class* stage_camera = roomdt->getCamera();
stage_camera2_data_class* stage_camera_data = stage_camera->m_entries;
stage_camera_data += maptooldata->field_0x16;
stage_camera_data += maptooldata->data.maptool.field_0x16;
stage_arrow_class* stage_arrow = roomdt->getArrow();
stage_arrow_data_class* stage_arrow_data = stage_arrow->m_entries;
+2 -2
View File
@@ -9214,9 +9214,9 @@ bool dCamera_c::eventCamera(s32 param_0) {
break;
}
if (mEventData.field_0xec->mType == 0 && (mEventData.field_0xec->field_0xC & 0x80) != 0)
if (mEventData.field_0xec->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA && (mEventData.field_0xec->field_0xC & 0x80) != 0)
{
field_0x8d8.mCameraIndex = mEventData.field_0xec->field_0x16;
field_0x8d8.mCameraIndex = mEventData.field_0xec->data.maptool.field_0x16;
OS_REPORT("camera: event: change default type %d \n", field_0x8d8.mCameraIndex);
}
} else {
+7 -7
View File
@@ -1892,8 +1892,8 @@ bool dCamera_c::maptoolIdEvCamera() {
mEventData.field_0xec);
int var_r6 = 0xFF;
if (mEventData.field_0xec != NULL && mEventData.field_0xec->mType == 0) {
var_r6 = mEventData.field_0xec->field_0x16;
if (mEventData.field_0xec != NULL && mEventData.field_0xec->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA) {
var_r6 = mEventData.field_0xec->data.maptool.field_0x16;
}
getEvIntData(&mEventData.field_0x24, "CameraID", var_r6);
@@ -1910,7 +1910,7 @@ bool dCamera_c::maptoolIdEvCamera() {
room_no = -1;
}
if (mEventData.field_0xec->mType == 0 && mEventData.field_0xec->field_0xC != 0xFF) {
if (mEventData.field_0xec->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA && mEventData.field_0xec->field_0xC != 0xFF) {
if (mEventData.field_0xec->field_0xC & 1) {
clrFlag(0x200000);
}
@@ -1932,9 +1932,9 @@ bool dCamera_c::maptoolIdEvCamera() {
#endif
bool var_r3 = (this->*engine_tbl[mCamParam.Algorythmn(style)])(style);
if (mEventData.field_0xec->mType == 0) {
if (mEventData.field_0xec->field_0x14 == 0xFF ||
mCurCamStyleTimer > mEventData.field_0xec->field_0x14)
if (mEventData.field_0xec->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA) {
if (mEventData.field_0xec->data.maptool.field_0x14 == 0xFF ||
mCurCamStyleTimer > mEventData.field_0xec->data.maptool.field_0x14)
{
var_r31 = true;
}
@@ -1947,7 +1947,7 @@ bool dCamera_c::maptoolIdEvCamera() {
}
if (var_r31) {
if (mEventData.field_0xec->mType == 0 && (mEventData.field_0xec->field_0xC & 0x20)) {
if (mEventData.field_0xec->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA && (mEventData.field_0xec->field_0xC & 0x20)) {
return mDoCPd_c::getHoldA(mPadID) || mDoCPd_c::getHoldB(mPadID);
}
return true;
+589 -317
View File
File diff suppressed because it is too large Load Diff
+877 -512
View File
File diff suppressed because it is too large Load Diff
+156 -173
View File
@@ -5,12 +5,8 @@
#include "JSystem/JHostIO/JORFile.h"
#include "JSystem/JHostIO/JORMContext.h"
#include "JSystem/JHostIO/JORReflexible.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "d/actor/d_a_player.h"
#include "d/d_com_inf_game.h"
#include "d/d_event_data.h"
#include "m_Do/m_Do_controller_pad.h"
#include "os.h"
static dEvDb_bit_c dEvDb_flag_bit_table[799] = {
#include "d/d_event_debug_bit_table.inc"
@@ -55,7 +51,7 @@ dEvM_HIO_c::dEvM_HIO_c() {
m_evd_unfinished = false;
m_prioritize_file = false;
if(mDoCPd_c::getHoldL(PAD_2))
if (mDoCPd_c::getHoldL(PAD_2))
m_prioritize_file = true;
m_enable_skip = false;
@@ -74,79 +70,79 @@ dEvM_HIO_c::dEvM_HIO_c() {
m_temp_reg.mFlagTables = &dEvDb_flag_base_table_tmp;
}
void dEvM_HIO_c::genMessage(JORMContext* ctx) {
ctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
void dEvM_HIO_c::genMessage(JORMContext* mctx) {
mctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
/* "- Event Manager Testing" */
ctx->genLabel("- イベントマネージャーテスト用", LBL_EVENT_MANAGER_TESTING, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- イベントマネージャーテスト用", LBL_EVENT_MANAGER_TESTING, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Playback test"
ctx->genNode("再生テスト", &m_playtest, 0, 0);
mctx->genNode("再生テスト", &m_playtest, 0, 0);
// "Save B"
ctx->genNode("セーブB", &m_save_bit, 0, 0);
mctx->genNode("セーブB", &m_save_bit, 0, 0);
// "Temporary B"
ctx->genNode("一時B", &m_temp_bit, 0, 0);
mctx->genNode("一時B", &m_temp_bit, 0, 0);
// "Save R"
ctx->genNode("セーブR", &m_save_reg, 0, 0);
mctx->genNode("セーブR", &m_save_reg, 0, 0);
// "Temporary R"
ctx->genNode("一時R", &m_temp_reg, 0, 0);
mctx->genNode("一時R", &m_temp_reg, 0, 0);
// "Read"
ctx->genButton("読み込み", BTN_READ, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genButton("読み込み", BTN_READ, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "evM Debug"
ctx->genCheckBox("evM デバック", &m_evm_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("evM デバック", &m_evm_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "evD Debug"
ctx->genCheckBox("evD デバック", &m_evd_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("evD デバック", &m_evd_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "eve Debug"
ctx->genCheckBox("eve デバック", &m_eve_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("eve デバック", &m_eve_debug, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "EV data output"
ctx->genCheckBox("EVデータ出力", &m_EVdata_output, 1, 0, NULL , 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("EVデータ出力", &m_EVdata_output, 1, 0, NULL , 0xffff, 0xffff, 0x200, 0x18);
// "evD unfinished"
ctx->genCheckBox("evD 未終了", &m_evd_unfinished, 1, 0, NULL, 0xffff , 0xffff, 0x200, 0x18);
mctx->genCheckBox("evD 未終了", &m_evd_unfinished, 1, 0, NULL, 0xffff , 0xffff, 0x200, 0x18);
// "Scene switching prohibited"
ctx->genCheckBox("シーン切替禁止", &m_prevent_scene_switch, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("シーン切替禁止", &m_prevent_scene_switch, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
/* "- Map Tool Data" */
ctx->genLabel("- マップツールデータ", 0, 0, NULL, 0xffff, 0xffff, 0x200 , 0x18);
mctx->genLabel("- マップツールデータ", 0, 0, NULL, 0xffff, 0xffff, 0x200 , 0x18);
// "Corrective Sound Adjustment"
ctx->genSlider(" 正解音調整",&m_corrective_sound_adjustment, -200, 200, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genSlider(" 正解音調整",&m_corrective_sound_adjustment, -200, 200, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genLabel("- ",0,0,NULL,0xffff,0xffff,0x200,0x18);
mctx->genLabel("- ",0,0,NULL,0xffff,0xffff,0x200,0x18);
/* "- Event Data" */
ctx->genLabel("- イベントデータ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- イベントデータ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Continuously prioritize"
ctx->genCheckBox("常駐優先", &m_prioritize_file, 1, 0, NULL, 0xffff , 0xffff, 0x200, 0x18);
mctx->genCheckBox("常駐優先", &m_prioritize_file, 1, 0, NULL, 0xffff , 0xffff, 0x200, 0x18);
/* "- Apply then Reset" */
ctx->genLabel("- つけてから要リセット", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- つけてから要リセット", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Skip enabled"
ctx->genCheckBox("スキップ有効", &m_enable_skip, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genCheckBox("スキップ有効", &m_enable_skip, 1, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
ctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("- ", 0, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Forced termination"
ctx->genButton("強制終了", BTN_FORCED_TERMINATION, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genButton("強制終了", BTN_FORCED_TERMINATION, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
}
void dEvM_HIO_c::listenPropertyEvent(const JORPropertyEvent* param_0) {
@@ -155,72 +151,72 @@ void dEvM_HIO_c::listenPropertyEvent(const JORPropertyEvent* param_0) {
JORReflexible::listenPropertyEvent(param_0);
switch(reinterpret_cast<u32>(param_0->id)) {
case BTN_READ:
if(!debug_data) {
// "Fly? Soar?" or maybe something along the lines of "Order change?", not entirely sure of translation...
OS_REPORT("飛ぶか?そるか?\n");
debug_data = static_cast<char*>(JKRAlloc(0x32000,0));
}
switch (reinterpret_cast<u32>(param_0->id)) {
case BTN_READ:
if(!debug_data) {
// "Fly? Soar?" or maybe something along the lines of "Order change?", not entirely sure of translation...
OS_REPORT("飛ぶか?そるか?\n");
debug_data = static_cast<char*>(JKRAlloc(0x32000,0));
}
// "Event data (*.dat)"
// Extra null terminators & *.dat needed for .data section to match??
// Maybe the result of some kind of macro for formatting extension masks?
if(debug_data && eventDataFile.open(1, "イベントデータ(*.dat)\0*.dat\0\0\0", NULL, NULL, NULL)) {
eventDataFile.readData(debug_data, 0);
eventDataFile.close();
// "Event data (*.dat)"
// Extra null terminators & *.dat needed for .data section to match??
// Maybe the result of some kind of macro for formatting extension masks?
if (debug_data && eventDataFile.open(1, "イベントデータ(*.dat)\0*.dat\0\0\0", NULL, NULL, NULL)) {
eventDataFile.readData(debug_data, 0);
eventDataFile.close();
// Update available events
m_playtest.removeComboBox();
dComIfGp_getPEvtManager()->setDbgData(debug_data);
m_playtest.addComboBox();
}
break;
case BTN_READ + 1:
break;
case BTN_FORCED_TERMINATION:
// "Forced termination" button
dComIfGp_getEvent().reset();
break;
// Update available events
m_playtest.removeComboBox();
dComIfGp_getPEvtManager()->setDbgData(debug_data);
m_playtest.addComboBox();
}
break;
case BTN_READ + 1:
break;
case BTN_FORCED_TERMINATION:
// "Forced termination" button
dComIfGp_getEvent().reset();
break;
}
}
bool dEvM_HIO_c::setDebugCameraData(void* buffer) {
if(m_playtest.mEventCameraMode != dEvM_play_HIO_c::UNSET)
if (m_playtest.mEventCameraMode != dEvM_play_HIO_c::UNSET)
return false;
if(dComIfGp_event_runCheck())
if (dComIfGp_event_runCheck())
return false;
dComIfGp_getPEvtManager()->setDbgData(static_cast<const char*>(buffer));
m_playtest.mTargetEvent = 0;
m_playtest.field_0x6 = 0;
m_playtest.mEventIdx = 0;
m_playtest.mEventCameraMode = dEvM_play_HIO_c::PLAYBACK;
m_playtest.field_0xA = 0;
return true;
}
void dEvM_root_bit_HIO_c::genMessage(JORMContext* ctx) {
void dEvM_root_bit_HIO_c::genMessage(JORMContext* mctx) {
u8 i = 0;
for(; i < ARRAY_SIZEU(mBit) && i < mFlagTables->mNumRootBits; i++) {
for (; i < ARRAY_SIZEU(mBit) && i < mFlagTables->mNumRootBits; i++) {
mBit[i].mFlagTables = mFlagTables;
mBit[i].mRootBitIdx = i;
if(mFlagTables->searchDirNameBit(i))
ctx->genNode(mFlagTables->searchDirNameBit(i), &mBit[i], 0, 0);
if (mFlagTables->searchDirNameBit(i))
mctx->genNode(mFlagTables->searchDirNameBit(i), &mBit[i], 0, 0);
}
}
void dEvM_root_reg_HIO_c::genMessage(JORMContext* ctx) {
void dEvM_root_reg_HIO_c::genMessage(JORMContext* mctx) {
u8 i = 0;
for(; i < ARRAY_SIZEU(mReg) && i < mFlagTables->mNumRootRegs; i++) {
for (; i < ARRAY_SIZEU(mReg) && i < mFlagTables->mNumRootRegs; i++) {
mReg[i].mFlagTables = mFlagTables;
mReg[i].mRootRegIdx = i;
if(mFlagTables->searchDirNameReg(i))
ctx->genNode(mFlagTables->searchDirNameReg(i), &mReg[i], 0, 0);
if (mFlagTables->searchDirNameReg(i))
mctx->genNode(mFlagTables->searchDirNameReg(i), &mReg[i], 0, 0);
}
}
@@ -229,87 +225,84 @@ const char* non_text = "無し";
dEvM_play_HIO_c::dEvM_play_HIO_c() {
mTargetEvent = 0;
field_0x6 = 0;
mEventIdx = 0;
mEventCameraMode = UNSET;
field_0xA = 0;
}
void dEvM_play_HIO_c::genMessage(JORMContext* ctx) {
void dEvM_play_HIO_c::genMessage(JORMContext* mctx) {
event_binary_data_header* const header = dComIfGp_getPEvtManager()->getHeader(1);
dEvDtEvent_c* const list = dComIfGp_getPEvtManager()->getEventList(1);
/* "Event Playback Test" */
ctx->genLabel("イベントの再生テスト", LBL_EVENT_PLAYBACK_TESTING, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("イベントの再生テスト", LBL_EVENT_PLAYBACK_TESTING, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Playback"
ctx->genButton("再生", BTN_PLAYBACK, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genButton("再生", BTN_PLAYBACK, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Stop"
ctx->genButton("停止", BTN_STOP, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genButton("停止", BTN_STOP, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Target event"
ctx->startComboBox("対象イベント", &mTargetEvent, 0, NULL, 0xffff, 0xffff, 0x100, 0x1a);
mctx->startComboBox("対象イベント", &mTargetEvent, 0, NULL, 0xffff, 0xffff, 0x100, 0x1a);
int i;
if(!header) {
ctx->genComboBoxItem(non_text,0);
}
else {
for(i = 0; i < header->eventNum; i++) {
ctx->genComboBoxItem(list[i].getName(), i);
if (!header) {
mctx->genComboBoxItem(non_text,0);
} else {
for (i = 0; i < header->eventNum; i++) {
mctx->genComboBoxItem(list[i].getName(), i);
}
}
ctx->endComboBox();
mctx->endComboBox();
}
void dEvM_play_HIO_c::listenPropertyEvent(const JORPropertyEvent* param_0) {
JORReflexible::listenPropertyEvent(param_0);
mEventCameraMode = UNSET;
switch(reinterpret_cast<u32>(param_0->id)) {
case BTN_PLAYBACK:
mEventCameraMode = PLAYBACK;
break;
case BTN_STOP:
mEventCameraMode = STOP;
break;
switch (reinterpret_cast<u32>(param_0->id)) {
case BTN_PLAYBACK:
mEventCameraMode = PLAYBACK;
break;
case BTN_STOP:
mEventCameraMode = STOP;
break;
}
}
void dEvM_play_HIO_c::removeComboBox() {
// Empty function
}
void dEvM_play_HIO_c::removeComboBox() {}
void dEvM_play_HIO_c::addComboBox() {
JORMContext* ctx = attachJORMContext(5);
ctx->invalidNode(this, 3);
releaseJORMContext(ctx);
JORMContext* mctx = attachJORMContext(5);
mctx->invalidNode(this, 3);
releaseJORMContext(mctx);
}
dEvM_bit_HIO_c::dEvM_bit_HIO_c() {
field_0x008 = 0;
}
void dEvM_bit_HIO_c::genMessage(JORMContext* ctx) {
void dEvM_bit_HIO_c::genMessage(JORMContext* mctx) {
/* "----Event Save Bit---" */
ctx->genLabel("----イベント セーブビット---", LBL_EVENT_SAVE_BIT, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("----イベント セーブビット---", LBL_EVENT_SAVE_BIT, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Update"
ctx->genButton("更新", BTN_UPDATE, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genButton("更新", BTN_UPDATE, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
int i = 0;
u32 labelPosY = 0;
int unused = labelPosY;
for(; i < mFlagTables->mTotalBitNum; i++) {
if(mRootBitIdx == mFlagTables->mBitTable[i].mRootBit) {
if(mFlagTables == &dEvDb_flag_base_table)
for (; i < mFlagTables->mTotalBitNum; i++) {
if (mRootBitIdx == mFlagTables->mBitTable[i].mRootBit) {
if (mFlagTables == &dEvDb_flag_base_table)
mFlagTables->mBitTable[i].mIsSet = dComIfGs_isEventBit(mFlagTables->mBitTable[i].mFlagValue);
else
mFlagTables->mBitTable[i].mIsSet = dComIfGs_isTmpBit(mFlagTables->mBitTable[i].mFlagValue);
ctx->genCheckBox(mFlagTables->mBitTable[i].mFlagName, &mFlagTables->mBitTable[i].mIsSet, 1, 0, NULL, 0xffff, 0xffff, 0xfa, 0x18);
ctx->genLabel(mFlagTables->mBitTable[i].mFlagDescription, i + (1 << 31) + (1 << 1), 0, NULL, 0x100, labelPosY * 25 + 50, 0x200, 0x18);
mctx->genCheckBox(mFlagTables->mBitTable[i].mFlagName, &mFlagTables->mBitTable[i].mIsSet, 1, 0, NULL, 0xffff, 0xffff, 0xfa, 0x18);
mctx->genLabel(mFlagTables->mBitTable[i].mFlagDescription, i + (1 << 31) + (1 << 1), 0, NULL, 0x100, labelPosY * 25 + 50, 0x200, 0x18);
labelPosY++;
}
@@ -320,134 +313,125 @@ void dEvM_bit_HIO_c::listenPropertyEvent(const JORPropertyEvent* param_0) {
int i;
JORReflexible::listenPropertyEvent(param_0);
switch(reinterpret_cast<u32>(param_0->id)) {
case BTN_UPDATE:
update();
case BTN_UPDATE + 1:
break;
default:
for(i = 0; i < mFlagTables->mTotalBitNum; i++) {
if(mRootBitIdx == mFlagTables->mBitTable[i].mRootBit && param_0->id == reinterpret_cast<char*>(&mFlagTables->mBitTable[i].mIsSet)) {
if(mFlagTables == &dEvDb_flag_base_table) {
if(mFlagTables->mBitTable[i].mIsSet)
dComIfGs_onEventBit(mFlagTables->mBitTable[i].mFlagValue);
else
dComIfGs_offEventBit(mFlagTables->mBitTable[i].mFlagValue);
}
else if(mFlagTables->mBitTable[i].mIsSet) {
dComIfGs_onTmpBit(mFlagTables->mBitTable[i].mFlagValue);
}
else {
dComIfGs_offTmpBit(mFlagTables->mBitTable[i].mFlagValue);
}
switch (reinterpret_cast<u32>(param_0->id)) {
case BTN_UPDATE:
update();
case BTN_UPDATE + 1:
break;
default:
for (i = 0; i < mFlagTables->mTotalBitNum; i++) {
if (mRootBitIdx == mFlagTables->mBitTable[i].mRootBit && param_0->id == reinterpret_cast<char*>(&mFlagTables->mBitTable[i].mIsSet)) {
if (mFlagTables == &dEvDb_flag_base_table) {
if (mFlagTables->mBitTable[i].mIsSet)
dComIfGs_onEventBit(mFlagTables->mBitTable[i].mFlagValue);
else
dComIfGs_offEventBit(mFlagTables->mBitTable[i].mFlagValue);
} else if (mFlagTables->mBitTable[i].mIsSet) {
dComIfGs_onTmpBit(mFlagTables->mBitTable[i].mFlagValue);
} else {
dComIfGs_offTmpBit(mFlagTables->mBitTable[i].mFlagValue);
}
}
break;
}
break;
}
}
void dEvM_bit_HIO_c::update() {
JORMContext* context = attachJORMContext(8);
JORMContext* mctx = attachJORMContext(8);
if(mFlagTables->mTotalBitNum > 0)
context->startUpdateNode(this);
if (mFlagTables->mTotalBitNum > 0)
mctx->startUpdateNode(this);
int i = 0;
for(; i < mFlagTables->mTotalBitNum; i++) {
if(mRootBitIdx == mFlagTables->mBitTable[i].mRootBit) {
if(mFlagTables == &dEvDb_flag_base_table)
for (; i < mFlagTables->mTotalBitNum; i++) {
if (mRootBitIdx == mFlagTables->mBitTable[i].mRootBit) {
if (mFlagTables == &dEvDb_flag_base_table)
mFlagTables->mBitTable[i].mIsSet = dComIfGs_isEventBit(mFlagTables->mBitTable[i].mFlagValue);
else
mFlagTables->mBitTable[i].mIsSet = dComIfGs_isTmpBit(mFlagTables->mBitTable[i].mFlagValue);
context->updateCheckBox(2, &mFlagTables->mBitTable[i].mIsSet, 1, 0);
mctx->updateCheckBox(2, &mFlagTables->mBitTable[i].mIsSet, 1, 0);
}
}
releaseJORMContext(context);
releaseJORMContext(mctx);
}
dEvM_reg_HIO_c::dEvM_reg_HIO_c() {
field_0x008 = 0;
}
void dEvM_reg_HIO_c::genMessage(JORMContext* ctx) {
void dEvM_reg_HIO_c::genMessage(JORMContext* mctx) {
/* "----Event Save Register---" */
ctx->genLabel("----イベント セーブレジスター---", LBL_EVENT_SAVE_REGISTER, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel("----イベント セーブレジスター---", LBL_EVENT_SAVE_REGISTER, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// "Update"
ctx->genButton("更新", BTN_UPDATE, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
// Stack non-matching if i is declared in the for loop header and flagVal is declared in loop body
mctx->genButton("更新", BTN_UPDATE, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
int i = 0;
u8 flagVal;
for(; i < mFlagTables->mTotalRegNum; i++) {
if(mRootRegIdx == mFlagTables->mRegTable[i].mRootReg) {
if(mFlagTables == &dEvDb_flag_base_table)
for (; i < mFlagTables->mTotalRegNum; i++) {
if (mRootRegIdx == mFlagTables->mRegTable[i].mRootReg) {
if (mFlagTables == &dEvDb_flag_base_table)
mFlagTables->mRegTable[i].mIsSet = dComIfGs_getEventReg(mFlagTables->mRegTable[i].mFlagValue);
else
mFlagTables->mRegTable[i].mIsSet = dComIfGs_getTmpReg(mFlagTables->mRegTable[i].mFlagValue);
ctx->genLabel(mFlagTables->mRegTable[i].mFlagDescription, 0x80000001, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genLabel(mFlagTables->mRegTable[i].mFlagDescription, 0x80000001, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
flagVal = mFlagTables->mRegTable[i].mFlagValue;
ctx->genSlider(mFlagTables->mRegTable[i].mFlagName, &mFlagTables->mRegTable[i].mIsSet, 0, flagVal, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
mctx->genSlider(mFlagTables->mRegTable[i].mFlagName, &mFlagTables->mRegTable[i].mIsSet, 0, flagVal, 0, NULL, 0xffff, 0xffff, 0x200, 0x18);
}
}
}
void dEvM_reg_HIO_c::listenPropertyEvent(const JORPropertyEvent* param_0) {
// Stack non-matching if i is declared in the for loop header
int i;
JORReflexible::listenPropertyEvent(param_0);
switch(reinterpret_cast<u32>(param_0->id)) {
case BTN_UPDATE:
update();
case BTN_UPDATE + 1:
break;
default:
for(i = 0; i < mFlagTables->mTotalRegNum; i++) {
if(mRootRegIdx == mFlagTables->mRegTable[i].mRootReg && param_0->id == reinterpret_cast<char*>(&mFlagTables->mRegTable[i].mIsSet)) {
if(mFlagTables == &dEvDb_flag_base_table)
dComIfGs_setEventReg(mFlagTables->mRegTable[i].mFlagValue, mFlagTables->mRegTable[i].mIsSet);
else
dComIfGs_setTmpReg(mFlagTables->mRegTable[i].mFlagValue, mFlagTables->mRegTable[i].mIsSet);
}
case BTN_UPDATE:
update();
case BTN_UPDATE + 1:
break;
default:
for (i = 0; i < mFlagTables->mTotalRegNum; i++) {
if (mRootRegIdx == mFlagTables->mRegTable[i].mRootReg && param_0->id == reinterpret_cast<char*>(&mFlagTables->mRegTable[i].mIsSet)) {
if (mFlagTables == &dEvDb_flag_base_table)
dComIfGs_setEventReg(mFlagTables->mRegTable[i].mFlagValue, mFlagTables->mRegTable[i].mIsSet);
else
dComIfGs_setTmpReg(mFlagTables->mRegTable[i].mFlagValue, mFlagTables->mRegTable[i].mIsSet);
}
break;
}
break;
}
}
void dEvM_reg_HIO_c::update() {
JORMContext* context = attachJORMContext(8);
JORMContext* mctx = attachJORMContext(8);
if(mFlagTables->mTotalRegNum > 0)
context->startUpdateNode(this);
if (mFlagTables->mTotalRegNum > 0)
mctx->startUpdateNode(this);
// Stack non-matching if i is declared in the for loop header
int i = 0;
for(; i < mFlagTables->mTotalRegNum; i++) {
if(mRootRegIdx == mFlagTables->mRegTable[i].mRootReg) {
if(mFlagTables == &dEvDb_flag_base_table)
for (; i < mFlagTables->mTotalRegNum; i++) {
if (mRootRegIdx == mFlagTables->mRegTable[i].mRootReg) {
if (mFlagTables == &dEvDb_flag_base_table)
mFlagTables->mRegTable[i].mIsSet = dComIfGs_getEventReg(mFlagTables->mRegTable[i].mFlagValue);
else
mFlagTables->mRegTable[i].mIsSet = dComIfGs_getTmpReg(mFlagTables->mRegTable[i].mFlagValue);
context->updateSlider(2, &mFlagTables->mRegTable[i].mIsSet, 0, 0, 0);
mctx->updateSlider(2, &mFlagTables->mRegTable[i].mIsSet, 0, 0, 0);
}
}
releaseJORMContext(context);
releaseJORMContext(mctx);
}
char* dEvDb_flag_base_c::searchDirNameBit(int bit) {
// Stack non-matching if i is declared in the for loop header
int i = 0;
for(; i < mTotalBitNum; i++) {
if(bit == mBitTable[i].mRootBit)
for (; i < mTotalBitNum; i++) {
if (bit == mBitTable[i].mRootBit)
return mBitTable[i].mArea;
}
@@ -455,13 +439,12 @@ char* dEvDb_flag_base_c::searchDirNameBit(int bit) {
}
char* dEvDb_flag_base_c::searchDirNameReg(int bit) {
// Stack non-matching if i is declared in the for loop header
int i = 0;
for(; i < mTotalRegNum; i++) {
if(bit == mRegTable[i].mRootReg)
for (; i < mTotalRegNum; i++) {
if (bit == mRegTable[i].mRootReg)
return mRegTable[i].mArea;
}
return NULL;
}
+906 -477
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -231,7 +231,7 @@ bool STControl::checkDownTrigger() {
u8 dLib_getEventSwitchNo(int param_0) {
dStage_MapEvent_dt_c* mapEvent = dEvt_control_c::searchMapEventData(param_0);
if (mapEvent != NULL) {
return mapEvent->mSwitch;
return mapEvent->switch_no;
}
return 0xff;
}
+14 -14
View File
@@ -836,7 +836,7 @@ s32 fopAcM_orderTalkEvent(fopAc_ac_c* i_actorA, fopAc_ac_c* i_actorB, u16 i_prio
i_priority = 0x1FF;
}
return dComIfGp_event_order(EVT_TYPE_TALK, i_priority, i_flag, 0x14F, i_actorA, i_actorB, -1,
return dComIfGp_event_order(dEvt_type_TALK_e, i_priority, i_flag, 0x14F, i_actorA, i_actorB, -1,
-1);
}
@@ -870,7 +870,7 @@ s32 fopAcM_orderSpeakEvent(fopAc_ac_c* i_actor, u16 i_priority, u16 i_flag) {
i_priority = 0x1EA;
}
return dComIfGp_event_order(EVT_TYPE_TALK, i_priority, i_flag, 0x14F, dComIfGp_getPlayer(0),
return dComIfGp_event_order(dEvt_type_TALK_e, i_priority, i_flag, 0x14F, dComIfGp_getPlayer(0),
i_actor, -1, -1);
}
@@ -894,7 +894,7 @@ s32 fopAcM_orderDoorEvent(fopAc_ac_c* i_actorA, fopAc_ac_c* i_actorB, u16 i_prio
eventID = dComIfGp_getEventManager().getEventIdx(i_actorA, NULL, toolID);
}
return dComIfGp_event_order(EVT_TYPE_DOOR, i_priority, i_flag, -1, i_actorA, i_actorB, eventID,
return dComIfGp_event_order(dEvt_type_DOOR_e, i_priority, i_flag, -1, i_actorA, i_actorB, eventID,
toolID);
}
@@ -911,7 +911,7 @@ s32 fopAcM_orderCatchEvent(fopAc_ac_c* i_actorA, fopAc_ac_c* i_actorB, u16 i_pri
i_priority = 2;
}
return dComIfGp_event_order(EVT_TYPE_CATCH, i_priority, i_flag, -1, i_actorA, i_actorB, -1, -1);
return dComIfGp_event_order(dEvt_type_CATCH_e, i_priority, i_flag, -1, i_actorA, i_actorB, -1, -1);
}
/* 8001B3CC-8001B4E0 015D0C 0114+00 0/0 2/2 6/6 .text
@@ -938,7 +938,7 @@ s32 fopAcM_orderOtherEvent(fopAc_ac_c* i_actor, char const* i_eventName, u16 par
eventPrio = i_priority;
}
return dComIfGp_event_order(EVT_TYPE_OTHER, eventPrio, i_flag, param_2, i_actor,
return dComIfGp_event_order(dEvt_type_OTHER_e, eventPrio, i_flag, param_2, i_actor,
event_second_actor(i_flag), eventIdx, -1);
}
@@ -966,7 +966,7 @@ s32 fopAcM_orderOtherEvent(fopAc_ac_c* i_actorA, fopAc_ac_c* i_actorB, char cons
eventPrio = i_priority;
}
return dComIfGp_event_order(EVT_TYPE_OTHER, eventPrio, i_flag, param_3, i_actorA, i_actorB,
return dComIfGp_event_order(dEvt_type_OTHER_e, eventPrio, i_flag, param_3, i_actorA, i_actorB,
eventIdx, -1);
}
@@ -978,7 +978,7 @@ s32 fopAcM_orderChangeEventId(fopAc_ac_c* i_actor, s16 i_eventID, u16 i_flag, u1
eventPrio = 0xFF;
}
return dComIfGp_event_order(EVT_TYPE_OTHER, eventPrio, i_flag | 0x400, param_3, i_actor,
return dComIfGp_event_order(dEvt_type_OTHER_e, eventPrio, i_flag | 0x400, param_3, i_actor,
event_second_actor(i_flag), i_eventID, -1);
}
@@ -1009,12 +1009,12 @@ s32 fopAcM_orderOtherEventId(fopAc_ac_c* i_actor, s16 i_eventID, u8 i_mapToolID,
dStage_MapEvent_dt_c* dt = dEvt_control_c::searchMapEventData(i_mapToolID, roomNo);
if (dt != NULL) {
newPriority = dt->mPriority;
newPriority = dt->priority;
}
}
}
return dComIfGp_event_order(EVT_TYPE_OTHER, newPriority, i_flag, param_3, i_actor,
return dComIfGp_event_order(dEvt_type_OTHER_e, newPriority, i_flag, param_3, i_actor,
event_second_actor(i_flag), i_eventID, i_mapToolID);
}
@@ -1036,7 +1036,7 @@ s32 fopAcM_orderMapToolEvent(fopAc_ac_c* i_actor, u8 param_1, s16 i_eventID, u16
dStage_MapEvent_dt_c* dt = dEvt_control_c::searchMapEventData(param_1, roomNo);
if (dt != NULL) {
newPriority = dt->mPriority;
newPriority = dt->priority;
if (i_eventID == 0xFF) {
i_eventID = dComIfGp_getEventManager().getEventIdx(i_actor, param_1);
@@ -1051,7 +1051,7 @@ s32 fopAcM_orderMapToolEvent(fopAc_ac_c* i_actor, u8 param_1, s16 i_eventID, u16
newPriority = param_5;
}
return dComIfGp_event_order(EVT_TYPE_OTHER, newPriority, i_flag, param_3, i_actor,
return dComIfGp_event_order(dEvt_type_OTHER_e, newPriority, i_flag, param_3, i_actor,
event_second_actor(i_flag), i_eventID, param_1);
}
@@ -1075,7 +1075,7 @@ s32 fopAcM_orderPotentialEvent(fopAc_ac_c* i_actor, u16 i_flag, u16 param_2, u16
i_priority = 0xFF;
}
return dComIfGp_event_order(EVT_TYPE_POTENTIAL, i_priority, i_flag, param_2, i_actor,
return dComIfGp_event_order(dEvt_type_POTENTIAL_e, i_priority, i_flag, param_2, i_actor,
event_second_actor(i_flag), -1, -1);
}
@@ -1092,7 +1092,7 @@ s32 fopAcM_orderItemEvent(fopAc_ac_c* i_actor, u16 i_priority, u16 i_flag) {
i_priority = 0xFF;
}
return dComIfGp_event_order(EVT_TYPE_ITEM, i_priority, i_flag, -1, dComIfGp_getPlayer(0),
return dComIfGp_event_order(dEvt_type_ITEM_e, i_priority, i_flag, -1, dComIfGp_getPlayer(0),
i_actor, -1, -1);
}
@@ -1110,7 +1110,7 @@ s32 fopAcM_orderTreasureEvent(fopAc_ac_c* i_actorA, fopAc_ac_c* i_actorB, u16 i_
i_priority = 0xFF;
}
return dComIfGp_event_order(EVT_TYPE_TREASURE, i_priority, i_flag, -1, i_actorA, i_actorB, -1,
return dComIfGp_event_order(dEvt_type_TREASURE_e, i_priority, i_flag, -1, i_actorA, i_actorB, -1,
-1);
}
+4 -4
View File
@@ -153,7 +153,7 @@ fpc_ProcID fopMsgM_messageSet(u32 i_msgIdx, fopAc_ac_c* i_talkActor, u32 param_2
dMsgObject_c* msg = (dMsgObject_c*)fopMsgM_SearchByID(i_msgID);
if (msg != NULL && msg->mode == 1) {
if (msg != NULL && msg->mode == fopMsg_MODE_MSG_PREPARING_e) {
msg->pos.set(pos);
msg->msg_idx = i_msgIdx;
msg->field_0xf0 = param_2;
@@ -185,7 +185,7 @@ fpc_ProcID fopMsgM_messageSet(u32 i_msgIdx, u32 param_1) {
dMsgObject_c* msg = (dMsgObject_c*)fopMsgM_SearchByID(i_msgID);
if (msg != NULL) {
if (msg->mode == 1) {
if (msg->mode == fopMsg_MODE_MSG_PREPARING_e) {
msg->pos.set(pos);
msg->msg_idx = i_msgIdx;
msg->field_0xf0 = param_1;
@@ -193,7 +193,7 @@ fpc_ProcID fopMsgM_messageSet(u32 i_msgIdx, u32 param_1) {
msg->setTalkPartner(NULL);
msg->setMessageIndex(i_msgIdx, param_1, false);
return i_msgID;
} else if (msg->mode == 15) {
} else if (msg->mode == fopMsg_MODE_MSG_CONTINUE_e) {
msg->pos.set(pos);
msg->msg_idx = i_msgIdx;
msg->field_0xf0 = param_1;
@@ -225,7 +225,7 @@ fpc_ProcID fopMsgM_messageSetDemo(u32 i_msgidx) {
dMsgObject_c* msg = (dMsgObject_c*)fopMsgM_SearchByID(i_msgID);
if (msg != NULL && msg->mode == 1) {
if (msg != NULL && msg->mode == fopMsg_MODE_MSG_PREPARING_e) {
msg->pos.set(pos);
msg->msg_idx = i_msgidx;
msg->field_0xf0 = 1000;