37 lines
727 B
C
37 lines
727 B
C
#pragma once
|
|
|
|
#include <windows.h>
|
|
|
|
enum game_id {
|
|
GAME_INVALID,
|
|
|
|
GAME_HI3_GLB,
|
|
GAME_HI3_SEA,
|
|
GAME_HI3_CN,
|
|
GAME_HI3_TW,
|
|
GAME_HI3_KR,
|
|
GAME_HI3_JP,
|
|
|
|
GAME_HSR_OS,
|
|
GAME_HSR_CN
|
|
};
|
|
|
|
#define INVOKE_CALLBACK(callback, ...) if (callback) { callback(__VA_ARGS__); }
|
|
|
|
typedef void (*unityplayer_callback_t)(HMODULE unityModule);
|
|
|
|
struct game_data {
|
|
enum game_id id; // Temporary
|
|
const char *base_module_name;
|
|
const char *assembly_name;
|
|
const char *txs_section_name;
|
|
const char *tvm_section_name;
|
|
|
|
unityplayer_callback_t unityplayer_callback;
|
|
};
|
|
|
|
void game_detect(struct game_data *buf);
|
|
|
|
void hi3_fill_data(struct game_data *buf);
|
|
void hsr_fill_data(struct game_data *buf);
|