mirror of
https://github.com/korenkonder/ReDIVA.git
synced 2026-10-10 08:08:35 +03:00
192 lines
5.7 KiB
C++
192 lines
5.7 KiB
C++
/*
|
|
by korenkonder
|
|
GitHub/GitLab: korenkonder
|
|
*/
|
|
|
|
#include "data_initialize.hpp"
|
|
#include "../CRE/rob/rob.hpp"
|
|
#include "../CRE/auth_2d.hpp"
|
|
#include "../CRE/customize_item_table.hpp"
|
|
#include "../CRE/data.hpp"
|
|
#include "../CRE/font.hpp"
|
|
#include "../CRE/hand_item.hpp"
|
|
#include "../CRE/item_table.hpp"
|
|
#include "../CRE/module_table.hpp"
|
|
#include "../CRE/object.hpp"
|
|
#include "../CRE/sound.hpp"
|
|
#include "../CRE/sprite.hpp"
|
|
#include "game_state.hpp"
|
|
|
|
extern uint32_t dbg_set_id;
|
|
|
|
TaskDataInit task_data_init;
|
|
|
|
TaskDataInit::TaskDataInit() : state(), field_6C() {
|
|
|
|
}
|
|
|
|
TaskDataInit::~TaskDataInit() {
|
|
|
|
}
|
|
|
|
bool TaskDataInit::Init() {
|
|
state = 0;
|
|
field_6C = !test_mode_get();
|
|
return true;
|
|
}
|
|
|
|
bool TaskDataInit::Ctrl() {
|
|
data_struct* aft_data = &data_list[DATA_AFT];
|
|
aet_database* aft_aet_db = &aft_data->data_ft.aet_db;
|
|
object_database* aft_obj_db = &aft_data->data_ft.obj_db;
|
|
sprite_database* aft_spr_db = &aft_data->data_ft.spr_db;
|
|
|
|
switch (state) {
|
|
case 0: {
|
|
// Fucks up scaling
|
|
//sprite_manager_reset_res_data();
|
|
sprite_manager_read_file(4, "", aft_data, aft_spr_db);
|
|
sprite_manager_read_file(472, "", aft_data, aft_spr_db);
|
|
sprite_manager_read_file(43, "", aft_data, aft_spr_db);
|
|
fontmap_data_read_file();
|
|
state = 1;
|
|
} break;
|
|
case 1:
|
|
if (!sprite_manager_load_file(4, aft_spr_db)
|
|
&& !sprite_manager_load_file(472, aft_spr_db)
|
|
&& !sprite_manager_load_file(43, aft_spr_db)
|
|
&& !fontmap_data_load_file())
|
|
state = field_6C ? 2 : 4;
|
|
break;
|
|
case 2:
|
|
//sub_140194800(10);
|
|
state = 3;
|
|
break;
|
|
case 3:
|
|
//if (sub_1401935C0()) // Measure FPS
|
|
state = 4;
|
|
break;
|
|
case 4: {
|
|
sprite_manager_read_file(32, "", aft_data, aft_spr_db);
|
|
aet_manager_read_file(26, "", aft_data, aft_aet_db);
|
|
sprite_manager_read_file(34, "", aft_data, aft_spr_db);
|
|
aet_manager_read_file(35, "", aft_data, aft_aet_db);
|
|
state = 5;
|
|
} break;
|
|
case 5:
|
|
if (sprite_manager_load_file(32, aft_spr_db)
|
|
|| aet_manager_load_file(26, aft_aet_db)
|
|
|| sprite_manager_load_file(34, aft_spr_db)
|
|
|| aet_manager_load_file(35, aft_aet_db))
|
|
break;
|
|
|
|
state = 6;
|
|
case 6:
|
|
//auth_3d_database_read_file();
|
|
//stage_database_read_file();
|
|
state = 7;
|
|
//break;
|
|
case 7:
|
|
//if (auth_3d_database_load_file() || stage_database_load_file())
|
|
// break;
|
|
state = 8;
|
|
case 8:
|
|
object_storage_load_set(aft_data, aft_obj_db, dbg_set_id);
|
|
//bone_database_read();
|
|
item_table_handler_array_read();
|
|
sound_work_read_farc("rom/sound/se.farc");
|
|
sound_work_read_farc("rom/sound/button.farc");
|
|
sound_work_read_farc("rom/sound/se_cmn.farc");
|
|
sound_work_read_farc("rom/sound/se_sel.farc");
|
|
sound_work_read_farc("rom/sound/se_aime.farc");
|
|
sound_work_read_farc("rom/sound/pvchange.farc");
|
|
sound_work_read_farc("rom/sound/slide_se.farc");
|
|
sound_work_read_farc("rom/sound/slide_long.farc");
|
|
module_table_handler_data_read();
|
|
customize_item_table_handler_data_read();
|
|
//sub_1403926C0();
|
|
//sub_1403928E0();
|
|
//sub_1403740D0();
|
|
//sub_140374360();
|
|
//sub_140390440();
|
|
//sub_1403906D0();
|
|
//sub_140375A90();
|
|
//sub_140375D20();
|
|
//sub_14038EF90();
|
|
//sub_14038F220();
|
|
//sub_140384580();
|
|
//sub_1403847B0();
|
|
//sub_1403882D0();
|
|
//sub_140388560();
|
|
hand_item_handler_data_read();
|
|
rob_sleeve_handler_data_read();
|
|
for (int32_t i = 0; i < ROB_CHARA_COUNT; i++)
|
|
rob_chara_age_age_array_reset(i);
|
|
state = 9;
|
|
break;
|
|
case 9:
|
|
if (!object_storage_load_obj_set_check_not_read(dbg_set_id)
|
|
//&& !bone_database_load()
|
|
&& !item_table_handler_array_load()
|
|
&& !sound_work_load_farc("rom/sound/se.farc")
|
|
&& !sound_work_load_farc("rom/sound/button.farc")
|
|
&& !sound_work_load_farc("rom/sound/se_cmn.farc")
|
|
&& !sound_work_load_farc("rom/sound/se_sel.farc")
|
|
&& !sound_work_load_farc("rom/sound/se_aime.farc")
|
|
&& !sound_work_load_farc("rom/sound/pvchange.farc")
|
|
&& !sound_work_load_farc("rom/sound/slide_se.farc")
|
|
&& !sound_work_load_farc("rom/sound/slide_long.farc")
|
|
&& !module_table_handler_data_load()
|
|
&& !customize_item_table_handler_data_load()
|
|
//&& !sub_1403933B0()
|
|
//&& !sub_1403747D0()
|
|
//&& !sub_140390AE0()
|
|
//&& !sub_140376130()
|
|
//&& !sub_14038F630()
|
|
//&& !sub_140385220()
|
|
//&& !sub_140388A50()
|
|
&& !hand_item_handler_data_load()
|
|
&& !rob_sleeve_handler_data_load()) {
|
|
module_data_handler_data_add_all_modules();
|
|
customize_item_data_handler_data_add_all_customize_items();
|
|
//sub_140392D10();
|
|
//sub_140226760()->sub_140226A80();
|
|
//sub_140374650();
|
|
//sub_140390960();
|
|
//sub_140375FB0();
|
|
//sub_14038F4B0();
|
|
//sub_140384C70();
|
|
//sub_140388830();
|
|
state = 10;
|
|
}
|
|
break;
|
|
case 10:
|
|
state = 11;
|
|
break;
|
|
case 11:
|
|
state = 12;
|
|
break;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
bool TaskDataInit::Dest() {
|
|
return true;
|
|
}
|
|
|
|
void TaskDataInit::Disp() {
|
|
|
|
}
|
|
|
|
bool task_data_init_add_task() {
|
|
return app::TaskWork::AddTask(&task_data_init, "DATA_INITIALIZE");
|
|
}
|
|
|
|
bool task_data_init_check_state() {
|
|
return task_data_init.state == 12;
|
|
}
|
|
|
|
bool task_data_init_del_task() {
|
|
return task_data_init.DelTask();
|
|
}
|