World of Might and Magic
0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
|
См. документацию.
70 void Menu::EventLoop() {
108 WINDOW_INPUT_IN_PROGRESS)
141 WINDOW_INPUT_IN_PROGRESS) {
200 for (
uint i = 0; i < 28; i++) {
253 double v19 = (double)(
signed int)
uGammaPos * 0.1 + 0.6;
263 double v21 = (double)(
signed int)
uGammaPos * 0.1 + 0.6;
275 double v22 = (double)(
signed int)
uGammaPos * 0.1 + 0.6;
281 engine->ToggleBloodsplats();
284 render->ToggleColoredLights();
291 int new_level =
engine->config->music_level;
295 }
else if (
param == 5) {
300 new_level = (pt.
x - 263) / 17;
303 engine->SetMusicLevel(new_level);
311 int new_level =
engine->config->sound_level;
315 }
else if (
param == 5) {
320 new_level = (pt.
x - 263) / 17;
323 engine->SetSoundLevel(new_level);
330 engine->ToggleFlipOnExit();
333 engine->ToggleAlwaysRun();
336 engine->ToggleWalkSound();
339 engine->ToggleShowDamage();
342 int new_level =
engine->config->voice_level;
346 }
else if (
param == 5) {
351 new_level = (pt.
x - 263) / 17;
354 engine->SetVoiceLevel(new_level);
355 if (
engine->config->voice_level > 0)
405 render->ClearZBuffer(0, 479);
432 if (
engine->config->turn_speed == 0)
434 else if (
engine->config->turn_speed == 64)
436 else if (
engine->config->turn_speed == 128)
456 bool pKeyBindingFlag =
false;
458 for (
uint i = 0; i < 28; ++i) {
460 pKeyBindingFlag =
true;
462 if (!pKeyBindingFlag) {
463 for (
uint i = 0; i < 5; i++) {
470 for (
uint i = 0; i < 28; ++i) {
491 if (i > 3 && i != 25 && i != 26)
526 render->SaveScreenshot(
"gamma.pcx", 155, 117);
536 window->PeekMessageLoop();
unsigned int uLoadGameUI_SelectedSlot
void EnterText(int a2, int max_string_len, GUIWindow *pWindow)
void SetMasterVolume(int level)
const char * GetString(unsigned int index) const
void GUI_ReplaceHotkey(uint8_t uOldHotkey, uint8_t uNewHotkey, char bFirstCall)
std::array< bool, 28 > GameMenuUI_InvaligKeyBindingsFlags
void SetMusicVolume(int music_level)
GUIWindow * pGUIWindow_CurrentMenu
std::array< NPCTopic, 789 > pNPCTopics
void PlaySound(SoundID eSoundID, int pid, unsigned int uNumRepeats, int x, int y, int a7)
void GameUI_WritePointedObjectStatusString()
std::shared_ptr< Engine > engine
@ UIMSG_ChangeMusicVolume
Localization * localization
@ GAME_STATE_LOADING_GAME
void DoSavegame(unsigned int uSlot)
std::array< unsigned int, MAX_SAVE_SLOTS > pSavegameUsedSlots
Texture * GetImage_PCXFromFile(const String &name)
int receives_keyboard_input_2
@ UIMSG_ChangeVoiceVolume
@ GAME_STATE_GAME_QUITTING_TO_MAIN_MENU
enum CURRENT_SCREEN current_screen_type
@ SOUND_ClickMovingSelector
Image * gamma_preview_image
@ UIMSG_ToggleColoredLights
void SetKeyMapping(int uAction, int vKey, KeyToggleType type)
OptionsMenuSkin options_menu_skin
struct ViewingParams * viewparams
@ UIMSG_Game_OpenSaveGameDialog
@ UIMSG_Game_OpenOptionsDialog
char pPressedKeysBuffer[257]
void GameUI_StatusBar_Draw()
void StopChannels(int uStartChannel, int uEndChannel)
EGLSurface EGLNativeWindowType * window
@ UIMSG_OpenKeyMappingOptions
void PopMessage(UIMessageType *pMsg, int *pParam, int *a4)
unsigned int GetActionVKey(enum InputAction eAction)
void SetWindowInputStatus(int a2)
@ UIMSG_ChangeSoundVolume
@ UIMSG_Game_OpenLoadGameDialog
std::array< Image *, 5 > game_ui_options_controls
unsigned int game_ui_status_bar_event_string_time_left
std::array< unsigned int, 28 > pPrevVirtualCidesMapping
struct KeyboardActionMapping * pKeyActionMap
void __cdecl __debugbreak(void)
void GameUI_StatusBar_OnEvent(const String &str, unsigned int num_seconds)
@ GAME_STATE_NEWGAME_OUT_GAMEMENU
int dword_6BE364_game_settings_1
void LoadGame(unsigned int uSlot)
@ UIMSG_ToggleBloodsplats
void OS_SetAppInt(const char *pKey, int val)
@ SCREEN_KEYBOARD_OPTIONS
AudioPlayer * pAudioPlayer
struct GUIMessageQueue * pMessageQueue_50CBD0
@ UIMSG_GameMenu_ReturnToGame
int uGameMenuUI_CurentlySelectedKeyIdx
std::shared_ptr< IRender > render
std::array< SavegameHeader, MAX_SAVE_SLOTS > pSavegameHeader