1. int __cdecl CVar::RegisterAll()
  2. {
  3. const char *v0; // eax@1
  4. const char *v1; // esi@3
  5. int v2; // eax@3
  6. int v3; // eax@4
  7. char a1; // [sp+0h] [bp-80h]@3
  8. dword_BD08F0 = CVar::Register("deselectOnClick", "Clear the target when clicking on terrain", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  9. v0 = L"1";
  10. if ( dword_C5DE9C != 1 )
  11. v0 = L"0";
  12. dword_BD08F4 = CVar::Register(
  13. "autoInteract",
  14. "Toggles auto-move to interact target",
  15. 16,
  16. v0,
  17. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512700,
  18. CATEGORY_Game,
  19. 0,
  20. 0,
  21. 0);
  22. dword_BD08F8 = CVar::Register("autoStand", "Automatically stand when needed", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  23. dword_BD08FC = CVar::Register("autoDismount", "Automatically dismount when needed", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  24. dword_BD0900 = CVar::Register(
  25. "autoDismountFlying",
  26. "If enabled, your character will automatically dismount before casting while flying",
  27. 16,
  28. L"0",
  29. 0,
  30. CATEGORY_Game,
  31. 0,
  32. 0,
  33. 0);
  34. dword_BD0904 = CVar::Register("autoUnshift", "Automatically leave shapeshift form when needed", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  35. dword_BD0908 = CVar::Register("autoClearAFK", "Automatically clear AFK when moving or chatting", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  36. dword_BD090C = CVar::Register("blockTrades", "Whether to automatically block trade requests", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  37. dword_BD0910 = CVar::Register("lootUnderMouse", "Whether the loot window should open under the mouse", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  38. dword_BD0914 = CVar::Register("autoLootDefault", "Automatically loot items when the loot window opens", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  39. CVar::Register("alwaysCompareItems", "Always show item comparison tooltips", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  40. CVar::Register("equipmentManager", "Enables the equipment management UI", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  41. dword_BD0918 = CVar::Register("assistAttack", "Whether to start attacking after an assist", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  42. dword_BD091C = CVar::Register(
  43. "autoRangedCombat",
  44. "Whether your character will automatically switch between auto attack and auto shot",
  45. 16,
  46. L"1",
  47. 0,
  48. CATEGORY_Game,
  49. 0,
  50. 0,
  51. 0);
  52. dword_BD0920 = CVar::Register(
  53. "autoSelfCast",
  54. "Whether spells should automatically be cast on you if you don't have a valid target",
  55. 32,
  56. L"1",
  57. 0,
  58. CATEGORY_Game,
  59. 0,
  60. 0,
  61. 0);
  62. dword_BD0924 = CVar::Register(
  63. "stopAutoAttackOnTargetChange",
  64. "Whether to stop attacking when changing targets",
  65. 32,
  66. L"0",
  67. 0,
  68. CATEGORY_Game,
  69. 0,
  70. 0,
  71. 0);
  72. dword_BD0928 = CVar::Register("showTargetOfTarget", "Whether the target of target frame should be shown", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  73. dword_BD092C = CVar::Register(
  74. "targetOfTargetMode",
  75. "The conditions under which target of target should be shown",
  76. 16,
  77. L"5",
  78. 0,
  79. CATEGORY_Game,
  80. 0,
  81. 0,
  82. 0);
  83. dword_BD0930 = CVar::Register("showTargetCastbar", "Show the spell your current target is casting", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  84. dword_BD0934 = CVar::Register(
  85. "showVKeyCastbar",
  86. "If the V key display is up for your current target, show the enemy cast bar with the target's health bar in the game field",
  87. 16,
  88. L"1",
  89. 0,
  90. CATEGORY_Game,
  91. 0,
  92. 0,
  93. 0);
  94. LODWORD(dword_BD093C) = CVar::Register(
  95. "rotateMinimap",
  96. "Whether to rotate the entire minimap instead of the player arrow",
  97. 16,
  98. L"0",
  99. 0,
  100. CATEGORY_Game,
  101. 0,
  102. 0,
  103. 0);
  104. dword_BD0940 = CVar::Register("minimapZoom", "The current outdoor minimap zoom level", 32, L"3", 0, CATEGORY_Game, 0, 0, 0);
  105. dword_BD0944 = CVar::Register("minimapInsideZoom", "The current indoor minimap zoom level", 32, L"3", 0, CATEGORY_Game, 0, 0, 0);
  106. dword_BD0948 = CVar::Register("minimapPortalMax", "Max Number of Portals to traverse for minimap", 32, "99", 0, CATEGORY_Game, 0, 0, 0);
  107. dword_BD08E8 = CVar::Register("scriptErrors", "Whether or not the UI shows Lua errors", 16, L"0", 0, CATEGORY_Default, 0, 0, 0);
  108. dword_BD094C = CVar::Register(
  109. "screenEdgeFlash",
  110. "Whether to show a red flash while you are in combat with the world map up",
  111. 16,
  112. L"1",
  113. 0,
  114. CATEGORY_Game,
  115. 0,
  116. 0,
  117. 0);
  118. dword_BD0950 = CVar::Register("showLootSpam", "Whether to show verbose loot rolls", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  119. dword_BD0954 = CVar::Register(
  120. "displayFreeBagSlots",
  121. "Whether or not the backpack button should indicate how many inventory slots you've got free",
  122. 16,
  123. L"0",
  124. 0,
  125. CATEGORY_Game,
  126. 0,
  127. 0,
  128. 0);
  129. dword_BD0958 = CVar::Register("displayWorldPVPObjectives", "Whether to show world PvP objectives", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  130. CVar::Register("showClock", "Whether to display the time manager's clock button", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  131. CVar::Register("colorblindMode", "Enables colorblind accessibility features in the game", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  132. CVar::Register("questFadingDisable", "Whether to disable quest text slowly fading in", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  133. CVar::Register("autoQuestWatch", "Whether to automatically watch all quests when you obtain them", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  134. CVar::Register("autoQuestProgress", "Whether to automatically watch all quests when they are updated", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  135. CVar::Register(
  136. "showQuestTrackingTooltips",
  137. "Displays quest tracking information in unit and object tooltips",
  138. 32,
  139. L"1",
  140. 0,
  141. CATEGORY_Game,
  142. 0,
  143. 0,
  144. 0);
  145. CVar::Register("mapQuestDifficulty", "Whether to color quest titles by difficulty in the World Map", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  146. dword_BD0A34 = CVar::Register(
  147. "questLogCollapseFilter",
  148. "bit filed for saving off the state of the headers in Quest Log",
  149. 32,
  150. L"0",
  151. 0,
  152. CATEGORY_Game,
  153. 0,
  154. 0,
  155. 0);
  156. sub_766940((void *)dword_BD0A34, -1, 1, 0, 0, 1);
  157. CVar::Register("advancedWatchFrame", "Enables advanced Objectives tracking features", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  158. CVar::Register("watchFrameIgnoreCursor", "Disables Objectives frame mouseover and title dropdown.", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  159. CVar::Register("watchFrameBaseAlpha", "Objectives frame opacity.", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  160. CVar::Register("watchFrameState", "Stores Objectives frame locked and collapsed states", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  161. CVar::Register("showQuestObjectivesOnMap", "Shows quest POIs on the main map.", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  162. CVar::Register("trackedQuests", "Internal cvar for saving tracked quests in order", 288, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  163. CVar::Register("trackedAchievements", "Internal cvar for saving tracked achievements in order", 288, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  164. CVar::Register("flaggedTutorials", "Internal cvar for saving compleated tutorials in order", 272, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  165. CVar::Register("advancedWorldMap", "Enables advanced World Map features", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  166. CVar::Register("worldMapOpacity", "Opacity for the world map when sized down", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  167. CVar::Register("watchFrameWidth", "Controls objectives frame width", 0, L"0", 0, CATEGORY_Game, 0, 0, 0);
  168. dword_BD0A40 = CVar::Register("trackerSorting", "sorting option for the objectives tracker", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  169. CVar::Register("trackerFilter", "filter option for the objectives tracker", 32, L"7", 0, CATEGORY_Game, 0, 0, 0);
  170. dword_BD095C = CVar::Register("profanityFilter", "Whether to enable mature language filtering", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  171. dword_BD0960 = CVar::Register("spamFilter", "Whether to enable spam filtering", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  172. dword_BD0964 = CVar::Register("chatBubbles", "Whether to show in-game chat bubbles", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  173. dword_BD0968 = CVar::Register("chatBubblesParty", "Whether to show in-game chat bubbles for party chat", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  174. dword_BD096C = CVar::Register("removeChatDelay", "Remove Chat Hover Delay", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  175. dword_BD0970 = CVar::Register(
  176. "guildShowOffline",
  177. "Show offline guild members in the guild UI",
  178. 16,
  179. L"1",
  180. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512730,
  181. CATEGORY_Game,
  182. 0,
  183. 0,
  184. 0);
  185. dword_BD0974 = CVar::Register("guildMemberNotify", "Receive notification when guild members log on/off", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  186. dword_BD0978 = CVar::Register(
  187. "guildRecruitmentChannel",
  188. "Whether to automatically join the guild recruitment channel when not in a guild",
  189. 16,
  190. L"1",
  191. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512750,
  192. CATEGORY_Game,
  193. 0,
  194. 0,
  195. 0);
  196. CVar::Register("lfgAutoFill", "Whether to automatically add party members while looking for a group", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  197. CVar::Register("lfgAutoJoin", "Whether to automatically join a party while looking for a group", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  198. CVar::Register("friendsViewButtons", "Whether to show the friends list view buttons", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  199. CVar::Register("friendsSmallView", "Whether to use smaller buttons in the friends list", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  200. CVar::Register("chatStyle", "The style of Edit Boxes for the ChatFrame. Valid values: \"classic\", \"im\"", 16, "im", 0, CATEGORY_Game, 0, 0, 0);
  201. CVar::Register(
  202. "wholeChatWindowClickable",
  203. "Whether the user may click anywhere on a chat window to change EditBox focus (only works in IM style)",
  204. 16,
  205. L"1",
  206. 0,
  207. CATEGORY_Game,
  208. 0,
  209. 0,
  210. 0);
  211. CVar::Register(
  212. "conversationMode",
  213. "The action new Real ID Conversations take by default: \"popout\", \"inline\"",
  214. 16,
  215. "popout",
  216. 0,
  217. CATEGORY_Game,
  218. 0,
  219. 0,
  220. 0);
  221. CVar::Register("showTimestamps", "The format of timestamps in chat or \"none\"", 16, "none", 0, CATEGORY_Game, 0, 0, 0);
  222. CVar::Register("chatMouseScroll", "Whether the user can use the mouse wheel to scroll through chat", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  223. CVar::Register("lockActionBars", "Whether the action bars should be locked, preventing changes", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  224. CVar::Register("alwaysShowActionBars", "Whether to always show the action bar grid", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  225. dword_BD097C = CVar::Register(
  226. "secureAbilityToggle",
  227. "Whether you should be protected against accidentally double-clicking an aura",
  228. 16,
  229. L"1",
  230. 0,
  231. CATEGORY_Game,
  232. 0,
  233. 0,
  234. 0);
  235. sub_7E6150();
  236. dword_BD0980 = CVar::Register("CombatDamage", "Display damage numbers over hostile creatures when damaged", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  237. dword_BD0984 = CVar::Register("CombatLogPeriodicSpells", "Display damage caused by periodic effects", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  238. dword_BD0988 = CVar::Register("PetMeleeDamage", "Display pet melee damage in the world", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  239. dword_BD098C = CVar::Register("PetSpellDamage", "Display pet spell damage in the world", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  240. dword_BD0990 = CVar::Register("CombatHealing", "Display amount of healing you did to the target", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  241. CVar::Register("enableCombatText", "Whether to show floating combat text", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  242. CVar::Register("combatTextFloatMode", "The combat text float mode", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  243. CVar::Register("fctCombatState", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  244. CVar::Register("fctDodgeParryMiss", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  245. CVar::Register("fctDamageReduction", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  246. CVar::Register("fctRepChanges", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  247. CVar::Register("fctReactives", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  248. CVar::Register("fctFriendlyHealers", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  249. CVar::Register("fctComboPoints", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  250. CVar::Register("fctLowManaHealth", 0, 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  251. CVar::Register("fctEnergyGains", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  252. CVar::Register("fctPeriodicEnergyGains", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  253. CVar::Register("fctHonorGains", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  254. CVar::Register("fctAuras", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  255. CVar::Register("fctAllSpellMechanics", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  256. CVar::Register("fctSpellMechanics", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  257. CVar::Register("fctSpellMechanicsOther", 0, 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  258. CVar::Register("xpBarText", "Whether the XP bar shows the numeric experience value", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  259. CVar::Register("playerStatusText", "Whether the player portrait shows numeric health/mana values", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  260. CVar::Register("petStatusText", "Whether the pet portrait shows numeric health/mana values", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  261. CVar::Register("partyStatusText", "Whether the party portraits shows numeric health/mana values", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  262. CVar::Register("targetStatusText", "Whether the target portrait shows numeric health/mana values", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  263. CVar::Register(
  264. "statusTextPercentage",
  265. "Whether numeric health/mana values are shown as raw values or percentages",
  266. 16,
  267. L"0",
  268. 0,
  269. CATEGORY_Game,
  270. 0,
  271. 0,
  272. 0);
  273. CVar::Register("showPartyBackground", "Show a background behind party members", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  274. CVar::Register("partyBackgroundOpacity", "The opacity of the party background", 16, "0.5", 0, CATEGORY_Game, 0, 0, 0);
  275. CVar::Register("hidePartyInRaid", "Whether to hide the party UI while in a raid", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  276. CVar::Register("showPartyPets", "Whether to show pets in the party UI", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  277. CVar::Register("showRaidRange", "Show range indicator in raid UI", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  278. CVar::Register("showArenaEnemyFrames", "Show arena enemy frames while in an Arena", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  279. CVar::Register("showArenaEnemyCastbar", "Show the spell enemies are casting on the Arena Enemy frames", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  280. CVar::Register("showArenaEnemyPets", "Show the enemy team's pets on the ArenaEnemy frames", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  281. CVar::Register("fullSizeFocusFrame", "Increases the size of the focus frame to that of the target frame", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  282. dword_BD0938 = CVar::Register("buffDurations", "Whether to show buff durations", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  283. CVar::Register("showDispelDebuffs", "Show only Debuffs that the player can dispel. Only applies to raids.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  284. CVar::Register("showCastableBuffs", "Show only Buffs the player can cast. Only applies to raids.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  285. CVar::Register("consolidateBuffs", "Consolidates buffs displayed for the player.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  286. CVar::Register("showCastableDebuffs", "Show only debuffs the player can apply.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  287. dword_BD0A48 = CVar::Register(
  288. "showToastOnline",
  289. "Whether to show Battle.net message for friend coming online",
  290. 16,
  291. L"1",
  292. 0,
  293. CATEGORY_Game,
  294. 0,
  295. 0,
  296. 0);
  297. dword_BD0A4C = CVar::Register(
  298. "showToastOffline",
  299. "Whether to show Battle.net message for friend going offline",
  300. 16,
  301. L"1",
  302. 0,
  303. CATEGORY_Game,
  304. 0,
  305. 0,
  306. 0);
  307. dword_BD0A50 = CVar::Register("showToastBroadcast", "Whether to show Battle.net message for broadcasts", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  308. dword_BD0A44 = CVar::Register(
  309. "showToastFriendRequest",
  310. "Whether to show Battle.net message for friend requests",
  311. 16,
  312. L"1",
  313. 0,
  314. CATEGORY_Game,
  315. 0,
  316. 0,
  317. 0);
  318. dword_BD0A54 = CVar::Register(
  319. "showToastConversation",
  320. "Whether to show Battle.net message for conversations",
  321. 16,
  322. L"1",
  323. 0,
  324. CATEGORY_Game,
  325. 0,
  326. 0,
  327. 0);
  328. CVar::Register("showToastWindow", "Whether to show Battle.net system messages in a toast window", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  329. CVar::Register("toastDuration", "How long to display Battle.net toast windows, in seconds", 16, L"4", 0, CATEGORY_Game, 0, 0, 0);
  330. sub_5FD910();
  331. CVar::Register("showNewbieTips", "Show beginner tooltips", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  332. CVar::Register("UberTooltips", "Show verbose tooltips", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  333. CVar::Register("showItemLevel", "Show item level in the tooltip", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  334. CVar::Register("showTutorials", "display tutorials", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  335. dword_BD0998 = CVar::Register(
  336. "calendarShowWeeklyHolidays",
  337. "Whether weekly holidays should appear in the calendar",
  338. 32,
  339. L"1",
  340. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127A0,
  341. CATEGORY_Game,
  342. 0,
  343. 0,
  344. 0);
  345. dword_BD099C = CVar::Register(
  346. "calendarShowDarkmoon",
  347. "Whether Darkmoon Faire holidays should appear in the calendar",
  348. 32,
  349. L"1",
  350. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127A0,
  351. CATEGORY_Game,
  352. 0,
  353. 0,
  354. 0);
  355. dword_BD09A0 = CVar::Register(
  356. "calendarShowBattlegrounds",
  357. "Whether Battleground holidays should appear in the calendar",
  358. 32,
  359. L"0",
  360. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127A0,
  361. CATEGORY_Game,
  362. 0,
  363. 0,
  364. 0);
  365. dword_BD09A4 = CVar::Register(
  366. "calendarShowLockouts",
  367. "Whether raid lockouts should appear in the calendar",
  368. 32,
  369. L"1",
  370. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127A0,
  371. CATEGORY_Game,
  372. 0,
  373. 0,
  374. 0);
  375. dword_BD09A8 = CVar::Register(
  376. "calendarShowResets",
  377. "Whether raid resets should appear in the calendar",
  378. 32,
  379. L"0",
  380. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127A0,
  381. CATEGORY_Game,
  382. 0,
  383. 0,
  384. 0);
  385. dword_BD09B8 = CVar::Register("nameplateShowEnemies", 0, 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  386. dword_BD09BC = CVar::Register("nameplateShowEnemyPets", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  387. dword_BD09C0 = CVar::Register("nameplateShowEnemyGuardians", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  388. dword_BD09C4 = CVar::Register("nameplateShowEnemyTotems", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  389. dword_BD09C8 = CVar::Register("nameplateShowFriends", 0, 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  390. dword_BD09CC = CVar::Register("nameplateShowFriendlyPets", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  391. dword_BD09D0 = CVar::Register("nameplateShowFriendlyGuardians", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  392. dword_BD09D4 = CVar::Register("nameplateShowFriendlyTotems", 0, 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  393. dword_BD09D8 = CVar::Register(
  394. "nameplateAllowOverlap",
  395. "switches between overlapping nameplates or the (old) never overlapping version",
  396. 32,
  397. L"1",
  398. 0,
  399. CATEGORY_Game,
  400. 0,
  401. 0,
  402. 0);
  403. dword_BD09DC = CVar::Register(
  404. "unitHighlights",
  405. "Whether the highlight circle around units should be displayed",
  406. 16,
  407. L"1",
  408. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_518BD0,
  409. CATEGORY_Game,
  410. 0,
  411. 0,
  412. 0);
  413. dword_BD09E0 = CVar::Register("enablePVPNotifyAFK", "The ability to shutdown the AFK notification system", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  414. SStrPrintf(&a1, 128, "%d", 3);
  415. dword_BD09E4 = CVar::Register("serviceTypeFilter", "Which trainer services to show", 16, &a1, 0, CATEGORY_Game, 0, 0, 0);
  416. dword_BD09E8 = CVar::Register(
  417. "autojoinPartyVoice",
  418. "Automatically join the voice session in party/raid chat",
  419. 16,
  420. L"1",
  421. 0,
  422. CATEGORY_Game,
  423. 0,
  424. 0,
  425. 0);
  426. dword_BD09EC = CVar::Register("autojoinBGVoice", "Automatically join the voice session in battleground chat", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  427. CVar::Register("PushToTalkSound", "Play a sound when voice recording activates and deactivates", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  428. CVar::Register("combatLogOn", "Whether or not the combat log is shown", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  429. CVar::Register("showKeyring", "Whether or not the keyring is shown", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  430. CVar::Register("showBattlefieldMinimap", "Whether or not the battlefield minimap is shown", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  431. CVar::Register("playerStatLeftDropdown", "The player stat selected in the left dropdown", 32, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  432. CVar::Register("playerStatRightDropdown", "The player stat selected in the right dropdown", 32, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  433. CVar::Register("talentFrameShown", "The talent UI has been shown", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  434. CVar::Register("auctionDisplayOnCharacter", "Show auction items on the dress-up paperdoll", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  435. CVar::Register("addFriendInfoShown", "The info for Add Friend has been shown", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  436. CVar::Register("pendingInviteInfoShown", "The info for pending invites has been shown", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  437. v1 = L"1";
  438. v2 = sub_635D90(&byte_C5DE88) - 2;
  439. if ( !v2 || (v3 = v2 - 3) == 0 || v3 == 5 )
  440. v1 = L"0";
  441. CVar::Register("timeMgrUseMilitaryTime", "Toggles the display of either 12 or 24 hour time", 16, v1, 0, CATEGORY_Game, 0, 0, 0);
  442. CVar::Register("timeMgrUseLocalTime", "Toggles the use of either the realm time or your system time", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  443. CVar::Register("timeMgrAlarmTime", "The time manager's alarm time in minutes", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  444. CVar::Register("timeMgrAlarmMessage", "The time manager's alarm message", 16, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  445. CVar::Register("timeMgrAlarmEnabled", "Toggles whether or not the time manager's alarm will go off", 16, L"0", 0, CATEGORY_Game, 0, 0, 0);
  446. dword_BD09F0 = CVar::Register(
  447. "combatLogRetentionTime",
  448. "The maximum duration in seconds to retain combat log entries",
  449. 16,
  450. "300",
  451. 0,
  452. CATEGORY_Game,
  453. 0,
  454. 0,
  455. 0);
  456. dword_BD09F4 = CVar::Register("currencyTokensUnused1", "Currency token types marked as unused.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  457. dword_BD09F8 = CVar::Register("currencyTokensUnused2", "Currency token types marked as unused.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  458. dword_BD09FC = CVar::Register("currencyTokensBackpack1", "Currency token types shown on backpack.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  459. dword_BD0A00 = CVar::Register("currencyTokensBackpack2", "Currency token types shown on backpack.", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  460. CVar::Register("showTokenFrame", "The token UI has been shown", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  461. CVar::Register("showTokenFrameHonor", "The token UI has shown Honor", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  462. dword_BD0A04 = CVar::Register("predictedHealth", "Whether or not to use predicted health values in the UI", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  463. dword_BD0A08 = CVar::Register("predictedPower", "Whether or not to use predicted power values in the UI", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  464. dword_BD0A0C = CVar::Register(
  465. "threatWarning",
  466. "Whether or not to show threat warning UI (0 = off, 1 = in dungeons, 2 = in party/raid, 3 = always)",
  467. 32,
  468. L"3",
  469. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_51D990,
  470. CATEGORY_Game,
  471. 0,
  472. 0,
  473. 0);
  474. dword_BD0A10 = CVar::Register("threatWorldText", "Whether or not to show threat floaters in combat", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  475. dword_BD0A14 = CVar::Register(
  476. "threatShowNumeric",
  477. "Whether or not to show numeric threat on the target and focus frames",
  478. 16,
  479. L"0",
  480. 0,
  481. CATEGORY_Game,
  482. 0,
  483. 0,
  484. 0);
  485. dword_BD0A18 = CVar::Register(
  486. "threatPlaySounds",
  487. "Whether or not to sounds when certain threat transitions occur",
  488. 16,
  489. L"1",
  490. 0,
  491. CATEGORY_Game,
  492. 0,
  493. 0,
  494. 0);
  495. sub_7F3A10();
  496. dword_BD0A1C = CVar::Register("ShowAllSpellRanks", "show either all spell ranks, or only the highest rank", 16, L"1", 0, CATEGORY_Game, 0, 0, 0);
  497. dword_BD0A20 = CVar::Register(
  498. "ShowClassColorInNameplate",
  499. "use this to display the class color in the nameplate health bar",
  500. 32,
  501. L"0",
  502. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512770,
  503. CATEGORY_Game,
  504. 0,
  505. 0,
  506. 0);
  507. dword_BD0A24 = CVar::Register(
  508. "previewTalents",
  509. "Toggles the ability to preview talents before spending talent points.",
  510. 32,
  511. L"0",
  512. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_5127D0,
  513. CATEGORY_Game,
  514. 0,
  515. 0,
  516. 0);
  517. dword_BD0A28 = CVar::Register("lfgSelectedRoles", "Stores what roles the player is willing to take on.", 288, L"0", 0, CATEGORY_Game, 0, 0, 0);
  518. dword_BD0A2C = CVar::Register("lfdCollapsedHeaders", "Stores which LFD headers are collapsed.", 288, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  519. dword_BD0A30 = CVar::Register("lfdSelectedDungeons", "Stores which LFD dungeons are selected.", 288, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  520. CVar::Register(
  521. "lastTalkedToGM",
  522. "Stores the last GM someone was talking to in case they reload the UI while the GM chat window is open.",
  523. 16,
  524. &byte_9E14FF,
  525. 0,
  526. CATEGORY_Game,
  527. 0,
  528. 0,
  529. 0);
  530. CVar::Register(
  531. "autoCompleteResortNamesOnRecency",
  532. "Shows people you recently spoke with higher up on the AutoComplete list.",
  533. 16,
  534. L"1",
  535. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512830,
  536. CATEGORY_Game,
  537. 0,
  538. 0,
  539. 0);
  540. CVar::Register(
  541. "autoCompleteWhenEditingFromCenter",
  542. "If you edit a name by inserting characters into the center, a smarter auto-complete will occur.",
  543. 16,
  544. L"1",
  545. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512850,
  546. CATEGORY_Game,
  547. 0,
  548. 0,
  549. 0);
  550. CVar::Register(
  551. "autoCompleteUseContext",
  552. "The system will, for example, only show people in your guild when you are typing /gpromote. Names will also never be removed.",
  553. 16,
  554. L"1",
  555. (int (__cdecl *)(_DWORD, _DWORD, _DWORD, _DWORD))sub_512870,
  556. CATEGORY_Game,
  557. 0,
  558. 0,
  559. 0);
  560. CVar::Register(
  561. "colorChatNamesByClass",
  562. "If enabled, the name of a player speaking in chat will be colored according to his class.",
  563. 16,
  564. L"0",
  565. 0,
  566. CATEGORY_Game,
  567. 0,
  568. 0,
  569. 0);
  570. dword_BD0A38 = CVar::Register(
  571. "autoFilledMultiCastSlots",
  572. "Bitfield that saves whether multi-cast slots have been automatically filled.",
  573. 32,
  574. L"0",
  575. 0,
  576. CATEGORY_Game,
  577. 0,
  578. 0,
  579. 0);
  580. CVar::Register("minimapTrackedInfo", "Stores the minimap tracking that was active last session.", 32, &byte_9E14FF, 0, CATEGORY_Game, 0, 0, 0);
  581. dword_BD0A3C = CVar::Register("questPOI", "If enabled, the quest POI system will be used.", 32, L"1", 0, CATEGORY_Game, 0, 0, 0);
  582. CVar::Register("miniWorldMap", "Whether or not the world map has been toggled to smaller size", 32, L"0", 0, CATEGORY_Game, 0, 0, 0);
  583. return CVar::Register(
  584. "dontShowEquipmentSetsOnItems",
  585. "Don't show which equipment sets an item is associated with",
  586. 16,
  587. L"0",
  588. 0,
  589. CATEGORY_Game,
  590. 0,
  591. 0,
  592. 0);
  593. }