World of Might and Magic
0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
|
См. документацию.
356 #define ENUM_TO_STRING_CASE(val) case val: return #val;
358 switch (windowType) {
425 #define WINDOW_INPUT_NONE 0
426 #define WINDOW_INPUT_IN_PROGRESS 1
427 #define WINDOW_INPUT_CONFIRMED 2
428 #define WINDOW_INPUT_CANCELLED 3
436 GUIWindow(
WindowType windowType,
unsigned int uX,
unsigned int uY,
unsigned int uWidth,
unsigned int uHeight,
int pButton,
const String &hint =
String());
441 const std::vector<Image*> &
textures = std::vector<Image*>());
443 bool Contains(
unsigned int x,
unsigned int y);
446 int DrawTextInRect(
GUIFont *font,
unsigned int x,
unsigned int y,
unsigned int color,
const char *text,
int rect_width,
int reverse_text);
449 void DrawText(
GUIFont *font,
int x,
int y,
unsigned short uFontColor,
const char *str,
bool present_time_transparency =
false,
int max_text_height = 0,
int uFontShadowColor = 0);
450 void DrawText(
GUIFont *font,
int x,
int y,
unsigned short uFontColor,
const String &str,
bool present_time_transparency =
false,
int max_text_height = 0,
int uFontShadowColor = 0);
452 void DrawTitleText(
GUIFont *font,
int horizontal_margin,
int vertical_margin,
unsigned __int16 uDefaultColor,
const char *pInString,
int line_spacing);
453 void DrawTitleText(
GUIFont *font,
int horizontal_margin,
int vertical_margin,
unsigned __int16 uDefaultColor,
const String &str,
int line_spacing);
651 #define AddGUIMessage(msg, param, a4) \
652 AddMessageImpl((msg), (param), (a4), __FILE__, __LINE__)
662 const char *file =
nullptr,
int line = 0);
699 unsigned int uW,
unsigned int uZoom,
700 unsigned int bRedrawOdmMinimap);
720 signed int skill_level);
726 void DrawPopupWindow(
unsigned int uX,
unsigned int uY,
unsigned int uWidth,
727 unsigned int uHeight);
758 struct ItemGen *a3,
char *a4,
int a5,
761 struct ItemGen *a3,
char *a4,
int shop_screen,
unsigned int ui_book_calendar_time_color
void OnPaperdollLeftClick()
@ UIMSG_PlayerCreationClickPlus
@ WINDOW_CharacterCreationBtn
unsigned int ui_book_quests_text_color
@ UIMSG_PlayerCreationRemoveDownSkill
@ UIMSG_HintSelectRemoveQuickSpellBtn
void GameUI_DrawRightPanel()
unsigned int ui_book_calendar_day_color
bool receives_keyboard_input
void DrawText(GUIFont *font, int x, int y, unsigned short uFontColor, const char *str, bool present_time_transparency=false, int max_text_height=0, int uFontShadowColor=0)
GUIWindow * pPrimaryWindow
unsigned int ui_gamemenu_keys_key_default_color
unsigned int ui_game_minimap_treasure_color
unsigned int ui_character_tooltip_header_default_color
unsigned int ui_character_skillinfo_can_learn_gm
unsigned int ui_book_calendar_title_color
char sub_4637E0_is_there_popup_onscreen()
WindowManager windowManager
unsigned int ui_mainmenu_copyright_color
@ WINDOW_LoadGame_CancelBtn
void GameUI_DrawRightPanelItems()
std::array< unsigned int, 6 > ui_character_award_color
@ UIMSG_ClickAwardsDownBtn
@ UIMSG_SPellbook_ShowHightlightedSpellInfo
GUIWindow * pGUIWindow_ScrollWindow
void GameUI_DrawLifeManaBars()
unsigned int ui_book_journal_text_shadow
void Inventory_ItemPopupAndAlchemy()
void SetCurrentMenuID(MENU_STATE)
@ UIMSG_ShowStatus_ManaHP
enum CURRENT_SCREEN current_screen_type
unsigned int ui_game_minimap_actor_friendly_color
void SetUserInterface(enum PartyAlignment alignment, bool bReplace)
@ DIALOGUE_ARENA_SELECT_SQUIRE
@ UIMSG_LloydsBeacon_FlippingBtn
void UI_OnMouseRightClick(int mouse_x, int mouse_y)
@ DIALOGUE_PROFESSION_DETAILS
unsigned int GetSkillColor(unsigned int uPlayerClass, PLAYER_SKILL_TYPE uPlayerSkillType, signed int skill_level)
void GameUI_DrawMinimap(unsigned int uX, unsigned int uY, unsigned int uZ, unsigned int uW, unsigned int uZoom, unsigned int bRedrawOdmMinimap)
GUIButton * CreateButton(int x, int y, int width, int height, int a6, int a7, UIMessageType msg, unsigned int msg_param, uint8_t hotkey, const String &label, const std::vector< Image * > &textures=std::vector< Image * >())
EGLSurface EGLint EGLint EGLint EGLint height
unsigned int ui_game_minimap_actor_corpse_color
void GameUI_DrawNPCPopup(void *_this)
@ UIMSG_CastSpell_Character_Big_Improvement
@ UIMSG_ClickHouseNPCPortrait
unsigned int ui_book_map_coordinates_color
@ UIMSG_CastSpell_Character_Small_Improvement
@ UIMSG_PlayerCreation_VoiceNext
OnCancel(unsigned int x, unsigned int y, unsigned int width, unsigned int height, int button, const String &hint=String())
@ UIMSG_CastSpell_Shoot_Monster
void ReleaseAwardsScrollBar()
@ UIMSG_ChangeMusicVolume
@ WINDOW_CastSpell_InInventory
unsigned int GetSizeInInventorySlots(unsigned int uNumPixels)
unsigned int ui_book_autonotes_text_color
@ UIMSG_PlayerCreationClickOK
@ UIMSG_ClickExitCharacterWindowBtn
@ UIMSG_PlayerCreationClickMinus
@ UIMSG_CastSpell_Monster_Improvement
void GameUI_DrawTorchlightAndWizardEye()
unsigned int ui_game_dialogue_option_normal_color
@ UIMSG_TransitionWindowCloseBtn
GUIWindow * pBooksButtonOverlay
unsigned int ui_character_bonus_text_color_neg
GUIWindow * pDialogueWindow
unsigned int ui_book_journal_text_color
GUIWindow * pGUIWindow_EscMessageWindow
void DrawTitleText(GUIFont *font, int horizontal_margin, int vertical_margin, unsigned __int16 uDefaultColor, const char *pInString, int line_spacing)
void GameUI_DrawHiredNPCs()
struct GUIMessageQueue * pMessageQueue_50C9E8
@ UIMSG_MMT_MainMenu_Continue
@ UIMSG_SpellBook_PressTab
@ DIALOGUE_ARENA_SELECT_KNIGHT
void CharacterUI_DrawPaperdoll(Player *player)
MENU_STATE GetCurrentMenuID()
@ UIMSG_CastSpell_Telekinesis
@ UIMSG_SelectShopDialogueOption
@ DIALOGUE_ARENA_SELECT_CHAMPION
unsigned int ui_character_bonus_text_color
enum WindowType current_character_screen_window
unsigned int ui_character_skill_highlight_color
@ UIMSG_StartHireling2Dialogue
int receives_keyboard_input_2
void _4B3FE5_training_dialogue(int a4)
unsigned int ui_character_skillinfo_can_learn
@ UIMSG_ChangeVoiceVolume
unsigned int ui_character_skillinfo_cant_learn
enum CURRENT_SCREEN prev_screen_type
@ UIMSG_ShowStatus_DateTime
unsigned int ui_book_calendar_month_color
unsigned int UI_GetHealthManaAndOtherQualitiesStringColor(int current_pos, int base_pos)
int pStartingPosActiveItem
void CharacterUI_InventoryTab_Draw(Player *player, bool a2)
std::vector< GUIButton * > vButtons
unsigned int ui_gamemenu_video_gamma_title_color
@ WINDOW_CloseRestWindowBtn
class GUIButton * GUI_HandleHotkey(uint8_t uHotkey)
void _41D08F_set_keyboard_control_group(int num_buttons, int a3, int a4, int a5)
void GameUI_DrawFoodAndGold()
void AddMessageImpl(UIMessageType msg, int param, unsigned int a4, const char *file=nullptr, int line=0)
void DrawJoinGuildWindow(int pEventCode)
void DeleteAllVisibleWindows()
void free_book_subwindow()
unsigned int ui_book_calendar_moon_color
unsigned int ui_character_condition_light_color
@ WINDOW_CharacterCreation
@ DIALOGUE_ARENA_FIGHT_NOT_OVER_YET
GUIWindow * pGUIWindow_CastTargetedSpell
void MainMenuUI_LoadFontsAndSomeStuff()
EGLSurface EGLint EGLint y
unsigned int ui_character_stat_buffed_color
@ UIMSG_MouseLeftClickInScreen
@ SCREEN_BRANCHLESS_NPC_DIALOG
void CreateMsgScrollWindow(signed int mscroll_id)
int DrawTextInRect(GUIFont *font, unsigned int x, unsigned int y, unsigned int color, const char *text, int rect_width, int reverse_text)
@ UIMSG_OnFinalWindowClose
void GameUI_DrawRightPanelFrames()
unsigned int ui_character_default_text_color
int pCurrentPosActiveItem
void CharacterUI_ReleaseButtons()
OnCastTargetedSpell(unsigned int x, unsigned int y, unsigned int width, unsigned int height, int button, const String &hint=String())
void DrawSpellDescriptionPopup(int spell_index)
@ UIMSG_MouseLeftClickInGame
@ UIMSG_ToggleColoredLights
@ WINDOW_CharacterWindow_Inventory
unsigned int ui_gamemenu_keys_key_selection_blink_color_2
@ UIMSG_ClickAwardScrollBar
void DrawPopupWindow(unsigned int uX, unsigned int uY, unsigned int uWidth, unsigned int uHeight)
@ UIMSG_MainMenu_ShowLoadWindow
@ UIMSG_PlayerCreationChangeName
GLuint GLsizei const GLchar * label
@ UIMSG_Game_OpenSaveGameDialog
unsigned int ui_character_condition_normal_color
virtual ~OnCastTargetedSpell()
void DrawMessageBox(bool inside_game_viewport)
void ClickNPCTopic(int uMessageParam)
@ UIMSG_OnCastLloydsBeacon
unsigned int uFrameHeight
@ WINDOW_BooksButtonOverlay
@ UIMSG_ShowStatus_Player
int GetConditionDrawColor(unsigned int uConditionIdx)
@ UIMSG_CastSpellFromBook
@ UIMSG_Game_OpenOptionsDialog
unsigned int ui_house_player_cant_interact_color
EGLSurface EGLint EGLint EGLint width
unsigned int ui_book_calendar_location_color
unsigned int ui_game_dialogue_option_highlight_color
@ UIMSG_CHANGE_LOCATION_ClickCencelBtn
@ WINDOW_KeyMappingOptions
unsigned int ui_character_condition_moderate_color
unsigned int ui_game_minimap_outline_color
void CharacterUI_SkillsTab_ShowHint()
@ UIMSG_PlayerCreationRemoveUpSkill
@ UIMSG_PlayerCreation_FaceNext
@ UIMSG_PlayerCreation_SelectAttribute
unsigned int ui_character_condition_severe_color
EGLSurface EGLNativeWindowType * window
std::list< GUIWindow * > lWindowList
bool Contains(unsigned int x, unsigned int y)
@ UIMSG_InventoryLeftClick
MENU_STATE sCurrentMenuID
unsigned int ui_character_stat_default_color
String CharacterUI_GetSkillDescText(unsigned int uPlayerID, PLAYER_SKILL_TYPE uPlayerSkillType)
unsigned int ui_character_skill_upgradeable_color
@ UIMSG_MainMenu_ShowPartyCreationWnd
@ UIMSG_OpenKeyMappingOptions
unsigned int ui_game_minimap_decoration_color_1
Image * dialogue_ui_x_x_u
void PopMessage(UIMessageType *pMsg, int *pParam, int *a4)
@ UIMSG_BuyInShop_Identify_Repair
unsigned int ui_game_minimap_actor_hostile_color
@ DIALOGUE_ARENA_ALREADY_WON
void CreateScrollWindow()
@ UIMSG_ClickInstallRemoveQuickSpellBtn
void GUI_ReplaceHotkey(uint8_t uOldHotkey, uint8_t uNewHotkey, char bFirstCall)
@ UIMSG_ChangeSoundVolume
@ UIMSG_Game_OpenLoadGameDialog
void HouseDialogManager()
@ UIMSG_PlayerCreationSelectClass
unsigned int ui_book_map_title_color
unsigned int ui_game_minimap_projectile_color
void DrawFlashingInputCursor(int uX, int uY, GUIFont *a2)
std::array< unsigned int, 24 > ui_game_character_record_playerbuff_colors
@ MENU_LoadingProcInMainMenu
unsigned int ui_book_journal_title_color
@ UIMSG_PlayerCreationClickReset
@ UIMSG_HiredNPC_CastSpell
const char * ToString(WindowType windowType)
@ UIMSG_CloseAfterInstallBeacon
@ DIALOGUE_ARENA_SELECT_PAGE
@ UIMSG_PlayerCreationSelectActiveSkill
void CharacterUI_DrawPaperdollWithRingOverlay(Player *player)
Image * game_ui_right_panel_frame
unsigned int ui_book_calendar_year_color
Image * dialogue_ui_x_ok_u
unsigned int ui_gamemenu_keys_action_name_color
void GameUI_DrawItemInfo(struct ItemGen *inspect_item)
@ UIMSG_PlayerCreation_FacePrev
Image * ui_exit_cancel_button_background
@ UIMSG_TransitionUI_Confirm
OnCancel3(unsigned int x, unsigned int y, unsigned int width, unsigned int height, int button, const String &hint=String())
unsigned int ui_book_quests_title_color
GUIWindow * window_SpeakInHouse
unsigned int ui_character_stat_debuffed_color
String BuildDialogueString(const char *lpsz, unsigned __int8 uPlayerID, struct ItemGen *a3, char *a4, int a5, GameTime *a6=nullptr)
@ UIMSG_ClickInventoryBtn
unsigned int ui_character_header_text_color
@ WINDOW_CharacterWindow_Stats
unsigned int ui_game_dialogue_npc_name_color
OnSaveLoad(unsigned int x, unsigned int y, unsigned int width, unsigned int height, int button, const String &hint=String())
unsigned int ui_gamemenu_keys_key_selection_blink_color_1
void MonsterPopup_Draw(unsigned int uActorID, GUIWindow *window)
unsigned int ui_character_skill_default_color
void GameUI_DrawCharacterSelectionFrame()
void DrawShops_next_generation_time_string(GameTime time)
@ UIMSG_ToggleBloodsplats
std::queue< GUIMessage > qMessages
struct GUIMessageQueue * pMessageQueue_50CBD0
@ UIMSG_DebugSeasonsChange
GUIButton * GetControl(unsigned int uID)
@ SCREEN_KEYBOARD_OPTIONS
@ WINDOW_CharacterWindow_Awards
void GameUI_DrawPartySpells()
void _41D73D_draw_buff_tooltip()
void GameUI_CharacterQuickRecord_Draw(GUIWindow *window, Player *player)
unsigned int ui_book_autonotes_title_color
void GameUI_DrawPortraits(unsigned int _this)
GLsizei const GLuint * textures
String _4B254D_SkillMasteryTeacher(int trainerInfo)
OnCancel2(unsigned int x, unsigned int y, unsigned int width, unsigned int height, int button, const String &hint=String())
void DrawMM7CopyrightWindow()
unsigned __int32 uint32_t
@ WINDOW_CharactersPressedButton
GUIWindow * pGUIWindow_CurrentMenu
@ UIMSG_GameMenu_ReturnToGame
@ UIMSG_StartHireling1Dialogue
@ DIALOGUE_USE_NPC_ABILITY
@ UIMSG_SelectNPCDialogueOption
@ UIMSG_PlayerCreation_VoicePrev
@ WINDOW_CharacterWindow_Skills
void CheckBountyRespawnAndAward()
@ UIMSG_OpenSpellbookPage
@ WINDOW_ExitCharacterWindow
void DrawBuff_remaining_time_string(int uY, GUIWindow *window, GameTime remaining_time, GUIFont *Font)
static void InitializeGUI()
void CreateAwardsScrollBar()
void CharacterUI_StatsTab_ShowHint()
String GameUI_GetMinimapHintText()