123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- #include "FESU.h"
- #include "CGraphicsTexLoadOptions.h"
- #include "CMyProfile.h"
- #include "FE_Language.h"
- const int dword_2FE320[13] = {0, 0, 0, 1, 1, 1, 1, 2, 3, 4, 5, 6, 7};
- int FESU_iFont; //0035329C
- float g_fCurrentFontScaleX; //003532A0
- float g_fCurrentFontScaleY; //003532A4
- EFontMode FESU_eFontMode; //003532A8
- wchar_t sTmpCommaSeperated[256]; //003532AC
- //002FDE88
- const float flt_2FDE88[8] = {0.0277777779, 0.0277777779, 0.0277777779, 0.0199999996, 0.0199999996, 0.0199999996, 0.0199999996};
- //-------------------------------------------------------------------------------------------------
- //0014D16C //^_-
- //单元测试等级: 测试输入输出
- //单元测试结果: 0014D18A分支结果相同,其余分支结果未知
- int FESU_GetFontIndex(int d_r0_arg) {
- LOGI("FESU_GetFontIndex entry");
- //0014D194
- LOGI("FESU_GetFontIndex return 3");
- return 0;
- }
- //-------------------------------------------------------------------------------------------------
- //0014D1A0 //^_-
- //单元测试等级: 测试输入输出
- //单元测试结果: 能测试的分支输出都是相同的,没有数据的分支没有测试
- void FESU_GetFontDefaultScale(int d_r0_arg, float &f_r1_arg, float &f_r2_arg) {
- LOGI("FESU_GetFontDefaultScale entry");
- LOGI("FESU_GetFontDefaultScale end");
- }
- //-------------------------------------------------------------------------------------------------
- //0014D308 //^_-
- //单元测试等级: 测试输入输出
- //单元测试内容: 启动游戏到第2关(包括第2关)
- //单元测试结果: 能走到的分支,结果相同;未走到的分支在代码中已标注为"分支未测试"
- float FESU_SetFontScaleForWidth(wchar_t const *p_wc_r0_arg, float f_r1_arg) {
- LOGI("FESU_SetFontScaleForWidth entry");
- return 0;
- }
- //-------------------------------------------------------------------------------------------------
- //0014D38C
- void FESU_GetFontScale(float &, float &) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D3AC //^_^
- void FESU_SetFontScale(float f_r0_arg, float f_r1_arg) {
- LOGE("FESU_SetFontScale%f%f",f_r0_arg,f_r1_arg);
- }
- //-------------------------------------------------------------------------------------------------
- //0014D420 //^_- 自认为逻辑相同
- //单元测试等级: 无
- //单元测试结果: 无结果。玩了前两关游戏,函数并没有被调用到。查看IDA交叉引用,发现只有在FackBook相关的函数中被调用到
- float FESU_SetFontScaleForWidth(char const *pc_r0_arg, float f_r1_arg) {
- // LOGI("FESU_SetFontScaleForWidth entry");
- LOGE("FESU_SetFontScaleForWidth%p%f",pc_r0_arg,f_r1_arg);
- return (float)rand();
- }
- //-------------------------------------------------------------------------------------------------
- //0014D498 //^_-
- //单元测试等级: 测试输入输出
- //单元测试内容: 启动游戏到第6关(包括第6关)
- //单元测试结果: 相同
- //注意: 未测试的分支已标注为"分支未测试",原因是环境不支持或者IDA没有交叉引用
- float FESU_BalanceWithWrapWidth(wchar_t const *p_wc_r0_arg, float f_r1_arg, float f_r2_arg) {
- LOGI("FESU_BalanceWithWrapWidth entry");
- LOGE("FESU_SetFontScaleForWidth%p%f%f",p_wc_r0_arg,f_r1_arg,f_r2_arg);
- return (float)rand();
- }
- //-------------------------------------------------------------------------------------------------
- //0014D508 //^_-
- //单元测试等级: 测试输入输出
- //单元测试结果: 玩了前两关游戏,只产生一组数据,无法测试所有分支,这一组数据的测试结果相同
- wchar_t *FESU_GetCommaSeperatedString(long long ll_r0_r1_arg, int d_r2_arg) {
- LOGI("ZZFESU_GetCommaSeperatedString entry");
- LOGE("%lld%dFESU_GetCommaSeperatedString",ll_r0_r1_arg,d_r2_arg);
- return (wchar_t*)rand();
- }
- //-------------------------------------------------------------------------------------------------
- //0014D62C //^_^
- void FESU_SetFont(int d_r0_arg) {
- LOGE("FESU_SetFont%x",d_r0_arg);
- }
- //-------------------------------------------------------------------------------------------------
- //0014D658
- void FESU_GetFont() {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D668 //^_^
- float FESU_GetFontScale() {
- return g_fCurrentFontScaleX;
- }
- //-------------------------------------------------------------------------------------------------
- //0014D678 //^_-
- //单元测试等级: 目测游戏表现(本可以测试输入输出的,但是进入我们的hook函数后,调用原始函数会崩溃,调用自己的函数就正常)
- //单元测试内容: 启动游戏到第2关(包括第2关)
- //单元测试结果: 正常
- void FESU_Capitalize(wchar_t *p_wc_r0_arg, wchar_t const *p_wc_r1_arg, int d_r2_arg) {
- LOGI("FESU_Capitalize entry%x%x%x",p_wc_r0_arg,p_wc_r1_arg,d_r2_arg);
- }
- //-------------------------------------------------------------------------------------------------
- //0014D6EC //^_-
- //单元测试等级: 目测游戏表现
- //单元测试内容: 启动游戏到第5关(包括第5关)
- //单元测试结果: 正常
- void FESU_WordsStartWithCapital(wchar_t *p_wc_r0_arg) {
- LOGI("FESU_WordsStartWithCapital entry");
- LOGI("FESU_WordsStartWithCapital end");
- }
- //-------------------------------------------------------------------------------------------------
- //0014D748
- void FESU_DrawTextDropShadowCol(wchar_t const *, float, float, uint, uint) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D75C
- void FESU_DrawTextDropShadowColOffset(wchar_t const *, float, float, uint, uint, float) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D7F8
- void FESU_ExtractInteger(wchar_t *) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D83C
- void FESU_IsAlNum(char) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D85C
- void FESU_PrintOutline(float, float, wchar_t const *, uint, uint) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D8E8 //^_^
- void FESU_FreeFonts() {
- }
- //-------------------------------------------------------------------------------------------------
- //0014D8F8 //^_^
- void FESU_LoadFonts() {
- }
- //-------------------------------------------------------------------------------------------------
- //0014DA58 //^_-
- //单元测试等级: 目测游戏表现
- //单元测试内容: 启动游戏到第2关(包括第2关)
- //单元测试结果: 正常
- TextDimensions FESU_DrawText(float f_r1_arg, float f_r2_arg, float f_r3_arg,
- float f_arg_0, wchar_t const *p_wc_arg_4, EFontAlign efontalign_arg_8,
- float f_arg_c, float f_arg_10) {
- LOGI("FESU_DrawText entry");
- TextDimensions textdimension_ret_value = {0};
- return textdimension_ret_value;
- }
- //-------------------------------------------------------------------------------------------------
- //0014DC2C
- void FESU_DrawCurveText(wchar_t const *, float, float, float) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014DD18
- void FESU_RemoveSpecialCharacters(wchar_t *) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014DE94 //^_^
- void FESU_PrintRotWood(float f_r0_arg, float f_r1_arg, wchar_t const *p_wc_r2_arg,
- float f_r3_arg, float f_arg_0, float f_arg_4) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014DF3C //^_^
- void FESU_PrintRotWoodWhite(float f_r0_arg, float f_r1_arg, wchar_t const *p_wc_r2_arg, float f_r3_arg,
- float f_arg_0, float f_arg_4, bool b_arg_8) {
- }
- //-------------------------------------------------------------------------------------------------
- //0014DFE4 //^_^
- bool FESU_IsFontCJK() {
- return 0;
- }
- //-------------------------------------------------------------------------------------------------
|