summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2025-06-28clarify that loadPatch() is checkClientVersion() and add commentsclient_version_check_docsFedja Beader2-6/+11
2025-06-27unmask text input during character deletionasuratva1-1/+1
Previous commit from MR !194 changed requiring password to requiring char name for confirmation during deletion. Text input can now be unmasked since user is entering char name instead of password. **** mana/plus!205
2025-06-27Set PACKAGE_NAME in CMakeListsFedja Beader1-1/+2
CMake way failed to build because main.h uses PACKAGE_NAME. Reported by bjorn and meway. Note: I like PROJECT_NAME better, but: 1) Project name is not something that changes at compile time, but package name might. 2) PROGRAM_VERSION is already set in CMakeLists NOTE2: earlier I made PACKAGE_EXTENDED_VERSION (used for useragent) and FULL_VERSION (used in GUI & logs) use PACKAGE_NAME, instead of hardcoding ManaVerse, for improved branding. **** mana/plus!204 Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-06-27Remove unnecessary includes in utils/performance.hFedja Beader1-4/+0
**** mana/plus!203
2025-06-25Change char deletion to require confirming username instead of password. ↵asuratva1-4/+8
Causes Launcher issues otherwise. When playing from Launcher, the a/c password gets reset to some random string. Deleting character (specifically on TMW) requires password for confirmation, which player no longer has easy access to. This changes character deletion to require confirming username instead of password. Squashed with: * Change to confirm character name instead of username when deleting * change text 'password' to 'username' in error dialog. **** mana/plus!194
2025-06-25Typofix perfo[R]mance - in CMakeLists.txt as wellFedja Beader1-2/+2
Missed this part in mana/plus!186
2025-06-25Split #include "utils/performance.h" out of localconsts.hFedja Beader144-14/+179
only about 160 out of 1500 files that include localconsts.h need to include performance.h Saves 12% from compile times (with profiler ON) and 0.1% with profiler OFF. **** mana/plus!189
2025-06-25Add simple compile time output to gcc-10 jobFedja Beader1-1/+1
used to test !189 in particular, but shall be useful in general. **** mana/plus!201
2025-06-24Fix: Move to target in attack rangeasuratva1-0/+1
The "move to target in attack range" option in the Quick Settings is not handled correctly. In its current state that option ends up becoming equivalent to "move to target in distance 10". This is a fix for that. **** mana/plus!195
2025-06-24Fix profiler compileFedja Beader4-11/+14
call of overloaded 'toString(long long unsigned int)' is ambiguous, see !189 Squashed with: * Apply perfo[r]mance typofixes that were missed in mana/plus!186 ... because USE_PROFILER was off/undefined. **** mana/plus!200
2025-06-23Clarify that sort by type also sorts by slotFedja Beader2-4/+4
depends on !192 **** mana/plus!197
2025-06-23Rename Pet/Homun Intimacy->Loyalty & Hunger->SatiationFedja Beader1-4/+4
Better names. In case of hunger even corrects a bug as it decreases. **** mana/plus!196
2025-06-23Use an array of char arrays to store server type list model textsFedja Beader1-15/+17
This brings it inline with how other models are implemented, and also makes code so much clearer. **** mana/plus!193
2025-06-23Move NUM_ELEMENTS() to localconsts and convert some more files to use it ↵Fedja Beader7-9/+8
instead of hardcoding constants. **** mana/plus!192
2025-06-23Rebrand program display name (appName)jak110-17/+20
Removes the "ManaPlus" in version info on updater screen; Screenshots now have ManaVerse in their file name, too PS: a lot of instances of "ManaVerse" could use PACKAGE_NAME from configure PPS: CMake passes PROJECT_NAME. Would need a proxy header with ifdefs. Split off by Fedja from: Rename the program from ManaPlus to ManaVerse. (!45) **** mana/plus!198
2025-06-05Add a confirmation dialog for killing/firing/dismissing your homunculousFedja Beader5-1/+141
- [x] Something needs to be done about that deletion as it may leak memory. Ditto for inputActionReplayListener (for EditDialog) - [x] Okay, that M+ -> MV rename must be completed to make the linters pass. Rename was completed and it works, proper cleanup happens in scheduleDelete, so that's not an issue either. Squashed with: * Actually fire homun (code was set to only change name, for testing of replay stuff) * Clarify my worries **** mana/plus!109
2025-06-05Delay localChatTab nullptr checks in notify() to where they're required & dedupeFedja Beader1-28/+9
(consequence: if localChatTab is nullptr, then the message will go to debug.) **** mana/plus!187
2025-06-05Change overweight notification from widget to speech bubble.asuratva1-0/+18
Having the widget pop up in the middle of a fight when shooting arrows makes you go below 50% weight is kinda annoying. This changes the notification to a speech bubble on player which is less intrusive. Squashed with: * Move messages to top of branch (so they can be integrated to dialog with fewer changes). * Adjust overweight message. * Fix linter issue. Shortened long line **** mana/plus!184 Co-authored-by: Fedja Beader <fedja@protonmail.ch>
2025-06-05Fix my brain malfunctionFedja Beader1-7/+7
2025-06-05fix missing __xmlParserVersion() compat in newer libxml2, spotted by bakaiFedja Beader2-2/+13
libxml2 deprecated __xmlParserVersion() and added a pointer to constant string version in commit 2023-09-20 "globals: Don't store xmlParserVersion in global state" and added a compat function with it. This commit was made before v2.12.0 was released. Thus, any version *past* unreleased v2.12.0 is guaranteed to have the new API. The compat function was removed at some point later, causing a compile failure. **** mana/plus!190
2025-06-04Typofix perfo[R]manceFedja Beader4-17/+17
**** mana/plus!186
2025-06-04Do not show gp / money / zeny pick-up messages in chat when pickup messages ↵Fedja Beader1-2/+12
in chat are disabled. **** mana/plus!185
2025-06-04Remove the blank space left behind with removal of the "Switch" button for ↵Fedja Beader1-14/+7
launcher users Pre: ![empty_space](/uploads/7690f23cf4e77215be90bf3bd0aedb2c/empty_space.png) Post: ![empty_space_000](/uploads/52176bb12c0b542b6aff393cccad44a6/empty_space_000.png) **** mana/plus!183
2025-06-04Rewrite copyright-updating tool to make it more readable and not use ↵Fedja Beader1-13/+15
temporary files add *.in and *.txt and *.sh (the ones missed by existing version) TODO: it rewrites "test.txt" in data/test/test2.txt into two lines of "test line 1" and "test line 2". I don't know why. .. and test copyright update in same MR Squashed with: * Resolve test2.txt mistery **** mana/plus!182
2025-05-28Updated configure.ac to newer autoconf standards by using the 'autoupdate' tool.Mad Camel1-6/+4
Fixes a lot of warnings when running autoreconf -i ---- _EDIT by @jesusalva on 2024-02-09: Marked as draft to prevent accidental merging_ Squashed with: * Reduce autotools version requirement according to autoupdate test in gcc5 env https://git.themanaworld.org/specing/manaplus/-/commits/autoupdate_test_in_gcc5job As it turns out, AC_HEADER_TIME is unnecessary even in 2016 ubuntu environment. It was unused: none of the time.h or sys/time.h includes were protected by HAVE_TIME_H or TIME_WITH_SYS_TIME guards (they are instead protected by WIN32 checks, in most but not all cases. The same applies to the STDC_HEADERS macro: none of the includes were protected by STDC_HEADERS, thus removing that is also not blocked by CI upgrade. **** mana/plus!25 Co-authored-by: Fedja Beader <fedja@protonmail.ch> Approved-by: Jesusalva Jesusalva <jesusalva@tmw2.org>
2025-05-24Switch source code headers to ManaVerse & update copyrights to 2025Fedja Beader1959-5851/+5851
.. instead of manaplus's header. & update copyrights to 2025. Open problem: should it be "The ManaVerse Client", "the ManaVerse client" or something in between in "This file is part of ..." line? All caps is current situation. Squashed with: * update copyright dates for 2025 * Revert "Switch to branch of mplint that checks for manaverse copyright headers" * Change back to uppercase The Why? This line was changed 3 times in history and all had an uppercase The. PS: ManaVerse has no endorsment from the parent project, ManaPlus. * Change to "This file is part of the ManaVerse Client" poppet says 'the' instead of 'The' find . \( -name "*.h" -o -name "*.cpp" -o -name "*.cc" -o -name "*.inc" \) -execdir sed -i -e 's/This file is part of The ManaPlus Client/This file is part of the ManaVerse Client/' {} \+ * Change 'The ManaPlus Client' to 'The ManaVerse Client' in headers find . \( -name "*.h" -o -name "*.cpp" -o -name "*.cc" -o -name "*.inc" \) -execdir sed -i -e '2s/ManaPlus/ManaVerse/' {} \+ * Switch to branch of mplint that checks for manaverse copyright headers .. instead of manaplus's **** mana/plus!179
2025-05-21Use website URL instead of listing individual maintainer's email address in ↵Fedja Beader2-2/+2
package definition Note: PACKAGE_URL and PACKAGE_BUGREPORT are two preprocessr defines normally set by autoconf, but not by CMake. Unsure if they are used anywhere. grep says no. May also reduce number of ManaVerse emails sent to M+'s maintainer Related to and will conflict with !45 (and !28) **** mana/plus!178
2025-05-21Fix copy-paste failure of profiler block namesFedja Beader3-8/+8
introduced in 8ad99cc3 / "Add profiler lines into some functions." **** mana/plus!181
2025-05-21Implement ZC_SOUND / 0x01d3 / processBeingSoundEffectFedja Beader1-4/+14
Squashed with: * Remove TODOs. Repeats and the other two fields are implemented in latest herc, but they set beingID to 0 when repeats are requested... what... Repeats need more in-client support to implement, anyways **** mana/plus!180
2025-05-11Document packet limiter and add quick reference for server-sideFedja Beader1-3/+17
counterparts.
2025-05-11Reformat itemcontainer drag&drop matrix logicFedja Beader1-20/+22
Some if-s were changed into else if-s. They cannot happen if the branches above them happen, anyway. **** mana/plus!177
2025-05-112025 Q1 miscallaneous reformattingFedja Beader8-18/+19
**** mana/plus!176
2025-05-11Document findBeingByPixel & findBeingsByPixel, rename two variables for clarityFedja Beader2-12/+30
**** mana/plus!175
2025-05-08findBeing[s]ByPixel: return dead players for popupmenu use.Fedja Beader1-8/+9
Dead players have to be returned so you can still see their equipment, do whisper or trade (yes you can trade with the dead :D) or use any other option in the menu. **** mana/plus!174
2025-05-08Fix some english in mail-related notification messagesFedja Beader1-4/+4
Squashed with: * Fix some english in mail-related notification messages **** mana/plus!169
2025-04-27GameModifiers: use descriptive parameter names + reformat + DOCUMENTFedja Beader2-42/+71
+ shift one argument's position in changeMode(...) Addendum to !171. **** mana/plus!172
2025-04-27Use descriptive argument names for GameModifiers macrosFedja Beader2-26/+26
+ slight reformat **** mana/plus!171
2025-04-26Use stdint.h instead of ifdefing tr1/cstdint, cstdint and stdint.hFedja Beader9-86/+11
Rationale: By the standard, cstdint guarantees these basic types in std::, but *may* put them into the global namespace. By including stdint.h directly, we guarantee that these types are in the global namespace. stdint.h is also a C++ standard header guaranteed as part of the C compatibility support, thus toolchains should support this. The proper(tm) way of going about this would mean either prefixing [u]int[0-9]*_t with std:: everywhere where they are used (a chore) or having a proxy header that includes cstdint and around 50 using statements. The latter sounds to me like a good approach for toolchains that do not provide stdint.h and do not pollute global namespace. If such a toolchain exists in the wild. See discussion at https://stackoverflow.com/questions/13642827/cstdint-vs-stdint-h In practice, my toolchain's (gcc 14 on GNU) cstdint includes stdint.h then drags those types into std:: as well. **** mana/plus!170
2025-04-19Fix typoFedja Beader1-1/+1
2025-04-15logger.h: de-duplicate __attribute__(__format__(..)) ifdefsFedja Beader4-67/+48
Squashed with: * Rename - it's member shift, not printf shift * So it seems that CILK PLUS either ignores the this argument of member functions or already considers it on its own. Besides.. is CILK PLUS even relevant today? Whatever.. Plus, deduplicate some more functions ..should this attribute be moved to its own file? * Correct indents * logger.h: de-duplicate __attribute__(__format__(..)) **** mana/plus!163
2025-04-14Reformat ActorManager::checkForPickup for (visual) consistency with similar ↵Fedja Beader1-6/+14
blocks in pickup search functions This block repeats many times.. but cannot be de-duplicated without that pesky search for empty string. perhaps I should make an (inline) function that takes allowAll and the item or a scoped functor that does the lookup in constructor. **** mana/plus!166
2025-04-14Limit nearby pickups to actual nearby area (3x3)Fedja Beader1-4/+2
Why 6? 2*2 + 1*1 is still < 6, so this allowed you to pickup items 2 tiles away. A bug. Test in ML: can pickup in 5x5 area with Quick option selector set to 3x3. Test in TMW: can only pickup in 3x3 area regardless of this setting. **** mana/plus!167
2025-04-14Remove remnants of unused --enable-commandlinepassword configure option.Fedja Beader3-44/+0
Addendum to 437258c4 / "Remove -enablecommandlinepassword necessity" **** mana/plus!156
2025-04-14ML: turn to face target when attacking and server-side attack is off.Fedja Beader1-3/+2
Git blame for this says that Hercules does this on its own, but this is only true if server side attack is enabled. Using that setting results in archers being warped into targets, so its use is discouraged. End of unit_attack_timer_sub in Hercules:src/map/unit.c has unit direction updates gated on ud->state.attack_continue. **** mana/plus!160
2025-04-14Fix packet limiter file being updated for no reasonFedja Beader1-4/+7
Prolific use of immediate constants strikes again. Side note: why are these limits not in clientdata? **** mana/plus!168
2025-04-07Save cpplint processing time by excluding generated files instead of ↵Fedja Beader1-11/+6
filtering results. **** mana/plus!158
2025-04-07un-newline too much newlining in actorsprite.cppFedja Beader1-21/+14
pathJoin indent is probably going to annoy a linter, got a patch ready if that happens. Not ideal but better than now. **** mana/plus!162
2025-04-07actorsprite.cpp: fix wrong indentFedja Beader1-4/+4
Linters! Wake up! **** mana/plus!161
2025-04-07Add total weight accounting for the "shopping list" of herc shops.Fedja Beader2-9/+23
.. this will prevent the shopping list from going above your free carry weight, and thus the buy action failing. Note: I don't particularly like this implemention due to code repetition. But perfection is enemy of progress. TODO: 1) add the same for total price (other MR?) 2) maybe do a small refactor + add comments where necessary (other MR?) 3) ~~free weight display~~ done Squashed with: * buydialog: Add free weight display to money label + fix free weight going below 0 **** mana/plus!152
2025-04-07Exclude attributes when scanning for translatable stringsFedja Beader2-11/+2
attributes such as __attribute__((fallthrough)) Issue found in mana/plus!163 **** mana/plus!164