Gleb Mazovetskiy
d76e577ee4
DiabloUI/credits: Render TTF only once
...
Re-use the same TTF surface for text and shadow.
This is significantly faster.
7 years ago
Gleb Mazovetskiy
89ff46a371
Remove SDL_Delay(1)
7 years ago
Gleb Mazovetskiy
f0a90f4717
DiabloUI: Credits improvements
...
1. Fix lines moving up and down on slower devices.
2. Cache rendered text surfaces (in a ring buffer).
3. SDL_Delay(1) between event polls to reduce CPU usage.
4. Move data to a separate compilation unit.
Refs #231
7 years ago
Gleb Mazovetskiy
2fb84d5f60
Renderer texture: use RGB888 instead of RGBA8888
...
Massively improves renderer performance.
7 years ago
Anders Jenbo
88039e9a21
Prepare release
7 years ago
Anders Jenbo
dc5bbd0c49
Implement DefWindowProc directly in MainWndProc
7 years ago
Anders Jenbo
b35a886846
Limit verbose info level debug to _DEBUG mode
7 years ago
Anders Jenbo
fb01349343
Ignore uninteresting SDL events
7 years ago
Anders Jenbo
5eacf0ed8e
Implement GetAsyncKeyState (enables two debug features)
...
- When started with -^ you can scroll the screen by holding shift and
moving the mouse.
- Holding menu will disable transparency.
7 years ago
Anders Jenbo
73a7a1ae6d
Remove unimplemented functions that aren't needed with SDL
7 years ago
Cybervitexus
ab60df6618
Diasurgical master ( #336 )
...
* Debian Package update
* Missing font & icons fix
* Fedora package update
* Fedora package update
* Fixing #333 Linux Font Path problem
* use of TTF_FONT_PATH
7 years ago
Gleb Mazovetskiy
d15bd453c6
Make DiabloUI/errorart arrays const
7 years ago
Gleb Mazovetskiy
52e4064fe5
art.cpp: Use `const_cast` instead of C-style cast
7 years ago
Anders Jenbo
ba9288c6cf
Unify error dialogs, for looks and portability
...
- Use UiOkDialog() to display all error messages
- Add SDL simple message, and console fallbacks to UiOkDialog()
- Boot graphics early on to facilitate most error messages with build in
gui
- Some more miniwin clean ups
7 years ago
Gleb Mazovetskiy
6b9a9faebc
Fix hero dialog image
...
Regression introduced in b536d0efa2
Fixes #318
7 years ago
Anders Jenbo
97e09e3e25
Fix music in shareware
7 years ago
Gleb Mazovetskiy
ea4358fdc7
Avoid console warnings on dialog init w/o diabdat
7 years ago
Gleb Mazovetskiy
b536d0efa2
DiabloUI: Handle logo like all the other elements
...
Adds the `animated` flag to `UiImage`, allowing us to
remove special handling for the logo.
7 years ago
Pyr0Byt3
e7e1ba96dc
fix hero order
7 years ago
Gleb Mazovetskiy
4ea3a4e941
Make Source/ dialogs call DiabloUI/dialogs.cpp
...
The diabdat.mpq absence error is handled by stubbing the art with solid
colors.
7 years ago
Gleb Mazovetskiy
850d09b0a5
Minor cleanup of internal error handling
...
1. TTF no longer crashes on exit.
2. Art failing to load simply isn't rendered instead of crashing in random places.
3. Fixes empty line rendering in ttf_render_wrapped.cpp
4. dx_cleanup is now idempotent.
7 years ago
Gleb Mazovetskiy
fd0a23aac3
Improve RenderUTF8_Solid_Wrapped comment
7 years ago
Gleb Mazovetskiy
d7bec68fb2
Reduce TTF line spacing to roughly match Diablo
7 years ago
Gleb Mazovetskiy
40651d8a19
Implement x-align for wrapped TTF text
7 years ago
Gleb Mazovetskiy
5d7f6db2fc
Wrapped text rendering for TTF
...
Does not do centering yet, but should be easy to add in the future
7 years ago
Gleb Mazovetskiy
aa3a8fecd5
DiabloUI: Dialog positioning and other tweaks
7 years ago
Gleb Mazovetskiy
458fbcef88
DiabloUI: Implement some dialogs
...
Partially addresses #303
7 years ago
Gleb Mazovetskiy
0710d1c425
DiabloUI: Rename UiButton to UiArtTextButton
7 years ago
Gleb Mazovetskiy
17b5011916
DiabloUI: Move art and text code out of diablo.cpp
7 years ago
Anders Jenbo
d2c4b461d4
Add option to compile shareware version
7 years ago
Gleb Mazovetskiy
e4ef58f73d
DiabloUI: Add a scroll bar to hero selection
...
Has the same weird behaviour as the actual Diablo scrollbar but without
the subtle mouse interaction bugs.
7 years ago
Gleb Mazovetskiy
78c9453e94
Make the Yes/No dialog list wrap
...
It wraps in Diablo
7 years ago
Gleb Mazovetskiy
8d18a9938b
DiabloUI selgame.cpp: Reduce duplication
7 years ago
Gleb Mazovetskiy
8e26a26b9c
DiabloUI: Fix label position in SELUDPGAME_DIALOG
7 years ago
Marlon Beijer
3a267aa7f7
Add option to disable network support for builds
7 years ago
Gleb Mazovetskiy
7573446763
Make hero selection list scrollable
...
No scrollbar yet, keyboard scrolling only
7 years ago
Gleb Mazovetskiy
2ba268e608
DiabloUI: Better char* handling
...
1. UI structs now use `const char*` because that's the type of C-string
literals.
2. Use `strcpy` instead of `sprintf` where possible.
7 years ago
Mathieu Maret
3ec16ee3c5
Correct memory leak
...
Correct memory leak after creating a network party
7 years ago
Gleb Mazovetskiy
37936c6d15
DiabloUI: Refactor UI_Item to tagged unions
...
Makes the code easier to understand.
Also makes building lists easier.
Also fixes focus indicator in SELLOAD_DIALOG (this type of bug is
impossible with the new structs).
7 years ago
Gleb Mazovetskiy
5f21aba186
progress.cpp: fix SDL1 narrow conv warn
7 years ago
Gleb Mazovetskiy
e2a1c90979
storm.cpp: simplify getIniPath
7 years ago
Gleb Mazovetskiy
dc937c8b96
diabloui.cpp: Fix value not handled warning
7 years ago
Gleb Mazovetskiy
7f61128d32
Fix more compilation warnings
...
```
SourceX/storm/storm.cpp:27:10: note: ‘snprintf’ output between 11 and 270 bytes into a destination of size 260
snprintf(file_path, DVL_MAX_PATH, "%sdiablo.ini", path);
```
SDL1 warnings:
```
devilutionX/SourceX/dx.cpp:199:24: warning: narrowing conversion of ‘(int)dwX’ from ‘int’ to ‘Sint16’ {aka ‘short int’} inside { } [-Wnarrowing]
SDL_Rect dst_rect = { (int)dwX, (int)dwY, w, h };
SourceS/sdl2_to_1_2_backports.h:616:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
if (final_dst.w < 0)
SourceS/sdl2_to_1_2_backports.h:777:24: warning: comparison of integer expressions of different signedness: ‘const int’ and ‘long unsigned int’ [-Wsign-compare]
if ((rc > 0) && (rc < sizeof(path))) {
~~~^~~~~~~~~~~~~~
SourceX/storm/storm.cpp:479:16: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
if (out_len <= item->len) {
SourceX/storm/storm.cpp:716:60: warning: narrowing conversion of ‘((640 - scaledW) / 2)’ from ‘int’ to ‘Sint16’ {aka ‘short int’} inside { } [-Wnarrowing]
SDL_Rect pal_surface_offset = { (SCREEN_WIDTH - scaledW) / 2, (SCREEN_HEIGHT - scaledH) / 2, scaledW, scaledH };
DiabloUI/credits.cpp:525:30: warning: narrowing conversion of ‘- y’ from ‘int’ to ‘Sint16’ {aka ‘short int’} inside { } [-Wnarrowing]
SDL_Rect src_rect = { 0, -y, text_surface->w, 251 };
```
7 years ago
Gleb Mazovetskiy
e3cf8af94d
dvlnet: More C++11 compatibility
...
Fixes the following warnings:
SourceX/dvlnet/tcp_client.cpp:104:38: warning: lambda capture initializers only available with -std=c++14 or -std=gnu++14
SourceX/dvlnet/tcp_server.cpp:142:15: warning: lambda capture initializers only available with -std=c++14 or -std=gnu++14
7 years ago
Anders Jenbo
bd2c08183c
Fall back to relative path when unable to use SDL
7 years ago
Mathieu Maret
0ac4c1e419
tcp_client: close connections when leaving
...
So you can join another game latter
fix #251
7 years ago
Gleb Mazovetskiy
4f6c5791a7
Fix some compiler warnings
7 years ago
Anders Jenbo
890f414cb9
Small clean up of unused code
7 years ago
Mathieu Maret
a7d0e5e858
Fill GAMEINFO for name and password
...
Those information could be accessed by pressing tab key in multiplayer
Fix #260
7 years ago
Anders Jenbo
e88e574c5f
Drop unimplemented code
7 years ago