Commit Graph

533 Commits

Author SHA1 Message Date
VDm
52a1b4e05b feat(model): implement CM2Model::SetGeometryVisible 2025-06-18 00:15:50 +04:00
VDm
9b704b3366 fix(model): remove workaround for AffineInverse 2025-06-15 22:30:53 +04:00
VDm
29994c1181 feat(model): first implementation of character rendering 2025-05-25 23:07:13 +04:00
VDm
6780f5061f feat(model): implement CM2Model::AttachToParent 2025-05-25 20:33:03 +04:00
VDm
03cb7e699e feat(glue): implement methods of CCharacterCreation 2025-05-18 16:12:28 +04:00
VDm
b4ff9994e2 feat(ui): implement script methods for character creation screen 2025-05-18 14:58:01 +04:00
VDm
77cb9ed966 feat(ui): add background support for character creation screen 2025-05-18 01:52:28 +04:00
VDm
e08b41a133 feat(ui): implement several character creation scripts 2025-05-18 00:54:34 +04:00
VDm
58954a9655 feat(glue): implement CCharacterCreation::Initialize 2025-05-17 21:38:30 +04:00
VDm
f2a253f5ad feat: update CCharacterComponent and CCharacterCreation classes 2025-05-17 20:00:10 +04:00
VDm
fbaeb2e052 feat(ui): introduce cross-platform solution for CSimpleMovieFrame 2025-05-06 21:29:28 +04:00
VDm
bd0e59a795 fix(d3d): fix calling conventions 2025-05-03 15:54:49 +04:00
VDm
1cc668be95 feat(ui): update CSimpleMovieFrame to support Divx/Xvid Decoders (Windows only) 2025-05-03 15:48:16 +04:00
VDm
4caed1318e fix(ui): use workaround to update movie textures 2025-05-01 02:12:18 +04:00
VDm
6ec90df663 style(ui): update stride data array declaration in CSimpleMovieFrame.cpp 2025-05-01 01:42:45 +04:00
VDm
2a526e6196 style(ui): update code style in CSimpleMovieFrame.cpp 2025-05-01 01:35:16 +04:00
VDm
c721538698 fix(gx): fix Blit_uint32_uint32 when inStride != outStride 2025-05-01 00:10:25 +04:00
VDm
690a90a65b feat(ui): switch to original DivX decoder (32-bit only) 2025-04-30 00:25:17 +04:00
VDm
5bd40352e1 feat(ui): first working implementation of CSimpleMovieFrame with real video 2025-04-27 14:36:01 +04:00
VDm
7bc252a0e7 feat(ui): implement CSimpleMovieFrame::Render method 2025-04-27 01:31:24 +04:00
VDm
81f25b93f6 feat(ui): implement OpenVideo and CloseVideo methods 2025-04-26 16:07:53 +04:00
VDm
3f004eca04 feat(ui): add CSimpleMovieFrame::UpdateTiming implementation 2025-04-26 02:19:47 +04:00
VDm
f4acc58899 feat(ui): implement CSimpleMovieFrame::ParseAVIFile 2025-04-25 01:43:06 +04:00
VDm
676fd280c6 feat(ui): update CSimpleMovieFrame methods 2025-04-24 01:30:45 +04:00
VDm
967408b2e7 feat(ui): add stubs for CSimpleMovieFrame::StartMovie method 2025-04-24 01:02:26 +04:00
VDm
92a3925797 feat(ui): implement Script_GetMovieResolution method 2025-04-24 00:42:23 +04:00
VDm
5a36ab2f7c feat(ui): add CSimpleMovieFrame class skeleton 2025-04-24 00:14:09 +04:00
VDm
f0257d3e4c fix(net): fix WowConnection class to work correctly on Linux 2025-04-17 23:11:33 +04:00
VDm
957a4c7e2f
feat(glue): add realm and character handling (#7)
* fix(build): make project compilable

* feat(glue): update Character Selection screen to support switching

* fix(ui): fix CSimpleFontString::GetHeight() to use proper method

* feat(db): add static database classes from whoa-autocode

* feat(ui): use class and area IDs for Character Selection

* chore(db): update ItemRandomPropertiesRec

* feat(glue): update CCharacterSelection methods

* chore(db): uncomment DB records

* feat(glue): implement character deletion

* feat(gx): update supported text tags in GxuDetermineQuotedCode

* fix(ui): fix CSimpleFontString to use the FixedColor flag only if the string does not contain color tags

* feat(net): implement GrunLogin::LogOff

* feat(net): implement NetClient::Disconnect

* feat(login): implement trimming of realm name in LoginResponse::HandleRealmData

* feat(net): implement proper disconnection from login and realm servers

* feat(net): implement PING/PONG messages

* feat(net): add NetClient::Destroy method

* feat(net): implement ClientServices::GetRealmList (second request of Realm List)

* feat(glue): implement CGlueMgr::PollRealmList

* feat(glue): implement CGlueMgr::PollCreateCharacter

* chore(glue): add skeleton of CCharacterComponent class

* fix(build): fix build using latest features

* fix(glue): kill gotos in CGlueMgr::NetDisconnectHandler

* fix(build): include SDL3

---------

Co-authored-by: superp00t <superp00t@tutanota.com>
2025-04-16 17:32:37 -04:00
superp00t
50e37d16bc feat(client): SRegDestory should be called upon exit, saving registry entries to a file 2025-04-16 11:21:52 -04:00
superp00t
0105c72da0 feat(whoa): implement the ability to shut down the client gracefully, saving CVars upon exit 2025-04-15 20:00:50 -04:00
superp00t
17ccf2a8bb feat(client): uncomment some now-implemented functions calls in CommonMain, enable OutputDebugString logging for SLog 2025-04-15 00:50:40 -04:00
superp00t
27c2ecece8 feat(ui): use compile variables to show the version/build details in Script_GetBuildInfo 2025-04-14 18:38:16 -04:00
superp00t
03fc131e2e feat(build): compile version strings from CMake 2025-04-14 06:11:24 -04:00
superp00t
0ca9e90859 fix(console): do ctrl and shift modifier checks correctly 2025-04-14 06:09:51 -04:00
superp00t
61af2eeaaf fix(console): implement SetCommandHandler accurately 2025-04-14 06:08:07 -04:00
superp00t
31f215ea14 feat(console): hardware detection et cetera 2025-04-12 04:35:49 -04:00
superp00t
97bbe2ea66 feat(util): convert names of asset files to lowercase before attempting to read 2025-04-12 04:34:05 -04:00
superp00t
efd37e3050 feat(db): load all databases together using autocode 2025-04-12 04:32:30 -04:00
superp00t
c67ca6fba9 feat(gx): add work for console hardware detection 2025-04-01 15:18:36 -04:00
superp00t
12b405a4dd feat(gx): add placeholder EGxOverride 2025-04-01 15:17:09 -04:00
superp00t
7bd7d1ac9e fix(d3d): badly copied code 2025-04-01 14:55:45 -04:00
superp00t
8adf3a0061 feat(d3d): clean up hardware cursor stuff 2025-04-01 12:43:55 -04:00
superp00t
f4e9f86ca6 refactor(client): wow launch flags should have the CMDOPT type 2025-04-01 11:08:45 -04:00
superp00t
46843880ef fix(whoa): update thunderbrew to use the refactored squall error/validation and bc allocation macros 2025-03-31 23:52:37 -04:00
VDm
2a02ba3657 feat(d3d): update CGxDeviceD3d::ISceneBegin 2025-03-31 00:08:41 +04:00
VDm
9c0c0c64ba fix(d3d): fix cursor shape for non-client window area 2025-03-30 12:41:01 +04:00
VDm
41f4992ebe feat(gameui): add CGWorldFrame class skeleton 2025-03-30 00:15:17 +04:00
VDm
88e21b4a22 feat(client): add ClientHandlers for SMSG_NEW_WORLD and SMSG_LOGIN_VERIFY_WORLD 2025-03-30 00:06:18 +04:00
VDm
140bcde493 feat(client): prepare EnterWorld classes and methods 2025-03-30 00:02:58 +04:00
VDm
babeb2d864 feat(gameui): add CGGameUI class 2025-03-29 23:57:13 +04:00
VDm
8a71e9fdea fix(client): fix reloadUI command 2025-03-29 23:53:56 +04:00
VDm
1539c56ace fix(ui): fix StringToJustify to support BOTTOM 2025-03-29 23:48:30 +04:00
VDm
7ae43b73fb feat(ui): update Script_GetSelectBackgroundModel 2025-03-29 23:47:25 +04:00
VDm
f28f4b0379 feat(glue): display list of characters 2025-03-29 23:43:21 +04:00
VDm
d536140d63 feat(net): update RealmConnection::HandleCharEnum to use virtual call of RealmResponse::CharacterListReceived 2025-03-29 23:39:10 +04:00
VDm
1e8dc7aef9 feat(net): add RealmConnection::HandleCharEnum implementation 2025-03-29 23:37:24 +04:00
VDm
ba21fb2994 fix(ui): fix height calculation of CLayoutFrame 2025-03-29 23:33:38 +04:00
VDm
a15b5de3bf feat(glue): update handlers for StatusDialogClick 2025-03-29 23:32:33 +04:00
VDm
31f4103f12 feat(glue): make character selection screen available 2025-03-29 23:31:27 +04:00
VDm
b9b070830f feat(glue): add global variables for CGlueMgr 2025-03-29 23:28:52 +04:00
VDm
d18d8acc43 feat(gx): add constructors of CGxFormat 2025-03-29 23:23:47 +04:00
VDm
29bae200f3 fix(console): use CVar value for hardware cursor 2025-03-29 23:16:46 +04:00
VDm
28eecb2a09 feat(console): update SetGxCVars and UpdateGxCVars 2025-03-29 23:13:58 +04:00
VDm
758099c076 feat(console): implement RegisterGxCVars 2025-03-29 23:08:51 +04:00
VDm
841cc1a476 feat(event): add code page conversion 2025-03-29 23:03:25 +04:00
VDm
8d54e8ad0b feat(client): add PatchFiles class 2025-03-29 22:58:53 +04:00
VDm
4a74c722a4 feat(client): add CheckAvailableLocales method 2025-03-29 22:55:04 +04:00
VDm
77f4228abf feat(client): implement locale related calls 2025-03-29 22:51:38 +04:00
VDm
6e1f033e83 chore(gx): use GxBlend_AlphaKey for GxRs_BlendingMode 2025-03-29 22:45:31 +04:00
VDm
2f070a489e feat(d3d): add GxRs_Lighting case in CGxDeviceD3d::IRsSendToHw (fix cursor appearance) 2025-03-29 22:42:18 +04:00
VDm
d80e2b4b4f feat(d3d): add hardware cursor support 2025-03-29 18:04:21 +04:00
VDm
c4a516c44d feat(ui): add Tab button handler for CSimpleEditBox 2025-03-29 17:37:52 +04:00
VDm
6030a75530 feat(script): add lua_convertdecimal 2025-03-29 16:30:15 +04:00
VDm
f039d4f88c feat(ui): add FrameScript_Sprintf implementation 2025-03-28 02:40:17 +04:00
VDm
465b3844de feat(ui): implement SetFocus and ClearFocus script methods (CSimpleEditBox) 2025-03-28 00:54:37 +04:00
VDm
03ba4ccbb1 chore(ui): replace sub_960420 with existing FrameScript_GetColor 2025-03-28 00:34:20 +04:00
VDm
6c76720c04 fix(ui): fix typo in FrameScript_GetColor 2025-03-28 00:31:39 +04:00
VDm
f525e600a2 feat(ui): add Script_GetBuildInfo 2025-03-28 00:25:15 +04:00
VDm
a9bb4ccdce feat(ui): implement SetBackdropColor/SetBackdropBorderColor script methods 2025-03-28 00:06:53 +04:00
VDm
1ad95653c7 feat(ui): add CBackdropGenerator::SetVertexColor 2025-03-27 22:30:09 +04:00
VDm
49e2e439c2 chore(net): set localChallenge value to zero in HandleAuthChallenge 2025-03-27 20:46:28 +04:00
superp00t
b6ee76054f refactor(gx): name all function parameters in header 2024-11-28 05:00:33 -05:00
superp00t
1721e09741 fix(gx): reflect OG behavior better in Screen 2024-09-10 20:30:24 -04:00
superp00t
c90a7e2ad8 style(build): space after control flow 2024-09-10 20:29:20 -04:00
superp00t
7240aa5dd2 fix(gx): removed DirectXMath-less matrix multiplication shim 2024-09-10 20:21:03 -04:00
superp00t
0fb3dea2ee fix(app): resource compilation on MinGW 2024-09-07 20:44:57 -04:00
superp00t
c9829ca5e1 feat(app): specific WHOA_APP_DEBUG macro passed to resource file 2024-09-07 19:44:07 -04:00
superp00t
0080934ed9 fix(app): use forward slash for resource files 2024-09-07 14:39:13 -04:00
superp00t
3e77eb935a feat(gx): add directxmath for MinGW 2024-09-07 13:54:54 -04:00
superp00t
0d09dee4b3 refactor(sound): use changed STORM_LOG defines 2024-09-07 13:05:38 -04:00
superp00t
b0566ad8d7 feat(client): OsGui functions for linux 2024-09-06 23:39:33 -04:00
superp00t
eef37c109d fix(gx): if WHOA_BUILD_GLSDL, link SDL2 to event module 2024-09-06 14:17:24 -04:00
superp00t
ddcdff5e51 fix(gx): use std::abs instead of std::fabsf 2024-09-06 14:00:38 -04:00
superp00t
0ec76b4305 chore(build): add cursor module to source 2024-09-06 12:33:11 -04:00
superp00t
9fc5476ef7 feat(gx): add broken cursor drawing implementation 2024-09-06 12:32:50 -04:00
superp00t
520b6254b3 feat(gx): add more readable error for initializing an unknown device 2024-09-06 12:32:26 -04:00
superp00t
c6e1751bbe feat(texture): implemented TextureLoadImage API, also support loading and mipping TGA files 2024-09-06 12:31:08 -04:00
superp00t
3425aefc73 fix(sound): use WHOA_BUILD_SOUND 2024-09-06 12:29:58 -04:00
superp00t
e954521204 feat(util): implement SFile::{FileExistsEx, FileExists, SetFilePointer} 2024-09-06 12:28:57 -04:00