Age | Commit message (Collapse) | Author | Files | Lines |
|
eAthena NPC handler has been implemented and is being used for NPC
interraction.
|
|
|
|
|
|
Also move the Monster type offset handling into the eAthena netcode.
|
|
The draw() method of a widget isn't called when a widget is not visible.
|
|
No need to complicate the item containers and inventory classes with a
silly offset used by the eAthena server.
Also fixed the logToStandardOut option by reading it from the config
after the configuration has been initialized.
|
|
|
|
Now that messages can be sent without requiring a pointer to the
Network instance, a lot of cleanup was possible.
|
|
Now the instance doesn't need to be passed into the MessageOut class
anymore. Expect a lot of cleanup in the next commit.
|
|
|
|
Resizing of the inventory window may come back later. Also did some more
code cleanups, moving defines to enums, getting rid of eAthena-specific
offset handling (to be done in the network layer), etc.
Mantis-issue: 666
|
|
Also made mPx and mPy private and synchronize with mPos on
setPosition(). The side effects of setting destination and clearing the
path have been removed from setPosition(). Only the tmwserv
PlayerHandler seemed to rely on that feature.
Mantis-issue: 672
|
|
NPCListDialog couldn't be opened because of infinite recursion, and it
and NPCTextDialog both had resize bugs.
|
|
Conflicts:
src/beingmanager.cpp
src/gui/confirm_dialog.cpp
src/gui/inventorywindow.cpp
src/gui/inventorywindow.h
src/gui/label.cpp
src/gui/label.h
src/gui/popup.cpp
src/gui/popup.h
src/gui/scrollarea.cpp
src/gui/skin.cpp
src/gui/skin.h
src/gui/speechbubble.cpp
src/gui/window.cpp
src/gui/window.h
src/localplayer.h
src/main.cpp
src/net/ea/playerhandler.cpp
src/resources/ambientoverlay.h
src/resources/dye.cpp
src/resources/imagewriter.cpp
src/resources/itemdb.cpp
src/shopitem.cpp
|
|
Fixed a faulty == statement that should have been an assignment and a
mismatched 'else' block.
|
|
Also dynamically calculated the size of the array, so that you don't
have to count the messages manually. :P
|
|
|
|
|
|
ChatTabs now manage their own adding/removal from the chat window, which
lost most of it's chat related messages. Whisper handling is stil done
by the ChatWindow, but it no longer manages any other tabs. ChannelTab
handling is now the sole responsability of the Channels they are
attached to. The general tab is handled by Game.
|
|
|
|
|
|
Mostly unsigned/signed mismatches and an unused variable.
|
|
done in certain statements, rearranging arguements to make them look
cleaner, or overall making the code slightly more flexible)
Signed-off-by: Ira Rice <irarice@gmail.com>
|
|
This fixes TMWServ compilation form the previous commit.
|
|
Mostly removal of branding for tmwserv related files, as was done for
the eAthena client before.
|
|
Mostly putting & and * in the right place and making some getters const.
|
|
Conflicts:
.mailmap
|
|
Conflicts:
A lot of files.
|
|
|
|
Conflicts:
Many files.
|
|
Also fix several instances where the same net handler was being used for
both servers, and a few other related oddities.
|
|
|
|
|
|
|
|
overridden after map_path, so the saved map path needs to get saved
before that.
Signed-off-by: Ira Rice <irarice@gmail.com>
|
|
This merge involved major changes on both sides, and as such took
several weeks. Lots of things are expected to be broken now, however, we
now have a single code base to improve and extend, which can be compiled
to support either eAthena or tmwserv.
In the coming months, the plan is to work towards a client that supports
both eAthena and tmwserv, without needing to be recompiled.
Conflicts:
Everywhere!
|
|
|
|
|
|
The client can now differentiate between the following hit types:
- hit (normal)
- critical (full attack)
- multi (more than one hit at once, currently not used)
- reflect (reflected damage, currently not used)
- flee (dodging criticals)
The Being's showCrit method is now merged into takeDamage.
Being's takeDamage and handleAttack now both get the opponent, the amount of
damage and the attack type as parameter.
|
|
smaller than the minimum width and height (a check that should have
been enforced in the first place), as well as modified the NPC list and
text dialogs to remember where they were when they were moved or resized
last.
Signed-off-by: Ira Rice <irarice@gmail.com>
|
|
The client can now differentiate between the following hit types:
- hit (normal)
- critical (full attack)
- multi (more than one hit at once, currently not used)
- reflect (reflected damage, currently not used)
- flee (dodging criticals)
The Being's showCrit method is now merged into takeDamage.
Being's takeDamage and handleAttack now both get the opponent, the amount of
damage and the attack type as parameter.
|
|
This patch makes item links work in any chatLog() message, not only chatSend()
as before. I enabled it for the "You picked <nr> <item>" message by explicitly
adding [] around the item name in the string.
|
|
This patch makes item links work in any chatLog() message, not only chatSend()
as before. I enabled it for the "You picked <nr> <item>" message by explicitly
adding [] around the item name in the string.
|
|
Both packets do the same, but we should be explicit anyways. Also,
seperate out NPC client packets.
|
|
Both packets do the same, but we should be explicit anyways. Also,
seperate out NPC client packets.
|
|
|
|
|
|
|
|
Using unsigned rarely makes sense, especially when the server doesn't
use it either. Other uses of unsigned should be reviewed.
In all other cases, int is the fastest integer type on any architecture.
Using 8 or 16 bits can basically only be a memory optimization.
|
|
Using unsigned rarely makes sense, especially when the server doesn't
use it either. Other uses of unsigned should be reviewed.
In all other cases, int is the fastest integer type on any architecture.
Using 8 or 16 bits can basically only be a memory optimization.
|