~ubuntu-branches/debian/sid/astromenace/sid

« back to all changes in this revision

Viewing changes to AstroMenaceSource/Menu/Dialog.cpp

  • Committer: Package Import Robot
  • Author(s): Boris Pek
  • Date: 2013-04-09 02:04:25 UTC
  • Revision ID: package-import@ubuntu.com-20130409020425-a7fl9xk4diamw6di
Tags: upstream-1.3.1+repack
Import upstream version 1.3.1+repack

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/************************************************************************************
 
2
 
 
3
        AstroMenace (Hardcore 3D space shooter with spaceship upgrade possibilities)
 
4
        Copyright © 2006-2012 Michael Kurinnoy, Viewizard
 
5
 
 
6
 
 
7
        AstroMenace is free software: you can redistribute it and/or modify
 
8
        it under the terms of the GNU General Public License as published by
 
9
        the Free Software Foundation, either version 3 of the License, or
 
10
        (at your option) any later version.
 
11
 
 
12
        AstroMenace is distributed in the hope that it will be useful,
 
13
        but WITHOUT ANY WARRANTY; without even the implied warranty of
 
14
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 
15
        GNU General Public License for more details.
 
16
 
 
17
        You should have received a copy of the GNU General Public License
 
18
        along with AstroMenace. If not, see <http://www.gnu.org/licenses/>.
 
19
 
 
20
 
 
21
        Web Site: http://www.viewizard.com/
 
22
        Project: http://sourceforge.net/projects/openastromenace/
 
23
        E-mail: viewizard@viewizard.com
 
24
 
 
25
*************************************************************************************/
 
26
 
 
27
 
 
28
#include "../Game.h"
 
29
 
 
30
 
 
31
 
 
32
 
 
33
//------------------------------------------------------------------------------------
 
34
// переменные...
 
35
//------------------------------------------------------------------------------------
 
36
 
 
37
// текущий приросовываемый диалог
 
38
int CurrentDialogBox = -1;
 
39
 
 
40
extern float CurrentAlert3;
 
41
 
 
42
float LastDialogUpdateTime = 0.0f;
 
43
float DialogContentTransp = 0.0f;
 
44
bool NeedShowDialog = false;
 
45
bool NeedHideDialog = false;
 
46
float StartHideTransp = 1.0f;
 
47
 
 
48
 
 
49
// что рисовать в диалоге 6,7,8
 
50
CSpaceShip *DialogSpaceShip = 0;
 
51
extern CEarthSpaceFighter *WorkshopFighterGame; // корабль игрока в меню шипярд
 
52
char *GetShipGroupTitle(int Num);
 
53
char *GetWorkshopShipName(int Num);
 
54
float GetShipArmor(int SpaceShipNum);
 
55
 
 
56
CWeapon *DialogWeapon = 0;
 
57
char *GetWeaponName(int Num);
 
58
char *GetWeaponGroupTitle(int Num);
 
59
float GetProjectileRange(int Num);
 
60
int GetWeaponHullDamage(int Num);
 
61
int GetWeaponSystemsDamage(int Num);
 
62
 
 
63
// номер системы... 1-20
 
64
int DialogSystem = 0;
 
65
char *GetSystemName(int Num);
 
66
float GetShipEngineSystemEnergyUse(int Num);
 
67
float GetShipProtectionSystemEnergyUse(int Num);
 
68
float GetShipRechargeEnergy(int Num);
 
69
float GetShipMaxEnergy(int Num);
 
70
float GetEnginePower(int EngineType);
 
71
float GetEngineAcceleration(int EngineType);
 
72
float GetEngineRotatePower(int EngineType);
 
73
 
 
74
 
 
75
// флаг-тянем
 
76
extern bool DragWeapon;
 
77
extern int DragWeaponNum;
 
78
extern int DragWeaponLevel;
 
79
extern int WeaponSetupSlot;
 
80
extern bool CanDrawWorkshop;
 
81
 
 
82
// если в инфо систем есть проблемы с энергией
 
83
bool NeedMoreEnergyDialog = false;
 
84
 
 
85
 
 
86
 
 
87
// для кнопок, чтобы проигрывать наведение
 
88
// последние координаты кнопки на которую наводились
 
89
int NeedPlayDialogOnButtonSoundX = 0;
 
90
int NeedPlayDialogOnButtonSoundY = 0;
 
91
 
 
92
 
 
93
//------------------------------------------------------------------------------------
 
94
// прорисовка кнопки - 200
 
95
//------------------------------------------------------------------------------------
 
96
bool DrawDialogButton200(int X, int Y, const char *Text, float Transp)
 
97
{
 
98
        RECT SrcRest, DstRest;
 
99
 
 
100
 
 
101
        // все проверки
 
102
        int MouseX, MouseY;
 
103
        vw_GetMousePos(&MouseX, &MouseY);
 
104
 
 
105
        bool ON = false;
 
106
        bool CanClick = false;
 
107
 
 
108
 
 
109
        // работаем с клавиатурой
 
110
        if (Transp >= 0.99f) CurrentActiveMenuElement++;
 
111
        bool InFocusByKeyboard = false;
 
112
        if (CurrentKeyboardSelectMenuElement > 0)
 
113
        {
 
114
                if (CurrentKeyboardSelectMenuElement == CurrentActiveMenuElement)
 
115
                {
 
116
                        InFocusByKeyboard = true;
 
117
                }
 
118
        }
 
119
 
 
120
 
 
121
        SetRect(&DstRest,X,Y,X+204,Y+35);
 
122
        if  (((DstRest.right  >= MouseX) &&
 
123
                (DstRest.left<= MouseX) &&
 
124
                (DstRest.bottom >= MouseY) &&
 
125
                (DstRest.top<= MouseY)) || InFocusByKeyboard)
 
126
        {
 
127
                // если тухнем или появляемся - не жать
 
128
                ON = true;
 
129
                if (Transp==1.0f)
 
130
                {
 
131
                        CanClick = true;
 
132
                        CurrentCursorStatus = 1;
 
133
                }
 
134
 
 
135
                if (NeedPlayDialogOnButtonSoundX != X || NeedPlayDialogOnButtonSoundY != Y)
 
136
                {
 
137
                        Audio_PlaySound2D(15,1.0f);
 
138
                        NeedPlayDialogOnButtonSoundX = X;
 
139
                        NeedPlayDialogOnButtonSoundY = Y;
 
140
                }
 
141
        }
 
142
        else
 
143
        {
 
144
                if (NeedPlayDialogOnButtonSoundX == X && NeedPlayDialogOnButtonSoundY == Y)
 
145
                {
 
146
                        NeedPlayDialogOnButtonSoundX = 0;
 
147
                        NeedPlayDialogOnButtonSoundY = 0;
 
148
                }
 
149
        }
 
150
 
 
151
 
 
152
 
 
153
        SetRect(&SrcRest,2,2,230-2,64-2);
 
154
        // рисуем кнопку
 
155
        SetRect(&DstRest,X-14+2,Y-14+2,X+230-14-2,Y+64-14-2);
 
156
        if (!ON)
 
157
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/button_dialog200_out.tga"), true, 0.8f*Transp);
 
158
        else
 
159
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/button_dialog200_in.tga"), true, 0.8f*Transp);
 
160
 
 
161
 
 
162
        // получаем длину текста
 
163
        int Size = vw_FontSize(Text);
 
164
        // если текст сильно большой - сжимаем буквы, чтобы не вылазило за пределы кнопки
 
165
        float WScale = 0;
 
166
        if (Size > 176)
 
167
        {
 
168
                Size = 176;
 
169
                WScale = -176;
 
170
        }
 
171
        // находим смещение текста
 
172
        int SizeI = DstRest.left + (SrcRest.right-SrcRest.left-Size)/2;
 
173
        // рисуем текст
 
174
        if (!ON)
 
175
                vw_DrawFont(SizeI, Y+6, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, (0.7f*Transp)/2.0f, Text);
 
176
        else
 
177
                vw_DrawFont(SizeI, Y+6, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, Transp, Text);
 
178
 
 
179
        if (CanClick)
 
180
                if (vw_GetWindowLBMouse(true) || (InFocusByKeyboard && (vw_GetKeys(SDLK_KP_ENTER) || vw_GetKeys(SDLK_RETURN))))
 
181
                {
 
182
                        Audio_PlaySound2D(2,1.0f);
 
183
                        if (InFocusByKeyboard)
 
184
                        {
 
185
                                vw_SetKeys(SDLK_KP_ENTER, false);
 
186
                                vw_SetKeys(SDLK_RETURN, false);
 
187
                        }
 
188
                        return true;
 
189
                }
 
190
 
 
191
        return false;
 
192
}
 
193
 
 
194
 
 
195
 
 
196
 
 
197
 
 
198
 
 
199
 
 
200
 
 
201
//------------------------------------------------------------------------------------
 
202
// прорисовка кнопки - 128
 
203
//------------------------------------------------------------------------------------
 
204
bool DrawDialogButton128(int X, int Y, const char *Text, float Transp)
 
205
{
 
206
        RECT SrcRest, DstRest;
 
207
 
 
208
 
 
209
        // все проверки
 
210
        int MouseX, MouseY;
 
211
        vw_GetMousePos(&MouseX, &MouseY);
 
212
 
 
213
        bool ON = false;
 
214
        bool CanClick = false;
 
215
 
 
216
 
 
217
        // работаем с клавиатурой
 
218
        if (Transp >= 0.99f) CurrentActiveMenuElement++;
 
219
        bool InFocusByKeyboard = false;
 
220
        if (CurrentKeyboardSelectMenuElement > 0)
 
221
        {
 
222
                if (CurrentKeyboardSelectMenuElement == CurrentActiveMenuElement)
 
223
                {
 
224
                        InFocusByKeyboard = true;
 
225
                }
 
226
        }
 
227
 
 
228
 
 
229
        SetRect(&DstRest,X,Y,X+132,Y+35);
 
230
        if  (((DstRest.right  >= MouseX) &&
 
231
                (DstRest.left<= MouseX) &&
 
232
                (DstRest.bottom >= MouseY) &&
 
233
                (DstRest.top<= MouseY)) || InFocusByKeyboard)
 
234
        {
 
235
                // если тухнем или появляемся - не жать
 
236
                ON = true;
 
237
                if (Transp==1.0f)
 
238
                {
 
239
                        CanClick = true;
 
240
                        CurrentCursorStatus = 1;
 
241
                }
 
242
 
 
243
                if (NeedPlayDialogOnButtonSoundX != X || NeedPlayDialogOnButtonSoundY != Y)
 
244
                {
 
245
                        Audio_PlaySound2D(15,1.0f);
 
246
                        NeedPlayDialogOnButtonSoundX = X;
 
247
                        NeedPlayDialogOnButtonSoundY = Y;
 
248
                }
 
249
        }
 
250
        else
 
251
        {
 
252
                if (NeedPlayDialogOnButtonSoundX == X && NeedPlayDialogOnButtonSoundY == Y)
 
253
                {
 
254
                        NeedPlayDialogOnButtonSoundX = 0;
 
255
                        NeedPlayDialogOnButtonSoundY = 0;
 
256
                }
 
257
        }
 
258
 
 
259
 
 
260
        SetRect(&SrcRest,2,2,158-2,64-2);
 
261
        // рисуем кнопку
 
262
        SetRect(&DstRest,X-14+2,Y-14+2,X+158-14-2,Y+64-14-2);
 
263
        if (!ON)
 
264
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/button_dialog128_out.tga"), true, 0.8f*Transp);
 
265
        else
 
266
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/button_dialog128_in.tga"), true, 0.8f*Transp);
 
267
 
 
268
 
 
269
        // получаем длину текста
 
270
        int Size = vw_FontSize(Text);
 
271
        // если текст сильно большой - сжимаем буквы, чтобы не вылазило за пределы кнопки
 
272
        float WScale = 0;
 
273
        if (Size > 108)
 
274
        {
 
275
                Size = 108;
 
276
                WScale = -108;
 
277
        }
 
278
        // находим смещение текста
 
279
        int SizeI = DstRest.left + (SrcRest.right-SrcRest.left-Size)/2;
 
280
        // рисуем текст
 
281
        if (!ON)
 
282
                vw_DrawFont(SizeI, Y+6, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, (0.7f*Transp)/2.0f, Text);
 
283
        else
 
284
                vw_DrawFont(SizeI, Y+6, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, Transp, Text);
 
285
 
 
286
        if (CanClick)
 
287
                if (vw_GetWindowLBMouse(true) || (InFocusByKeyboard && (vw_GetKeys(SDLK_KP_ENTER) || vw_GetKeys(SDLK_RETURN))))
 
288
                {
 
289
                        Audio_PlaySound2D(2,1.0f);
 
290
                        if (InFocusByKeyboard)
 
291
                        {
 
292
                                vw_SetKeys(SDLK_KP_ENTER, false);
 
293
                                vw_SetKeys(SDLK_RETURN, false);
 
294
                        }
 
295
                        return true;
 
296
                }
 
297
 
 
298
        return false;
 
299
}
 
300
 
 
301
 
 
302
 
 
303
 
 
304
 
 
305
 
 
306
 
 
307
 
 
308
//------------------------------------------------------------------------------------
 
309
// прорисовка чекбокса
 
310
//------------------------------------------------------------------------------------
 
311
void DrawCheckBox_2(int X, int Y, bool *CheckBoxStatus, const char *Text, float Transp)
 
312
{
 
313
        RECT SrcRest, DstRest;
 
314
        // все проверки
 
315
        int MouseX, MouseY;
 
316
        vw_GetMousePos(&MouseX, &MouseY);
 
317
 
 
318
 
 
319
        // получаем длину текста
 
320
        int Size = vw_FontSize(Text);
 
321
 
 
322
        bool ON = false;
 
323
        bool CanClick = false;
 
324
 
 
325
 
 
326
        // работаем с клавиатурой
 
327
        if ((Transp >= 0.99f) && DrawGameCursor) CurrentActiveMenuElement++;
 
328
        bool InFocusByKeyboard = false;
 
329
        if (CurrentKeyboardSelectMenuElement > 0)
 
330
        {
 
331
                if (CurrentKeyboardSelectMenuElement == CurrentActiveMenuElement)
 
332
                {
 
333
                        InFocusByKeyboard = true;
 
334
                }
 
335
        }
 
336
 
 
337
 
 
338
        // 20 - расстояние между текстом
 
339
        SetRect(&DstRest,X+4,Y+4,X+40+20+Size,Y+40-4);
 
340
        if  ((((DstRest.right  >= MouseX) &&
 
341
                (DstRest.left<= MouseX) &&
 
342
                (DstRest.bottom >= MouseY) &&
 
343
                (DstRest.top<= MouseY)) || InFocusByKeyboard)  && DrawGameCursor)
 
344
        {
 
345
                // если тухнем или появляемся - не жать
 
346
                ON = true;
 
347
                if (Transp==1.0f)
 
348
                {
 
349
                        CanClick = true;
 
350
                        CurrentCursorStatus = 1;
 
351
                }
 
352
        }
 
353
 
 
354
 
 
355
 
 
356
        // рисуем
 
357
        SetRect(&SrcRest,0,0,40,38);
 
358
        SetRect(&DstRest,X,Y,X+40,Y+38);
 
359
        if (!ON || DragWeapon)
 
360
                vw_DrawFont(X+40+16, Y+8, 0, 0, 1.0f, 1.0f,1.0f,1.0f, Transp, Text);
 
361
        else
 
362
                vw_DrawFont(X+40+16, Y+8, 0, 0, 1.0f, 1.0f,0.5f,0.0f, Transp, Text);
 
363
 
 
364
        vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/checkbox_main.tga"), true, Transp);
 
365
        if (*CheckBoxStatus)
 
366
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/checkbox_in.tga"), true, Transp);
 
367
 
 
368
 
 
369
        if (CanClick && !DragWeapon)
 
370
                if (vw_GetWindowLBMouse(true) || (InFocusByKeyboard && (vw_GetKeys(SDLK_KP_ENTER) || vw_GetKeys(SDLK_RETURN))))
 
371
                {
 
372
                        *CheckBoxStatus = !(*CheckBoxStatus);
 
373
                        Audio_PlaySound2D(2,1.0f);
 
374
                        if (InFocusByKeyboard)
 
375
                        {
 
376
                                vw_SetKeys(SDLK_KP_ENTER, false);
 
377
                                vw_SetKeys(SDLK_RETURN, false);
 
378
                        }
 
379
                }
 
380
}
 
381
 
 
382
 
 
383
 
 
384
 
 
385
 
 
386
 
 
387
 
 
388
//------------------------------------------------------------------------------------
 
389
// прорисовка DialogBox
 
390
//------------------------------------------------------------------------------------
 
391
void SetCurrentDialogBox(int DialogBox)
 
392
{
 
393
 
 
394
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
395
        // если что-то рисуем - продолжаем рисовать...
 
396
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
397
        if (CurrentDialogBox != -1) return;
 
398
 
 
399
        CurrentDialogBox = DialogBox;
 
400
 
 
401
 
 
402
        LastDialogUpdateTime = vw_GetTime();
 
403
        DialogContentTransp = 0.0f;
 
404
        NeedShowDialog = true;
 
405
        NeedHideDialog = false;
 
406
        StartHideTransp = 1.0f;
 
407
 
 
408
        // сброс если было перетягивание
 
409
        DragWeapon = false;
 
410
        DragWeaponNum = 0;
 
411
        vw_GetWindowLBMouse(true);
 
412
}
 
413
 
 
414
 
 
415
 
 
416
 
 
417
 
 
418
//------------------------------------------------------------------------------------
 
419
// запрос, прорисовываем что-то?
 
420
//------------------------------------------------------------------------------------
 
421
bool isDialogBoxDrawing()
 
422
{
 
423
        if (CurrentDialogBox == -1) return false;
 
424
        else return true;
 
425
}
 
426
 
 
427
 
 
428
 
 
429
// закрываем диалог
 
430
void CloseDialog()
 
431
{
 
432
        NeedMoreEnergyDialog = false;
 
433
 
 
434
        StartHideTransp = DialogContentTransp;
 
435
        NeedShowDialog = false;
 
436
        NeedHideDialog = true;
 
437
        LastDialogUpdateTime = vw_GetTime();
 
438
}
 
439
 
 
440
 
 
441
 
 
442
 
 
443
 
 
444
//------------------------------------------------------------------------------------
 
445
// рисуем DrawDialogBox, если он установлен
 
446
//------------------------------------------------------------------------------------
 
447
void DrawDialogBox()
 
448
{
 
449
 
 
450
        if (NeedHideDialog)
 
451
        {
 
452
                DialogContentTransp = StartHideTransp - 3.0f*(vw_GetTime() - LastDialogUpdateTime);
 
453
 
 
454
                if (DialogContentTransp <= 0.0f)
 
455
                        CurrentDialogBox = -1;
 
456
        }
 
457
 
 
458
        if (NeedShowDialog && DialogContentTransp < 1.0f)
 
459
        {
 
460
                DialogContentTransp = 3.0f*(vw_GetTime()-LastDialogUpdateTime);
 
461
 
 
462
                if (DialogContentTransp >= 1.0f)
 
463
                {
 
464
                        DialogContentTransp = 1.0f;
 
465
                        NeedShowDialog = false;
 
466
                        LastDialogUpdateTime = vw_GetTime();
 
467
                }
 
468
        }
 
469
 
 
470
 
 
471
 
 
472
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
473
        // если что-то есть - рисуем
 
474
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
475
        if (CurrentDialogBox == -1) return;
 
476
 
 
477
 
 
478
 
 
479
 
 
480
 
 
481
        // задаем параметры диалога, все остальное посчитаеться по ним...
 
482
        int DialogType = 1;
 
483
        switch (CurrentDialogBox)
 
484
        {
 
485
                case 0:
 
486
                case 1:
 
487
                case 2:
 
488
                case 3:
 
489
                case 4:
 
490
                case 5:
 
491
                        DialogType = 1;
 
492
                        break;
 
493
 
 
494
                case 6:
 
495
                case 7:
 
496
                case 8:
 
497
                        DialogType = 2;
 
498
                        break;
 
499
 
 
500
                case 9:
 
501
                case 10:
 
502
                case 11:
 
503
                case 12:
 
504
                case 13:
 
505
                case 14:
 
506
                case 15:
 
507
                        DialogType = 3;
 
508
                        break;
 
509
 
 
510
                case 16:
 
511
                        DialogType = 1;
 
512
                        break;
 
513
        }
 
514
 
 
515
 
 
516
 
 
517
 
 
518
        RECT SrcRest, DstRest;
 
519
        int WTitle = 234;
 
520
 
 
521
        int W = 512;
 
522
        int H = 256;
 
523
        if (DialogType == 2)
 
524
        {       W = 512;H = 512;        }
 
525
        if (DialogType == 3)
 
526
        {       W = 768;H = 600;        }
 
527
 
 
528
        int X = (Setup.iAspectRatioWidth-W)/2;
 
529
        int Y = (768-H)/2;
 
530
 
 
531
 
 
532
 
 
533
 
 
534
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
535
        // затемнение при выводе
 
536
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
537
        SetRect(&SrcRest,0,0,2,2);
 
538
        SetRect(&DstRest,0,0,Setup.iAspectRatioWidth,768);
 
539
        vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/blackpoint.tga"), true, 0.6f*DialogContentTransp);
 
540
 
 
541
 
 
542
 
 
543
 
 
544
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
545
        // подложка диалога
 
546
        //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
547
        if (DialogType == 1)
 
548
        {
 
549
                SetRect(&SrcRest,2,2,572-2,316-2 );
 
550
                SetRect(&DstRest,X+2-30,Y+2-30,X+572-2-30,Y+316-2-30);
 
551
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/dialog512_256.tga"),
 
552
                        true, DialogContentTransp, 0.0f, RI_UL_CORNER, 1.0f, 1.0f, 1.0f);
 
553
        }
 
554
        if (DialogType == 2)
 
555
        {
 
556
                SetRect(&SrcRest,2,2,564-2,564-2 );
 
557
                SetRect(&DstRest,X+4-30,Y+2-30,X+564-30,Y+564-2-30);
 
558
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/dialog512_512.tga"),
 
559
                        true, DialogContentTransp, 0.0f, RI_UL_CORNER, 1.0f, 1.0f, 1.0f);
 
560
        }
 
561
        if (DialogType == 3)
 
562
        {
 
563
                SetRect(&SrcRest,2,2,828-2,659-2 );
 
564
                SetRect(&DstRest,X+2-30,Y+2-30,X+828-2-30,Y+659-2-30);
 
565
                vw_DrawTransparent(&DstRest, &SrcRest, vw_FindTextureByName("DATA/MENU/dialog768_600.tga"),
 
566
                        true, DialogContentTransp, 0.0f, RI_UL_CORNER, 1.0f, 1.0f, 1.0f);
 
567
        }
 
568
 
 
569
 
 
570
 
 
571
 
 
572
        // для название диалога
 
573
        int SizeI;
 
574
        int SizeI1;
 
575
        int TitleOffset = 25;
 
576
        if (DialogType == 2) TitleOffset = 22;
 
577
 
 
578
 
 
579
        // для кнопок диалога
 
580
        int ButtonOffset = 190;
 
581
        if (DialogType == 2) ButtonOffset = 256+190;
 
582
        if (DialogType == 3) ButtonOffset = 256+88+190;
 
583
 
 
584
 
 
585
 
 
586
 
 
587
 
 
588
 
 
589
        switch (CurrentDialogBox)
 
590
        {
 
591
                case 0: // хотим выйти или нет?
 
592
                        // название диалога
 
593
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_QUIT")))/2;
 
594
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_QUIT"));
 
595
                        // текст диалога
 
596
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line1"));
 
597
                        SizeI = (W-SizeI1)/2;
 
598
                        if (SizeI1 > 470)
 
599
                        {
 
600
                                SizeI = (W - 470)/2;
 
601
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
602
                        }
 
603
                        else
 
604
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
605
 
 
606
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line2"));
 
607
                        SizeI = (W-SizeI1)/2;
 
608
                        if (SizeI1 > 470)
 
609
                        {
 
610
                                SizeI = (W - 470)/2;
 
611
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line2"));
 
612
                        }
 
613
                        else
 
614
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line2"));
 
615
 
 
616
                        // кнопки
 
617
                        if (DrawDialogButton128(X+94, Y+ButtonOffset, vw_GetText("1_YES"), DialogContentTransp))
 
618
                        {
 
619
                                CanQuit = true;
 
620
                                Quit = true;
 
621
                                CloseDialog();
 
622
                        }
 
623
                        if (DrawDialogButton128(X+256+34, Y+ButtonOffset, vw_GetText("1_NO"), DialogContentTransp)) CloseDialog();
 
624
                        break;
 
625
 
 
626
                case 1: // в профайле все занято, не можем создать новую запись.
 
627
                        // название диалога
 
628
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_ERROR")))/2;
 
629
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_ERROR"));
 
630
                        // текст диалога
 
631
                        SizeI1 = vw_FontSize(vw_GetText("2_ccprof_line1"));
 
632
                        SizeI = (W-SizeI1)/2;
 
633
                        if (SizeI1 > 470)
 
634
                        {
 
635
                                SizeI = (W - 470)/2;
 
636
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_ccprof_line1"));
 
637
                        }
 
638
                        else
 
639
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_ccprof_line1"));
 
640
 
 
641
                        SizeI1 = vw_FontSize(vw_GetText("2_ccprof_line2"));
 
642
                        SizeI = (W-SizeI1)/2;
 
643
                        if (SizeI1 > 470)
 
644
                        {
 
645
                                SizeI = (W - 470)/2;
 
646
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_ccprof_line2"));
 
647
                        }
 
648
                        else
 
649
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_ccprof_line2"));
 
650
 
 
651
                        // кнопки
 
652
                        if (DrawDialogButton200(X+128+64-72/2,Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
653
                        break;
 
654
 
 
655
                case 2: // удаление профайла - запрос
 
656
                        // название диалога
 
657
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_DELETE")))/2;
 
658
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_DELETE"));
 
659
                        // текст диалога
 
660
                        SizeI1 = vw_FontSize(vw_GetText("2_delprof_line1"));
 
661
                        SizeI = (W-SizeI1)/2;
 
662
                        if (SizeI1 > 470)
 
663
                        {
 
664
                                SizeI = (W - 470)/2;
 
665
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_delprof_line1"));
 
666
                        }
 
667
                        else
 
668
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_delprof_line1"));
 
669
 
 
670
                        SizeI1 = vw_FontSize(vw_GetText("2_delprof_line2"));
 
671
                        SizeI = (W-SizeI1)/2;
 
672
                        if (SizeI1 > 470)
 
673
                        {
 
674
                                SizeI = (W - 470)/2;
 
675
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_delprof_line2"));
 
676
                        }
 
677
                        else
 
678
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_delprof_line2"));
 
679
 
 
680
                        // кнопки
 
681
                        if (DrawDialogButton128(X+94, Y+ButtonOffset, vw_GetText("1_YES"), DialogContentTransp))
 
682
                        {
 
683
                                DeleteRecord();
 
684
                                if (CurrentProfile != -1) CurrentMission = Setup.Profile[CurrentProfile].LastMission;
 
685
                                CloseDialog();
 
686
                        }
 
687
                        if (DrawDialogButton128(X+256+34,Y+ButtonOffset, vw_GetText("1_NO"), DialogContentTransp)) CloseDialog();
 
688
                        break;
 
689
 
 
690
 
 
691
                case 3: // не полный ремонт (не достаточно денег)
 
692
                        // название диалога
 
693
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_REPAIR")))/2;
 
694
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_REPAIR"));
 
695
                        // текст диалога
 
696
                        SizeI1 = vw_FontSize(vw_GetText("2_cnrepair_line1"));
 
697
                        SizeI = (W-SizeI1)/2;
 
698
                        if (SizeI1 > 470)
 
699
                        {
 
700
                                SizeI = (W - 470)/2;
 
701
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_cnrepair_line1"));
 
702
                        }
 
703
                        else
 
704
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_cnrepair_line1"));
 
705
 
 
706
                        SizeI1 = vw_FontSize(vw_GetText("2_cnrepair_line2"));
 
707
                        SizeI = (W-SizeI1)/2;
 
708
                        if (SizeI1 > 470)
 
709
                        {
 
710
                                SizeI = (W - 470)/2;
 
711
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_cnrepair_line2"));
 
712
                        }
 
713
                        else
 
714
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_cnrepair_line2"));
 
715
 
 
716
                        // кнопки
 
717
                        if (DrawDialogButton128(X+192,Y+ButtonOffset, vw_GetText("1_OK"), DialogContentTransp)) CloseDialog();
 
718
                        break;
 
719
 
 
720
 
 
721
                case 4: // хотим выйти или нет?, с предупреждением, что не все сохраним
 
722
                        // название диалога
 
723
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_QUIT")))/2;
 
724
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_QUIT"));
 
725
                        // текст диалога
 
726
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line1"));
 
727
                        SizeI = (W-SizeI1)/2;
 
728
                        if (SizeI1 > 470)
 
729
                        {
 
730
                                SizeI = (W - 470)/2;
 
731
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
732
                        }
 
733
                        else
 
734
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
735
 
 
736
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line3"));
 
737
                        SizeI = (W-SizeI1)/2;
 
738
                        if (SizeI1 > 470)
 
739
                        {
 
740
                                SizeI = (W - 470)/2;
 
741
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line3"));
 
742
                        }
 
743
                        else
 
744
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line3"));
 
745
 
 
746
                        // кнопки
 
747
                        if (DrawDialogButton128(X+94, Y+ButtonOffset, vw_GetText("1_YES"), DialogContentTransp))
 
748
                        {
 
749
                                CanQuit = true;
 
750
                                Quit = true;
 
751
                                CloseDialog();
 
752
                        }
 
753
                        if (DrawDialogButton128(X+256+34, Y+ButtonOffset, vw_GetText("1_NO"), DialogContentTransp)) CloseDialog();
 
754
                        break;
 
755
                case 41: // хотим выйти или нет?, с предупреждением, что не все сохраним
 
756
                        // выход из игры в меню (основное)
 
757
                        // название диалога
 
758
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_QUIT")))/2;
 
759
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_QUIT"));
 
760
                        // текст диалога
 
761
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line1"));
 
762
                        SizeI = (W-SizeI1)/2;
 
763
                        if (SizeI1 > 470)
 
764
                        {
 
765
                                SizeI = (W - 470)/2;
 
766
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
767
                        }
 
768
                        else
 
769
 
 
770
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_quit_line1"));
 
771
 
 
772
                        SizeI1 = vw_FontSize(vw_GetText("2_quit_line3"));
 
773
                        SizeI = (W-SizeI1)/2;
 
774
                        if (SizeI1 > 470)
 
775
                        {
 
776
                                SizeI = (W - 470)/2;
 
777
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line3"));
 
778
                        }
 
779
                        else
 
780
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_quit_line3"));
 
781
 
 
782
                        // кнопки
 
783
                        if (DrawDialogButton128(X+94, Y+ButtonOffset, vw_GetText("1_YES"), DialogContentTransp))
 
784
                        {
 
785
                                ComBuffer = 101;
 
786
                                ExitGame();
 
787
                                CloseDialog();
 
788
                        }
 
789
                        if (DrawDialogButton128(X+256+34, Y+ButtonOffset, vw_GetText("1_NO"), DialogContentTransp)) CloseDialog();
 
790
                        break;
 
791
 
 
792
                case 5: // хотим выйти из игры?, с предупреждением, что не все сохраним
 
793
                        // название диалога
 
794
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("1_RESTART")))/2;
 
795
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("1_RESTART"));
 
796
                        // текст диалога
 
797
                        SizeI1 = vw_FontSize(vw_GetText("2_restart_line1"));
 
798
                        SizeI = (W-SizeI1)/2;
 
799
                        if (SizeI1 > 470)
 
800
                        {
 
801
                                SizeI = (W - 470)/2;
 
802
                                vw_DrawFont(X+SizeI, Y+100, -470, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_restart_line1"));
 
803
                        }
 
804
                        else
 
805
                                vw_DrawFont(X+SizeI, Y+100, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("2_restart_line1"));
 
806
 
 
807
                        SizeI1 = vw_FontSize(vw_GetText("2_restart_line2"));
 
808
                        SizeI = (W-SizeI1)/2;
 
809
                        if (SizeI1 > 470)
 
810
                        {
 
811
                                SizeI = (W - 470)/2;
 
812
                                vw_DrawFont(X+SizeI, Y+130, -470, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_restart_line2"));
 
813
                        }
 
814
                        else
 
815
                                vw_DrawFont(X+SizeI, Y+130, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("2_restart_line2"));
 
816
 
 
817
                        // кнопки
 
818
                        if (DrawDialogButton128(X+94, Y+ButtonOffset, vw_GetText("1_YES"), DialogContentTransp))
 
819
                        {
 
820
                                ComBuffer = GAME;
 
821
                                ExitGame();
 
822
                                CloseDialog();
 
823
                        }
 
824
                        if (DrawDialogButton128(X+256+34, Y+ButtonOffset, vw_GetText("1_NO"), DialogContentTransp)) CloseDialog();
 
825
                        break;
 
826
 
 
827
 
 
828
 
 
829
 
 
830
                // вывод данных по кораблю
 
831
                case 6:
 
832
                        {
 
833
                                // название диалога
 
834
                                SizeI = 17 + (WTitle-vw_FontSize(vw_GetText(GetWorkshopShipName(DialogSpaceShip->ObjectCreationType))))/2;
 
835
                                vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText(GetWorkshopShipName(DialogSpaceShip->ObjectCreationType)));
 
836
                                // текст диалога
 
837
                                int Y1 = Y+80;
 
838
                                int Offset = 31;
 
839
                                int Size = 240;
 
840
                                float WScale = -200;
 
841
                                int X1 = X+45;
 
842
 
 
843
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
844
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Space_Ship"));
 
845
                                Y1 += Offset;
 
846
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ship_Type:"));
 
847
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText(GetShipGroupTitle(DialogSpaceShip->ObjectCreationType)));
 
848
                                Y1 += Offset;
 
849
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
850
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
851
 
 
852
                                Y1 += Offset;
 
853
                                if (WorkshopFighterGame == DialogSpaceShip)
 
854
                                {
 
855
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Width:"));
 
856
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", DialogSpaceShip->Width, vw_GetText("4_units"));
 
857
                                }
 
858
                                else
 
859
                                {
 
860
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Width:"));
 
861
                                        if (DialogSpaceShip->Width > WorkshopFighterGame->Width)
 
862
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Width, WorkshopFighterGame->Width, vw_GetText("4_units"));
 
863
                                        else
 
864
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Width, WorkshopFighterGame->Width, vw_GetText("4_units"));
 
865
                                }
 
866
 
 
867
                                Y1 += Offset;
 
868
                                if (WorkshopFighterGame == DialogSpaceShip)
 
869
                                {
 
870
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Length:"));
 
871
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", DialogSpaceShip->Length, vw_GetText("4_units"));
 
872
                                }
 
873
                                else
 
874
                                {
 
875
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Length:"));
 
876
                                        if (DialogSpaceShip->Length > WorkshopFighterGame->Length)
 
877
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Length, WorkshopFighterGame->Length, vw_GetText("4_units"));
 
878
                                        else
 
879
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Length, WorkshopFighterGame->Length, vw_GetText("4_units"));
 
880
                                }
 
881
 
 
882
 
 
883
                                Y1 += Offset;
 
884
                                if (WorkshopFighterGame == DialogSpaceShip)
 
885
                                {
 
886
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Height:"));
 
887
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", DialogSpaceShip->Height, vw_GetText("4_units"));
 
888
                                }
 
889
                                else
 
890
                                {
 
891
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Height:"));
 
892
                                        if (DialogSpaceShip->Height > WorkshopFighterGame->Height)
 
893
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Height, WorkshopFighterGame->Height, vw_GetText("4_units"));
 
894
                                        else
 
895
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%2.1f (%2.1f) %s", DialogSpaceShip->Height, WorkshopFighterGame->Height, vw_GetText("4_units"));
 
896
                                }
 
897
 
 
898
                                Y1 += Offset;
 
899
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Engines:"));
 
900
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", DialogSpaceShip->EngineQuantity, vw_GetText("4_units"));
 
901
 
 
902
                                Y1 += Offset;
 
903
                                if (WorkshopFighterGame == DialogSpaceShip)
 
904
                                {
 
905
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Armor:"));
 
906
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", (int)GetShipArmor(DialogSpaceShip->ObjectCreationType), vw_GetText("4_units"));
 
907
                                        Y1 += Offset;
 
908
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk2:"));
 
909
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*2), vw_GetText("4_units"));
 
910
                                        Y1 += Offset;
 
911
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk3:"));
 
912
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*3), vw_GetText("4_units"));
 
913
                                        Y1 += Offset;
 
914
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk4:"));
 
915
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*4), vw_GetText("4_units"));
 
916
 
 
917
                                }
 
918
                                else
 
919
                                {
 
920
                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Armor:"));
 
921
                                        if (GetShipArmor(DialogSpaceShip->ObjectCreationType) < GetShipArmor(WorkshopFighterGame->ObjectCreationType))
 
922
                                        {
 
923
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%i (%i) %s", (int)GetShipArmor(DialogSpaceShip->ObjectCreationType), (int)GetShipArmor(WorkshopFighterGame->ObjectCreationType), vw_GetText("4_units"));
 
924
                                                Y1 += Offset;
 
925
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk2:"));
 
926
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*2), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*2), vw_GetText("4_units"));
 
927
                                                Y1 += Offset;
 
928
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk3:"));
 
929
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*3), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*3), vw_GetText("4_units"));
 
930
                                                Y1 += Offset;
 
931
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk4:"));
 
932
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*4), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*4), vw_GetText("4_units"));
 
933
                                        }
 
934
                                        else
 
935
                                        {
 
936
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%i (%i) %s", (int)GetShipArmor(DialogSpaceShip->ObjectCreationType), (int)GetShipArmor(WorkshopFighterGame->ObjectCreationType), vw_GetText("4_units"));
 
937
                                                Y1 += Offset;
 
938
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk2:"));
 
939
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*2), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*2), vw_GetText("4_units"));
 
940
                                                Y1 += Offset;
 
941
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk3:"));
 
942
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*3), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*3), vw_GetText("4_units"));
 
943
                                                Y1 += Offset;
 
944
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Upgrade_Mk4:"));
 
945
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%i (%i) %s", (int)(GetShipArmor(DialogSpaceShip->ObjectCreationType)*4), (int)(GetShipArmor(WorkshopFighterGame->ObjectCreationType)*4), vw_GetText("4_units"));
 
946
                                        }
 
947
                                }
 
948
 
 
949
 
 
950
                                Y1 += Offset;
 
951
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Weapons_Slots:"));
 
952
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", DialogSpaceShip->WeaponQuantity, vw_GetText("4_units"));
 
953
                                Y1 += Offset;
 
954
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Slots_Levels:"));
 
955
                                int SSS = 0;
 
956
                                if (DialogSpaceShip->WeaponQuantity>0)
 
957
                                {
 
958
                                        vw_DrawFont(X1+Size+SSS, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i", DialogSpaceShip->WeaponType[0]);
 
959
                                        SSS += vw_FontSize("%i", DialogSpaceShip->WeaponType[0]);
 
960
                                }
 
961
                                for (int i=1; i<DialogSpaceShip->WeaponQuantity; i++)
 
962
                                {
 
963
                                        vw_DrawFont(X1+Size+SSS, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "/%i", DialogSpaceShip->WeaponType[i]);
 
964
                                        SSS += vw_FontSize("/%i", DialogSpaceShip->WeaponType[i]);
 
965
                                }
 
966
 
 
967
                                // закрываем...
 
968
                                if (vw_GetWindowLBMouse(true) || vw_GetWindowRBMouse(true)) CloseDialog();
 
969
                        }
 
970
                        break;
 
971
 
 
972
                // вывод данных по оружию
 
973
                case 7:
 
974
                        {
 
975
                                // название диалога
 
976
                                SizeI = 17 + (WTitle-vw_FontSize(vw_GetText(GetWeaponName(DialogWeapon->ObjectCreationType))))/2;
 
977
                                vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText(GetWeaponName(DialogWeapon->ObjectCreationType)));
 
978
                                // текст диалога
 
979
                                int Y1 = Y+80;
 
980
                                int Offset = 31;
 
981
                                int Size = 230;
 
982
                                float WScale = -200;
 
983
                                int X1 = X+45;
 
984
 
 
985
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
986
                                if (DialogWeapon->ObjectCreationType<16)
 
987
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Weapon,_Cannon"));
 
988
                                else
 
989
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Weapon,_Launcher"));
 
990
 
 
991
                                Y1 += Offset;
 
992
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
993
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText(GetWeaponGroupTitle(DialogWeapon->ObjectCreationType)));
 
994
                                Y1 += Offset;
 
995
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
996
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
997
                                Y1 += Offset;
 
998
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Armor:"));
 
999
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", (int)DialogWeapon->StrengthStart, vw_GetText("4_units"));
 
1000
 
 
1001
                                Y1 += Offset;
 
1002
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Width:"));
 
1003
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp,  "%2.1f %s", DialogWeapon->Width, vw_GetText("4_units"));
 
1004
                                Y1 += Offset;
 
1005
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Length:"));
 
1006
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", DialogWeapon->Length, vw_GetText("4_units"));
 
1007
                                Y1 += Offset;
 
1008
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Height:"));
 
1009
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", DialogWeapon->Height, vw_GetText("4_units"));
 
1010
 
 
1011
                                Y1 += Offset;
 
1012
                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Damage,_Hull:"));
 
1013
 
 
1014
                                if ((DialogWeapon->ObjectCreationType == 11) |
 
1015
                                        (DialogWeapon->ObjectCreationType == 12) |
 
1016
                                        (DialogWeapon->ObjectCreationType == 14))
 
1017
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", GetWeaponHullDamage(DialogWeapon->ObjectCreationType), vw_GetText("4_units/sec"));
 
1018
                                else
 
1019
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", GetWeaponHullDamage(DialogWeapon->ObjectCreationType), vw_GetText("4_units/shot"));
 
1020
 
 
1021
                                Y1 += Offset;
 
1022
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Damage,_Systems:"));
 
1023
                                if ((DialogWeapon->ObjectCreationType == 11) |
 
1024
                                        (DialogWeapon->ObjectCreationType == 12) |
 
1025
                                        (DialogWeapon->ObjectCreationType == 14))
 
1026
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", GetWeaponSystemsDamage(DialogWeapon->ObjectCreationType), vw_GetText("4_units/sec"));
 
1027
                                else
 
1028
                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", GetWeaponSystemsDamage(DialogWeapon->ObjectCreationType), vw_GetText("4_units/shot"));
 
1029
 
 
1030
                                Y1 += Offset;
 
1031
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Use:"));
 
1032
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", DialogWeapon->EnergyUse, vw_GetText("4_units_per_shot"));
 
1033
                                Y1 += Offset;
 
1034
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ammo:"));
 
1035
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", DialogWeapon->AmmoStart, vw_GetText("4_units"));
 
1036
                                Y1 += Offset;
 
1037
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Reload:"));
 
1038
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", DialogWeapon->NextFireTime, vw_GetText("4_seconds"));
 
1039
                                Y1 += Offset;
 
1040
                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Range:"));
 
1041
                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetProjectileRange(DialogWeapon->ObjectCreationType), vw_GetText("4_units"));
 
1042
 
 
1043
                                // закрываем...
 
1044
                                if (vw_GetWindowLBMouse(true) || vw_GetWindowRBMouse(true)) CloseDialog();
 
1045
                        }
 
1046
                        break;
 
1047
 
 
1048
                // вывод данных по системам
 
1049
                case 8:
 
1050
                        {
 
1051
                                // название диалога
 
1052
                                SizeI = 17 + (WTitle-vw_FontSize(vw_GetText(GetSystemName(DialogSystem))))/2;
 
1053
                                vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText(GetSystemName(DialogSystem)));
 
1054
                                // текст диалога
 
1055
                                int Y1 = Y+80;
 
1056
                                int Offset = 31;
 
1057
                                int Size = 230;
 
1058
                                float WScale = -200;
 
1059
                                int Size2 = 130;
 
1060
                                int X1 = X+45;
 
1061
 
 
1062
                                switch (DialogSystem)
 
1063
                                {
 
1064
                                        case 1:
 
1065
                                        case 2:
 
1066
                                        case 3:
 
1067
                                        case 4:
 
1068
 
 
1069
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
1070
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_System"));
 
1071
                                                Y1 += Offset;
 
1072
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
1073
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Spaceship_Engine"));
 
1074
                                                Y1 += Offset;
 
1075
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
1076
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
1077
                                                Y1 += Offset;
 
1078
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ion_Resistance:"));
 
1079
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", 0.0f, vw_GetText("4_units"));
 
1080
                                                Y1 += Offset;
 
1081
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Use:"));
 
1082
                                                if (NeedMoreEnergyDialog && Setup.Profile[CurrentProfile].SpaceShipControlMode != 1)
 
1083
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.0f,0.0f, CurrentAlert3*DialogContentTransp, "%3.1f %s", GetShipEngineSystemEnergyUse(DialogSystem), vw_GetText("4_units_per_sec"));
 
1084
                                                else
 
1085
                                                {
 
1086
                                                        if (Setup.Profile[CurrentProfile].EngineSystem == DialogSystem)
 
1087
                                                        {
 
1088
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipEngineSystemEnergyUse(DialogSystem), vw_GetText("4_units_per_sec"));
 
1089
                                                        }
 
1090
                                                        else
 
1091
                                                        if (Setup.Profile[CurrentProfile].EngineSystem == 0)
 
1092
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipEngineSystemEnergyUse(DialogSystem), vw_GetText("4_units_per_sec"));
 
1093
                                                        else
 
1094
                                                        {
 
1095
                                                                if (GetShipEngineSystemEnergyUse(DialogSystem) < GetShipEngineSystemEnergyUse(Setup.Profile[CurrentProfile].EngineSystem))
 
1096
                                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipEngineSystemEnergyUse(DialogSystem), GetShipEngineSystemEnergyUse(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units_per_sec"));
 
1097
                                                                else
 
1098
                                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipEngineSystemEnergyUse(DialogSystem), GetShipEngineSystemEnergyUse(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units_per_sec"));
 
1099
                                                        }
 
1100
                                                }
 
1101
 
 
1102
                                                Y1 += Offset;
 
1103
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Engine_Power:"));
 
1104
                                                if (Setup.Profile[CurrentProfile].EngineSystem == DialogSystem)
 
1105
                                                {
 
1106
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetEnginePower(DialogSystem), vw_GetText("4_units"));
 
1107
                                                }
 
1108
                                                else
 
1109
                                                if (Setup.Profile[CurrentProfile].EngineSystem == 0)
 
1110
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetEnginePower(DialogSystem), vw_GetText("4_units"));
 
1111
                                                else
 
1112
                                                {
 
1113
                                                        if (GetEnginePower(DialogSystem) > GetEnginePower(Setup.Profile[CurrentProfile].EngineSystem))
 
1114
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetEnginePower(DialogSystem), GetEnginePower(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units"));
 
1115
                                                        else
 
1116
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetEnginePower(DialogSystem), GetEnginePower(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units"));
 
1117
                                                }
 
1118
 
 
1119
                                                Y1 += Offset;
 
1120
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Acceleration:"));
 
1121
                                                if (Setup.Profile[CurrentProfile].EngineSystem == DialogSystem)
 
1122
                                                {
 
1123
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetEngineAcceleration(DialogSystem), vw_GetText("4_units"));
 
1124
                                                }
 
1125
                                                else
 
1126
                                                if (Setup.Profile[CurrentProfile].EngineSystem == 0)
 
1127
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetEngineAcceleration(DialogSystem), vw_GetText("4_units"));
 
1128
                                                else
 
1129
                                                {
 
1130
                                                        if (GetEngineAcceleration(DialogSystem) > GetEngineAcceleration(Setup.Profile[CurrentProfile].EngineSystem))
 
1131
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetEngineAcceleration(DialogSystem), GetEngineAcceleration(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units"));
 
1132
                                                        else
 
1133
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetEngineAcceleration(DialogSystem), GetEngineAcceleration(Setup.Profile[CurrentProfile].EngineSystem), vw_GetText("4_units"));
 
1134
                                                }
 
1135
 
 
1136
                                                Y1 += Offset;
 
1137
                                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Relations/Dependences:"));
 
1138
                                                Y1 += Offset;
 
1139
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_SpaceShip_Weight"));
 
1140
                                                Y1 += Offset;
 
1141
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Power_Source"));
 
1142
 
 
1143
                                                if (Setup.Profile[CurrentProfile].SpaceShipControlMode == 1)
 
1144
                                                {
 
1145
                                                        Y1 += Offset;
 
1146
                                                        Y1 += Offset;
 
1147
                                                        SizeI = (W-vw_FontSize(vw_GetText("4_ArcadeModeLine1")))/2-45;
 
1148
                                                        vw_DrawFont(X1+SizeI, Y1, 0, 0, 1.0f, 1.0f,0.0f,0.0f, DialogContentTransp, vw_GetText("4_ArcadeModeLine1"));
 
1149
                                                        Y1 += Offset;
 
1150
                                                        SizeI = (W-vw_FontSize(vw_GetText("4_ArcadeModeLine2")))/2-45;
 
1151
                                                        vw_DrawFont(X1+SizeI, Y1, 0, 0, 1.0f, 1.0f,0.0f,0.0f, DialogContentTransp, vw_GetText("4_ArcadeModeLine2"));
 
1152
                                                }
 
1153
 
 
1154
                                                break;
 
1155
 
 
1156
                                        case 5:
 
1157
                                        case 6:
 
1158
                                        case 7:
 
1159
                                        case 8:
 
1160
 
 
1161
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
1162
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_System"));
 
1163
                                                Y1 += Offset;
 
1164
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
1165
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Power_Source"));
 
1166
                                                Y1 += Offset;
 
1167
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
1168
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
1169
                                                Y1 += Offset;
 
1170
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ion_Resistance:"));
 
1171
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", 0.0f, vw_GetText("4_units"));
 
1172
                                                Y1 += Offset;
 
1173
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Capacity:"));
 
1174
 
 
1175
                                                if (Setup.Profile[CurrentProfile].PowerSystem == DialogSystem-4)
 
1176
                                                {
 
1177
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipMaxEnergy(DialogSystem-4), vw_GetText("4_units"));
 
1178
                                                }
 
1179
                                                else
 
1180
                                                if (Setup.Profile[CurrentProfile].PowerSystem == 0)
 
1181
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipMaxEnergy(DialogSystem-4), vw_GetText("4_units"));
 
1182
                                                else
 
1183
                                                {
 
1184
                                                        if (GetShipMaxEnergy(DialogSystem-4) > GetShipMaxEnergy(Setup.Profile[CurrentProfile].PowerSystem))
 
1185
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipMaxEnergy(DialogSystem-4), GetShipMaxEnergy(Setup.Profile[CurrentProfile].PowerSystem), vw_GetText("4_units"));
 
1186
                                                        else
 
1187
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipMaxEnergy(DialogSystem-4), GetShipMaxEnergy(Setup.Profile[CurrentProfile].PowerSystem), vw_GetText("4_units"));
 
1188
                                                }
 
1189
 
 
1190
                                                Y1 += Offset;
 
1191
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Recharge_Rate:"));
 
1192
                                                if (NeedMoreEnergyDialog)
 
1193
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.0f,0.0f, CurrentAlert3*DialogContentTransp, "%3.1f %s", GetShipRechargeEnergy(DialogSystem-4), vw_GetText("4_units_per_sec"));
 
1194
                                                else
 
1195
                                                {
 
1196
                                                        if (Setup.Profile[CurrentProfile].PowerSystem == DialogSystem-4)
 
1197
                                                        {
 
1198
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipRechargeEnergy(DialogSystem-4), vw_GetText("4_units_per_sec"));
 
1199
                                                        }
 
1200
                                                        else
 
1201
                                                        if (Setup.Profile[CurrentProfile].PowerSystem == 0)
 
1202
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipRechargeEnergy(DialogSystem-4), vw_GetText("4_units_per_sec"));
 
1203
                                                        else
 
1204
                                                        {
 
1205
                                                                if (GetShipRechargeEnergy(DialogSystem-4) > GetShipRechargeEnergy(Setup.Profile[CurrentProfile].PowerSystem))
 
1206
                                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipRechargeEnergy(DialogSystem-4), GetShipRechargeEnergy(Setup.Profile[CurrentProfile].PowerSystem), vw_GetText("4_units_per_sec"));
 
1207
                                                                else
 
1208
                                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", GetShipRechargeEnergy(DialogSystem-4), GetShipRechargeEnergy(Setup.Profile[CurrentProfile].PowerSystem), vw_GetText("4_units_per_sec"));
 
1209
                                                        }
 
1210
                                                }
 
1211
 
 
1212
                                                Y1 += Offset;
 
1213
                                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Relations/Dependences:"));
 
1214
                                                Y1 += Offset;
 
1215
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Weapon_Recharge_Rate"));
 
1216
                                                Y1 += Offset;
 
1217
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Spaceship_Engine"));
 
1218
                                                Y1 += Offset;
 
1219
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Optical_Computer"));
 
1220
                                                Y1 += Offset;
 
1221
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Targeting_System"));
 
1222
                                                Y1 += Offset;
 
1223
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Advanced_System"));
 
1224
 
 
1225
                                                break;
 
1226
 
 
1227
                                        case 9:
 
1228
                                        case 10:
 
1229
                                        case 11:
 
1230
                                        case 12:
 
1231
 
 
1232
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
1233
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_System"));
 
1234
                                                Y1 += Offset;
 
1235
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
1236
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Optical_Computer"));
 
1237
                                                Y1 += Offset;
 
1238
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
1239
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
1240
                                                Y1 += Offset;
 
1241
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ion_Resistance:"));
 
1242
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", 0.0f, vw_GetText("4_units"));
 
1243
                                                Y1 += Offset;
 
1244
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Use:"));
 
1245
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 0.1f, vw_GetText("4_units_per_sec"));
 
1246
 
 
1247
                                                Y1 += Offset;
 
1248
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Target_Tracing:"));
 
1249
                                                if (DialogSystem == 9)
 
1250
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", 1, vw_GetText("4_object(s)"));
 
1251
                                                if (DialogSystem == 10)
 
1252
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", 1, vw_GetText("4_object(s)"));
 
1253
                                                if (DialogSystem == 11)
 
1254
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", 6, vw_GetText("4_object(s)"));
 
1255
                                                if (DialogSystem == 12)
 
1256
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i %s", 6, vw_GetText("4_object(s)"));
 
1257
 
 
1258
                                                Y1 += Offset;
 
1259
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Auto_Adjustment:"));
 
1260
                                                if (DialogSystem == 9)
 
1261
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_No"));
 
1262
                                                if (DialogSystem == 10)
 
1263
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Yes"));
 
1264
                                                if (DialogSystem == 11)
 
1265
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_No"));
 
1266
                                                if (DialogSystem == 12)
 
1267
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Yes"));
 
1268
 
 
1269
                                                Y1 += Offset;
 
1270
                                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Relations/Dependences:"));
 
1271
                                                Y1 += Offset;
 
1272
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Power_Source"));
 
1273
                                                Y1 += Offset;
 
1274
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Weapon_Fire_Range"));
 
1275
                                                Y1 += Offset;
 
1276
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Weapon_Orientation"));
 
1277
                                                Y1 += Offset;
 
1278
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Targeting_System"));
 
1279
 
 
1280
                                                break;
 
1281
 
 
1282
                                        case 13:
 
1283
                                        case 14:
 
1284
                                        case 15:
 
1285
                                        case 16:
 
1286
 
 
1287
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
1288
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_System"));
 
1289
                                                Y1 += Offset;
 
1290
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
1291
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Targeting_System"));
 
1292
                                                Y1 += Offset;
 
1293
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
1294
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
1295
                                                Y1 += Offset;
 
1296
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ion_Resistance:"));
 
1297
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", 0.0f, vw_GetText("4_units"));
 
1298
                                                Y1 += Offset;
 
1299
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Use:"));
 
1300
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 0.1f, vw_GetText("4_units_per_sec"));
 
1301
                                                Y1 += Offset;
 
1302
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Orientation_Speed:"));
 
1303
                                                if (Setup.Profile[CurrentProfile].TargetingMechanicSystem == DialogSystem-12)
 
1304
                                                {
 
1305
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 40.0f*(DialogSystem-12), vw_GetText("4_deg_per_sec"));
 
1306
                                                }
 
1307
                                                else
 
1308
                                                if (Setup.Profile[CurrentProfile].TargetingMechanicSystem == 0)
 
1309
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 40.0f*(DialogSystem-12), vw_GetText("4_deg_per_sec"));
 
1310
                                                else
 
1311
                                                {
 
1312
                                                        if (DialogSystem-12 > Setup.Profile[CurrentProfile].TargetingMechanicSystem)
 
1313
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", 40.0f*(DialogSystem-12), 40.0f*Setup.Profile[CurrentProfile].TargetingMechanicSystem, vw_GetText("4_deg_per_sec"));
 
1314
                                                        else
 
1315
                                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, "%3.1f (%3.1f) %s", 40.0f*(DialogSystem-12), 40.0f*Setup.Profile[CurrentProfile].TargetingMechanicSystem, vw_GetText("4_deg_per_sec"));
 
1316
                                                }
 
1317
 
 
1318
                                                Y1 += Offset;
 
1319
                                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Relations/Dependences:"));
 
1320
                                                Y1 += Offset;
 
1321
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Power_Source"));
 
1322
                                                Y1 += Offset;
 
1323
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Optical_Computer"));
 
1324
                                                Y1 += Offset;
 
1325
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Weapon_Orientation"));
 
1326
 
 
1327
                                                if (Setup.Profile[CurrentProfile].WeaponTargetingMode == 1)
 
1328
                                                {
 
1329
                                                        Y1 += Offset;
 
1330
                                                        Y1 += Offset;
 
1331
                                                        SizeI = (W-vw_FontSize(vw_GetText("4_ArcadeModeLine1")))/2-45;
 
1332
                                                        vw_DrawFont(X1+SizeI, Y1, 0, 0, 1.0f, 1.0f,0.0f,0.0f, DialogContentTransp, vw_GetText("4_ArcadeModeLine1"));
 
1333
                                                        Y1 += Offset;
 
1334
                                                        SizeI = (W-vw_FontSize(vw_GetText("4_ArcadeModeLine3")))/2-45;
 
1335
                                                        vw_DrawFont(X1+SizeI, Y1, 0, 0, 1.0f, 1.0f,0.0f,0.0f, DialogContentTransp, vw_GetText("4_ArcadeModeLine3"));
 
1336
                                                }
 
1337
 
 
1338
                                                break;
 
1339
 
 
1340
                                        case 17:
 
1341
                                        case 18:
 
1342
                                        case 19:
 
1343
                                        case 20:
 
1344
 
 
1345
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Object_Class:"));
 
1346
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_System"));
 
1347
                                                Y1 += Offset;
 
1348
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Type:"));
 
1349
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Advanced_System"));
 
1350
                                                Y1 += Offset;
 
1351
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Developer:"));
 
1352
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("4_Earth_Federation"));
 
1353
                                                Y1 += Offset;
 
1354
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Ion_Resistance:"));
 
1355
                                                vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%2.1f %s", 0.0f, vw_GetText("4_units"));
 
1356
                                                Y1 += Offset;
 
1357
                                                vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Energy_Use:"));
 
1358
                                                if (NeedMoreEnergyDialog)
 
1359
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,0.0f,0.0f, CurrentAlert3*DialogContentTransp, "%3.1f %s", GetShipProtectionSystemEnergyUse(DialogSystem-16), vw_GetText("4_units_per_sec"));
 
1360
                                                else
 
1361
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", GetShipProtectionSystemEnergyUse(DialogSystem-16), vw_GetText("4_units_per_sec"));
 
1362
 
 
1363
                                                if (DialogSystem == 17)
 
1364
                                                {
 
1365
                                                        Y1 += Offset;
 
1366
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Hull_Repair_Rate:"));
 
1367
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%0.1f%% %s", 0.5f, vw_GetText("4_per_sec"));
 
1368
                                                }
 
1369
                                                if (DialogSystem == 18)
 
1370
                                                {
 
1371
                                                        Y1 += Offset;
 
1372
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Resistance,_Hull:"));
 
1373
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i", 4);
 
1374
                                                        Y1 += Offset;
 
1375
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Resistance,_System:"));
 
1376
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i", 5);
 
1377
                                                }
 
1378
                                                if (DialogSystem == 19)
 
1379
                                                {
 
1380
                                                        Y1 += Offset;
 
1381
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Shield_Power:"));
 
1382
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 100.0f, vw_GetText("4_units"));
 
1383
                                                        Y1 += Offset;
 
1384
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Recharge_Rate:"));
 
1385
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i%% %s", 2, vw_GetText("4_per_sec"));
 
1386
                                                }
 
1387
                                                if (DialogSystem == 20)
 
1388
                                                {
 
1389
                                                        Y1 += Offset;
 
1390
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Shield_Power:"));
 
1391
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%3.1f %s", 150.0f, vw_GetText("4_units"));
 
1392
                                                        Y1 += Offset;
 
1393
                                                        vw_DrawFont(X1, Y1, WScale, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Recharge_Rate:"));
 
1394
                                                        vw_DrawFont(X1+Size, Y1, WScale, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, "%i%% %s", 3, vw_GetText("4_per_sec"));
 
1395
                                                }
 
1396
 
 
1397
                                                Y1 += Offset;
 
1398
                                                vw_DrawFont(X1, Y1, 0, 0, 1.0f, 1.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Relations/Dependences:"));
 
1399
                                                Y1 += Offset;
 
1400
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 1.0f,0.5f,0.0f, DialogContentTransp, vw_GetText("4_Power_Source"));
 
1401
                                                Y1 += Offset;
 
1402
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Hull_Resistance"));
 
1403
                                                Y1 += Offset;
 
1404
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_Systems_Resistance"));
 
1405
                                                Y1 += Offset;
 
1406
                                                vw_DrawFont(X1+Size2, Y1, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("4_SpaceShip_Vitality"));
 
1407
 
 
1408
                                                break;
 
1409
                                }
 
1410
 
 
1411
 
 
1412
                                // закрываем...
 
1413
                                if (vw_GetWindowLBMouse(true) || vw_GetWindowRBMouse(true)) CloseDialog();
 
1414
                        }
 
1415
                        break;
 
1416
 
 
1417
 
 
1418
                case 9: // подсказки на меню профайлов
 
1419
                {
 
1420
                        // название диалога
 
1421
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1422
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1423
                        // текст диалога
 
1424
 
 
1425
                        vw_DrawFont(X+25, Y+ 80, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line1"));
 
1426
                        vw_DrawFont(X+25, Y+115, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line2"));
 
1427
                        vw_DrawFont(X+25, Y+150, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line3"));
 
1428
                        vw_DrawFont(X+25, Y+185, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line4"));
 
1429
 
 
1430
                        vw_DrawFont(X+25, Y+240, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line5"));
 
1431
                        vw_DrawFont(X+25, Y+275, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line6"));
 
1432
                        vw_DrawFont(X+25, Y+310, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line7"));
 
1433
                        vw_DrawFont(X+25, Y+345, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line8"));
 
1434
                        vw_DrawFont(X+25, Y+380, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_9Line9"));
 
1435
 
 
1436
                        vw_DrawFont(X+25, Y+435, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_9Line10"));
 
1437
                        vw_DrawFont(X+25, Y+470, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_9Line11"));
 
1438
 
 
1439
                        // чекбокс
 
1440
                        bool ttt = !Setup.NeedShowHint[0];
 
1441
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1442
                        Setup.NeedShowHint[0] = !ttt;
 
1443
                        // кнопки
 
1444
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
1445
                        break;
 
1446
                }
 
1447
                case 10: // подсказки на меню шипъярд
 
1448
                {
 
1449
                        // название диалога
 
1450
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1451
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1452
                        // текст диалога
 
1453
 
 
1454
                        int k=28;
 
1455
                        vw_DrawFont(X+25, Y+80+k*0, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line1"));
 
1456
                        vw_DrawFont(X+25, Y+80+k*1, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line2"));
 
1457
                        vw_DrawFont(X+25, Y+80+k*2, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line3"));
 
1458
                        vw_DrawFont(X+25, Y+80+k*3, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line4"));
 
1459
 
 
1460
                        vw_DrawFont(X+25, Y+100+k*4, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line5"));
 
1461
                        vw_DrawFont(X+25, Y+100+k*5, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line6"));
 
1462
                        vw_DrawFont(X+25, Y+100+k*6, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line7"));
 
1463
                        vw_DrawFont(X+25, Y+100+k*7, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line8"));
 
1464
 
 
1465
                        vw_DrawFont(X+25, Y+120+k*8, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_10Line9"));
 
1466
                        vw_DrawFont(X+25, Y+120+k*9, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_10Line10"));
 
1467
                        vw_DrawFont(X+25, Y+120+k*10, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_10Line11"));
 
1468
                        vw_DrawFont(X+25, Y+120+k*11, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_10Line12"));
 
1469
                        vw_DrawFont(X+25, Y+120+k*12, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_10Line13"));
 
1470
                        vw_DrawFont(X+25, Y+120+k*13, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_10Line14"));
 
1471
 
 
1472
                        // чекбокс
 
1473
                        bool ttt = !Setup.NeedShowHint[1];
 
1474
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1475
                        Setup.NeedShowHint[1] = !ttt;
 
1476
                        // кнопки
 
1477
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
1478
                        break;
 
1479
                }
 
1480
                case 11: // подсказки на меню системы
 
1481
                {
 
1482
                        // название диалога
 
1483
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1484
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1485
                        // текст диалога
 
1486
 
 
1487
                        int k=25;
 
1488
                        vw_DrawFont(X+25, Y+80+k*0, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line1"));
 
1489
                        vw_DrawFont(X+25, Y+80+k*1, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line2"));
 
1490
                        vw_DrawFont(X+25, Y+80+k*2, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line3"));
 
1491
 
 
1492
                        vw_DrawFont(X+25, Y+100+k*3, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line4"));
 
1493
                        vw_DrawFont(X+25, Y+100+k*4, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line5"));
 
1494
                        vw_DrawFont(X+25, Y+100+k*5, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_11Line6"));
 
1495
 
 
1496
                        vw_DrawFont(X+25, Y+120+k*6, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line7"));
 
1497
                        vw_DrawFont(X+40, Y+120+k*7, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line8"));
 
1498
                        vw_DrawFont(X+25, Y+120+k*8, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line9"));
 
1499
                        vw_DrawFont(X+40, Y+120+k*9, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line10"));
 
1500
                        vw_DrawFont(X+25, Y+120+k*10, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line11"));
 
1501
                        vw_DrawFont(X+40, Y+120+k*11, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line12"));
 
1502
                        vw_DrawFont(X+25, Y+120+k*12, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line13"));
 
1503
                        vw_DrawFont(X+40, Y+120+k*13, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line14"));
 
1504
                        vw_DrawFont(X+25, Y+120+k*14, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line15"));
 
1505
                        vw_DrawFont(X+40, Y+120+k*15, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_11Line16"));
 
1506
 
 
1507
                        // чекбокс
 
1508
                        bool ttt = !Setup.NeedShowHint[2];
 
1509
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1510
                        Setup.NeedShowHint[2] = !ttt;
 
1511
                        // кнопки
 
1512
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
1513
                        break;
 
1514
                }
 
1515
                case 12: // подсказки на меню оружейная
 
1516
                {
 
1517
                        // название диалога
 
1518
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1519
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1520
                        // текст диалога
 
1521
 
 
1522
                        int k=25;
 
1523
                        vw_DrawFont(X+25, Y+80+k*0, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line1"));
 
1524
                        vw_DrawFont(X+25, Y+80+k*1, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line2"));
 
1525
                        vw_DrawFont(X+25, Y+80+k*2, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line3"));
 
1526
                        vw_DrawFont(X+25, Y+80+k*3, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line4"));
 
1527
                        vw_DrawFont(X+25, Y+80+k*4, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line5"));
 
1528
                        vw_DrawFont(X+25, Y+80+k*5, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line6"));
 
1529
 
 
1530
                        vw_DrawFont(X+25, Y+100+k*6, 716, 0,1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line7"));
 
1531
                        vw_DrawFont(X+25, Y+100+k*7, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line8"));
 
1532
 
 
1533
                        vw_DrawFont(X+25, Y+120+k*8, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_12Line9"));
 
1534
                        vw_DrawFont(X+25, Y+120+k*9, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line10"));
 
1535
                        vw_DrawFont(X+40, Y+120+k*10, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line11"));
 
1536
                        vw_DrawFont(X+25, Y+120+k*11, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line12"));
 
1537
                        vw_DrawFont(X+40, Y+120+k*12, 716-15, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line13"));
 
1538
                        vw_DrawFont(X+40, Y+120+k*13, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line14"));
 
1539
                        vw_DrawFont(X+25, Y+120+k*14, 716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line15"));
 
1540
                        vw_DrawFont(X+40, Y+120+k*15, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_12Line16"));
 
1541
 
 
1542
 
 
1543
 
 
1544
                        // чекбокс
 
1545
                        bool ttt = !Setup.NeedShowHint[3];
 
1546
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1547
                        Setup.NeedShowHint[3] = !ttt;
 
1548
                        // кнопки
 
1549
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
1550
                        break;
 
1551
                }
 
1552
 
 
1553
                case 13: // подсказки на горячие клавиши в игре
 
1554
                {
 
1555
                        // название диалога
 
1556
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1557
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1558
                        // текст диалога
 
1559
 
 
1560
                        int k=23;
 
1561
 
 
1562
                        SizeI = (W-vw_FontSize(vw_GetText("9_13Line1")))/2;
 
1563
                        vw_DrawFont(X+SizeI, Y+80+k*0, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line1"));
 
1564
 
 
1565
                        vw_DrawFont(X+25, Y+100+k*1, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line2"));
 
1566
 
 
1567
                        vw_DrawFont(X+25, Y+120+k*2, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line6"));
 
1568
                        vw_DrawFont(X+25, Y+120+k*3, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line7"));
 
1569
                        vw_DrawFont(X+25, Y+120+k*4, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line8"));
 
1570
                        vw_DrawFont(X+25, Y+120+k*5, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_13Line9"));
 
1571
 
 
1572
                        vw_DrawFont(X+25, Y+140+k*6, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line10"));
 
1573
                        vw_DrawFont(X+25, Y+140+k*7, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line11"));
 
1574
                        vw_DrawFont(X+25, Y+140+k*8, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line12"));
 
1575
 
 
1576
                        vw_DrawFont(X+25, Y+160+k*9, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line13"));
 
1577
 
 
1578
                        vw_DrawFont(X+25, Y+180+k*10, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_13Line14"));
 
1579
                        vw_DrawFont(X+25, Y+180+k*11, -716, 0, 1.0f, 1.0f,1.0f,1.0f, 0.5f*DialogContentTransp, vw_GetText("9_13Line15"));
 
1580
 
 
1581
 
 
1582
 
 
1583
                        // чекбокс
 
1584
                        bool ttt = !Setup.NeedShowHint[4];
 
1585
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1586
                        Setup.NeedShowHint[4] = !ttt;
 
1587
                        // кнопки
 
1588
                        if (DrawDialogButton128(X+512+90, Y+ButtonOffset, vw_GetText("1_START"), DialogContentTransp))
 
1589
                        {
 
1590
                        //      WorkshopDestroyData();
 
1591
                        //      CanDrawWorkshop = false;
 
1592
                                // ничего не тянем... только включили меню
 
1593
                                DragWeaponNum = 0;
 
1594
                                DragWeaponLevel = 0;
 
1595
                                DragWeapon = false;
 
1596
                                WeaponSetupSlot = -1;
 
1597
                                //
 
1598
                                ComBuffer = 99;
 
1599
                                CloseDialog();
 
1600
                        }
 
1601
                        break;
 
1602
                }
 
1603
 
 
1604
                case 14: // подсказка, если пытаемся по второму разу пройти миссию
 
1605
                {
 
1606
                        // название диалога
 
1607
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1608
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1609
                        // текст диалога
 
1610
 
 
1611
                        int k=30;
 
1612
 
 
1613
                        vw_DrawFont(X+25, Y+80+k*0, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line1"));
 
1614
                        vw_DrawFont(X+25, Y+80+k*1, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line2"), Setup.Profile[CurrentProfile].ByMissionExperience[CurrentMission]);
 
1615
 
 
1616
                        vw_DrawFont(X+25, Y+100+k*2, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line3"));
 
1617
                        vw_DrawFont(X+25, Y+100+k*3, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line4"));
 
1618
                        vw_DrawFont(X+25, Y+100+k*4, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line5"));
 
1619
                        vw_DrawFont(X+25, Y+100+k*5, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line6"));
 
1620
 
 
1621
                        vw_DrawFont(X+25, Y+120+k*6, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line7"));
 
1622
                        vw_DrawFont(X+25, Y+120+k*7, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line8"));
 
1623
                        vw_DrawFont(X+25, Y+120+k*8, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_15Line9"));
 
1624
 
 
1625
 
 
1626
                        // чекбокс
 
1627
                        bool ttt = !Setup.NeedShowHint[5];
 
1628
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1629
                        Setup.NeedShowHint[5] = !ttt;
 
1630
                        // кнопки
 
1631
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp))
 
1632
                        {
 
1633
                                CloseDialog();
 
1634
                                ComBuffer = WORKSHOP;
 
1635
                                CurrentWorkshop = 3;
 
1636
                                WorkshopCreate();
 
1637
                        }
 
1638
 
 
1639
                        break;
 
1640
                }
 
1641
 
 
1642
 
 
1643
                case 15: // подсказка, для линукс версии - пожертвование
 
1644
                {
 
1645
                        // название диалога
 
1646
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("9_Tipsandhints")))/2;
 
1647
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("9_Tipsandhints"));
 
1648
                        // текст диалога
 
1649
 
 
1650
 
 
1651
 
 
1652
                        int k=33;
 
1653
 
 
1654
                        SizeI = (768 - vw_FontSize(vw_GetText("9_18Line1")))/2;
 
1655
                        vw_DrawFont(X+SizeI, Y+80+k*0, -716, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("9_18Line1"));
 
1656
 
 
1657
                        vw_DrawFont(X+25, Y+80+k*2, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_18Line2"));
 
1658
                        vw_DrawFont(X+25, Y+80+k*3, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_18Line3"));
 
1659
 
 
1660
                        vw_DrawFont(X+25, Y+80+k*5, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_18Line4"));
 
1661
                        vw_DrawFont(X+25, Y+80+k*6, 716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_18Line5"));
 
1662
                        vw_DrawFont(X+25, Y+80+k*7, -716, 0, 1.0f, 1.0f,1.0f,1.0f, DialogContentTransp, vw_GetText("9_18Line6"));
 
1663
 
 
1664
                        if (DrawDialogButton200(X+284, Y+80+k*9, vw_GetText("1_DONATE"), DialogContentTransp))
 
1665
                        {
 
1666
 
 
1667
                                // нужно свернуть игру, запустить броузер и выйти в основное меню
 
1668
                                SDL_WM_IconifyWindow();
 
1669
 
 
1670
                                switch (Setup.MenuLanguage)
 
1671
                                {
 
1672
                                        case 1: //en
 
1673
                                                vw_OpenBrouser("http://www.viewizard.com/astromenace/donors.php");
 
1674
                                                break;
 
1675
                                        case 2: //de
 
1676
                                                vw_OpenBrouser("http://www.viewizard.com/de/astromenace/donors.php");
 
1677
                                                break;
 
1678
                                        case 3: //ru
 
1679
                                                vw_OpenBrouser("http://www.viewizard.com/ru/astromenace/donors.php");
 
1680
                                                break;
 
1681
                                }
 
1682
                        }
 
1683
 
 
1684
 
 
1685
                        SizeI = (768 - vw_FontSize(vw_GetText("9_18Line7")))/2;
 
1686
                        vw_DrawFont(X+SizeI, Y+80+k*11, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("9_18Line7"));
 
1687
 
 
1688
                        SizeI = (768 - vw_FontSize(vw_GetText("9_18Line8")))/2;
 
1689
                        vw_DrawFont(X+SizeI, Y+80+k*12, 0, 0, 1.0f, 0.0f,1.0f,0.0f, DialogContentTransp, vw_GetText("9_18Line8"));
 
1690
 
 
1691
                        // чекбокс
 
1692
                        bool ttt = !Setup.NeedShowHint[6];
 
1693
                        DrawCheckBox_2(X+36, Y+ButtonOffset, &ttt, vw_GetText("9_notshowtip"), DialogContentTransp);
 
1694
                        Setup.NeedShowHint[6] = !ttt;
 
1695
                        // кнопки
 
1696
                        if (DrawDialogButton200(X+512+90-72, Y+ButtonOffset, vw_GetText("1_CLOSE"), DialogContentTransp)) CloseDialog();
 
1697
                        break;
 
1698
                }
 
1699
 
 
1700
                // спрашиваем какой язык при первом старте игры
 
1701
                case 16:
 
1702
                {
 
1703
                        // название диалога
 
1704
                        SizeI = 17 + (WTitle-vw_FontSize(vw_GetText("3_Language")))/2;
 
1705
                        vw_DrawFont(X+SizeI, Y+TitleOffset, 0, 0, 1.0f, 1.0f,1.0f,1.0f, 0.7f*DialogContentTransp, vw_GetText("3_Language"));
 
1706
 
 
1707
                        if (DrawDialogButton200(X+128+64-72/2,Y+ButtonOffset-106, "English", DialogContentTransp))
 
1708
                        {
 
1709
                                CloseDialog();
 
1710
                                if (Setup.MenuLanguage != 1)
 
1711
                                {
 
1712
                                        Setup.MenuLanguage = 1;
 
1713
                                        Setup.VoiceLanguage = 1;
 
1714
                                        ReCreateMenuLanguageEntryLinks();
 
1715
                                        ReCreateVoiceLanguageEntryLinks();
 
1716
                                        vw_SetTextLanguage(Setup.MenuLanguage-1);
 
1717
                                }
 
1718
                        }
 
1719
                        if (DrawDialogButton200(X+128+64-72/2,Y+ButtonOffset-53, "Deutsch", DialogContentTransp))
 
1720
                        {
 
1721
                                CloseDialog();
 
1722
                                if (Setup.MenuLanguage != 2)
 
1723
                                {
 
1724
                                        Setup.MenuLanguage = 2;
 
1725
                                        Setup.VoiceLanguage = 2;
 
1726
                                        ReCreateMenuLanguageEntryLinks();
 
1727
                                        ReCreateVoiceLanguageEntryLinks();
 
1728
                                        vw_SetTextLanguage(Setup.MenuLanguage-1);
 
1729
                                }
 
1730
                        }
 
1731
                        if (DrawDialogButton200(X+128+64-72/2,Y+ButtonOffset, "Русский", DialogContentTransp))
 
1732
                        {
 
1733
                                CloseDialog();
 
1734
                                if (Setup.MenuLanguage != 3)
 
1735
                                {
 
1736
                                        Setup.MenuLanguage = 3;
 
1737
                                        Setup.VoiceLanguage = 3;
 
1738
                                        ReCreateMenuLanguageEntryLinks();
 
1739
                                        ReCreateVoiceLanguageEntryLinks();
 
1740
                                        vw_SetTextLanguage(Setup.MenuLanguage-1);
 
1741
                                }
 
1742
                        }
 
1743
 
 
1744
                        break;
 
1745
                }
 
1746
 
 
1747
                        break;
 
1748
 
 
1749
        }
 
1750
 
 
1751
 
 
1752
 
 
1753
 
 
1754
 
 
1755
 
 
1756
 
 
1757
 
 
1758
 
 
1759
 
 
1760
        // если можно - снимаем диалог
 
1761
        if (vw_GetKeys(SDLK_ESCAPE))
 
1762
        {
 
1763
                CloseDialog();
 
1764
                vw_SetKeys(SDLK_ESCAPE, false);
 
1765
        }
 
1766
}