World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Структура GUIWindow_MapBook

#include <MapBook.h>

+ Граф наследования:GUIWindow_MapBook:
+ Граф связей класса GUIWindow_MapBook:

Открытые члены

 GUIWindow_MapBook ()
 
virtual ~GUIWindow_MapBook ()
 
virtual void Update ()
 
- Открытые члены унаследованные от GUIWindow_Book
 GUIWindow_Book ()
 
virtual ~GUIWindow_Book ()
 
virtual void Release ()
 
- Открытые члены унаследованные от GUIWindow
 GUIWindow ()
 
 GUIWindow (WindowType windowType, unsigned int uX, unsigned int uY, unsigned int uWidth, unsigned int uHeight, int pButton, const String &hint=String())
 
virtual ~GUIWindow ()
 
GUIButtonCreateButton (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 * >())
 
bool Contains (unsigned int x, unsigned int y)
 
void DrawFlashingInputCursor (int uX, int uY, GUIFont *a2)
 
int DrawTextInRect (GUIFont *font, unsigned int x, unsigned int y, unsigned int color, const char *text, int rect_width, int reverse_text)
 
int DrawTextInRect (GUIFont *font, unsigned int x, unsigned int y, unsigned int color, String &str, int rect_width, int reverse_text)
 
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)
 
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)
 
void DrawTitleText (GUIFont *font, int horizontal_margin, int vertical_margin, unsigned __int16 uDefaultColor, const char *pInString, int line_spacing)
 
void DrawTitleText (GUIFont *font, int horizontal_margin, int vertical_margin, unsigned __int16 uDefaultColor, const String &str, int line_spacing)
 
void DrawShops_next_generation_time_string (GameTime time)
 
void HouseDialogManager ()
 
void DrawMessageBox (bool inside_game_viewport)
 
GUIButtonGetControl (unsigned int uID)
 
void _41D08F_set_keyboard_control_group (int num_buttons, int a3, int a4, int a5)
 
void _41D73D_draw_buff_tooltip ()
 
void DeleteButtons ()
 

Дополнительные унаследованные члены

- Открытые статические члены унаследованные от GUIWindow
static void InitializeGUI ()
 
- Открытые атрибуты унаследованные от GUIWindow
unsigned int uFrameX
 
unsigned int uFrameY
 
unsigned int uFrameWidth
 
unsigned int uFrameHeight
 
unsigned int uFrameZ
 
unsigned int uFrameW
 
WindowType eWindowType
 
union {
   void *   ptr_1C
 
   unsigned int   par1C
 
}; 
 
int field_24
 
int pNumPresenceButton
 
int pCurrentPosActiveItem
 
int field_30
 
int field_34
 
int pStartingPosActiveItem
 
int receives_keyboard_input_2
 
bool receives_keyboard_input
 
String sHint
 
std::vector< GUIButton * > vButtons
 
Mousemouse = nullptr
 
Loglog = nullptr
 
- Защищенные члены унаследованные от GUIWindow_Book
void BasicBookInitialization ()
 

Подробное описание

См. определение в файле MapBook.h строка 6

Конструктор(ы)

◆ GUIWindow_MapBook()

GUIWindow_MapBook::GUIWindow_MapBook ( )

См. определение в файле MapBook.cpp строка 29

29  : GUIWindow_Book() {
30  this->ptr_1C = (void *)WINDOW_MapsBook; // inherited from GUIWindow::GUIWindow
32 
33  pEventTimer->Pause();
36  pAudioPlayer->StopChannels(-1, -1);
38 
39  MapBookOpen = 1;
40 
54 
55  pBtn_Book_1 = this->CreateButton(
56  pViewport->uViewportTL_X + 398, pViewport->uViewportTL_Y + 1, 50, 34, 1,
58  {{ui_book_button1_on}}); // "Zoom In"
59  pBtn_Book_2 = this->CreateButton(
60  pViewport->uViewportTL_X + 398, pViewport->uViewportTL_Y + 38, 50, 34,
61  1, 0, UIMSG_ClickBooksBtn, 1, 0, localization->GetString(252),
62  {{ui_book_button2_on}}); // "Zoom Out"
63  pBtn_Book_3 = this->CreateButton(
64  pViewport->uViewportTL_X + 397, pViewport->uViewportTL_Y + 113, 50, 34,
65  1, 0, UIMSG_ClickBooksBtn, 2, 0,
66  localization->GetString(192)); // Scroll Up
67  pBtn_Book_4 = this->CreateButton(
68  pViewport->uViewportTL_X + 397, pViewport->uViewportTL_Y + 150, 50, 34,
69  1, 0, UIMSG_ClickBooksBtn, 3, 0,
70  localization->GetString(193)); // Scroll Down
71  pBtn_Book_5 = this->CreateButton(
72  pViewport->uViewportTL_X + 397, pViewport->uViewportTL_Y + 188, 50, 34,
73  1, 0, UIMSG_ClickBooksBtn, 4, 0,
74  localization->GetString(573)); // "Scroll Right"
75  pBtn_Book_6 = this->CreateButton(
76  pViewport->uViewportTL_X + 397, pViewport->uViewportTL_Y + 226, 50, 34,
77  1, 0, UIMSG_ClickBooksBtn, 5, 0,
78  localization->GetString(572)); // "Scroll Left"
79 }

Перекрестные ссылки assets, GUIWindow_Book::BasicBookInitialization(), GUIWindow::CreateButton(), AssetsManager::GetImage_Alpha(), AssetsManager::GetImage_ColorKey(), Localization::GetString(), localization, MapBookOpen, pAudioPlayer, Timer::Pause(), pBooksButtonOverlay, pBtn_Book_1, pBtn_Maps, pEventTimer, pParty, GUIWindow::ptr_1C, pViewport, AudioPlayer::StopChannels(), ViewingParams::sViewCenterX, ViewingParams::sViewCenterY, ui_book_button1_off, ui_book_button1_on, ui_book_button2_off, ui_book_button2_on, ui_book_button3_off, ui_book_button3_on, ui_book_button4_off, ui_book_button4_on, ui_book_button5_off, ui_book_button5_on, ui_book_button6_off, ui_book_button6_on, ui_book_map_background, UIMSG_ClickBooksBtn, Viewport::uViewportTL_X, Viewport::uViewportTL_Y, viewparams, Party::vPosition и WINDOW_MapsBook.

+ Граф вызовов:

◆ ~GUIWindow_MapBook()

virtual GUIWindow_MapBook::~GUIWindow_MapBook ( )
inlinevirtual

См. определение в файле MapBook.h строка 8

8 {}

Методы

◆ Update()

void GUIWindow_MapBook::Update ( )
virtual

Переопределяет метод предка GUIWindow.

См. определение в файле MapBook.cpp строка 81

81  {
82  render->DrawTextureAlphaNew(471 / 640.0f, 445 / 480.0f, ui_exit_cancel_button_background);
83  render->DrawTextureAlphaNew(pViewport->uViewportTL_X / 640.0f, pViewport->uViewportTL_Y / 480.0f, ui_book_map_background);
84 
85  if (BtnUp_flag || viewparams->uMapBookMapZoom / 128 >= 12) // Button 1
86  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
87  (pViewport->uViewportTL_Y + 2) / 480.0f,
89  else
90  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 398) / 640.0f,
91  (pViewport->uViewportTL_Y + 1) / 480.0f,
93 
94  if (BtnDown_flag || viewparams->uMapBookMapZoom / 128 <= 3) // Button 2
95  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
96  (pViewport->uViewportTL_Y + 38) / 480.0f,
98  else
99  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 398) / 640.0f,
100  (pViewport->uViewportTL_Y + 38) / 480.0f,
102 
103  if (Book_PageBtn3_flag) // Button 3
104  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
105  (pViewport->uViewportTL_Y + 113) / 480.0f,
107  else
108  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 398) / 640.0f,
109  (pViewport->uViewportTL_Y + 113) / 480.0f,
111 
112  if (Book_PageBtn4_flag) // Button 4
113  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
114  (pViewport->uViewportTL_Y + 150) / 480.0f,
116  else
117  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 399) / 640.0f,
118  (pViewport->uViewportTL_Y + 150) / 480.0f,
120 
121  if (Book_PageBtn5_flag) // Button 5
122  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
123  (pViewport->uViewportTL_Y + 188) / 480.0f,
125  else
126  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 397) / 640.0f,
127  (pViewport->uViewportTL_Y + 188) / 480.0f,
129 
130  if (Book_PageBtn6_flag) // Button 6
131  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 408) / 640.0f,
132  (pViewport->uViewportTL_Y + 226) / 480.0f,
134  else
135  render->DrawTextureAlphaNew((pViewport->uViewportTL_X + 397) / 640.0f,
136  (pViewport->uViewportTL_Y + 226) / 480.0f,
138 
145 
149 
150  BtnUp_flag = 0;
151  BtnDown_flag = 0;
152  Book_PageBtn6_flag = 0;
153  Book_PageBtn5_flag = 0;
154  Book_PageBtn4_flag = 0;
155  Book_PageBtn3_flag = 0;
156 
157  render->DrawTextureAlphaNew(75 / 640.0f, 22 / 480.0f, ui_book_map_frame);
158  DrawBook_Map_sub(97, 49, 361, 313, 0);
159  render->ResetUIClipRect();
160 
161  GUIWindow map_window;
162  map_window.uFrameWidth = game_viewport_width;
163  map_window.uFrameHeight = game_viewport_height;
164  map_window.uFrameX = game_viewport_x;
165  map_window.uFrameY = game_viewport_y;
166  map_window.uFrameZ = game_viewport_z;
167  map_window.uFrameW = game_viewport_w;
168 
170  if (map_id)
171  map_window.DrawTitleText(pBook2Font, -14, 12, ui_book_map_title_color, pMapStats->pInfos[map_id].pName, 3);
172 
173  auto party_coordinates = localization->FormatString(659, pParty->vPosition.x, pParty->vPosition.y); // "x: %d y: %d"
174 
175  map_window.uFrameX = 0;
176  map_window.DrawTitleText(pFontComic, 0, 320, ui_book_map_coordinates_color, party_coordinates, 0);
177 }

Перекрестные ссылки Book_PageBtn3_flag, Book_PageBtn4_flag, Book_PageBtn5_flag, Book_PageBtn6_flag, BtnDown_flag, BtnUp_flag, ViewingParams::CenterOnPartyZoomIn(), ViewingParams::CenterOnPartyZoomOut(), DrawBook_Map_sub(), GUIWindow::DrawTitleText(), Localization::FormatString(), game_viewport_height, game_viewport_w, game_viewport_width, game_viewport_x, game_viewport_y, game_viewport_z, MapStats::GetMapInfo(), localization, ViewingParams::MapViewDown(), ViewingParams::MapViewLeft(), ViewingParams::MapViewRight(), ViewingParams::MapViewUp(), pAudioPlayer, pBook2Font, pCurrentMapName, pFontComic, MapStats::pInfos, AudioPlayer::PlaySound(), pMapStats, MapInfo::pName, pParty, pViewport, render, SOUND_StartMainChoice02, GUIWindow::uFrameHeight, GUIWindow::uFrameW, GUIWindow::uFrameWidth, GUIWindow::uFrameX, GUIWindow::uFrameY, GUIWindow::uFrameZ, ui_book_button1_off, ui_book_button1_on, ui_book_button2_off, ui_book_button2_on, ui_book_button3_off, ui_book_button3_on, ui_book_button4_off, ui_book_button4_on, ui_book_button5_off, ui_book_button5_on, ui_book_button6_off, ui_book_button6_on, ui_book_map_background, ui_book_map_coordinates_color, ui_book_map_frame, ui_book_map_title_color, ui_exit_cancel_button_background, ViewingParams::uMapBookMapZoom, Viewport::uViewportTL_X, Viewport::uViewportTL_Y, viewparams и Party::vPosition.

+ Граф вызовов:

Объявления и описания членов структур находятся в файлах:
Book_PageBtn4_flag
int Book_PageBtn4_flag
Definition: mm7_data.cpp:526
Party::vPosition
Vec3_int_ vPosition
Definition: Party.h:250
GUIWindow::uFrameW
unsigned int uFrameW
Definition: GUIWindow.h:473
Localization::GetString
const char * GetString(unsigned int index) const
Definition: Localization.cpp:13
Book_PageBtn6_flag
int Book_PageBtn6_flag
Definition: mm7_data.cpp:524
MapStats::pInfos
MapInfo pInfos[77]
Definition: MapInfo.h:79
Book_PageBtn5_flag
int Book_PageBtn5_flag
Definition: mm7_data.cpp:525
GUIWindow
Definition: GUIWindow.h:433
ui_exit_cancel_button_background
Image * ui_exit_cancel_button_background
Definition: GUIWindow.cpp:89
ui_book_button6_off
Image * ui_book_button6_off
Definition: UIBooks.cpp:23
Viewport::uViewportTL_Y
int uViewportTL_Y
Definition: Viewport.h:23
GUIWindow_BooksButtonOverlay
Definition: UIBooks.h:19
GUIWindow::CreateButton
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 * >())
Definition: GUIWindow.cpp:717
ui_book_button4_off
Image * ui_book_button4_off
Definition: UIBooks.cpp:27
ui_book_button5_off
Image * ui_book_button5_off
Definition: UIBooks.cpp:25
MapStats::GetMapInfo
MAP_TYPE GetMapInfo(const String &Str2)
Definition: MapInfo.cpp:225
ui_book_button1_on
Image * ui_book_button1_on
Definition: UIBooks.cpp:34
ui_book_map_coordinates_color
unsigned int ui_book_map_coordinates_color
Definition: UICharacter.cpp:82
AudioPlayer::PlaySound
void PlaySound(SoundID eSoundID, int pid, unsigned int uNumRepeats, int x, int y, int a7)
Definition: AudioPlayer.cpp:195
game_viewport_width
unsigned int game_viewport_width
Definition: mm7_data.cpp:194
pBtn_Book_1
GUIButton * pBtn_Book_1
Definition: GUIButton.cpp:23
ui_book_button3_off
Image * ui_book_button3_off
Definition: UIBooks.cpp:29
localization
Localization * localization
Definition: Localization.cpp:11
game_viewport_x
int game_viewport_x
Definition: mm7_data.cpp:196
BtnDown_flag
int BtnDown_flag
Definition: mm7_data.cpp:528
WINDOW_MapsBook
@ WINDOW_MapsBook
Definition: GUIWindow.h:338
GUIWindow::DrawTitleText
void DrawTitleText(GUIFont *font, int horizontal_margin, int vertical_margin, unsigned __int16 uDefaultColor, const char *pInString, int line_spacing)
Definition: GUIWindow.cpp:665
GUIWindow::uFrameWidth
unsigned int uFrameWidth
Definition: GUIWindow.h:470
ViewingParams::MapViewDown
void MapViewDown()
Definition: Viewport.cpp:105
game_viewport_height
unsigned int game_viewport_height
Definition: mm7_data.cpp:195
GUIWindow::uFrameZ
unsigned int uFrameZ
Definition: GUIWindow.h:472
pMapStats
struct MapStats * pMapStats
Definition: mm7_data.cpp:20
ui_book_button6_on
Image * ui_book_button6_on
Definition: UIBooks.cpp:24
game_viewport_y
int game_viewport_y
Definition: mm7_data.cpp:197
pBtn_Book_4
GUIButton * pBtn_Book_4
Definition: GUIButton.cpp:20
pBtn_Book_5
GUIButton * pBtn_Book_5
Definition: GUIButton.cpp:19
ui_book_button5_on
Image * ui_book_button5_on
Definition: UIBooks.cpp:26
pParty
Party * pParty
Definition: Party.cpp:30
ViewingParams::MapViewRight
void MapViewRight()
Definition: Viewport.cpp:111
viewparams
struct ViewingParams * viewparams
Definition: mm7_data.cpp:22
ui_book_button2_on
Image * ui_book_button2_on
Definition: UIBooks.cpp:32
AssetsManager::GetImage_ColorKey
Texture * GetImage_ColorKey(const String &name, uint16_t colorkey)
Definition: AssetsManager.cpp:34
ui_book_button4_on
Image * ui_book_button4_on
Definition: UIBooks.cpp:28
GUIWindow::uFrameHeight
unsigned int uFrameHeight
Definition: GUIWindow.h:471
MapBookOpen
int MapBookOpen
Definition: mm7_data.cpp:519
pBook2Font
GUIFont * pBook2Font
Definition: GUIFont.cpp:20
BtnUp_flag
int BtnUp_flag
Definition: mm7_data.cpp:529
pBtn_Book_2
GUIButton * pBtn_Book_2
Definition: GUIButton.cpp:22
AudioPlayer::StopChannels
void StopChannels(int uStartChannel, int uEndChannel)
Definition: AudioPlayer.cpp:331
f
GLfloat f
Definition: SDL_opengl_glext.h:1873
MapInfo::pName
String pName
Definition: MapInfo.h:38
Timer::Pause
void Pause()
Definition: Time.cpp:19
DrawBook_Map_sub
void DrawBook_Map_sub(unsigned int tl_x, unsigned int tl_y, unsigned int br_x, int br_y, int dummy)
Definition: MapBook.cpp:180
pCurrentMapName
String pCurrentMapName
Definition: mm7_data.cpp:712
Book_PageBtn3_flag
int Book_PageBtn3_flag
Definition: mm7_data.cpp:527
GUIWindow::uFrameY
unsigned int uFrameY
Definition: GUIWindow.h:469
game_viewport_w
int game_viewport_w
Definition: mm7_data.cpp:199
pFontComic
GUIFont * pFontComic
Definition: GUIFont.cpp:24
ui_book_map_title_color
unsigned int ui_book_map_title_color
Definition: UICharacter.cpp:81
ui_book_button1_off
Image * ui_book_button1_off
Definition: UIBooks.cpp:33
ui_book_map_background
Image * ui_book_map_background
Definition: MapBook.cpp:27
pViewport
struct Viewport * pViewport
Definition: mm7_data.cpp:21
ViewingParams::CenterOnPartyZoomOut
void CenterOnPartyZoomOut()
Definition: Viewport.cpp:117
pBooksButtonOverlay
GUIWindow * pBooksButtonOverlay
Definition: GUIWindow.cpp:59
pBtn_Book_3
GUIButton * pBtn_Book_3
Definition: GUIButton.cpp:21
pBtn_Maps
GUIButton * pBtn_Maps
Definition: GUIButton.cpp:58
ui_book_button2_off
Image * ui_book_button2_off
Definition: UIBooks.cpp:31
GUIWindow_Book::BasicBookInitialization
void BasicBookInitialization()
Definition: UIBooks.cpp:67
assets
AssetsManager * assets
Definition: AssetsManager.cpp:12
uint
unsigned int uint
Definition: MM7.h:4
GUIWindow_Book::GUIWindow_Book
GUIWindow_Book()
Definition: UIBooks.cpp:64
Localization::FormatString
String FormatString(unsigned int index,...) const
Definition: Localization.cpp:17
GUIWindow::ptr_1C
void * ptr_1C
Definition: GUIWindow.h:476
AssetsManager::GetImage_Alpha
Texture * GetImage_Alpha(const String &name)
Definition: AssetsManager.cpp:66
ViewingParams::CenterOnPartyZoomIn
void CenterOnPartyZoomIn()
Definition: Viewport.cpp:127
ViewingParams::sViewCenterY
int sViewCenterY
Definition: Viewport.h:69
UIMSG_ClickBooksBtn
@ UIMSG_ClickBooksBtn
Definition: GUIWindow.h:57
ViewingParams::MapViewUp
void MapViewUp()
Definition: Viewport.cpp:93
GUIWindow::uFrameX
unsigned int uFrameX
Definition: GUIWindow.h:468
ViewingParams::sViewCenterX
int sViewCenterX
Definition: Viewport.h:68
pAudioPlayer
AudioPlayer * pAudioPlayer
Definition: AudioPlayer.cpp:20
SOUND_StartMainChoice02
@ SOUND_StartMainChoice02
Definition: AudioPlayer.h:37
ViewingParams::uMapBookMapZoom
unsigned int uMapBookMapZoom
Definition: Viewport.h:67
Viewport::uViewportTL_X
int uViewportTL_X
Definition: Viewport.h:22
game_viewport_z
int game_viewport_z
Definition: mm7_data.cpp:198
pBtn_Book_6
GUIButton * pBtn_Book_6
Definition: GUIButton.cpp:18
pEventTimer
Timer * pEventTimer
Definition: Time.cpp:8
ui_book_button3_on
Image * ui_book_button3_on
Definition: UIBooks.cpp:30
ViewingParams::MapViewLeft
void MapViewLeft()
Definition: Viewport.cpp:99
render
std::shared_ptr< IRender > render
Definition: RenderOpenGL.cpp:52
ui_book_map_frame
Image * ui_book_map_frame
Definition: UIBooks.cpp:36