mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-02 08:11:58 -04:00
Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2b489e1a7d | |||
| e93a720d8f | |||
| 66f6942dbb | |||
| 631cb99208 | |||
| a53b363905 | |||
| fae9add351 |
+1
-20
@@ -398,8 +398,6 @@ if (DUSK_MOVIE_SUPPORT)
|
|||||||
list(APPEND GAME_COMPILE_DEFS MOVIE_SUPPORT=1)
|
list(APPEND GAME_COMPILE_DEFS MOVIE_SUPPORT=1)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
include(src/dusk/randomizer/randomizer.cmake)
|
|
||||||
|
|
||||||
set(DUSK_ENABLE_DISCORD_DEFAULT ON)
|
set(DUSK_ENABLE_DISCORD_DEFAULT ON)
|
||||||
if (DEFINED DUSK_ENABLE_DISCORD_RPC AND NOT DEFINED DUSK_ENABLE_DISCORD)
|
if (DEFINED DUSK_ENABLE_DISCORD_RPC AND NOT DEFINED DUSK_ENABLE_DISCORD)
|
||||||
set(DUSK_ENABLE_DISCORD_DEFAULT ${DUSK_ENABLE_DISCORD_RPC})
|
set(DUSK_ENABLE_DISCORD_DEFAULT ${DUSK_ENABLE_DISCORD_RPC})
|
||||||
@@ -481,24 +479,6 @@ if (ENABLE_ASAN)
|
|||||||
target_sources(dusklight PRIVATE src/dusk/asan_options.c)
|
target_sources(dusklight PRIVATE src/dusk/asan_options.c)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# Add embedded data to target
|
|
||||||
|
|
||||||
file(GLOB_RECURSE RANDOMIZER_DATA "src/dusk/randomizer/generator/data/*")
|
|
||||||
file(GLOB_RECURSE RANDOMIZER_ASSETS "src/dusk/randomizer/assets/*")
|
|
||||||
list(APPEND RANDOMIZER_DATA ${RANDOMIZER_ASSETS})
|
|
||||||
set(RANDO_ROOT_DATA_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
|
||||||
|
|
||||||
foreach (RANDOMIZER_FILE IN LISTS RANDOMIZER_DATA)
|
|
||||||
file(RELATIVE_PATH REL_PATH ${RANDO_ROOT_DATA_DIR} ${RANDOMIZER_FILE})
|
|
||||||
if(REL_PATH MATCHES "^src/dusk/randomizer/generator/data/tests")
|
|
||||||
message(STATUS "Skipping Embed: ${REL_PATH}")
|
|
||||||
continue()
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
message(STATUS "Embedding File: ${REL_PATH}")
|
|
||||||
b_embed(dusklight ${REL_PATH})
|
|
||||||
endforeach ()
|
|
||||||
|
|
||||||
target_compile_definitions(dusklight PRIVATE ${GAME_COMPILE_DEFS})
|
target_compile_definitions(dusklight PRIVATE ${GAME_COMPILE_DEFS})
|
||||||
target_include_directories(dusklight PRIVATE ${miniz_SOURCE_DIR})
|
target_include_directories(dusklight PRIVATE ${miniz_SOURCE_DIR})
|
||||||
target_link_libraries(dusklight PRIVATE aurora::main ${GAME_LIBS} ${JSYSTEM_LINK_LIBRARIES})
|
target_link_libraries(dusklight PRIVATE aurora::main ${GAME_LIBS} ${JSYSTEM_LINK_LIBRARIES})
|
||||||
@@ -631,6 +611,7 @@ if (DUSK_ENABLE_CODE_MODS AND CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR
|
|||||||
add_subdirectory(mods/ao_mod)
|
add_subdirectory(mods/ao_mod)
|
||||||
add_subdirectory(mods/shadow_mod)
|
add_subdirectory(mods/shadow_mod)
|
||||||
add_subdirectory(mods/window_demo)
|
add_subdirectory(mods/window_demo)
|
||||||
|
add_subdirectory(mods/randomizer)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
|
|||||||
-144
@@ -1458,8 +1458,6 @@ set(DUSK_FILES
|
|||||||
src/dusk/imgui/ImGuiHeapOverlay.cpp
|
src/dusk/imgui/ImGuiHeapOverlay.cpp
|
||||||
src/dusk/imgui/ImGuiMenuTools.cpp
|
src/dusk/imgui/ImGuiMenuTools.cpp
|
||||||
src/dusk/imgui/ImGuiMenuTools.hpp
|
src/dusk/imgui/ImGuiMenuTools.hpp
|
||||||
src/dusk/imgui/ImGuiMenuRandomizer.cpp
|
|
||||||
src/dusk/imgui/ImGuiMenuRandomizer.hpp
|
|
||||||
src/dusk/imgui/ImGuiProcessOverlay.cpp
|
src/dusk/imgui/ImGuiProcessOverlay.cpp
|
||||||
src/dusk/imgui/ImGuiSaveEditor.cpp
|
src/dusk/imgui/ImGuiSaveEditor.cpp
|
||||||
src/dusk/imgui/ImGuiStateShare.cpp
|
src/dusk/imgui/ImGuiStateShare.cpp
|
||||||
@@ -1522,8 +1520,6 @@ set(DUSK_FILES
|
|||||||
src/dusk/ui/component.hpp
|
src/dusk/ui/component.hpp
|
||||||
src/dusk/ui/controller_config.cpp
|
src/dusk/ui/controller_config.cpp
|
||||||
src/dusk/ui/controller_config.hpp
|
src/dusk/ui/controller_config.hpp
|
||||||
src/dusk/ui/cosmetics.hpp
|
|
||||||
src/dusk/ui/cosmetics.cpp
|
|
||||||
src/dusk/ui/controls.hpp
|
src/dusk/ui/controls.hpp
|
||||||
src/dusk/ui/document.cpp
|
src/dusk/ui/document.cpp
|
||||||
src/dusk/ui/document.hpp
|
src/dusk/ui/document.hpp
|
||||||
@@ -1582,149 +1578,9 @@ set(DUSK_FILES
|
|||||||
src/dusk/ui/warp.hpp
|
src/dusk/ui/warp.hpp
|
||||||
src/dusk/ui/window.cpp
|
src/dusk/ui/window.cpp
|
||||||
src/dusk/ui/window.hpp
|
src/dusk/ui/window.hpp
|
||||||
src/dusk/ui/rando_config.cpp
|
|
||||||
src/dusk/ui/rando_config.hpp
|
|
||||||
src/dusk/ui/rando_seed_generation.cpp
|
|
||||||
src/dusk/ui/rando_seed_generation.hpp
|
|
||||||
src/dusk/achievements.cpp
|
|
||||||
src/dusk/iso_validate.cpp
|
|
||||||
src/dusk/livesplit.cpp
|
|
||||||
src/dusk/OSContext.cpp
|
|
||||||
src/dusk/OSReport.cpp
|
|
||||||
src/dusk/OSThread.cpp
|
|
||||||
src/dusk/OSMutex.cpp
|
|
||||||
src/dusk/mods/log_buffer.cpp
|
|
||||||
src/dusk/mods/log_buffer.hpp
|
|
||||||
src/dusk/mods/manifest.cpp
|
|
||||||
src/dusk/mods/manifest.hpp
|
|
||||||
src/dusk/mods/loader/bundle_disk.cpp
|
|
||||||
src/dusk/mods/loader/bundle_zip.cpp
|
|
||||||
src/dusk/mods/loader/context.cpp
|
|
||||||
src/dusk/mods/loader/depgraph.cpp
|
|
||||||
src/dusk/mods/loader/depgraph.hpp
|
|
||||||
src/dusk/mods/loader/loader.cpp
|
|
||||||
src/dusk/mods/loader/loader.hpp
|
|
||||||
src/dusk/mods/loader/native_module.cpp
|
|
||||||
src/dusk/mods/loader/native_module.hpp
|
|
||||||
src/dusk/mods/svc/camera.cpp
|
|
||||||
src/dusk/mods/svc/config.cpp
|
|
||||||
src/dusk/mods/svc/config.hpp
|
|
||||||
src/dusk/mods/svc/game.cpp
|
|
||||||
src/dusk/mods/svc/gfx.cpp
|
|
||||||
src/dusk/mods/svc/hook.cpp
|
|
||||||
src/dusk/mods/svc/host.cpp
|
|
||||||
src/dusk/mods/svc/log.cpp
|
|
||||||
src/dusk/mods/svc/overlay.cpp
|
|
||||||
src/dusk/mods/svc/resource.cpp
|
|
||||||
src/dusk/mods/svc/texture.cpp
|
|
||||||
src/dusk/mods/svc/ui.cpp
|
|
||||||
src/dusk/mods/svc/ui.hpp
|
|
||||||
src/dusk/mods/svc/registry.cpp
|
|
||||||
src/dusk/mods/svc/registry.hpp
|
|
||||||
src/dusk/discord.cpp
|
|
||||||
src/dusk/discord.hpp
|
|
||||||
src/dusk/discord_presence.cpp
|
|
||||||
src/dusk/version.cpp
|
|
||||||
src/dusk/action_bindings.cpp
|
|
||||||
src/dusk/update_check.cpp
|
src/dusk/update_check.cpp
|
||||||
src/dusk/update_check.hpp
|
src/dusk/update_check.hpp
|
||||||
src/dusk/version.cpp
|
src/dusk/version.cpp
|
||||||
src/dusk/cosmetics/color_utils.hpp
|
|
||||||
src/dusk/cosmetics/color_utils.cpp
|
|
||||||
src/dusk/cosmetics/midna_hair_color.hpp
|
|
||||||
src/dusk/cosmetics/midna_hair_color.cpp
|
|
||||||
src/dusk/cosmetics/texture_utils.hpp
|
|
||||||
src/dusk/cosmetics/texture_utils.cpp
|
|
||||||
# Randomizer files
|
|
||||||
src/dusk/randomizer/game/custom_flow_ids.hpp
|
|
||||||
src/dusk/randomizer/game/flags.cpp
|
|
||||||
src/dusk/randomizer/game/flags.h
|
|
||||||
src/dusk/randomizer/game/messages.cpp
|
|
||||||
src/dusk/randomizer/game/messages.hpp
|
|
||||||
src/dusk/randomizer/game/stages.cpp
|
|
||||||
src/dusk/randomizer/game/stages.h
|
|
||||||
src/dusk/randomizer/game/tools.cpp
|
|
||||||
src/dusk/randomizer/game/tools.h
|
|
||||||
src/dusk/randomizer/game/verify_item_functions.cpp
|
|
||||||
src/dusk/randomizer/game/verify_item_functions.h
|
|
||||||
src/dusk/randomizer/game/randomizer_context.cpp
|
|
||||||
src/dusk/randomizer/game/randomizer_context.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/area.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/area.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/dungeon.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/dungeon.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/entrance.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/entrance.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/entrance_shuffle.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/entrance_shuffle.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/fill.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/fill.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/bits.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/bits.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/flatten.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/flatten.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/simplify_algebraic.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/flatten/simplify_algebraic.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/hint_types.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/hints.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/hints.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/item.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/item.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/item_pool.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/item_pool.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/location.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/location.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/plandomizer.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/plandomizer.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/requirement.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/requirement.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/search.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/search.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/spoiler_log.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/spoiler_log.hpp
|
|
||||||
src/dusk/randomizer/generator/logic/world.cpp
|
|
||||||
src/dusk/randomizer/generator/logic/world.hpp
|
|
||||||
src/dusk/randomizer/generator/randomizer.cpp
|
|
||||||
src/dusk/randomizer/generator/randomizer.hpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/config.cpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/config.hpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/packed_bits.hpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/seed.cpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/seed.hpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/settings.cpp
|
|
||||||
src/dusk/randomizer/generator/seedgen/settings.hpp
|
|
||||||
src/dusk/randomizer/generator/test/test.cpp
|
|
||||||
src/dusk/randomizer/generator/test/test.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/base64pp.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/color.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/color.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/crc32.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/common.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/common.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/container.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/endian.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/endian.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/exception.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/file.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/file.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/general.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/log.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/log.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/math.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/path.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/path.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/platform.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/platform.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/random.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/random.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/string.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/string.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/text.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/text.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/thread_local.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/time.cpp
|
|
||||||
src/dusk/randomizer/generator/utility/time.hpp
|
|
||||||
src/dusk/randomizer/generator/utility/yaml.hpp
|
|
||||||
src/helpers/batch.cpp
|
src/helpers/batch.cpp
|
||||||
src/helpers/endian.cpp
|
src/helpers/endian.cpp
|
||||||
src/helpers/offset_ptr.cpp
|
src/helpers/offset_ptr.cpp
|
||||||
|
|||||||
@@ -46,13 +46,8 @@ public:
|
|||||||
s32 getSeLoadStatus(u32 wave) { return getWaveLoadStatus(wave, 0); }
|
s32 getSeLoadStatus(u32 wave) { return getWaveLoadStatus(wave, 0); }
|
||||||
s32 getBgmLoadStatus(u32 wave) { return getWaveLoadStatus(wave, 1); }
|
s32 getBgmLoadStatus(u32 wave) { return getWaveLoadStatus(wave, 1); }
|
||||||
u8 getDemoSeWaveNum() { return loadedDemoWave; }
|
u8 getDemoSeWaveNum() { return loadedDemoWave; }
|
||||||
#if TARGET_PC
|
|
||||||
u8 getLoadedSeWave_1() { return loadedSeWave_1;}
|
|
||||||
u8 getLoadedSeWave_2() { return loadedSeWave_2;}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
// private:
|
||||||
private:
|
|
||||||
/* 0x00 */ JAISoundID BGM_ID;
|
/* 0x00 */ JAISoundID BGM_ID;
|
||||||
/* 0x04 */ int sceneNum;
|
/* 0x04 */ int sceneNum;
|
||||||
/* 0x08 */ int timer;
|
/* 0x08 */ int timer;
|
||||||
|
|||||||
@@ -3913,16 +3913,6 @@ public:
|
|||||||
|
|
||||||
static u32 getOtherHeapSize() { return 0xF0A60; }
|
static u32 getOtherHeapSize() { return 0xF0A60; }
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
u16 getEventId() { return mMsgFlow.getEventId(); }
|
|
||||||
|
|
||||||
bool checkSwimming() {return checkModeFlg(MODE_SWIMMING);}
|
|
||||||
|
|
||||||
BE<short>** getDomeLockChromaTable() {
|
|
||||||
return &field_0x0724->mAnmCRegDataR;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static DUSK_GAME_DATA daAlink_BckData const m_mainBckShield[20];
|
static DUSK_GAME_DATA daAlink_BckData const m_mainBckShield[20];
|
||||||
static DUSK_GAME_DATA daAlink_BckData const m_mainBckSword[5];
|
static DUSK_GAME_DATA daAlink_BckData const m_mainBckSword[5];
|
||||||
static DUSK_GAME_DATA daAlink_BckData const m_mainBckFishing[28];
|
static DUSK_GAME_DATA daAlink_BckData const m_mainBckFishing[28];
|
||||||
@@ -6401,8 +6391,7 @@ public:
|
|||||||
|
|
||||||
class daAlinkHIO_huLight_c0 {
|
class daAlinkHIO_huLight_c0 {
|
||||||
public:
|
public:
|
||||||
static DUSK_GAME_DATA daAlinkHIO_huLight_c1 IF_NOT_DUSK(const) m;
|
static DUSK_GAME_DATA daAlinkHIO_huLight_c1 const m;
|
||||||
IF_DUSK(static DUSK_GAME_DATA daAlinkHIO_huLight_c1 const original;)
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class daAlinkHIO_wlLight_c1 {
|
class daAlinkHIO_wlLight_c1 {
|
||||||
@@ -6476,8 +6465,7 @@ public:
|
|||||||
|
|
||||||
class daAlinkHIO_kandelaar_c0 {
|
class daAlinkHIO_kandelaar_c0 {
|
||||||
public:
|
public:
|
||||||
static DUSK_GAME_DATA daAlinkHIO_kandelaar_c1 IF_NOT_DUSK(const) m;
|
static DUSK_GAME_DATA daAlinkHIO_kandelaar_c1 const m;
|
||||||
IF_DUSK(static DUSK_GAME_DATA daAlinkHIO_kandelaar_c1 const original;)
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class daAlinkHIO_kandelaar_c : public daAlinkHIO_data_c {
|
class daAlinkHIO_kandelaar_c : public daAlinkHIO_data_c {
|
||||||
|
|||||||
@@ -120,10 +120,7 @@ public:
|
|||||||
BOOL chkAction(actionFunc action) { return action == mAction; }
|
BOOL chkAction(actionFunc action) { return action == mAction; }
|
||||||
|
|
||||||
static DUSK_GAME_DATA eventFunc mEvtSeqList[1];
|
static DUSK_GAME_DATA eventFunc mEvtSeqList[1];
|
||||||
#if TARGET_PC
|
|
||||||
// Keep track of last given bug for rando
|
|
||||||
static DUSK_GAME_DATA u8 mGivenInsectId;
|
|
||||||
#endif
|
|
||||||
private:
|
private:
|
||||||
/* 0xB48 */ Z2Creature mSound;
|
/* 0xB48 */ Z2Creature mSound;
|
||||||
/* 0xBD8 */ J3DModel* mpUmbrellaModel;
|
/* 0xBD8 */ J3DModel* mpUmbrellaModel;
|
||||||
|
|||||||
@@ -64,9 +64,6 @@ public:
|
|||||||
virtual int Delete();
|
virtual int Delete();
|
||||||
virtual BOOL checkSmallTbox() { return true; }
|
virtual BOOL checkSmallTbox() { return true; }
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
u8 getTboxNo() { return fopAcM_GetParamBit(this, 16, 8);}
|
|
||||||
#endif
|
|
||||||
u8 getModelType() { return fopAcM_GetParamBit(this, 8, 4); }
|
u8 getModelType() { return fopAcM_GetParamBit(this, 8, 4); }
|
||||||
u8 getItemNo() { return fopAcM_GetParamBit(this, 0, 8); }
|
u8 getItemNo() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||||
|
|
||||||
|
|||||||
@@ -114,10 +114,6 @@ public:
|
|||||||
|
|
||||||
bool checkBoomWindTgTimer() { return mBoomWindTgTimer == 0; }
|
bool checkBoomWindTgTimer() { return mBoomWindTgTimer == 0; }
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
void setRandomizerItem(bool setFoolishItemModel = false);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static DUSK_GAME_DATA procFunc mFuncPtr[];
|
static DUSK_GAME_DATA procFunc mFuncPtr[];
|
||||||
static DUSK_GAME_DATA const dCcD_SrcCyl m_cyl_src;
|
static DUSK_GAME_DATA const dCcD_SrcCyl m_cyl_src;
|
||||||
static DUSK_GAME_DATA s32 m_timer_max;
|
static DUSK_GAME_DATA s32 m_timer_max;
|
||||||
|
|||||||
@@ -7,9 +7,4 @@ class fopAc_ac_c;
|
|||||||
int CheckFieldItemCreateHeap(fopAc_ac_c* actor);
|
int CheckFieldItemCreateHeap(fopAc_ac_c* actor);
|
||||||
int CheckItemCreateHeap(fopAc_ac_c* i_this);
|
int CheckItemCreateHeap(fopAc_ac_c* i_this);
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// Used for foolish items in rando. Foolish item model id is saved to home.angle.z
|
|
||||||
#define M_ITEMNO_MODEL_ITEM_ID (IF_DUSK(randomizer_IsActive() && m_itemNo == dItemNo_Randomizer_FOOLISH_ITEM_e && home.angle.z != 0 ? home.angle.z :) m_itemNo)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* D_A_D_A_ITEMBASE_STATIC_H */
|
#endif /* D_A_D_A_ITEMBASE_STATIC_H */
|
||||||
|
|||||||
@@ -74,17 +74,7 @@ public:
|
|||||||
s16 getAngleY() const { return mAngleY; }
|
s16 getAngleY() const { return mAngleY; }
|
||||||
void setAngleY(s16 angle) { mAngleY = angle;}
|
void setAngleY(s16 angle) { mAngleY = angle;}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
BOOL isRandomized() const;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static DUSK_GAME_DATA ResourceData const mData[23];
|
static DUSK_GAME_DATA ResourceData const mData[23];
|
||||||
#if TARGET_PC
|
|
||||||
static DUSK_GAME_DATA ResourceData mRandoData[23];
|
|
||||||
#define M_SHOP_DATA (isRandomized() ? mRandoData : mData)
|
|
||||||
#else
|
|
||||||
#define M_SHOP_DATA mData
|
|
||||||
#endif
|
|
||||||
static DUSK_GAME_DATA f32 const m_cullfar_max;
|
static DUSK_GAME_DATA f32 const m_cullfar_max;
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
|
|||||||
@@ -474,9 +474,6 @@ public:
|
|||||||
s8 getNextStageRoomNo() { return mNextStage.getRoomNo(); }
|
s8 getNextStageRoomNo() { return mNextStage.getRoomNo(); }
|
||||||
s8 getNextStageLayer() { return mNextStage.getLayer(); }
|
s8 getNextStageLayer() { return mNextStage.getLayer(); }
|
||||||
BOOL isEnableNextStage() { return mNextStage.isEnable(); }
|
BOOL isEnableNextStage() { return mNextStage.isEnable(); }
|
||||||
#if TARGET_PC
|
|
||||||
void setEnableNextStage() { return mNextStage.setEnable(); }
|
|
||||||
#endif
|
|
||||||
void offEnableNextStage() { mNextStage.offEnable(); }
|
void offEnableNextStage() { mNextStage.offEnable(); }
|
||||||
s8 getNextStageWipe() { return mNextStage.getWipe(); }
|
s8 getNextStageWipe() { return mNextStage.getWipe(); }
|
||||||
u8 getNextStageWipeSpeed() { return mNextStage.getWipeSpeed(); }
|
u8 getNextStageWipeSpeed() { return mNextStage.getWipeSpeed(); }
|
||||||
@@ -1279,10 +1276,6 @@ int dComIfGd_setShadow(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3
|
|||||||
f32 param_5, f32 param_6, f32 param_7, cBgS_PolyInfo& param_8,
|
f32 param_5, f32 param_6, f32 param_7, cBgS_PolyInfo& param_8,
|
||||||
dKy_tevstr_c* param_9, s16 param_10, f32 param_11, TGXTexObj* param_12);
|
dKy_tevstr_c* param_9, s16 param_10, f32 param_11, TGXTexObj* param_12);
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
void dComIfGs_setupRandomizerSave();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline dSv_info_c* dComIfGs_getSaveInfo() {
|
inline dSv_info_c* dComIfGs_getSaveInfo() {
|
||||||
return &g_dComIfG_gameInfo.info;
|
return &g_dComIfG_gameInfo.info;
|
||||||
}
|
}
|
||||||
@@ -1343,13 +1336,9 @@ inline u8 dComIfGs_getSelectEquipShield() {
|
|||||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getSelectEquip(COLLECT_SHIELD);
|
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getSelectEquip(COLLECT_SHIELD);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
u8 dComIfGs_getCollectSmell();
|
|
||||||
#else
|
|
||||||
inline u8 dComIfGs_getCollectSmell() {
|
inline u8 dComIfGs_getCollectSmell() {
|
||||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getSelectEquip(COLLECT_SMELL);
|
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getSelectEquip(COLLECT_SMELL);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
inline void dComIfGs_setCollectSmell(u8 smell) {
|
inline void dComIfGs_setCollectSmell(u8 smell) {
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectEquip(COLLECT_SMELL, smell);
|
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectEquip(COLLECT_SMELL, smell);
|
||||||
@@ -1439,12 +1428,6 @@ inline BOOL dComIfGs_isDarkClearLV(int i_no) {
|
|||||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().isDarkClearLV(i_no);
|
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().isDarkClearLV(i_no);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
inline u8 dComIfGs_getDarkClearLV() {
|
|
||||||
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().getDarkClearLV();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline void dComIfGs_onTransformLV(int i_no) {
|
inline void dComIfGs_onTransformLV(int i_no) {
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().onTransformLV(i_no);
|
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusB().onTransformLV(i_no);
|
||||||
}
|
}
|
||||||
@@ -1522,12 +1505,6 @@ inline void dComIfGs_onRegionBit(int i_region) {
|
|||||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().onRegionBit(i_region);
|
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().onRegionBit(i_region);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
inline void dComIfGs_setRegionBit(u8 i_region) {
|
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().setRegionBit(i_region);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline void dComIfGs_setPlayerFieldLastStayInfo(const char* i_stage, cXyz& i_pos, s16 i_angle,
|
inline void dComIfGs_setPlayerFieldLastStayInfo(const char* i_stage, cXyz& i_pos, s16 i_angle,
|
||||||
s8 i_point, u8 i_region) {
|
s8 i_point, u8 i_region) {
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().set(i_stage, i_pos, i_angle,
|
g_dComIfG_gameInfo.info.getPlayer().getPlayerFieldLastStayInfo().set(i_stage, i_pos, i_angle,
|
||||||
@@ -1679,16 +1656,6 @@ inline void dComIfGs_setPachinkoNum(u8 i_num) {
|
|||||||
g_dComIfG_gameInfo.info.getPlayer().getItemRecord().setPachinkoNum(i_num);
|
g_dComIfG_gameInfo.info.getPlayer().getItemRecord().setPachinkoNum(i_num);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
inline u8 dComIfGs_getAncientDocumentNum() {
|
|
||||||
return g_dComIfG_gameInfo.info.getPlayer().getItemRecord().getAncientDocumentNum();
|
|
||||||
}
|
|
||||||
|
|
||||||
inline void dComIfGs_setAncientDocumentNum(u8 i_num) {
|
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getItemRecord().setAncientDocumentNum(i_num);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline u8 dComIfGs_getPachinkoMax() {
|
inline u8 dComIfGs_getPachinkoMax() {
|
||||||
return 50;
|
return 50;
|
||||||
}
|
}
|
||||||
@@ -1861,16 +1828,7 @@ inline u8 dComIfGs_getGetNumber(int i_no) {
|
|||||||
inline void dComIfGs_setGetNumber(int i_no, u8 i_value) {
|
inline void dComIfGs_setGetNumber(int i_no, u8 i_value) {
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getLetterInfo().setGetNumber(i_no, i_value);
|
g_dComIfG_gameInfo.info.getPlayer().getLetterInfo().setGetNumber(i_no, i_value);
|
||||||
}
|
}
|
||||||
#if TARGET_PC
|
|
||||||
// For rando
|
|
||||||
inline void dComIfGs_setAllLetterGet() {
|
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getLetterInfo().setAllLetterGet();
|
|
||||||
}
|
|
||||||
|
|
||||||
inline void dComIfGs_setAllLetterRead() {
|
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getLetterInfo().setAllLetterRead();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
inline void dComIfGs_addFishNum(u8 param_0) {
|
inline void dComIfGs_addFishNum(u8 param_0) {
|
||||||
g_dComIfG_gameInfo.info.getPlayer().getFishingInfo().addFishCount(param_0);
|
g_dComIfG_gameInfo.info.getPlayer().getFishingInfo().addFishCount(param_0);
|
||||||
}
|
}
|
||||||
@@ -1986,16 +1944,6 @@ inline u8 dComIfGs_getPalLanguage() {
|
|||||||
return g_dComIfG_gameInfo.info.getPlayer().getConfig().getPalLanguage();
|
return g_dComIfG_gameInfo.info.getPlayer().getConfig().getPalLanguage();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// Kinda hacky, but will do for now
|
|
||||||
inline void dComIfGs_onRegionFlag(int i_stageNo, int i_no) {
|
|
||||||
auto regionFlags = reinterpret_cast<u8*>(&g_dComIfG_gameInfo.info.getSavedata().getSave(i_stageNo).getBit());
|
|
||||||
const int offset = i_no / 8;
|
|
||||||
const int shift = i_no % 8;
|
|
||||||
regionFlags[offset] |= (0x80 >> shift);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline BOOL dComIfGs_isSaveTbox(int i_stageNo, int i_no) {
|
inline BOOL dComIfGs_isSaveTbox(int i_stageNo, int i_no) {
|
||||||
return g_dComIfG_gameInfo.info.getSavedata().getSave(i_stageNo).getBit().isTbox(i_no);
|
return g_dComIfG_gameInfo.info.getSavedata().getSave(i_stageNo).getBit().isTbox(i_no);
|
||||||
}
|
}
|
||||||
@@ -2080,10 +2028,6 @@ inline void dComIfGs_setKeyNum(u8 i_keyNum) {
|
|||||||
g_dComIfG_gameInfo.info.getMemory().getBit().setKeyNum(i_keyNum);
|
g_dComIfG_gameInfo.info.getMemory().getBit().setKeyNum(i_keyNum);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
u8 dComIfGs_getKeyNum(int i_stageNo);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline void dComIfGs_onDungeonItemMap() {
|
inline void dComIfGs_onDungeonItemMap() {
|
||||||
g_dComIfG_gameInfo.info.getMemory().getBit().onDungeonItemMap();
|
g_dComIfG_gameInfo.info.getMemory().getBit().onDungeonItemMap();
|
||||||
}
|
}
|
||||||
@@ -2516,12 +2460,6 @@ inline s8 dComIfGp_getStartStageRoomNo() {
|
|||||||
return g_dComIfG_gameInfo.play.getStartStageRoomNo();
|
return g_dComIfG_gameInfo.play.getStartStageRoomNo();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
inline s8 dComIfGp_getLayerNo() {
|
|
||||||
return g_dComIfG_gameInfo.play.getLayerNo(0);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline s8 dComIfGp_getStartStageLayer() {
|
inline s8 dComIfGp_getStartStageLayer() {
|
||||||
return g_dComIfG_gameInfo.play.getStartStageLayer();
|
return g_dComIfG_gameInfo.play.getStartStageLayer();
|
||||||
}
|
}
|
||||||
@@ -2566,12 +2504,6 @@ inline void dComIfGp_offEnableNextStage() {
|
|||||||
g_dComIfG_gameInfo.play.offEnableNextStage();
|
g_dComIfG_gameInfo.play.offEnableNextStage();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
inline void dComIfGp_setEnableNextStage() {
|
|
||||||
g_dComIfG_gameInfo.play.setEnableNextStage();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
inline s8 dComIfGp_getNextStageWipe() {
|
inline s8 dComIfGp_getNextStageWipe() {
|
||||||
return g_dComIfG_gameInfo.play.getNextStageWipe();
|
return g_dComIfG_gameInfo.play.getNextStageWipe();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -203,9 +203,6 @@ public:
|
|||||||
DATASELPROC_DATA_SELECT_MOVE_ANIME,
|
DATASELPROC_DATA_SELECT_MOVE_ANIME,
|
||||||
DATASELPROC_SELECT_DATA_OPEN_MOVE,
|
DATASELPROC_SELECT_DATA_OPEN_MOVE,
|
||||||
DATASELPROC_SELECT_DATA_NAME_MOVE,
|
DATASELPROC_SELECT_DATA_NAME_MOVE,
|
||||||
#if TARGET_PC
|
|
||||||
DATASELPROC_SELECT_DATA_PLAY_MOVE, // Select between vanilla or randomizer play
|
|
||||||
#endif
|
|
||||||
DATASELPROC_SELECT_DATA_OPENERASE_MOVE,
|
DATASELPROC_SELECT_DATA_OPENERASE_MOVE,
|
||||||
DATASELPROC_MENU_SELECT,
|
DATASELPROC_MENU_SELECT,
|
||||||
DATASELPROC_MENU_SELECT_MOVE_ANM,
|
DATASELPROC_MENU_SELECT_MOVE_ANM,
|
||||||
@@ -334,9 +331,6 @@ public:
|
|||||||
void makeRecInfo(u8);
|
void makeRecInfo(u8);
|
||||||
void selectDataOpenMove();
|
void selectDataOpenMove();
|
||||||
void selectDataNameMove();
|
void selectDataNameMove();
|
||||||
#if TARGET_PC
|
|
||||||
void selectDataPlayTypeMove();
|
|
||||||
#endif
|
|
||||||
void selectDataOpenEraseMove();
|
void selectDataOpenEraseMove();
|
||||||
void menuSelect();
|
void menuSelect();
|
||||||
void menuSelectStart();
|
void menuSelectStart();
|
||||||
@@ -738,12 +732,7 @@ public:
|
|||||||
/* 0x2378 */ J2DPicture* mpFadePict;
|
/* 0x2378 */ J2DPicture* mpFadePict;
|
||||||
#endif
|
#endif
|
||||||
#ifdef TARGET_PC
|
#ifdef TARGET_PC
|
||||||
struct mDusk {
|
|
||||||
dDlst_FileSelFade_c mFadeDlst;
|
dDlst_FileSelFade_c mFadeDlst;
|
||||||
bool mStartNameAnm;
|
|
||||||
bool mBackToFileSelect;
|
|
||||||
int mPendingRmlCloseFrames{0};
|
|
||||||
} mDusk;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if PLATFORM_WII || PLATFORM_SHIELD
|
#if PLATFORM_WII || PLATFORM_SHIELD
|
||||||
@@ -754,7 +743,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
#ifdef TARGET_PC
|
#ifdef TARGET_PC
|
||||||
STATIC_ASSERT(sizeof(dFile_select_c) == 0x237C + sizeof(dFile_select_c::mDusk));
|
STATIC_ASSERT(sizeof(dFile_select_c) == 0x237C + sizeof(dDlst_FileSelFade_c));
|
||||||
#else
|
#else
|
||||||
STATIC_ASSERT(sizeof(dFile_select_c) == 0x237C);
|
STATIC_ASSERT(sizeof(dFile_select_c) == 0x237C);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -32,11 +32,6 @@ void item_func_ARROW_20();
|
|||||||
void item_func_ARROW_30();
|
void item_func_ARROW_30();
|
||||||
void item_func_ARROW_1();
|
void item_func_ARROW_1();
|
||||||
void item_func_PACHINKO_SHOT();
|
void item_func_PACHINKO_SHOT();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_FOOLISH_ITEM();
|
|
||||||
void item_func_ORDON_PORTAL();
|
|
||||||
void item_func_SOUTH_FARON_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_WATER_BOMB_5();
|
void item_func_WATER_BOMB_5();
|
||||||
void item_func_WATER_BOMB_10();
|
void item_func_WATER_BOMB_10();
|
||||||
void item_func_WATER_BOMB_20();
|
void item_func_WATER_BOMB_20();
|
||||||
@@ -70,12 +65,6 @@ void item_func_DUNGEON_EXIT_2();
|
|||||||
void item_func_WALLET_LV1();
|
void item_func_WALLET_LV1();
|
||||||
void item_func_WALLET_LV2();
|
void item_func_WALLET_LV2();
|
||||||
void item_func_WALLET_LV3();
|
void item_func_WALLET_LV3();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_UPPER_ZORAS_RIVER_PORTAL();
|
|
||||||
void item_func_CASTLE_TOWN_PORTAL();
|
|
||||||
void item_func_GERUDO_DESERT_PORTAL();
|
|
||||||
void item_func_NORTH_FARON_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_ZORAS_JEWEL();
|
void item_func_ZORAS_JEWEL();
|
||||||
void item_func_HAWK_EYE();
|
void item_func_HAWK_EYE();
|
||||||
void item_func_WOOD_STICK();
|
void item_func_WOOD_STICK();
|
||||||
@@ -92,23 +81,13 @@ void item_func_LIGHT_SWORD();
|
|||||||
void item_func_FISHING_ROD_1();
|
void item_func_FISHING_ROD_1();
|
||||||
void item_func_PACHINKO();
|
void item_func_PACHINKO();
|
||||||
void item_func_COPY_ROD_2();
|
void item_func_COPY_ROD_2();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_KAKARIKO_GORGE_PORTAL();
|
|
||||||
void item_func_KAKARIKO_VILLAGE_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_BOMB_BAG_LV2();
|
void item_func_BOMB_BAG_LV2();
|
||||||
void item_func_BOMB_BAG_LV1();
|
void item_func_BOMB_BAG_LV1();
|
||||||
void item_func_BOMB_IN_BAG();
|
void item_func_BOMB_IN_BAG();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_DEATH_MOUNTAIN_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_LIGHT_ARROW();
|
void item_func_LIGHT_ARROW();
|
||||||
void item_func_ARROW_LV1();
|
void item_func_ARROW_LV1();
|
||||||
void item_func_ARROW_LV2();
|
void item_func_ARROW_LV2();
|
||||||
void item_func_ARROW_LV3();
|
void item_func_ARROW_LV3();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_ZORAS_DOMAIN_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_LURE_ROD();
|
void item_func_LURE_ROD();
|
||||||
void item_func_BOMB_ARROW();
|
void item_func_BOMB_ARROW();
|
||||||
void item_func_HAWK_ARROW();
|
void item_func_HAWK_ARROW();
|
||||||
@@ -154,33 +133,8 @@ void item_func_BILL();
|
|||||||
void item_func_WOOD_STATUE();
|
void item_func_WOOD_STATUE();
|
||||||
void item_func_IRIAS_PENDANT();
|
void item_func_IRIAS_PENDANT();
|
||||||
void item_func_HORSE_FLUTE();
|
void item_func_HORSE_FLUTE();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_FOREST_SMALL_KEY();
|
|
||||||
void item_func_MINES_SMALL_KEY();
|
|
||||||
void item_func_LAKEBED_SMALL_KEY();
|
|
||||||
void item_func_ARBITERS_SMALL_KEY();
|
|
||||||
void item_func_SNOWPEAK_SMALL_KEY();
|
|
||||||
void item_func_TEMPLE_OF_TIME_SMALL_KEY();
|
|
||||||
void item_func_CITY_SMALL_KEY();
|
|
||||||
void item_func_PALACE_SMALL_KEY();
|
|
||||||
void item_func_HYRULE_SMALL_KEY();
|
|
||||||
void item_func_CAMP_SMALL_KEY();
|
|
||||||
void item_func_LAKE_HYLIA_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_RAFRELS_MEMO();
|
void item_func_RAFRELS_MEMO();
|
||||||
void item_func_ASHS_SCRIBBLING();
|
void item_func_ASHS_SCRIBBLING();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_FOREST_BOSS_KEY();
|
|
||||||
void item_func_LAKEBED_BOSS_KEY();
|
|
||||||
void item_func_ARBITERS_BOSS_KEY();
|
|
||||||
void item_func_TEMPLE_OF_TIME_BOSS_KEY();
|
|
||||||
void item_func_CITY_BOSS_KEY();
|
|
||||||
void item_func_PALACE_BOSS_KEY();
|
|
||||||
void item_func_HYRULE_BOSS_KEY();
|
|
||||||
void item_func_FOREST_COMPASS();
|
|
||||||
void item_func_MINES_COMPASS();
|
|
||||||
void item_func_LAKEBED_COMPASS();
|
|
||||||
#endif
|
|
||||||
void item_func_CHUCHU_YELLOW2();
|
void item_func_CHUCHU_YELLOW2();
|
||||||
void item_func_OIL_BOTTLE3();
|
void item_func_OIL_BOTTLE3();
|
||||||
void item_func_SHOP_BEE_CHILD();
|
void item_func_SHOP_BEE_CHILD();
|
||||||
@@ -193,34 +147,12 @@ void item_func_FILLED_CONTAINER();
|
|||||||
void item_func_MIRROR_PIECE_2();
|
void item_func_MIRROR_PIECE_2();
|
||||||
void item_func_MIRROR_PIECE_3();
|
void item_func_MIRROR_PIECE_3();
|
||||||
void item_func_MIRROR_PIECE_4();
|
void item_func_MIRROR_PIECE_4();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_ARBITERS_COMPASS();
|
|
||||||
void item_func_SNOWPEAK_COMPASS();
|
|
||||||
void item_func_TEMPLE_OF_TIME_COMPASS();
|
|
||||||
void item_func_CITY_COMPASS();
|
|
||||||
void item_func_PALACE_COMPASS();
|
|
||||||
void item_func_HYRULE_COMPASS();
|
|
||||||
void item_func_MIRROR_CHAMBER_PORTAL();
|
|
||||||
void item_func_SNOWPEAK_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_SMELL_YELIA_POUCH();
|
void item_func_SMELL_YELIA_POUCH();
|
||||||
void item_func_SMELL_PUMPKIN();
|
void item_func_SMELL_PUMPKIN();
|
||||||
void item_func_SMELL_POH();
|
void item_func_SMELL_POH();
|
||||||
void item_func_SMELL_FISH();
|
void item_func_SMELL_FISH();
|
||||||
void item_func_SMELL_CHILDREN();
|
void item_func_SMELL_CHILDREN();
|
||||||
void item_func_SMELL_MEDICINE();
|
void item_func_SMELL_MEDICINE();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_FOREST_MAP();
|
|
||||||
void item_func_MINES_MAP();
|
|
||||||
void item_func_LAKEBED_MAP();
|
|
||||||
void item_func_ARBITERS_MAP();
|
|
||||||
void item_func_SNOWPEAK_MAP();
|
|
||||||
void item_func_TEMPLE_OF_TIME_MAP();
|
|
||||||
void item_func_CITY_MAP();
|
|
||||||
void item_func_PALACE_MAP();
|
|
||||||
void item_func_HYRULE_MAP();
|
|
||||||
void item_func_SACRED_GROVE_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_M_BEETLE();
|
void item_func_M_BEETLE();
|
||||||
void item_func_F_BEETLE();
|
void item_func_F_BEETLE();
|
||||||
void item_func_M_BUTTERFLY();
|
void item_func_M_BUTTERFLY();
|
||||||
@@ -245,23 +177,7 @@ void item_func_M_ANT();
|
|||||||
void item_func_F_ANT();
|
void item_func_F_ANT();
|
||||||
void item_func_M_MAYFLY();
|
void item_func_M_MAYFLY();
|
||||||
void item_func_F_MAYFLY();
|
void item_func_F_MAYFLY();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_FUSED_SHADOW_1();
|
|
||||||
void item_func_FUSED_SHADOW_2();
|
|
||||||
void item_func_FUSED_SHADOW_3();
|
|
||||||
void item_func_MIRROR_PIECE_1();
|
|
||||||
#endif
|
|
||||||
void item_func_POU_SPIRIT();
|
void item_func_POU_SPIRIT();
|
||||||
#if TARGET_PC
|
|
||||||
void item_func_ENDING_BLOW();
|
|
||||||
void item_func_SHIELD_ATTACK();
|
|
||||||
void item_func_BACK_SLICE();
|
|
||||||
void item_func_HELM_SPLITTER();
|
|
||||||
void item_func_MORTAL_DRAW();
|
|
||||||
void item_func_JUMP_STRIKE();
|
|
||||||
void item_func_GREAT_SPIN();
|
|
||||||
void item_func_ELDIN_BRIDGE_PORTAL();
|
|
||||||
#endif
|
|
||||||
void item_func_ANCIENT_DOCUMENT();
|
void item_func_ANCIENT_DOCUMENT();
|
||||||
void item_func_AIR_LETTER();
|
void item_func_AIR_LETTER();
|
||||||
void item_func_ANCIENT_DOCUMENT2();
|
void item_func_ANCIENT_DOCUMENT2();
|
||||||
@@ -305,10 +221,6 @@ int item_getcheck_func_ARROW_20();
|
|||||||
int item_getcheck_func_ARROW_30();
|
int item_getcheck_func_ARROW_30();
|
||||||
int item_getcheck_func_ARROW_1();
|
int item_getcheck_func_ARROW_1();
|
||||||
int item_getcheck_func_PACHINKO_SHOT();
|
int item_getcheck_func_PACHINKO_SHOT();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_ORDON_PORTAL();
|
|
||||||
int item_getcheck_func_SOUTH_FARON_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_WATER_BOMB_5();
|
int item_getcheck_func_WATER_BOMB_5();
|
||||||
int item_getcheck_func_WATER_BOMB_10();
|
int item_getcheck_func_WATER_BOMB_10();
|
||||||
int item_getcheck_func_WATER_BOMB_20();
|
int item_getcheck_func_WATER_BOMB_20();
|
||||||
@@ -342,12 +254,6 @@ int item_getcheck_func_DUNGEON_EXIT_2();
|
|||||||
int item_getcheck_func_WALLET_LV1();
|
int item_getcheck_func_WALLET_LV1();
|
||||||
int item_getcheck_func_WALLET_LV2();
|
int item_getcheck_func_WALLET_LV2();
|
||||||
int item_getcheck_func_WALLET_LV3();
|
int item_getcheck_func_WALLET_LV3();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_UPPER_ZORAS_RIVER_PORTAL();
|
|
||||||
int item_getcheck_func_CASTLE_TOWN_PORTAL();
|
|
||||||
int item_getcheck_func_GERUDO_DESERT_PORTAL();
|
|
||||||
int item_getcheck_func_NORTH_FARON_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_ZORAS_JEWEL();
|
int item_getcheck_func_ZORAS_JEWEL();
|
||||||
int item_getcheck_func_HAWK_EYE();
|
int item_getcheck_func_HAWK_EYE();
|
||||||
int item_getcheck_func_WOOD_STICK();
|
int item_getcheck_func_WOOD_STICK();
|
||||||
@@ -364,23 +270,13 @@ int item_getcheck_func_LIGHT_SWORD();
|
|||||||
int item_getcheck_func_FISHING_ROD_1();
|
int item_getcheck_func_FISHING_ROD_1();
|
||||||
int item_getcheck_func_PACHINKO();
|
int item_getcheck_func_PACHINKO();
|
||||||
int item_getcheck_func_COPY_ROD_2();
|
int item_getcheck_func_COPY_ROD_2();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_KAKARIKO_GORGE_PORTAL();
|
|
||||||
int item_getcheck_func_KAKARIKO_VILLAGE_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_BOMB_BAG_LV2();
|
int item_getcheck_func_BOMB_BAG_LV2();
|
||||||
int item_getcheck_func_BOMB_BAG_LV1();
|
int item_getcheck_func_BOMB_BAG_LV1();
|
||||||
int item_getcheck_func_BOMB_IN_BAG();
|
int item_getcheck_func_BOMB_IN_BAG();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_DEATH_MOUNTAIN_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_LIGHT_ARROW();
|
int item_getcheck_func_LIGHT_ARROW();
|
||||||
int item_getcheck_func_ARROW_LV1();
|
int item_getcheck_func_ARROW_LV1();
|
||||||
int item_getcheck_func_ARROW_LV2();
|
int item_getcheck_func_ARROW_LV2();
|
||||||
int item_getcheck_func_ARROW_LV3();
|
int item_getcheck_func_ARROW_LV3();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_ZORAS_DOMAIN_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_LURE_ROD();
|
int item_getcheck_func_LURE_ROD();
|
||||||
int item_getcheck_func_BOMB_ARROW();
|
int item_getcheck_func_BOMB_ARROW();
|
||||||
int item_getcheck_func_HAWK_ARROW();
|
int item_getcheck_func_HAWK_ARROW();
|
||||||
@@ -426,10 +322,6 @@ int item_getcheck_func_BILL();
|
|||||||
int item_getcheck_func_WOOD_STATUE();
|
int item_getcheck_func_WOOD_STATUE();
|
||||||
int item_getcheck_func_IRIAS_PENDANT();
|
int item_getcheck_func_IRIAS_PENDANT();
|
||||||
int item_getcheck_func_HORSE_FLUTE();
|
int item_getcheck_func_HORSE_FLUTE();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_CAMP_SMALL_KEY();
|
|
||||||
int item_getcheck_func_LAKE_HYLIA_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_RAFRELS_MEMO();
|
int item_getcheck_func_RAFRELS_MEMO();
|
||||||
int item_getcheck_func_ASHS_SCRIBBLING();
|
int item_getcheck_func_ASHS_SCRIBBLING();
|
||||||
int item_getcheck_func_CHUCHU_YELLOW2();
|
int item_getcheck_func_CHUCHU_YELLOW2();
|
||||||
@@ -444,19 +336,12 @@ int item_getcheck_func_FILLED_CONTAINER();
|
|||||||
int item_getcheck_func_MIRROR_PIECE_2();
|
int item_getcheck_func_MIRROR_PIECE_2();
|
||||||
int item_getcheck_func_MIRROR_PIECE_3();
|
int item_getcheck_func_MIRROR_PIECE_3();
|
||||||
int item_getcheck_func_MIRROR_PIECE_4();
|
int item_getcheck_func_MIRROR_PIECE_4();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_MIRROR_CHAMBER_PORTAL();
|
|
||||||
int item_getcheck_func_SNOWPEAK_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_SMELL_YELIA_POUCH();
|
int item_getcheck_func_SMELL_YELIA_POUCH();
|
||||||
int item_getcheck_func_SMELL_PUMPKIN();
|
int item_getcheck_func_SMELL_PUMPKIN();
|
||||||
int item_getcheck_func_SMELL_POH();
|
int item_getcheck_func_SMELL_POH();
|
||||||
int item_getcheck_func_SMELL_FISH();
|
int item_getcheck_func_SMELL_FISH();
|
||||||
int item_getcheck_func_SMELL_CHILDREN();
|
int item_getcheck_func_SMELL_CHILDREN();
|
||||||
int item_getcheck_func_SMELL_MEDICINE();
|
int item_getcheck_func_SMELL_MEDICINE();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_SACRED_GROVE_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_M_BEETLE();
|
int item_getcheck_func_M_BEETLE();
|
||||||
int item_getcheck_func_F_BEETLE();
|
int item_getcheck_func_F_BEETLE();
|
||||||
int item_getcheck_func_M_BUTTERFLY();
|
int item_getcheck_func_M_BUTTERFLY();
|
||||||
@@ -481,23 +366,7 @@ int item_getcheck_func_M_ANT();
|
|||||||
int item_getcheck_func_F_ANT();
|
int item_getcheck_func_F_ANT();
|
||||||
int item_getcheck_func_M_MAYFLY();
|
int item_getcheck_func_M_MAYFLY();
|
||||||
int item_getcheck_func_F_MAYFLY();
|
int item_getcheck_func_F_MAYFLY();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_FUSED_SHADOW_1();
|
|
||||||
int item_getcheck_func_FUSED_SHADOW_2();
|
|
||||||
int item_getcheck_func_FUSED_SHADOW_3();
|
|
||||||
int item_getcheck_func_MIRROR_PIECE_1();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_POU_SPIRIT();
|
int item_getcheck_func_POU_SPIRIT();
|
||||||
#if TARGET_PC
|
|
||||||
int item_getcheck_func_ENDING_BLOW();
|
|
||||||
int item_getcheck_func_SHIELD_ATTACK();
|
|
||||||
int item_getcheck_func_BACK_SLICE();
|
|
||||||
int item_getcheck_func_HELM_SPLITTER();
|
|
||||||
int item_getcheck_func_MORTAL_DRAW();
|
|
||||||
int item_getcheck_func_JUMP_STRIKE();
|
|
||||||
int item_getcheck_func_GREAT_SPIN();
|
|
||||||
int item_getcheck_func_ELDIN_BRIDGE_PORTAL();
|
|
||||||
#endif
|
|
||||||
int item_getcheck_func_ANCIENT_DOCUMENT();
|
int item_getcheck_func_ANCIENT_DOCUMENT();
|
||||||
int item_getcheck_func_AIR_LETTER();
|
int item_getcheck_func_AIR_LETTER();
|
||||||
int item_getcheck_func_ANCIENT_DOCUMENT2();
|
int item_getcheck_func_ANCIENT_DOCUMENT2();
|
||||||
@@ -526,9 +395,6 @@ int checkItemGet(u8, int);
|
|||||||
BOOL isHeart(u8 item_no);
|
BOOL isHeart(u8 item_no);
|
||||||
int isBomb(u8);
|
int isBomb(u8);
|
||||||
int isArrow(u8);
|
int isArrow(u8);
|
||||||
#if TARGET_PC
|
|
||||||
int isRupee(u8);
|
|
||||||
#endif
|
|
||||||
int addBombCount(u8, u8);
|
int addBombCount(u8, u8);
|
||||||
BOOL isBottleItem(u8 item_no);
|
BOOL isBottleItem(u8 item_no);
|
||||||
u8 check_itemno(int i_itemNo);
|
u8 check_itemno(int i_itemNo);
|
||||||
|
|||||||
@@ -35,65 +35,7 @@ struct dItem_fieldItemResource {
|
|||||||
/* 0xC */ u16 mHeapSize;
|
/* 0xC */ u16 mHeapSize;
|
||||||
}; // Size: 0x10
|
}; // Size: 0x10
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// Delcared helper functions since we can't include dComIfg_isRandomizer here
|
|
||||||
dItem_itemResource* dItem_data_getItemResource();
|
|
||||||
dItem_fieldItemResource* dItem_data_getFieldItemResource();
|
|
||||||
dItem_itemInfo* dItem_data_getItemInfo();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct dItem_data {
|
struct dItem_data {
|
||||||
#if TARGET_PC
|
|
||||||
static const char* getArcName(u8 index) { return dItem_data_getItemResource()[index].mArcName; }
|
|
||||||
|
|
||||||
static s16 getBtpName(u8 index) { return dItem_data_getItemResource()[index].mBtpName; }
|
|
||||||
|
|
||||||
static s16 getBrkName(u8 index) { return dItem_data_getItemResource()[index].mBrkName; }
|
|
||||||
|
|
||||||
static s16 getBxaName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static s16 getBckName(u8 index) { return dItem_data_getItemResource()[index].mBckName; }
|
|
||||||
|
|
||||||
static s16 getBpkName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static s16 getBtkName(u8 index) { return dItem_data_getItemResource()[index].mBtkName; }
|
|
||||||
|
|
||||||
static s16 getBmdName(u8 index) { return dItem_data_getItemResource()[index].mBmdName; }
|
|
||||||
|
|
||||||
static s8 getTevFrm(u8 index) { return dItem_data_getItemResource()[index].mTevFrm; }
|
|
||||||
|
|
||||||
static s8 getBtpFrm(u8 index) { return dItem_data_getItemResource()[index].mBtpFrm; }
|
|
||||||
|
|
||||||
static s16 getTexture(u8 index) { return dItem_data_getItemResource()[index].mTexture; }
|
|
||||||
|
|
||||||
static u8 getTexScale (u8 index) { return dItem_data_getItemResource()[index].mTexScale; }
|
|
||||||
|
|
||||||
static const char* getFieldArc(u8 index) { return dItem_data_getFieldItemResource()[index].mFieldArc; }
|
|
||||||
|
|
||||||
static s16 getItemBmdName(u8 index) { return dItem_data_getFieldItemResource()[index].mItemBmdName; }
|
|
||||||
|
|
||||||
static s16 getItemBtkName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static s16 getItemBpkName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static s16 getItemBckName(u8 index) { return dItem_data_getFieldItemResource()[index].mItemBckName; }
|
|
||||||
|
|
||||||
static s16 getItemBxaName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static s16 getItemBrkName(u8 index) { return dItem_data_getFieldItemResource()[index].mItemBrkName; }
|
|
||||||
|
|
||||||
static s16 getItemBtpName(u8 index) { return -1; }
|
|
||||||
|
|
||||||
static BOOL chkFlag(u8 index, int flag) { return dItem_data_getItemInfo()[index].mFlag & flag; }
|
|
||||||
|
|
||||||
static u8 getShadowSize(u8 index) { return dItem_data_getItemInfo()[index].mShadowSize; }
|
|
||||||
|
|
||||||
static const u8 getH(u8 index) { return dItem_data_getItemInfo()[index].mH; }
|
|
||||||
|
|
||||||
static const u8 getR(u8 index) { return dItem_data_getItemInfo()[index].mR; }
|
|
||||||
|
|
||||||
static u16 getFieldHeapSize(u8 index) { return dItem_data_getFieldItemResource()[index].mHeapSize; }
|
|
||||||
#else
|
|
||||||
static const char* getArcName(u8 index) { return item_resource[index].mArcName; }
|
static const char* getArcName(u8 index) { return item_resource[index].mArcName; }
|
||||||
|
|
||||||
static s16 getBtpName(u8 index) { return item_resource[index].mBtpName; }
|
static s16 getBtpName(u8 index) { return item_resource[index].mBtpName; }
|
||||||
@@ -143,16 +85,10 @@ struct dItem_data {
|
|||||||
static const u8 getR(u8 index) { return item_info[index].mR; }
|
static const u8 getR(u8 index) { return item_info[index].mR; }
|
||||||
|
|
||||||
static u16 getFieldHeapSize(u8 index) { return field_item_res[index].mHeapSize; }
|
static u16 getFieldHeapSize(u8 index) { return field_item_res[index].mHeapSize; }
|
||||||
#endif
|
|
||||||
|
|
||||||
static DUSK_GAME_DATA dItem_itemResource item_resource[255];
|
static DUSK_GAME_DATA dItem_itemResource item_resource[255];
|
||||||
static DUSK_GAME_DATA dItem_fieldItemResource field_item_res[255];
|
static DUSK_GAME_DATA dItem_fieldItemResource field_item_res[255];
|
||||||
static DUSK_GAME_DATA dItem_itemInfo item_info[255];
|
static DUSK_GAME_DATA dItem_itemInfo item_info[255];
|
||||||
#if TARGET_PC
|
|
||||||
static DUSK_GAME_DATA dItem_itemResource item_resource_randomizer[255];
|
|
||||||
static DUSK_GAME_DATA dItem_fieldItemResource field_item_res_randomizer[255];
|
|
||||||
static DUSK_GAME_DATA dItem_itemInfo item_info_randomizer[255];
|
|
||||||
#endif
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
@@ -414,267 +350,4 @@ enum {
|
|||||||
/* 0xFF */ dItemNo_NONE_e,
|
/* 0xFF */ dItemNo_NONE_e,
|
||||||
};
|
};
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// Randomizer item ids. Mostly the same, but we use most unused
|
|
||||||
// entries for custom portals and keys
|
|
||||||
enum {
|
|
||||||
/* 0x00 */ dItemNo_Randomizer_HEART_e,
|
|
||||||
/* 0x01 */ dItemNo_Randomizer_GREEN_RUPEE_e,
|
|
||||||
/* 0x02 */ dItemNo_Randomizer_BLUE_RUPEE_e,
|
|
||||||
/* 0x03 */ dItemNo_Randomizer_YELLOW_RUPEE_e,
|
|
||||||
/* 0x04 */ dItemNo_Randomizer_RED_RUPEE_e,
|
|
||||||
/* 0x05 */ dItemNo_Randomizer_PURPLE_RUPEE_e,
|
|
||||||
/* 0x06 */ dItemNo_Randomizer_ORANGE_RUPEE_e,
|
|
||||||
/* 0x07 */ dItemNo_Randomizer_SILVER_RUPEE_e,
|
|
||||||
/* 0x08 */ dItemNo_Randomizer_S_MAGIC_e,
|
|
||||||
/* 0x09 */ dItemNo_Randomizer_L_MAGIC_e,
|
|
||||||
/* 0x0A */ dItemNo_Randomizer_BOMB_5_e,
|
|
||||||
/* 0x0B */ dItemNo_Randomizer_BOMB_10_e,
|
|
||||||
/* 0x0C */ dItemNo_Randomizer_BOMB_20_e,
|
|
||||||
/* 0x0D */ dItemNo_Randomizer_BOMB_30_e,
|
|
||||||
/* 0x0E */ dItemNo_Randomizer_ARROW_10_e,
|
|
||||||
/* 0x0F */ dItemNo_Randomizer_ARROW_20_e,
|
|
||||||
/* 0x10 */ dItemNo_Randomizer_ARROW_30_e,
|
|
||||||
/* 0x11 */ dItemNo_Randomizer_ARROW_1_e,
|
|
||||||
/* 0x12 */ dItemNo_Randomizer_PACHINKO_SHOT_e,
|
|
||||||
/* 0x13 */ dItemNo_Randomizer_FOOLISH_ITEM_e,
|
|
||||||
/* 0x14 */ dItemNo_Randomizer_ORDON_PORTAL_e,
|
|
||||||
/* 0x15 */ dItemNo_Randomizer_SOUTH_FARON_PORTAL_e,
|
|
||||||
/* 0x16 */ dItemNo_Randomizer_WATER_BOMB_5_e,
|
|
||||||
/* 0x17 */ dItemNo_Randomizer_WATER_BOMB_10_e,
|
|
||||||
/* 0x18 */ dItemNo_Randomizer_WATER_BOMB_20_e,
|
|
||||||
/* 0x19 */ dItemNo_Randomizer_WATER_BOMB_30_e,
|
|
||||||
/* 0x1A */ dItemNo_Randomizer_BOMB_INSECT_5_e,
|
|
||||||
/* 0x1B */ dItemNo_Randomizer_BOMB_INSECT_10_e,
|
|
||||||
/* 0x1C */ dItemNo_Randomizer_BOMB_INSECT_20_e,
|
|
||||||
/* 0x1D */ dItemNo_Randomizer_BOMB_INSECT_30_e,
|
|
||||||
/* 0x1E */ dItemNo_Randomizer_RECOVERY_FAILY_e,
|
|
||||||
/* 0x1F */ dItemNo_Randomizer_TRIPLE_HEART_e,
|
|
||||||
/* 0x20 */ dItemNo_Randomizer_SMALL_KEY_e,
|
|
||||||
/* 0x21 */ dItemNo_Randomizer_KAKERA_HEART_e,
|
|
||||||
/* 0x22 */ dItemNo_Randomizer_UTAWA_HEART_e,
|
|
||||||
/* 0x23 */ dItemNo_Randomizer_MAP_e,
|
|
||||||
/* 0x24 */ dItemNo_Randomizer_COMPUS_e,
|
|
||||||
/* 0x25 */ dItemNo_Randomizer_DUNGEON_EXIT_e,
|
|
||||||
/* 0x26 */ dItemNo_Randomizer_BOSS_KEY_e,
|
|
||||||
/* 0x27 */ dItemNo_Randomizer_DUNGEON_BACK_e,
|
|
||||||
/* 0x28 */ dItemNo_Randomizer_SWORD_e,
|
|
||||||
/* 0x29 */ dItemNo_Randomizer_MASTER_SWORD_e,
|
|
||||||
/* 0x2A */ dItemNo_Randomizer_WOOD_SHIELD_e,
|
|
||||||
/* 0x2B */ dItemNo_Randomizer_SHIELD_e,
|
|
||||||
/* 0x2C */ dItemNo_Randomizer_HYLIA_SHIELD_e,
|
|
||||||
/* 0x2D */ dItemNo_Randomizer_TKS_LETTER_e,
|
|
||||||
/* 0x2E */ dItemNo_Randomizer_WEAR_CASUAL_e,
|
|
||||||
/* 0x2F */ dItemNo_Randomizer_WEAR_KOKIRI_e,
|
|
||||||
/* 0x30 */ dItemNo_Randomizer_ARMOR_e,
|
|
||||||
/* 0x31 */ dItemNo_Randomizer_WEAR_ZORA_e,
|
|
||||||
/* 0x32 */ dItemNo_Randomizer_MAGIC_LV1_e,
|
|
||||||
/* 0x33 */ dItemNo_Randomizer_DUNGEON_EXIT_2_e,
|
|
||||||
/* 0x34 */ dItemNo_Randomizer_WALLET_LV1_e,
|
|
||||||
/* 0x35 */ dItemNo_Randomizer_WALLET_LV2_e,
|
|
||||||
/* 0x36 */ dItemNo_Randomizer_WALLET_LV3_e,
|
|
||||||
/* 0x37 */ dItemNo_Randomizer_NOENTRY_55_e,
|
|
||||||
/* 0x38 */ dItemNo_Randomizer_NOENTRY_56_e,
|
|
||||||
/* 0x39 */ dItemNo_Randomizer_UPPER_ZORAS_RIVER_PORTAL_e,
|
|
||||||
/* 0x3A */ dItemNo_Randomizer_CASTLE_TOWN_PORTAL_e,
|
|
||||||
/* 0x3B */ dItemNo_Randomizer_GERUDO_DESERT_PORTAL_e,
|
|
||||||
/* 0x3C */ dItemNo_Randomizer_NORTH_FARON_PORTAL_e,
|
|
||||||
/* 0x3D */ dItemNo_Randomizer_ZORAS_JEWEL_e,
|
|
||||||
/* 0x3E */ dItemNo_Randomizer_HAWK_EYE_e,
|
|
||||||
/* 0x3F */ dItemNo_Randomizer_WOOD_STICK_e,
|
|
||||||
/* 0x40 */ dItemNo_Randomizer_BOOMERANG_e,
|
|
||||||
/* 0x41 */ dItemNo_Randomizer_SPINNER_e,
|
|
||||||
/* 0x42 */ dItemNo_Randomizer_IRONBALL_e,
|
|
||||||
/* 0x43 */ dItemNo_Randomizer_BOW_e,
|
|
||||||
/* 0x44 */ dItemNo_Randomizer_HOOKSHOT_e,
|
|
||||||
/* 0x45 */ dItemNo_Randomizer_HVY_BOOTS_e,
|
|
||||||
/* 0x46 */ dItemNo_Randomizer_COPY_ROD_e,
|
|
||||||
/* 0x47 */ dItemNo_Randomizer_W_HOOKSHOT_e,
|
|
||||||
/* 0x48 */ dItemNo_Randomizer_KANTERA_e,
|
|
||||||
/* 0x49 */ dItemNo_Randomizer_LIGHT_SWORD_e,
|
|
||||||
/* 0x4A */ dItemNo_Randomizer_FISHING_ROD_1_e,
|
|
||||||
/* 0x4B */ dItemNo_Randomizer_PACHINKO_e,
|
|
||||||
/* 0x4C */ dItemNo_Randomizer_COPY_ROD_2_e,
|
|
||||||
/* 0x4D */ dItemNo_Randomizer_KAKARIKO_GORGE_PORTAL_e,
|
|
||||||
/* 0x4E */ dItemNo_Randomizer_KAKARIKO_VILLAGE_PORTAL_e,
|
|
||||||
/* 0x4F */ dItemNo_Randomizer_BOMB_BAG_LV2_e,
|
|
||||||
/* 0x50 */ dItemNo_Randomizer_BOMB_BAG_LV1_e,
|
|
||||||
/* 0x51 */ dItemNo_Randomizer_BOMB_IN_BAG_e,
|
|
||||||
/* 0x52 */ dItemNo_Randomizer_DEATH_MOUNTAIN_PORTAL_e,
|
|
||||||
/* 0x53 */ dItemNo_Randomizer_LIGHT_ARROW_e,
|
|
||||||
/* 0x54 */ dItemNo_Randomizer_ARROW_LV1_e,
|
|
||||||
/* 0x55 */ dItemNo_Randomizer_ARROW_LV2_e,
|
|
||||||
/* 0x56 */ dItemNo_Randomizer_ARROW_LV3_e,
|
|
||||||
/* 0x57 */ dItemNo_Randomizer_ZORAS_DOMAIN_PORTAL_e,
|
|
||||||
/* 0x58 */ dItemNo_Randomizer_LURE_ROD_e,
|
|
||||||
/* 0x59 */ dItemNo_Randomizer_BOMB_ARROW_e,
|
|
||||||
/* 0x5A */ dItemNo_Randomizer_HAWK_ARROW_e,
|
|
||||||
/* 0x5B */ dItemNo_Randomizer_BEE_ROD_e,
|
|
||||||
/* 0x5C */ dItemNo_Randomizer_JEWEL_ROD_e,
|
|
||||||
/* 0x5D */ dItemNo_Randomizer_WORM_ROD_e,
|
|
||||||
/* 0x5E */ dItemNo_Randomizer_JEWEL_BEE_ROD_e,
|
|
||||||
/* 0x5F */ dItemNo_Randomizer_JEWEL_WORM_ROD_e,
|
|
||||||
/* 0x60 */ dItemNo_Randomizer_EMPTY_BOTTLE_e,
|
|
||||||
/* 0x61 */ dItemNo_Randomizer_RED_BOTTLE_e,
|
|
||||||
/* 0x62 */ dItemNo_Randomizer_GREEN_BOTTLE_e,
|
|
||||||
/* 0x63 */ dItemNo_Randomizer_BLUE_BOTTLE_e,
|
|
||||||
/* 0x64 */ dItemNo_Randomizer_MILK_BOTTLE_e,
|
|
||||||
/* 0x65 */ dItemNo_Randomizer_HALF_MILK_BOTTLE_e,
|
|
||||||
/* 0x66 */ dItemNo_Randomizer_OIL_BOTTLE_e,
|
|
||||||
/* 0x67 */ dItemNo_Randomizer_WATER_BOTTLE_e,
|
|
||||||
/* 0x68 */ dItemNo_Randomizer_OIL_BOTTLE_2_e,
|
|
||||||
/* 0x69 */ dItemNo_Randomizer_RED_BOTTLE_2_e,
|
|
||||||
/* 0x6A */ dItemNo_Randomizer_UGLY_SOUP_e,
|
|
||||||
/* 0x6B */ dItemNo_Randomizer_HOT_SPRING_e,
|
|
||||||
/* 0x6C */ dItemNo_Randomizer_FAIRY_e,
|
|
||||||
/* 0x6D */ dItemNo_Randomizer_HOT_SPRING_2_e,
|
|
||||||
/* 0x6E */ dItemNo_Randomizer_OIL2_e,
|
|
||||||
/* 0x6F */ dItemNo_Randomizer_OIL_e,
|
|
||||||
/* 0x70 */ dItemNo_Randomizer_NORMAL_BOMB_e,
|
|
||||||
/* 0x71 */ dItemNo_Randomizer_WATER_BOMB_e,
|
|
||||||
/* 0x72 */ dItemNo_Randomizer_POKE_BOMB_e,
|
|
||||||
/* 0x73 */ dItemNo_Randomizer_FAIRY_DROP_e,
|
|
||||||
/* 0x74 */ dItemNo_Randomizer_WORM_e,
|
|
||||||
/* 0x75 */ dItemNo_Randomizer_DROP_BOTTLE_e,
|
|
||||||
/* 0x76 */ dItemNo_Randomizer_BEE_CHILD_e,
|
|
||||||
/* 0x77 */ dItemNo_Randomizer_CHUCHU_RARE_e,
|
|
||||||
/* 0x78 */ dItemNo_Randomizer_CHUCHU_RED_e,
|
|
||||||
/* 0x79 */ dItemNo_Randomizer_CHUCHU_BLUE_e,
|
|
||||||
/* 0x7A */ dItemNo_Randomizer_CHUCHU_GREEN_e,
|
|
||||||
/* 0x7B */ dItemNo_Randomizer_CHUCHU_YELLOW_e,
|
|
||||||
/* 0x7C */ dItemNo_Randomizer_CHUCHU_PURPLE_e,
|
|
||||||
/* 0x7D */ dItemNo_Randomizer_LV1_SOUP_e,
|
|
||||||
/* 0x7E */ dItemNo_Randomizer_LV2_SOUP_e,
|
|
||||||
/* 0x7F */ dItemNo_Randomizer_LV3_SOUP_e,
|
|
||||||
/* 0x80 */ dItemNo_Randomizer_LETTER_e,
|
|
||||||
/* 0x81 */ dItemNo_Randomizer_BILL_e,
|
|
||||||
/* 0x82 */ dItemNo_Randomizer_WOOD_STATUE_e,
|
|
||||||
/* 0x83 */ dItemNo_Randomizer_IRIAS_PENDANT_e,
|
|
||||||
/* 0x84 */ dItemNo_Randomizer_HORSE_FLUTE_e,
|
|
||||||
/* 0x85 */ dItemNo_Randomizer_FOREST_SMALL_KEY_e,
|
|
||||||
/* 0x86 */ dItemNo_Randomizer_MINES_SMALL_KEY_e,
|
|
||||||
/* 0x87 */ dItemNo_Randomizer_LAKEBED_SMALL_KEY_e,
|
|
||||||
/* 0x88 */ dItemNo_Randomizer_ARBITERS_SMALL_KEY_e,
|
|
||||||
/* 0x89 */ dItemNo_Randomizer_SNOWPEAK_SMALL_KEY_e,
|
|
||||||
/* 0x8A */ dItemNo_Randomizer_TEMPLE_OF_TIME_SMALL_KEY_e,
|
|
||||||
/* 0x8B */ dItemNo_Randomizer_CITY_SMALL_KEY_e,
|
|
||||||
/* 0x8C */ dItemNo_Randomizer_PALACE_SMALL_KEY_e,
|
|
||||||
/* 0x8D */ dItemNo_Randomizer_HYRULE_SMALL_KEY_e,
|
|
||||||
/* 0x8E */ dItemNo_Randomizer_CAMP_SMALL_KEY_e,
|
|
||||||
/* 0x8F */ dItemNo_Randomizer_LAKE_HYLIA_PORTAL_e,
|
|
||||||
/* 0x90 */ dItemNo_Randomizer_RAFRELS_MEMO_e,
|
|
||||||
/* 0x91 */ dItemNo_Randomizer_ASHS_SCRIBBLING_e,
|
|
||||||
/* 0x92 */ dItemNo_Randomizer_FOREST_BOSS_KEY_e,
|
|
||||||
/* 0x93 */ dItemNo_Randomizer_LAKEBED_BOSS_KEY_e,
|
|
||||||
/* 0x94 */ dItemNo_Randomizer_ARBITERS_BOSS_KEY_e,
|
|
||||||
/* 0x95 */ dItemNo_Randomizer_TEMPLE_OF_TIME_BOSS_KEY_e,
|
|
||||||
/* 0x96 */ dItemNo_Randomizer_CITY_BOSS_KEY_e,
|
|
||||||
/* 0x97 */ dItemNo_Randomizer_PALACE_BOSS_KEY_e,
|
|
||||||
/* 0x98 */ dItemNo_Randomizer_HYRULE_BOSS_KEY_e,
|
|
||||||
/* 0x99 */ dItemNo_Randomizer_FOREST_COMPASS_e,
|
|
||||||
/* 0x9A */ dItemNo_Randomizer_MINES_COMPASS_e,
|
|
||||||
/* 0x9B */ dItemNo_Randomizer_LAKEBED_COMPASS_e,
|
|
||||||
/* 0x9C */ dItemNo_Randomizer_CHUCHU_YELLOW2_e,
|
|
||||||
/* 0x9D */ dItemNo_Randomizer_OIL_BOTTLE3_e,
|
|
||||||
/* 0x9E */ dItemNo_Randomizer_SHOP_BEE_CHILD_e,
|
|
||||||
/* 0x9F */ dItemNo_Randomizer_CHUCHU_BLACK_e,
|
|
||||||
/* 0xA0 */ dItemNo_Randomizer_LIGHT_DROP_e,
|
|
||||||
/* 0xA1 */ dItemNo_Randomizer_DROP_CONTAINER_e,
|
|
||||||
/* 0xA2 */ dItemNo_Randomizer_DROP_CONTAINER02_e,
|
|
||||||
/* 0xA3 */ dItemNo_Randomizer_DROP_CONTAINER03_e,
|
|
||||||
/* 0xA4 */ dItemNo_Randomizer_FILLED_CONTAINER_e,
|
|
||||||
/* 0xA5 */ dItemNo_Randomizer_MIRROR_PIECE_2_e,
|
|
||||||
/* 0xA6 */ dItemNo_Randomizer_MIRROR_PIECE_3_e,
|
|
||||||
/* 0xA7 */ dItemNo_Randomizer_MIRROR_PIECE_4_e,
|
|
||||||
/* 0xA8 */ dItemNo_Randomizer_ARBITERS_COMPASS_e,
|
|
||||||
/* 0xA9 */ dItemNo_Randomizer_SNOWPEAK_COMPASS_e,
|
|
||||||
/* 0xAA */ dItemNo_Randomizer_TEMPLE_OF_TIME_COMPASS_e,
|
|
||||||
/* 0xAB */ dItemNo_Randomizer_CITY_COMPASS_e,
|
|
||||||
/* 0xAC */ dItemNo_Randomizer_PALACE_COMPASS_e,
|
|
||||||
/* 0xAD */ dItemNo_Randomizer_HYRULE_COMPASS_e,
|
|
||||||
/* 0xAE */ dItemNo_Randomizer_MIRROR_CHAMBER_PORTAL_e,
|
|
||||||
/* 0xAF */ dItemNo_Randomizer_SNOWPEAK_PORTAL_e,
|
|
||||||
/* 0xB0 */ dItemNo_Randomizer_SMELL_YELIA_POUCH_e,
|
|
||||||
/* 0xB1 */ dItemNo_Randomizer_SMELL_PUMPKIN_e,
|
|
||||||
/* 0xB2 */ dItemNo_Randomizer_SMELL_POH_e,
|
|
||||||
/* 0xB3 */ dItemNo_Randomizer_SMELL_FISH_e,
|
|
||||||
/* 0xB4 */ dItemNo_Randomizer_SMELL_CHILDREN_e,
|
|
||||||
/* 0xB5 */ dItemNo_Randomizer_SMELL_MEDICINE_e,
|
|
||||||
/* 0xB6 */ dItemNo_Randomizer_FOREST_MAP_e,
|
|
||||||
/* 0xB7 */ dItemNo_Randomizer_MINES_MAP_e,
|
|
||||||
/* 0xB8 */ dItemNo_Randomizer_LAKEBED_MAP_e,
|
|
||||||
/* 0xB9 */ dItemNo_Randomizer_ARBITERS_MAP_e,
|
|
||||||
/* 0xBA */ dItemNo_Randomizer_SNOWPEAK_MAP_e,
|
|
||||||
/* 0xBB */ dItemNo_Randomizer_TEMPLE_OF_TIME_MAP_e,
|
|
||||||
/* 0xBC */ dItemNo_Randomizer_CITY_MAP_e,
|
|
||||||
/* 0xBD */ dItemNo_Randomizer_PALACE_MAP_e,
|
|
||||||
/* 0xBE */ dItemNo_Randomizer_HYRULE_MAP_e,
|
|
||||||
/* 0xBF */ dItemNo_Randomizer_SACRED_GROVE_PORTAL_e,
|
|
||||||
/* 0xC0 */ dItemNo_Randomizer_M_BEETLE_e,
|
|
||||||
/* 0xC1 */ dItemNo_Randomizer_F_BEETLE_e,
|
|
||||||
/* 0xC2 */ dItemNo_Randomizer_M_BUTTERFLY_e,
|
|
||||||
/* 0xC3 */ dItemNo_Randomizer_F_BUTTERFLY_e,
|
|
||||||
/* 0xC4 */ dItemNo_Randomizer_M_STAG_BEETLE_e,
|
|
||||||
/* 0xC5 */ dItemNo_Randomizer_F_STAG_BEETLE_e,
|
|
||||||
/* 0xC6 */ dItemNo_Randomizer_M_GRASSHOPPER_e,
|
|
||||||
/* 0xC7 */ dItemNo_Randomizer_F_GRASSHOPPER_e,
|
|
||||||
/* 0xC8 */ dItemNo_Randomizer_M_NANAFUSHI_e,
|
|
||||||
/* 0xC9 */ dItemNo_Randomizer_F_NANAFUSHI_e,
|
|
||||||
/* 0xCA */ dItemNo_Randomizer_M_DANGOMUSHI_e,
|
|
||||||
/* 0xCB */ dItemNo_Randomizer_F_DANGOMUSHI_e,
|
|
||||||
/* 0xCC */ dItemNo_Randomizer_M_MANTIS_e,
|
|
||||||
/* 0xCD */ dItemNo_Randomizer_F_MANTIS_e,
|
|
||||||
/* 0xCE */ dItemNo_Randomizer_M_LADYBUG_e,
|
|
||||||
/* 0xCF */ dItemNo_Randomizer_F_LADYBUG_e,
|
|
||||||
/* 0xD0 */ dItemNo_Randomizer_M_SNAIL_e,
|
|
||||||
/* 0xD1 */ dItemNo_Randomizer_F_SNAIL_e,
|
|
||||||
/* 0xD2 */ dItemNo_Randomizer_M_DRAGONFLY_e,
|
|
||||||
/* 0xD3 */ dItemNo_Randomizer_F_DRAGONFLY_e,
|
|
||||||
/* 0xD4 */ dItemNo_Randomizer_M_ANT_e,
|
|
||||||
/* 0xD5 */ dItemNo_Randomizer_F_ANT_e,
|
|
||||||
/* 0xD6 */ dItemNo_Randomizer_M_MAYFLY_e,
|
|
||||||
/* 0xD7 */ dItemNo_Randomizer_F_MAYFLY_e,
|
|
||||||
/* 0xD8 */ dItemNo_Randomizer_FUSED_SHADOW_1_e,
|
|
||||||
/* 0xD9 */ dItemNo_Randomizer_FUSED_SHADOW_2_e,
|
|
||||||
/* 0xDA */ dItemNo_Randomizer_FUSED_SHADOW_3_e,
|
|
||||||
/* 0xDB */ dItemNo_Randomizer_MIRROR_PIECE_1_e,
|
|
||||||
/* 0xDC */ dItemNo_Randomizer_NOENTRY_220_e,
|
|
||||||
/* 0xDD */ dItemNo_Randomizer_NOENTRY_221_e,
|
|
||||||
/* 0xDE */ dItemNo_Randomizer_NOENTRY_222_e,
|
|
||||||
/* 0xDF */ dItemNo_Randomizer_NOENTRY_223_e,
|
|
||||||
/* 0xE0 */ dItemNo_Randomizer_POU_SPIRIT_e,
|
|
||||||
/* 0xE1 */ dItemNo_Randomizer_ENDING_BLOW_e,
|
|
||||||
/* 0xE2 */ dItemNo_Randomizer_SHIELD_ATTACK_e,
|
|
||||||
/* 0xE3 */ dItemNo_Randomizer_BACK_SLICE_e,
|
|
||||||
/* 0xE4 */ dItemNo_Randomizer_HELM_SPLITTER_e,
|
|
||||||
/* 0xE5 */ dItemNo_Randomizer_MORTAL_DRAW_e,
|
|
||||||
/* 0xE6 */ dItemNo_Randomizer_JUMP_STRIKE_e,
|
|
||||||
/* 0xE7 */ dItemNo_Randomizer_GREAT_SPIN_e,
|
|
||||||
/* 0xE8 */ dItemNo_Randomizer_ELDIN_BRIDGE_PORTAL_e,
|
|
||||||
/* 0xE9 */ dItemNo_Randomizer_ANCIENT_DOCUMENT_e,
|
|
||||||
/* 0xEA */ dItemNo_Randomizer_AIR_LETTER_e,
|
|
||||||
/* 0xEB */ dItemNo_Randomizer_ANCIENT_DOCUMENT2_e,
|
|
||||||
/* 0xEC */ dItemNo_Randomizer_LV7_DUNGEON_EXIT_e,
|
|
||||||
/* 0xED */ dItemNo_Randomizer_LINKS_SAVINGS_e,
|
|
||||||
/* 0xEE */ dItemNo_Randomizer_SMALL_KEY2_e,
|
|
||||||
/* 0xEF */ dItemNo_Randomizer_POU_FIRE1_e,
|
|
||||||
/* 0xF0 */ dItemNo_Randomizer_POU_FIRE2_e,
|
|
||||||
/* 0xF1 */ dItemNo_Randomizer_POU_FIRE3_e,
|
|
||||||
/* 0xF2 */ dItemNo_Randomizer_POU_FIRE4_e,
|
|
||||||
/* 0xF3 */ dItemNo_Randomizer_BOSSRIDER_KEY_e,
|
|
||||||
/* 0xF4 */ dItemNo_Randomizer_TOMATO_PUREE_e,
|
|
||||||
/* 0xF5 */ dItemNo_Randomizer_TASTE_e,
|
|
||||||
/* 0xF6 */ dItemNo_Randomizer_LV5_BOSS_KEY_e,
|
|
||||||
/* 0xF7 */ dItemNo_Randomizer_SURFBOARD_e,
|
|
||||||
/* 0xF8 */ dItemNo_Randomizer_KANTERA2_e,
|
|
||||||
/* 0xF9 */ dItemNo_Randomizer_L2_KEY_PIECES1_e,
|
|
||||||
/* 0xFA */ dItemNo_Randomizer_L2_KEY_PIECES2_e,
|
|
||||||
/* 0xFB */ dItemNo_Randomizer_L2_KEY_PIECES3_e,
|
|
||||||
/* 0xFC */ dItemNo_Randomizer_KEY_OF_CARAVAN_e,
|
|
||||||
/* 0xFD */ dItemNo_Randomizer_LV2_BOSS_KEY_e,
|
|
||||||
/* 0xFE */ dItemNo_Randomizer_KEY_OF_FILONE_e,
|
|
||||||
/* 0xFF */ dItemNo_Randomizer_NONE_e,
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* D_D_ITEM_DATA_H */
|
#endif /* D_D_ITEM_DATA_H */
|
||||||
|
|||||||
@@ -75,7 +75,6 @@ public:
|
|||||||
bool dpdMove();
|
bool dpdMove();
|
||||||
u8 openExplain(u8);
|
u8 openExplain(u8);
|
||||||
#if TARGET_PC
|
#if TARGET_PC
|
||||||
void updateSlotImage(u8 slot);
|
|
||||||
bool pointerMove();
|
bool pointerMove();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -220,7 +219,6 @@ private:
|
|||||||
bool mCursorInterpCurrAngular;
|
bool mCursorInterpCurrAngular;
|
||||||
bool mCursorInterpInit;
|
bool mCursorInterpInit;
|
||||||
bool mPointerTouchPressHoveredCurrent;
|
bool mPointerTouchPressHoveredCurrent;
|
||||||
J2DPicture* mDpadIcon;
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -129,9 +129,7 @@ public:
|
|||||||
bool getPlayerSubject();
|
bool getPlayerSubject();
|
||||||
bool isBButtonShow(bool);
|
bool isBButtonShow(bool);
|
||||||
s16 getButtonTimer();
|
s16 getButtonTimer();
|
||||||
#if TARGET_PC
|
|
||||||
f32 getZButtonAlpha() { return mButtonZAlpha;}
|
|
||||||
#endif
|
|
||||||
virtual ~dMeter2Draw_c();
|
virtual ~dMeter2Draw_c();
|
||||||
|
|
||||||
J2DScreen* getMainScreenPtr() { return mpScreen; }
|
J2DScreen* getMainScreenPtr() { return mpScreen; }
|
||||||
|
|||||||
@@ -41,26 +41,6 @@ public:
|
|||||||
/* 0x12 */ BE(u16) unk_0x12;
|
/* 0x12 */ BE(u16) unk_0x12;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// Default attributes for custom text ids
|
|
||||||
static JMSMesgEntry_c defaultJMSMesgEntry{
|
|
||||||
.string_offset = 0,
|
|
||||||
.message_id = 0,
|
|
||||||
.event_label_id = 0,
|
|
||||||
.se_speaker = 0x24,
|
|
||||||
.fuki_kind = 0x00,
|
|
||||||
.output_type = 0x00,
|
|
||||||
.fuki_pos_type = 0x00,
|
|
||||||
.unk_0xc = 0xFF,
|
|
||||||
.unk_0xd = 0x00,
|
|
||||||
.se_mood = 0x00,
|
|
||||||
.camera_id = 0x00,
|
|
||||||
.base_anm_id = 0x02,
|
|
||||||
.face_anm_id = 0x03,
|
|
||||||
.unk_0x12 = 0x0400,
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class JMSMesgInfo_c {
|
class JMSMesgInfo_c {
|
||||||
public:
|
public:
|
||||||
/* 0x00 */ bmg_section_t header; // section header
|
/* 0x00 */ bmg_section_t header; // section header
|
||||||
@@ -68,9 +48,6 @@ public:
|
|||||||
/* 0x0A */ BE(u16) entry_size; // size of an entry
|
/* 0x0A */ BE(u16) entry_size; // size of an entry
|
||||||
/* 0x0C */ u8 padding[4]; // padding
|
/* 0x0C */ u8 padding[4]; // padding
|
||||||
/* 0x10 */ JMSMesgEntry_c entries[0];
|
/* 0x10 */ JMSMesgEntry_c entries[0];
|
||||||
#if TARGET_PC
|
|
||||||
JMSMesgEntry_c& getEntry(u16 index);
|
|
||||||
#endif
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class COutFont_c;
|
class COutFont_c;
|
||||||
|
|||||||
+2
-25
@@ -58,9 +58,6 @@ public:
|
|||||||
int checkEventRender(int*, int*, int*, int*);
|
int checkEventRender(int*, int*, int*, int*);
|
||||||
void remove();
|
void remove();
|
||||||
u16 getEventId(int*);
|
u16 getEventId(int*);
|
||||||
#if TARGET_PC
|
|
||||||
u16 getEventId();
|
|
||||||
#endif
|
|
||||||
u32 getMsgNo();
|
u32 getMsgNo();
|
||||||
u32 getNowMsgNo();
|
u32 getNowMsgNo();
|
||||||
msg_class* getMsg();
|
msg_class* getMsg();
|
||||||
@@ -131,11 +128,6 @@ public:
|
|||||||
u16 query051(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
u16 query051(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
||||||
u16 query052(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
u16 query052(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
||||||
u16 query053(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
u16 query053(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
||||||
#if TARGET_PC
|
|
||||||
u16 query054(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
|
||||||
u16 query055(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
|
||||||
u16 query056(mesg_flow_node_branch*, fopAc_ac_c*, int);
|
|
||||||
#endif
|
|
||||||
int event000(mesg_flow_node_event*, fopAc_ac_c*);
|
int event000(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
int event001(mesg_flow_node_event*, fopAc_ac_c*);
|
int event001(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
int event002(mesg_flow_node_event*, fopAc_ac_c*);
|
int event002(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
@@ -179,12 +171,6 @@ public:
|
|||||||
int event040(mesg_flow_node_event*, fopAc_ac_c*);
|
int event040(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
int event041(mesg_flow_node_event*, fopAc_ac_c*);
|
int event041(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
int event042(mesg_flow_node_event*, fopAc_ac_c*);
|
int event042(mesg_flow_node_event*, fopAc_ac_c*);
|
||||||
#if TARGET_PC
|
|
||||||
// events for rando
|
|
||||||
int event043(mesg_flow_node_event*, fopAc_ac_c*);
|
|
||||||
int event044(mesg_flow_node_event*, fopAc_ac_c*);
|
|
||||||
int event045(mesg_flow_node_event*, fopAc_ac_c*);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void initWord(fopAc_ac_c*, const char*, u8, int, fopAc_ac_c**);
|
void initWord(fopAc_ac_c*, const char*, u8, int, fopAc_ac_c**);
|
||||||
|
|
||||||
@@ -199,17 +185,8 @@ public:
|
|||||||
void setMsg(u32 msg) { mMsg = msg; }
|
void setMsg(u32 msg) { mMsg = msg; }
|
||||||
bool checkEndFlow() { return (u32)field_0x26 == 1; }
|
bool checkEndFlow() { return (u32)field_0x26 == 1; }
|
||||||
|
|
||||||
static DUSK_GAME_DATA queryFunc mQueryList[DUSK_IF_ELSE(56, 53)];
|
static DUSK_GAME_DATA queryFunc mQueryList[53];
|
||||||
static DUSK_GAME_DATA eventFunc mEventList[DUSK_IF_ELSE(46, 43)];
|
static DUSK_GAME_DATA eventFunc mEventList[43];
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
// patch funcs for rando
|
|
||||||
u32 getKeyForIndex(u16 nodeIdx);
|
|
||||||
void randoPatchNodeType(u8& type, u16 nodeIdx);
|
|
||||||
void randoPatchMessageNode(mesg_flow_node*& message_node, u16 nodeIdx);
|
|
||||||
void randoPatchBranchNode(mesg_flow_node_branch*& branch_node, u16 nodeIdx);
|
|
||||||
void randoPatchEventNode(mesg_flow_node_event*& event_node, u16 nodeIdx);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x04 */ u8* mFlow_p;
|
/* 0x04 */ u8* mFlow_p;
|
||||||
|
|||||||
@@ -199,9 +199,6 @@ public:
|
|||||||
void setTime(f32 i_time) { mTime = i_time; }
|
void setTime(f32 i_time) { mTime = i_time; }
|
||||||
u16 getDate() const { return mDate; }
|
u16 getDate() const { return mDate; }
|
||||||
void setDate(u16 i_date) { mDate = i_date; }
|
void setDate(u16 i_date) { mDate = i_date; }
|
||||||
#if TARGET_PC
|
|
||||||
u8 getDarkClearLV() const { return mDarkClearLevelFlag; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 0x00 */ BE(OSTime) mDateIpl;
|
/* 0x00 */ BE(OSTime) mDateIpl;
|
||||||
/* 0x08 */ u8 mTransformLevelFlag;
|
/* 0x08 */ u8 mTransformLevelFlag;
|
||||||
@@ -275,9 +272,6 @@ public:
|
|||||||
bool isFieldDataExistFlag() const { return mFieldDataExistFlag ? true : false; }
|
bool isFieldDataExistFlag() const { return mFieldDataExistFlag ? true : false; }
|
||||||
void offFieldDataExistFlag() { mFieldDataExistFlag = false; }
|
void offFieldDataExistFlag() { mFieldDataExistFlag = false; }
|
||||||
void onFieldDataExistFlag() { mFieldDataExistFlag = true; }
|
void onFieldDataExistFlag() { mFieldDataExistFlag = true; }
|
||||||
#if TARGET_PC
|
|
||||||
void setRegionBit(u8 region) { mRegion |= region;}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if TARGET_PC
|
#if TARGET_PC
|
||||||
/* 0x00 */ BE(Vec) mPos;
|
/* 0x00 */ BE(Vec) mPos;
|
||||||
@@ -382,21 +376,12 @@ public:
|
|||||||
void setArrowNum(u8 i_num) { mArrowNum = i_num; }
|
void setArrowNum(u8 i_num) { mArrowNum = i_num; }
|
||||||
u8 getPachinkoNum() const { return mPachinkoNum; }
|
u8 getPachinkoNum() const { return mPachinkoNum; }
|
||||||
void setPachinkoNum(u8 i_num) { mPachinkoNum = i_num; }
|
void setPachinkoNum(u8 i_num) { mPachinkoNum = i_num; }
|
||||||
#if TARGET_PC
|
|
||||||
u8 getAncientDocumentNum() const { return mAncientDocumentNum; }
|
|
||||||
void setAncientDocumentNum(u8 i_num) { mAncientDocumentNum = i_num; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 0x0 */ u8 mArrowNum;
|
/* 0x0 */ u8 mArrowNum;
|
||||||
/* 0x1 */ u8 mBombNum[3];
|
/* 0x1 */ u8 mBombNum[3];
|
||||||
/* 0x4 */ u8 mBottleNum[4];
|
/* 0x4 */ u8 mBottleNum[4];
|
||||||
/* 0x8 */ u8 mPachinkoNum;
|
/* 0x8 */ u8 mPachinkoNum;
|
||||||
#if TARGET_PC
|
|
||||||
/* 0x9 */ u8 mAncientDocumentNum; // Custom Field for Randomizer
|
|
||||||
/* 0x9 */ u8 unk5[2];
|
|
||||||
#else
|
|
||||||
/* 0x9 */ u8 unk5[3];
|
/* 0x9 */ u8 unk5[3];
|
||||||
#endif
|
|
||||||
}; // Size: 0xC
|
}; // Size: 0xC
|
||||||
|
|
||||||
class dSv_player_item_max_c {
|
class dSv_player_item_max_c {
|
||||||
@@ -428,11 +413,7 @@ public:
|
|||||||
u8 getPohNum() const { return mPohNum; }
|
u8 getPohNum() const { return mPohNum; }
|
||||||
|
|
||||||
void addPohNum() {
|
void addPohNum() {
|
||||||
#if TARGET_PC
|
|
||||||
if (mPohNum < 0x3D) {
|
|
||||||
#else
|
|
||||||
if (mPohNum < 0xFF) {
|
if (mPohNum < 0xFF) {
|
||||||
#endif
|
|
||||||
mPohNum++;
|
mPohNum++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -477,11 +458,6 @@ public:
|
|||||||
int isLetterReadFlag(int i_no) const;
|
int isLetterReadFlag(int i_no) const;
|
||||||
u8 getGetNumber(int i_no) { return mGetNumber[i_no]; }
|
u8 getGetNumber(int i_no) { return mGetNumber[i_no]; }
|
||||||
void setGetNumber(int i_no, u8 i_value) { mGetNumber[i_no] = i_value; }
|
void setGetNumber(int i_no, u8 i_value) { mGetNumber[i_no] = i_value; }
|
||||||
#if TARGET_PC
|
|
||||||
// For rando
|
|
||||||
void setAllLetterGet() { mLetterGetFlags[0] |= 0xFFFF;}
|
|
||||||
void setAllLetterRead() { mLetterReadFlags[0] |= 0xFFFF;}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 0x00 */ BE(u32) mLetterGetFlags[2];
|
/* 0x00 */ BE(u32) mLetterGetFlags[2];
|
||||||
/* 0x08 */ BE(u32) mLetterReadFlags[2];
|
/* 0x08 */ BE(u32) mLetterReadFlags[2];
|
||||||
@@ -688,14 +664,10 @@ public:
|
|||||||
void onDungeonItemBossKey() { onDungeonItem(BOSS_KEY); }
|
void onDungeonItemBossKey() { onDungeonItem(BOSS_KEY); }
|
||||||
void offDungeonItemBossKey() { offDungeonItem(BOSS_KEY); }
|
void offDungeonItemBossKey() { offDungeonItem(BOSS_KEY); }
|
||||||
s32 isDungeonItemBossKey() const { return isDungeonItem(BOSS_KEY); }
|
s32 isDungeonItemBossKey() const { return isDungeonItem(BOSS_KEY); }
|
||||||
#if TARGET_PC
|
|
||||||
void onStageBossEnemy();
|
|
||||||
#else
|
|
||||||
void onStageBossEnemy() {
|
void onStageBossEnemy() {
|
||||||
onDungeonItem(STAGE_BOSS_ENEMY);
|
onDungeonItem(STAGE_BOSS_ENEMY);
|
||||||
onDungeonItem(OOCCOO_NOTE);
|
onDungeonItem(OOCCOO_NOTE);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
void offStageBossEnemy() { offDungeonItem(STAGE_BOSS_ENEMY); }
|
void offStageBossEnemy() { offDungeonItem(STAGE_BOSS_ENEMY); }
|
||||||
s32 isStageBossEnemy() const { return isDungeonItem(STAGE_BOSS_ENEMY); }
|
s32 isStageBossEnemy() const { return isDungeonItem(STAGE_BOSS_ENEMY); }
|
||||||
void onStageLife() { onDungeonItem(STAGE_LIFE); }
|
void onStageLife() { onDungeonItem(STAGE_LIFE); }
|
||||||
@@ -976,7 +948,6 @@ public:
|
|||||||
/* 0x8 */ s8 m_no;
|
/* 0x8 */ s8 m_no;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class dSv_info_c {
|
class dSv_info_c {
|
||||||
public:
|
public:
|
||||||
void init();
|
void init();
|
||||||
|
|||||||
+1
-3
@@ -1291,10 +1291,8 @@ public:
|
|||||||
}
|
}
|
||||||
void set(const char*, s8, s16, s8, s8, u8);
|
void set(const char*, s8, s16, s8, s8, u8);
|
||||||
void offEnable() { enabled = 0; }
|
void offEnable() { enabled = 0; }
|
||||||
|
void onEnable() { enabled = 1; }
|
||||||
BOOL isEnable() const { return enabled; }
|
BOOL isEnable() const { return enabled; }
|
||||||
#if TARGET_PC
|
|
||||||
void setEnable() { enabled |= 0x1; }
|
|
||||||
#endif
|
|
||||||
s8 getWipe() const { return wipe; }
|
s8 getWipe() const { return wipe; }
|
||||||
u8 getWipeSpeed() const { return wipe_speed; }
|
u8 getWipeSpeed() const { return wipe_speed; }
|
||||||
dStage_startStage_c* getStartStage() { return this; }
|
dStage_startStage_c* getStartStage() { return this; }
|
||||||
|
|||||||
@@ -394,7 +394,4 @@ inline int mDoAud_monsSeStart(u32 i_soundId, const Vec* i_pos, u32 i_actorId, u3
|
|||||||
0);
|
0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
mDoAud_zelAudio_c& mDoAud_getZelAudio();
|
|
||||||
#endif
|
|
||||||
#endif /* M_DO_M_DO_AUDIO_H */
|
#endif /* M_DO_M_DO_AUDIO_H */
|
||||||
|
|||||||
@@ -67,10 +67,6 @@ public:
|
|||||||
|
|
||||||
JKRMemArchive* getArchive() const { return mArchive; }
|
JKRMemArchive* getArchive() const { return mArchive; }
|
||||||
JKRHeap* getHeap() const { return mHeap; }
|
JKRHeap* getHeap() const { return mHeap; }
|
||||||
#if TARGET_PC
|
|
||||||
s32 getEntryNumber() const { return mEntryNumber; }
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/* 0x14 */ u8 mMountDirection;
|
/* 0x14 */ u8 mMountDirection;
|
||||||
|
|||||||
@@ -154,18 +154,6 @@ public:
|
|||||||
return (J2DTextBoxHBinding)((mFlags >> 2) & 3);
|
return (J2DTextBoxHBinding)((mFlags >> 2) & 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
void setVBinding(J2DTextBoxVBinding vBinding) {
|
|
||||||
mFlags &= 0b1100;
|
|
||||||
mFlags |= (vBinding & 3);
|
|
||||||
}
|
|
||||||
|
|
||||||
void setHBinding(J2DTextBoxHBinding hBinding) {
|
|
||||||
mFlags &= 0b0011;
|
|
||||||
mFlags |= ((hBinding & 3) << 2);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
JUtility::TColor getCharColor() { return mCharColor; }
|
JUtility::TColor getCharColor() { return mCharColor; }
|
||||||
JUtility::TColor getGradColor() { return mGradientColor; }
|
JUtility::TColor getGradColor() { return mGradientColor; }
|
||||||
u16 getStringAllocByte() const { return mStringLength; }
|
u16 getStringAllocByte() const { return mStringLength; }
|
||||||
|
|||||||
@@ -7,11 +7,6 @@
|
|||||||
|
|
||||||
#include "JSystem/JMessage/control.h"
|
#include "JSystem/JMessage/control.h"
|
||||||
|
|
||||||
#if TARGET_PC
|
|
||||||
#include "dusk/randomizer/game/custom_flow_ids.hpp"
|
|
||||||
#include "dusk/randomizer/game/messages.hpp"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
JMessage::TControl::TControl()
|
JMessage::TControl::TControl()
|
||||||
: pSequenceProcessor_(NULL),
|
: pSequenceProcessor_(NULL),
|
||||||
pRenderingProcessor_(NULL),
|
pRenderingProcessor_(NULL),
|
||||||
@@ -76,12 +71,6 @@ int JMessage::TControl::setMessageID(u32 uMsgID, u32 param_1, bool* pbValid) {
|
|||||||
|
|
||||||
u32 uCode = pProcessor->toMessageCode_messageID(uMsgID, param_1, pbValid);
|
u32 uCode = pProcessor->toMessageCode_messageID(uMsgID, param_1, pbValid);
|
||||||
if (uCode == 0xFFFFFFFF) {
|
if (uCode == 0xFFFFFFFF) {
|
||||||
#if TARGET_PC
|
|
||||||
// If this is a custom text id
|
|
||||||
if (uMsgID >= BASE_CUSTOM_MSG_AND_FLOW_ID)
|
|
||||||
uCode = CUSTOM_BMG_GROUP << 16 | uMsgID;
|
|
||||||
else // return 0
|
|
||||||
#endif
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -91,16 +80,6 @@ int JMessage::TControl::setMessageID(u32 uMsgID, u32 param_1, bool* pbValid) {
|
|||||||
bool JMessage::TControl::setMessageCode_inSequence_(JMessage::TProcessor const* pProcessor, u16 u16GroupID, u16 u16Index) {
|
bool JMessage::TControl::setMessageCode_inSequence_(JMessage::TProcessor const* pProcessor, u16 u16GroupID, u16 u16Index) {
|
||||||
pEntry_ = pProcessor->getMessageEntry_messageCode(u16GroupID, u16Index);
|
pEntry_ = pProcessor->getMessageEntry_messageCode(u16GroupID, u16Index);
|
||||||
if (pEntry_ == NULL) {
|
if (pEntry_ == NULL) {
|
||||||
#if TARGET_PC
|
|
||||||
if (HandleCustomText(this, u16Index)) {
|
|
||||||
uMessageGroupID_ = u16GroupID;
|
|
||||||
uMessageID_ = u16Index;
|
|
||||||
pResourceCache_ = pProcessor->getResourceCache();
|
|
||||||
pMessageText_current_ = pMessageText_begin_;
|
|
||||||
oStack_renderingProcessor_.clear();
|
|
||||||
return true;
|
|
||||||
} else
|
|
||||||
#endif
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -111,10 +90,6 @@ bool JMessage::TControl::setMessageCode_inSequence_(JMessage::TProcessor const*
|
|||||||
JUT_ASSERT(155, pResourceCache_!=NULL);
|
JUT_ASSERT(155, pResourceCache_!=NULL);
|
||||||
|
|
||||||
pMessageText_begin_ = pResourceCache_->getMessageText_messageEntry(pEntry_);
|
pMessageText_begin_ = pResourceCache_->getMessageText_messageEntry(pEntry_);
|
||||||
#if TARGET_PC
|
|
||||||
// Feels kinda hacky to have to hijack this deep into JSystem, but works for now
|
|
||||||
HandleTextOverrides(this, pProcessor, uMessageGroupID_, uMessageID_);
|
|
||||||
#endif
|
|
||||||
pMessageText_current_ = pMessageText_begin_;
|
pMessageText_current_ = pMessageText_begin_;
|
||||||
oStack_renderingProcessor_.clear();
|
oStack_renderingProcessor_.clear();
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -0,0 +1,141 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.25)
|
||||||
|
project(randomizer CXX)
|
||||||
|
|
||||||
|
if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||||
|
set(DUSK_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../.." CACHE PATH "Path to dusk source root")
|
||||||
|
option(DUSK_MOD_USE_FULL_TREE "Use full build instead of the minimal mod SDK" OFF)
|
||||||
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||||
|
if (DUSK_MOD_USE_FULL_TREE)
|
||||||
|
add_subdirectory("${DUSK_DIR}" dusk EXCLUDE_FROM_ALL)
|
||||||
|
else ()
|
||||||
|
add_subdirectory("${DUSK_DIR}/sdk" dusk-sdk EXCLUDE_FROM_ALL)
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
# Generator dependencies, linked statically into the mod library (no CRT crossing).
|
||||||
|
include(FetchContent)
|
||||||
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||||
|
set(YAML_CPP_BUILD_TOOLS OFF CACHE BOOL "" FORCE)
|
||||||
|
set(YAML_CPP_BUILD_CONTRIB OFF CACHE BOOL "" FORCE)
|
||||||
|
set(YAML_BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
message(STATUS "randomizer: Fetching yaml-cpp")
|
||||||
|
FetchContent_Declare(
|
||||||
|
yaml-cpp
|
||||||
|
GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git
|
||||||
|
GIT_TAG yaml-cpp-0.9.0
|
||||||
|
)
|
||||||
|
message(STATUS "randomizer: Fetching base64pp")
|
||||||
|
FetchContent_Declare(
|
||||||
|
base64pp
|
||||||
|
GIT_REPOSITORY https://github.com/matheusgomes28/base64pp.git
|
||||||
|
GIT_TAG v0.2.0-rc0
|
||||||
|
)
|
||||||
|
|
||||||
|
message(STATUS "randomizer: Fetching battery-embed")
|
||||||
|
FetchContent_Declare(
|
||||||
|
battery-embed
|
||||||
|
GIT_REPOSITORY https://github.com/batterycenter/embed.git
|
||||||
|
GIT_TAG fdbae3f
|
||||||
|
)
|
||||||
|
|
||||||
|
FetchContent_MakeAvailable(yaml-cpp base64pp battery-embed)
|
||||||
|
|
||||||
|
set(RANDOMIZER_GENERATOR_SOURCES
|
||||||
|
generator/logic/area.cpp
|
||||||
|
generator/logic/dungeon.cpp
|
||||||
|
generator/logic/entrance.cpp
|
||||||
|
generator/logic/entrance_shuffle.cpp
|
||||||
|
generator/logic/fill.cpp
|
||||||
|
generator/logic/flatten/bits.cpp
|
||||||
|
generator/logic/flatten/flatten.cpp
|
||||||
|
generator/logic/flatten/simplify_algebraic.cpp
|
||||||
|
generator/logic/hints.cpp
|
||||||
|
generator/logic/item.cpp
|
||||||
|
generator/logic/item_pool.cpp
|
||||||
|
generator/logic/location.cpp
|
||||||
|
generator/logic/plandomizer.cpp
|
||||||
|
generator/logic/requirement.cpp
|
||||||
|
generator/logic/search.cpp
|
||||||
|
generator/logic/spoiler_log.cpp
|
||||||
|
generator/logic/world.cpp
|
||||||
|
generator/randomizer.cpp
|
||||||
|
generator/seedgen/config.cpp
|
||||||
|
generator/seedgen/seed.cpp
|
||||||
|
generator/seedgen/settings.cpp
|
||||||
|
generator/utility/color.cpp
|
||||||
|
generator/utility/common.cpp
|
||||||
|
generator/utility/endian.cpp
|
||||||
|
generator/utility/file.cpp
|
||||||
|
generator/utility/log.cpp
|
||||||
|
generator/utility/path.cpp
|
||||||
|
generator/utility/platform.cpp
|
||||||
|
generator/utility/random.cpp
|
||||||
|
generator/utility/string.cpp
|
||||||
|
generator/utility/text.cpp
|
||||||
|
generator/utility/time.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
set(RANDOMIZER_SOURCES
|
||||||
|
src/flags.cpp
|
||||||
|
src/messages.cpp
|
||||||
|
src/randomizer_context.cpp
|
||||||
|
src/stages.cpp
|
||||||
|
src/tools.cpp
|
||||||
|
src/verify_item_functions.cpp
|
||||||
|
src/paths.cpp
|
||||||
|
src/session.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
# Embed the generator's YAML data into the mod library. Paths are relative to this
|
||||||
|
# directory and must match the RANDO_DATA_PATH-based b::embed<> identifiers in code.
|
||||||
|
file(GLOB_RECURSE RANDOMIZER_DATA RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||||
|
"${CMAKE_CURRENT_SOURCE_DIR}/generator/data/*")
|
||||||
|
|
||||||
|
# Create an OBJECT library to hold all battery-embed generated files so we can add it
|
||||||
|
# to both the mod and the standalone generator
|
||||||
|
add_library(randomizer_embeds OBJECT)
|
||||||
|
|
||||||
|
b_embed(randomizer_embeds "res/shadow_crystal.bti")
|
||||||
|
foreach (RANDOMIZER_FILE IN LISTS RANDOMIZER_DATA)
|
||||||
|
if (RANDOMIZER_FILE MATCHES "^generator/data/tests")
|
||||||
|
continue()
|
||||||
|
endif ()
|
||||||
|
b_embed(randomizer_embeds "${RANDOMIZER_FILE}")
|
||||||
|
endforeach ()
|
||||||
|
|
||||||
|
add_mod(randomizer
|
||||||
|
FEATURES game
|
||||||
|
SOURCES src/mod.cpp ${RANDOMIZER_GENERATOR_SOURCES} ${RANDOMIZER_SOURCES}
|
||||||
|
MOD_JSON mod.json
|
||||||
|
RES_DIR res
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(randomizer PRIVATE yaml-cpp::yaml-cpp base64pp fmt::fmt randomizer_embeds)
|
||||||
|
|
||||||
|
string(LENGTH "${CMAKE_CURRENT_SOURCE_DIR}/" RANDOMIZER_SOURCE_PATH_SIZE)
|
||||||
|
target_compile_definitions(randomizer PRIVATE
|
||||||
|
RANDO_DATA_PATH="generator/data/"
|
||||||
|
SOURCE_PATH_SIZE=${RANDOMIZER_SOURCE_PATH_SIZE}
|
||||||
|
)
|
||||||
|
|
||||||
|
# standalone randomizer generator for testing
|
||||||
|
add_executable(randomizer_generator ${CMAKE_CURRENT_SOURCE_DIR}/generator/generator_only.cpp ${RANDOMIZER_GENERATOR_SOURCES})
|
||||||
|
target_link_libraries(randomizer_generator PRIVATE yaml-cpp::yaml-cpp base64pp fmt::fmt randomizer_embeds)
|
||||||
|
target_compile_definitions(randomizer_generator PRIVATE
|
||||||
|
RANDO_DATA_PATH="generator/data/"
|
||||||
|
SOURCE_PATH_SIZE=${RANDOMIZER_SOURCE_PATH_SIZE}
|
||||||
|
RANDO_SAVE_PATH="${CMAKE_BINARY_DIR}/randomizer/"
|
||||||
|
RANDOMIZER_ONLY)
|
||||||
|
|
||||||
|
# standalone tests
|
||||||
|
add_executable(randomizer_generator_tests ${CMAKE_CURRENT_SOURCE_DIR}/generator/test/test.cpp ${RANDOMIZER_GENERATOR_SOURCES})
|
||||||
|
target_link_libraries(randomizer_generator_tests PRIVATE yaml-cpp::yaml-cpp base64pp fmt::fmt randomizer_embeds)
|
||||||
|
target_compile_definitions(randomizer_generator_tests PRIVATE
|
||||||
|
RANDO_DATA_PATH="generator/data/"
|
||||||
|
SOURCE_PATH_SIZE=${RANDOMIZER_SOURCE_PATH_SIZE}
|
||||||
|
RANDO_SAVE_PATH="${CMAKE_BINARY_DIR}/randomizer/"
|
||||||
|
RANDO_LOGIC_TESTS_PATH="${CMAKE_SOURCE_DIR}/mods/randomizer/generator/data/tests/logic"
|
||||||
|
SETTINGS_PATH="${RANDO_SAVE_PATH}/randomizer_settings.yaml.test"
|
||||||
|
PREFERENCES_PATH="${RANDO_SAVE_PATH}/randomizer_preferences.yaml.test"
|
||||||
|
RANDOMIZER_ONLY)
|
||||||
+1
@@ -1,3 +1,4 @@
|
|||||||
|
Seed: TESTTESTTEST
|
||||||
Number of Path Hints: 4
|
Number of Path Hints: 4
|
||||||
Path Hints on Midna: Off
|
Path Hints on Midna: Off
|
||||||
Path Hints on Hint Signs: Dungeon
|
Path Hints on Hint Signs: Dungeon
|
||||||
+1
@@ -1,3 +1,4 @@
|
|||||||
|
Seed: TESTTESTTEST
|
||||||
Number of Path Hints: 4
|
Number of Path Hints: 4
|
||||||
Path Hints on Midna: Off
|
Path Hints on Midna: Off
|
||||||
Path Hints on Hint Signs: Overworld
|
Path Hints on Hint Signs: Overworld
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user