summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
4 daysClarify what the Switch button does -> Switch Worldcharselect_clarify_switchFedja Beader1-2/+2
Or maybe Logout?
4 daysTypofix perfo[R]manceFedja Beader4-17/+17
**** mana/plus!186
4 daysDo not show gp / money / zeny pick-up messages in chat when pickup messages ↵Fedja Beader1-2/+12
in chat are disabled. **** mana/plus!185
4 daysRemove 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-05-24Switch source code headers to ManaVerse & update copyrights to 2025Fedja Beader1958-5850/+5850
.. 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-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-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 Beader1-4/+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-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-06Refactor ActorManager::validateBeing()Fedja Beader2-6/+40
Squashed with: * More docs for validateBeing * addendum documentation for validateBeing **** mana/plus!154
2025-04-06findNearestLivingBeing: do cheap bb check before set lookups or pathfinderFedja Beader1-14/+20
bb= bounding box **** mana/plus!145
2025-04-06findNearestLivingBeing: move (unknown) cheap check before set lookupFedja Beader1-6/+6
seems to skip beings with info if stopattack is active or if they are marked as unselectable (like hammocks in ML)... huh? **** mana/plus!145
2025-04-06findNearestLivingBeing: remove redundant branchFedja Beader1-16/+6
as without filtering, priority and closestPriority are always the same **** mana/plus!145
2025-04-06findNearestLivingBeing: closest* are always set to something sensible,Fedja Beader1-14/+3
making special handling before first suitable being is found unnecessary. **** mana/plus!145
2025-04-06findNearestLivingBeing: search priorityMobsMap at most once per being (down ↵Fedja Beader1-19/+15
from 3x) Note: the filter used priorityMobs (instead of priorityMobsMap). The former seems to be the std::set variant of the latter, but I can't find where either are filled. It does work in practice, however... **** mana/plus!145
2025-04-06findNearestLivingBeing: rename index -> closestPriorityFedja Beader1-6/+6
**** mana/plus!145
2025-04-06findNearestLivingBeing: only update closestBeing if it satisfiesFedja Beader1-20/+17
distance criteria. This should also resolve a theoretical bug if there is a non-ignored being within range, but something out of range has priority Cleanup addednum: rename d to distSq **** mana/plus!145
2025-04-06Clean-up ActorManager::findNearestLivingBeingFedja Beader1-13/+16
This resolves at least three instances where squared distance was compared with non-squared one, two cases of maxDist and no squaring of getDistance result (which was then compared with squared distance). **** mana/plus!145
2025-04-03Fix wrong read of clif_GM_kickack packetFedja Beader10-17/+29
2024-08/01/#Debug.log:[14:25:43] Wrong actual or planned inbound packet size!. Packet id: 205(0xcd), Planned size: 3, Actual size: 6 2 bytes packet id + 1 byte flag = 3 2 bytes packet id + 4 byte flag (wrong) = 6 Squashed with: * Separate processKickAck handler for eathena * Move ea's adminrecv and its sole handler processKickAck into TMWA namespace * Revert "Fix wrong read of clif_GM_kickack packet" This would break TMWA packet processing, as @thorbjorn pointed out. This reverts commit efe43bac4de90b3e427d985b77cb3dd3206bcf9d. **** mana/plus!148
2025-04-03Typofix unused function OnlinePlayer::getStatus()Fedja Beader1-1/+1
**** mana/plus!153
2025-03-30Remove weird/unnecessary newlining of __VA_ARGS__ in checkutils.hFedja Beader1-6/+3
**** mana/plus!150
2025-03-30Add free weight indication to mini status barFedja Beader2-6/+16
Squashed with: * statuswindow: I like this way better **** mana/plus!151
2025-03-30Undefine WRONGPACKETSIZE macro. Even more so as it uses local varsFedja Beader2-4/+2
**** mana/plus!147
2025-03-30processTradeResponse: Fix a potential early exit before full packet is readFedja Beader1-1/+2
Not sure how to trigger this one, couldn't do it with a few simple tests. **** mana/plus!149
2025-03-30processTradeItemAddResponse: fix early exit before full packet is consumed.Fedja Beader1-2/+3
2025-03/22/#Debug.log-[19:38:37] Wrong actual or planned inbound packet size!. Packet id: 433(0x1b1), Planned size: 7, Actual size: 4 2025-03/22/#Debug.log:[19:38:52] You picked up 1 [@@760|Overlord's Helmet@@]. **** mana/plus!146
2025-03-13Clean-up and optimise ActorManager::findMostDamagedPlayerFedja Beader1-15/+21
Cheaper checks reordered to be checked first, removed squared root. **** mana/plus!144
2025-03-13Show quantity for item qty 1 in limited stock shopsFedja Beader1-1/+1
(no quantity display reserved for unlimited stock shops) Depends on !140 due to merge conflicts. **** mana/plus!141
2025-03-10Speedup ActorManager::findNearestByName by testing cheap bounding box ↵Fedja Beader1-9/+8
distance before (potentially) asking pathfinder. Pathfinder may get called in the validateBeing() call, can't tell yet. Squashed with: * Fix linter This test and the below static_cast looks like dynamic_cast should've been used. **** mana/plus!143
2025-03-10Cosmetic cleanup of ActorManager::pickUpNearestFedja Beader2-13/+13
Squashed with: * Fix lint.. just revert previous state, I'll deal with it when I make things pass Positions **** mana/plus!142
2025-03-10Slight cleanup in shopitem.cppFedja Beader1-6/+8
**** mana/plus!140
2025-03-05Rename --without-manaplusgame to --without-gameclientFedja Beader1-2/+2
@jesusalva asked what to rename it to, here: https://forums.themanaworld.org/viewtopic.php?t=21691 Squashed with: * Rename --without-manaversegame to --without-gameclient This makes the most sense, I think. Jes agrees, too. * Rename --without-manaplusgame to --without-manaversegame Split off from !45: Rename the program from ManaPlus to ManaVerse. **** mana/plus!138 Co-authored-by: jak1 <jak1@themanaworld.org>
2025-03-05Change follow-parent default to true (Fix #80).Fedja Beader1-1/+1
Reported by Thorbjorn **** mana/plus!129 Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-03-05Rename manaplus source directories and headers to manaversejak117-38/+38
Split off from mana/plus!45: "Rename the program from ManaPlus to ManaVerse." +POTFILES.in CI fix **** mana/plus!132 Co-authored-by: Fedja Beader <fedja@protonmail.ch>
2025-03-05Remove pointless one-line StatusWindow::addTabBasic() functionFedja Beader2-10/+3
**** mana/plus!139