Commit Graph

72 Commits

Author SHA1 Message Date
VDm
f67c8cfc04 feat(net): implement character creation (request and response) 2025-06-22 15:45:12 +04:00
VDm
b4ff9994e2 feat(ui): implement script methods for character creation screen 2025-05-18 14:58:01 +04:00
VDm
f2a253f5ad feat: update CCharacterComponent and CCharacterCreation classes 2025-05-17 20:00:10 +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
31f215ea14 feat(console): hardware detection et cetera 2025-04-12 04:35:49 -04:00
superp00t
efd37e3050 feat(db): load all databases together using autocode 2025-04-12 04:32:30 -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
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
8a71e9fdea fix(client): fix reloadUI command 2025-03-29 23:53:56 +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
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
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
superp00t
c90a7e2ad8 style(build): space after control flow 2024-09-10 20:29:20 -04:00
superp00t
b0566ad8d7 feat(client): OsGui functions for linux 2024-09-06 23:39:33 -04:00
superp00t
1931efdfb5 refactor(style): indent ugly data block 2024-09-06 12:19:31 -04:00
VDm
32cfe08d0b
feat(sound): Small script related improvements
* chore(build): rename src/util/Log.* to SysMessage.*

* chore(ui): implement SetNonSpaceWrap() for error messages

* chore(ui): move Video Script methods into CGVideoOptions class

* chore(script): temporary fix GetNumOutputDrivers to eliminate loading errors

* feat(sound): add SI2 Log methods

* chore(sound): add SI2 CVars

* chore(ui): implement Script_PlayGlueMusic

* chore(sound): update SI2::Init()

* fix: resolve compilation errors in variadic macros SI2_ERR and SI2_LOG

---------

Co-authored-by: Tristan Cormier <cormiert2@outlook.com>
2024-03-05 15:53:07 -05:00
superp00t
18d7f60df0 fix(client): SetPaths() before OpenArchives(), for obvious reasons 2024-02-12 17:35:02 -05:00
VDm
f86f6d6d09
feat(build): add StormLib (#4)
* feat(app): add StormLib

* feat(app): add OpenArchives

* feat(util): update SFile to work with StormLib

* feat(app): update SFile

* feat(util): update SFile with logging (Windows only)

* feat(ui): implemented termination w/o notice

* chore(build): update StormLib

* chore(util): replace std::string with SStr* functions

* fix(stormlib): dwFlags argument for SFileOpenPatchArchive

* chore(ui): add Script_* stubs

* chore(util): clean up SFile::OpenEx

* chore(build): update StormLib

---------

Co-authored-by: Phaneron <superp00t@tutanota.com>
2024-02-11 17:19:18 -05:00
superp00t
934e0fb600 fix(client): define login CVars as static variables part of class ClientServices 2023-09-01 22:07:33 -04:00
superp00t
127b83f24c fix(client): define login CVars inside ClientServices.cpp 2023-09-01 21:59:50 -04:00
superp00t
0b6ca30f7d fix(client): include 'console/Client.hpp' 2023-09-01 21:28:54 -04:00
superp00t
77608bab14 fix(client): missing static specifier 2023-09-01 21:28:09 -04:00
superp00t
5928749866 feat(client): typos 2023-09-01 21:24:17 -04:00
superp00t
d60b85f85c feat(client): use 'realmList' CVar when connecting to realm list server 2023-09-01 21:14:28 -04:00
superp00t
93be23dacc fix(client): include <bc/os/Path.hpp> 2023-08-24 23:30:06 -04:00
superp00t
1219279a2d feat(console): load console variables from WTF files 2023-08-24 20:51:30 -04:00
superp00t
f7bc2d96bf fix(command): C++11 doesn't have std::size, use sizeof 2023-08-15 03:58:53 -04:00
superp00t
2e0df837a9 fix(command): include <vector> for std::size function 2023-08-15 03:46:39 -04:00
superp00t
f760dd45f1 fix(command): fix enums and make functions nonstatic 2023-08-15 03:39:39 -04:00
superp00t
37460378a8 feat(console): toggle console access based on -console flag 2023-08-14 23:00:04 -04:00
superp00t
04e625f6a7 tidy(client): split CmdLine functions into separate files 2023-08-14 22:57:31 -04:00
superp00t
b408818e74 feat(client): process command-line arguments in InitializeGlobal() 2023-08-14 17:03:02 -04:00
fallenoak
6b4c5e9179
feat(console): initialize console screen 2023-04-07 23:06:08 -05:00
fallenoak
1b27761d0c
feat(client): implement auth response handler in realm adapter 2023-04-03 23:34:31 -05:00
fallenoak
e18afec28d
feat(net): handle SMSG_AUTH_RESPONSE 2023-04-03 18:00:51 -05:00
fallenoak
6479dcaecf
chore(console): split out console device functions 2023-04-02 08:37:11 -05:00
Tristan 'Natrist' Cormier
9d0487c8ce
chore(console): move console functions out of client 2023-04-02 08:06:40 -05:00
fallenoak
ee1d46db19
chore(build): remove unused includes 2023-03-31 12:03:37 -05:00
Tristan 'Natrist' Cormier
6f52a6287d
chore(console): split out console library 2023-03-25 09:56:41 -05:00
fallenoak
ba790418e1
feat(client): migrate gui functions and implement OsGuiGetWindow 2023-03-20 00:06:50 -05:00