Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch is not exhaustive.
|
|
Closes #51
|
|
|
|
|
|
modernize-loop-convert
modernize-deprecated-headers
|
|
A custom "Mask" property on a layer or a "foregroundXmask" property on a
map can now be used in combination with the SMSG_MAP_MASK to dynamically
disable certain map layers from the server.
Feature previously seen on ManaPlus and implemented for Mana client for
compatibility.
Also added a ResourceRef class for automating the Resource reference
counting.
Closes #44
|
|
modernize-use-auto
modernize-use-nullptr
modernize-use-override
modernize-use-using
|
|
This option was added in ManaPlus and support for it is required to
connect to The Mana World as it is currently set up, since the server
sends 127.0.0.1 for the character server and map server IP.
Can't play yet, because of an unknown packet 0x226 being received once
connecting to the map server.
|
|
|
|
It is unclear whether there are any protocol differences that should be
dealt with at this point, but without this the login fails with "Client
too old." error.
|
|
|
|
* Fixed compiler errors due to dynamic exception specifications
* Replace std::auto_ptr with std::unique_ptr
* Replace std::mem_fun with std::mem_fn
* Prefix for_each with std:: (apparently not needed before)
* Just use lambda instead of std::bind2nd
* Removed usages of std::unary_function
|
|
The CMSG_NPC_STR_RESPONSE packet transmits a string
of variable length.
|
|
It should not return large numbers after reading past the end of a
message. This can cause infinite loops in several places in the client
when a message happened to be shorter than expected.
|
|
|
|
The delayed actor deletion was meant to be used during the logic calls,
to avoid modifying the container while it is being iterated. The
deletions happening from the network layer are not done while iterating
the set of actors, so it can delete immediately.
This fixes an issue where an NPC would disappear when changing
appearance on tmwAthena, because this was implemented as a remove + add,
which broke due to the delayed deletion.
Mantis-issue: 507
Reviewed-by: Jared Adams
|
|
This is so that master and lpc2012 use the same protocol again,
where starting attributes are sent on character creation.
|
|
This file was introduced by ManaPlus as a way of configuring the
character creation process. It defines the number of hair styles
and colors, how stat points should be divided and what the starting
equipment of the player is.
The minimum and maximum hair color/style IDs are not supported at
the moment.
This is mostly a backport of ManaPlus commits 10cf52b5 and dcc18eba,
with some style changes.
Mantis-issue: 501
Reviewed-by: Ablu
|
|
This way it can also be used when connecting to a tmwAthena server for
customizing the min/max of attributes and the amount of starting points.
Mantis-issue: 501
Reviewed-by: Ablu
|
|
Reviewed-by: Erik Schilling.
|
|
Reviewed-by: Stefan Beller.
|
|
Server was already sending a error message. But the client ignored it.
Reviewed-by: Stefan Beller.
|
|
Reviewed-by: Thorbjørn Lindeijer.
|
|
Change is tested.
Reviewed-by: bjorn.
|
|
- shows manaserv skills at all
- shows the progress bar for manaserv skills again
- shows the level for this skills (server side patch needed)
TODO: URGENT: Fix attributes and skills getting stored in same list.
Reviewed-by: Bertram.
|
|
They are no longer sent as fixed-length string since this doesn't work
when the new protocol debugging mode is used.
Reviewed-by: Ben Longbons
|
|
|
|
This makes the client able to send and receive messages sent in debugging
mode, where the contents of the messages are annotated.
For messages sent from the client the debugging mode is currently always
enabled. Later on this could be an internal option or controlled from the
server side.
Reviewed-by: Erik Schilling
|
|
There wasn't a whole lot gained by sharing a common base class, and it makes
extending the manaserv Message{In,Out} classes with a debugging mode
unnecessarily complicated.
Reviewed-by: Yohann Ferreira
|
|
Also, since GCC 4.7 there is a binary compatibility issue when linking with a
Guichan that was not compiled in C++11 mode. This commit also allows compiling
with GCC 4.7 with C++11 mode turned off.
Reviewed-by: Erik Schilling
|
|
- kick code untested because no kick button exists yet
Reviewed-by: bjorn.
|
|
Reviewed-by: bjorn.
|
|
|
|
The tmwa/BeingHandler was adjusting the effect id rather than the emote
id, causing it to not find the last emote (and the rest of the emotes
only worked correctly because the effect ids were consecutive in the same
order as the emote ids).
Furthermore, the EmoteShortcutContainer refused to draw the icon for the
last emote due to an off-by-one error in dealing with the 1-adjusted
emote ids used by the EmoteShortcut class.
Also cleaned up some old remains of a player ignore strategy that used
to use the two balloon emotes (this had been their original purpose).
Reviewed-by: Erik Schilling
|
|
The Windows releases have not been properly identifying themselves, and
it seems to be due to a compiler issue, as discovered by Stefan Dombrowski
(@cody). He did a similar change but didn't push it anywhere so I've redone
it.
The line that is now split up was very preprocessor-heavy, which may have
been part of the problem, but we'll probably never know what it was
exactly.
|
|
Also added Xcode project for others to compile for Mac OSX.
Reviewed-by: Thorbjørn Lindeijer
|
|
When creating a custom server entry, the default port is used if no
other port is specified.
Reviewed-by: Thorbjørn Lindeijer
Mantis-issue: 464
|
|
Wrong define was used in the code.
|
|
I tested it with the Towel and the Wedding Ring
on the testing server.
Spotted-by: Jenalya, cody.
Reviewed-by: Erik Schilling
|
|
Reviewed-by: Ablu and Bjorn
|
|
The thanks messages got removed, because they are useless and when
selling many items they completely trashed the chat.
In Mana 0.5 this was already fixed, see commit
13c4a1131854887ac9ec83f80c7964f6b2949c87.
Reviewed-by: Ablu
|
|
I made sure the manaserv based custom server don't get deleted
when running a manaserv-less client session.
Reviewed-by: Thorbjørn Lindeijer
|
|
This shopping mechanism is not supported by this client at the moment,
and it's annoying to have these turn up in whispers.
Reviewed-by: Stefan Beller
Reviewed-by: Erik Schilling
|
|
Reviewed-by: Erik Schilling
|
|
Resolves: Mana-Mantis #457.
Reviewed-by: Bertram.
|
|
This reverts commit 92fd074aa85e2357bfe1ab642209dd5a0d87e4d5.
Reverting because these checks should be done server-side and because having
them in the client would currently require wrapping them up in checks if
there is even a current map due to the reliance on tile size (we need to
handle the case where the current map didn't load properly without crashing).
Conflicts:
src/map.cpp
src/net/manaserv/beinghandler.cpp
Reviewed-by: Erik Schilling
|
|
I also made the range be taken from the server type
as for the pickup and npc talk ranges.
Last but no least, I fixed the parameters sent with
PGMSG_PICKUP to send the (item) position where to pickup at
as described in the manaserv protocol.
The pickup is still not 100% functional due certainly
to two problems:
1. The client item coordinates might not be the exact same as in the server.
2. The client seems to try to pick up the item a bit too soon,
probably for the reason given in 1.
I'll investigate this in another patch.
Reviewed-by: Thorbjørn Lindeijer, Erik Schilling.
|
|
- I made the charCreatedialog handle a possible
max permitted color Id and a minimum hair style id for tA.
- Added a foundation to later load the styles and colors from
the same file, to handle the Mana-issue #224 for manaserv.
- Support for non-contiguous hair color and style ids
has also been added.
- I also replaced the < and > arrow signs with images.
Reviewed-by: Ben Longbons, Thorbjørn Lindeijer
|
|
The tA beingmanager was wrongly using the attack type
in the Being::handleAttack() function,
which is in fact used to set the attack id.
Thus, breaking the attack id given
and all its attack parameters.
I noticed that while updating the client data for TMW.
Reviewed-by: Thorbjørn Lindeijer
|
|
I also change the serverInfo to use a deque to permit
the use of the push_front function.
Spotted and reviewed-by: Erik Schilling
|