CUITileManager.h 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. //CUITileManager - [2020-04-13 11:57:47]
  2. #ifndef _CUITILEMANAGER_H_
  3. #define _CUITILEMANAGER_H_
  4. #include "CUITileScroller.h"
  5. #include "CUITile.h"
  6. /*
  7. 00147058 CUITileManager::CUITileManager(int)
  8. 001472B4 CUITileManager::~CUITileManager()
  9. 0013AD70 CUITileManager::AddButton(EUITileAction)
  10. 0014712C CUITileManager::Reset(bool)
  11. 001472A8 CUITileManager::SetButtons(uint64_t)
  12. 001472CC CUITileManager::GetHasButton(int)
  13. 001472DE CUITileManager::UpdateButtons()
  14. 00147368 CUITileManager::AddButtonTile(EUITileAction)
  15. 00147AFC CUITileManager::RemoveTile(CUITile *)
  16. 00147B46 CUITileManager::AddTile(float,float,CUITile *,bool,float,EHUDPosition)
  17. 00147C10 CUITileManager::ClearHighlights()
  18. 00147C2E CUITileManager::RemoveTiles(CUITile *)
  19. 00147CA8 CUITileManager::Process(bool,int *)
  20. 0014831C CUITileManager::AddDressing(EUIDressingType,EUIDressingPos,float,float,float)
  21. 00148358 CUITileManager::UpdateDressingPosition(EUIDressingType,EUIDressingPos,float,float,float)
  22. 00148398 CUITileManager::RenderBackground()
  23. 001483DC CUITileManager::SortTiles()
  24. 001483F4 CUITileManager::Render()
  25. 0014869C CUITileManager::RenderHUD()
  26. 00148858 CUITileManager::IncreaseMemory(int)
  27. 001488EE CUITileManager::AddTileWithRotation(float,float,CUITile *,CUITile *,bool,float)
  28. 00148920 CUITileManager::AddTileWithRotation(float,float,CUITile *,float,float,float,bool,float)
  29. 00148978 CUITileManager::GetPositionFromRotation(float &,float &,float,float,float)
  30. 00148A00 CUITileManager::BringTileToFront(CUITile *)
  31. 00148A44 CUITileManager::UpdateScreenSize()
  32. 00148AA0 CUITileManager::EnableAllTiles(bool)
  33. 0xB50
  34. */
  35. enum EUIDressingType {
  36. EUIDressingType_0,
  37. EUIDressingType_1,
  38. EUIDressingType_2,
  39. EUIDressingType_3,
  40. EUIDressingType_4,
  41. EUIDressingType_5,
  42. };
  43. enum EUIDressingPos {
  44. EUIDressingPos_0,
  45. EUIDressingPos_1,
  46. EUIDressingPos_2,
  47. EUIDressingPos_3,
  48. EUIDressingPos_4,
  49. EUIDressingPos_5,
  50. };
  51. //0x14
  52. struct TDressing {
  53. EUIDressingType eType_0; //148
  54. EUIDressingPos ePos_4; //14C
  55. float f_8; //150
  56. float f_C; //154
  57. float f_10; //158
  58. };
  59. class CUITileManager {
  60. public:
  61. CUITileManager(int a1); //00147058
  62. ~CUITileManager(); //001472B4
  63. void AddButton(EUITileAction); //0013AD70
  64. void Reset(bool); //0014712C
  65. void SetButtons(uint64_t); //001472A8
  66. bool GetHasButton(int); //001472CC
  67. void UpdateButtons(); //001472DE
  68. void AddButtonTile(EUITileAction) __attribute__((noinline)); //00147368
  69. void RemoveTile(CUITile *); //00147AFC
  70. void AddTile(float, float, CUITile *, bool, float, EHUDPosition); //00147B46
  71. void ClearHighlights(); //00147C10
  72. void RemoveTiles(CUITile *); //00147C2E
  73. EUITileAction Process(bool b1, int *pa2); //00147CA8
  74. void AddDressing(EUIDressingType, EUIDressingPos, float, float, float); //0014831C
  75. void UpdateDressingPosition(EUIDressingType, EUIDressingPos, float, float, float); //00148358
  76. void RenderBackground(); //00148398
  77. void SortTiles(); //001483DC
  78. void Render(); //001483F4
  79. void RenderHUD(); //0014869C
  80. void IncreaseMemory(int); //00148858
  81. void AddTileWithRotation(float, float, CUITile *, CUITile *, bool, float); //001488EE
  82. void AddTileWithRotation(float, float, CUITile *, float, float, float, bool, float); //00148920
  83. static void GetPositionFromRotation(float &f0,
  84. float &f1,
  85. float f2,
  86. float f3,
  87. float f4); //00148978
  88. void BringTileToFront(CUITile *); //00148A00
  89. void UpdateScreenSize(); //00148A44
  90. void EnableAllTiles(bool); //00148AA0
  91. uint dIndex_0; //计数器
  92. int *l_int_4;
  93. CUITile **ppCUITile_8;
  94. CUITile *pTile_C[31];
  95. int dCount_88;
  96. int dCount_8C;
  97. // uint64_t ull_90; //??? 此处 001473DE 显示90位置是一个int
  98. uint ul_90;
  99. uint ul_94;
  100. uint ul_98;
  101. uint ul_9C;
  102. int field_A0;
  103. int field_A4;
  104. CUITile *pTile_A8;
  105. CUITileScroller tTileScroller_AC;
  106. CUITileScroller tTileScroller_F4;
  107. uchar uy_13C;
  108. uchar uy_13D;
  109. bool b_13E;
  110. bool b_13F;
  111. uchar uy_140;
  112. uchar uy_141;
  113. uchar uy_142;
  114. uchar uy_143;
  115. int dIndexDressing_144;
  116. TDressing l_Dressing_148[128];
  117. volatile int field_B48;
  118. int field_B4C;
  119. static int UITILE_SCROLLBARW; //0033659C
  120. static float m_fTileScale; //003365A0
  121. static int UITILE_ADBAR_H; //00352E20
  122. };
  123. #endif //_CUITILEMANAGER_H_