summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugenio Favalli <elvenprogrammer@gmail.com>2005-12-29 20:45:58 +0000
committerEugenio Favalli <elvenprogrammer@gmail.com>2005-12-29 20:45:58 +0000
commit6a7e4f64cc802f52e3fc350c88f6571c4913ba6d (patch)
treebd45cb2590636b4a8ff7a5443fc987f526ea0220
parented258400f785bb1882ea7fe88bb3a12f8c19edd4 (diff)
downloadmana-6a7e4f64cc802f52e3fc350c88f6571c4913ba6d.tar.gz
mana-6a7e4f64cc802f52e3fc350c88f6571c4913ba6d.tar.bz2
mana-6a7e4f64cc802f52e3fc350c88f6571c4913ba6d.tar.xz
mana-6a7e4f64cc802f52e3fc350c88f6571c4913ba6d.zip
Restored Dev-Cpp default execution options, updated walkmap in snow map, smoothed login sequence.
-rw-r--r--ChangeLog13
-rw-r--r--The Mana World.dev354
-rw-r--r--src/gui/char_select.cpp32
-rw-r--r--src/gui/char_select.h9
-rw-r--r--src/gui/char_server.cpp47
-rw-r--r--src/gui/char_server.h3
-rw-r--r--src/gui/connection.cpp25
-rw-r--r--src/gui/connection.h3
-rw-r--r--src/gui/login.cpp42
-rw-r--r--src/gui/login.h16
-rw-r--r--src/net/network.h1
11 files changed, 308 insertions, 237 deletions
diff --git a/ChangeLog b/ChangeLog
index 7292f519..c609b825 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,13 @@
-2005-12-09 Jan-Fabian Humann <malastare@gmx.net>
+2005-12-29 Eugenio Favalli <elvenprogrammer@gmail.com>
+
+ * The Mana World.dev, data/maps/new_10-1.tmx.gz,
+ src/gui/char_select.cpp, src/gui/char_select.h, src/gui/char_server.cpp,
+ src/gui/char_server.h, src/gui/connection.cpp, src/gui/connection.h,
+ src/gui/login.cpp, src/gui/login.h, src/net/network.h: Restored Dev-Cpp
+ default execution options, updated walkmap in snow map, smoothed login
+ sequence.
+
+2005-12-29 Jan-Fabian Humann <malastare@gmx.net>
* src/gui/gui.cpp: Added rather ugly workaround to prevent a on-start
crash by Doener.
@@ -22,7 +31,7 @@
2005-12-26 Duane Bailey <nayryeliab@gmail.com>
* src/main.h: fixed define problems with The_Mana_World_private.h
-
+
2005-12-25 Bjørn Lindeijer <bjorn@lindeijer.nl>
* src/being.cpp: Small fix to prevent other stuff than the damage
diff --git a/The Mana World.dev b/The Mana World.dev
index 56e039d8..7d50e993 100644
--- a/The Mana World.dev
+++ b/The Mana World.dev
@@ -12,7 +12,7 @@ ResourceIncludes=
MakeIncludes=
Compiler=
CppCompiler=-DUSE_OPENGL_@@_
-Linker=-lguichan_@@_-lguichan_sdl_@@_-lguichan_opengl_@@_-lwsock32_@@_-lSDL_image_@@_-lSDL_mixer_@@_-lSDL_net_@@_-lmingw32_@@_-lSDLmain_@@_-lSDL_@@_-lxml2_@@_-lopengl32_@@_-lpng_@@_-lz_@@_-lphysfs_@@_-lcurl_@@_
+Linker=-lguichan_@@_-lguichan_sdl_@@_-lguichan_opengl_@@_-lwsock32_@@_-lSDL_image_@@_-lSDL_mixer_@@_-lSDL_net_@@_-lmingw32_@@_-lSDLmain_@@_-lSDL_@@_-lxml2_@@_-lopengl32_@@_-lpng_@@_-lz.dll_@@_-lphysfs_@@_-lcurl_@@_
IsCpp=1
Icon=The Mana World.ico
ExeOutput=
@@ -267,28 +267,8 @@ Priority=1000
OverrideBuildCmd=0
BuildCmd=
-[Unit58]
-FileName=src\gui\login.cpp
-CompileCpp=1
-Folder=gui/source
-Compile=1
-Link=1
-Priority=1000
-OverrideBuildCmd=0
-BuildCmd=
-
-[Unit59]
-FileName=src\gui\login.h
-CompileCpp=1
-Folder=gui/header
-Compile=1
-Link=1
-Priority=1000
-OverrideBuildCmd=0
-BuildCmd=
-
[Unit60]
-FileName=src\gui\minimap.cpp
+FileName=src\gui\npc.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -298,7 +278,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit69]
-FileName=src\gui\passwordfield.h
+FileName=src\gui\playerbox.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -308,7 +288,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit70]
-FileName=src\gui\playerbox.cpp
+FileName=src\gui\progressbar.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -318,7 +298,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit71]
-FileName=src\gui\playerbox.h
+FileName=src\gui\progressbar.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -328,7 +308,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit72]
-FileName=src\gui\progressbar.cpp
+FileName=src\gui\radiobutton.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -338,7 +318,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit73]
-FileName=src\gui\progressbar.h
+FileName=src\gui\radiobutton.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -348,7 +328,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit74]
-FileName=src\gui\radiobutton.cpp
+FileName=src\gui\requesttrade.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -368,7 +348,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit77]
-FileName=src\gui\requesttrade.h
+FileName=src\gui\scrollarea.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -378,7 +358,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit78]
-FileName=src\gui\scrollarea.cpp
+FileName=src\gui\sell.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -388,7 +368,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit79]
-FileName=src\gui\scrollarea.h
+FileName=src\gui\sell.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -398,7 +378,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit80]
-FileName=src\gui\sell.cpp
+FileName=src\gui\setup.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -408,7 +388,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit81]
-FileName=src\gui\sell.h
+FileName=src\gui\setup.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -418,7 +398,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit82]
-FileName=src\gui\setup.cpp
+FileName=src\gui\shop.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -428,7 +408,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit84]
-FileName=src\gui\shop.cpp
+FileName=src\gui\skill.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -438,7 +418,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit85]
-FileName=src\gui\shop.h
+FileName=src\gui\skill.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -448,7 +428,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit86]
-FileName=src\gui\skill.cpp
+FileName=src\gui\slider.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -458,7 +438,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit89]
-FileName=src\gui\slider.h
+FileName=src\gui\status.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -468,7 +448,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit90]
-FileName=src\gui\status.cpp
+FileName=src\gui\textbox.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -478,7 +458,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit91]
-FileName=src\gui\status.h
+FileName=src\gui\textbox.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -488,7 +468,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit92]
-FileName=src\gui\textbox.cpp
+FileName=src\gui\textfield.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -498,7 +478,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit93]
-FileName=src\gui\textbox.h
+FileName=src\gui\textfield.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -508,7 +488,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit94]
-FileName=src\gui\textfield.cpp
+FileName=src\gui\trade.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -518,7 +498,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit95]
-FileName=src\gui\textfield.h
+FileName=src\gui\trade.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -528,7 +508,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit96]
-FileName=src\gui\trade.cpp
+FileName=src\gui\window.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -548,7 +528,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit97]
-FileName=src\gui\trade.h
+FileName=src\gui\window.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -558,7 +538,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit98]
-FileName=src\gui\window.cpp
+FileName=src\gui\windowcontainer.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -568,9 +548,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit99]
-FileName=src\gui\window.h
+FileName=src\net\network.cpp
CompileCpp=1
-Folder=gui/header
+Folder=net/source
Compile=1
Link=1
Priority=1000
@@ -578,9 +558,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit100]
-FileName=src\gui\windowcontainer.cpp
+FileName=src\net\network.h
CompileCpp=1
-Folder=gui/source
+Folder=net/header
Compile=1
Link=1
Priority=1000
@@ -588,7 +568,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit101]
-FileName=src\net\network.cpp
+FileName=src\net\protocol.cpp
CompileCpp=1
Folder=net/source
Compile=1
@@ -598,7 +578,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit102]
-FileName=src\net\network.h
+FileName=src\net\protocol.h
CompileCpp=1
Folder=net/header
Compile=1
@@ -608,9 +588,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit103]
-FileName=src\net\protocol.cpp
+FileName=src\resources\soundeffect.h
CompileCpp=1
-Folder=net/source
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -618,9 +598,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit104]
-FileName=src\net\protocol.h
+FileName=src\resources\buddylist.cpp
CompileCpp=1
-Folder=net/header
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -628,7 +608,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit106]
-FileName=src\resources\buddylist.cpp
+FileName=src\resources\image.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -638,7 +618,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit109]
-FileName=src\resources\image.h
+FileName=src\resources\itemmanager.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -658,7 +638,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit111]
-FileName=src\resources\itemmanager.cpp
+FileName=src\resources\mapreader.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -668,7 +648,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit112]
-FileName=src\resources\itemmanager.h
+FileName=src\resources\mapreader.h
CompileCpp=1
Folder=resources
Compile=1
@@ -678,7 +658,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit113]
-FileName=src\resources\mapreader.cpp
+FileName=src\resources\music.cpp
CompileCpp=1
Folder=resources
Link=1
@@ -688,7 +668,7 @@ BuildCmd=
Compile=1
[Unit114]
-FileName=src\resources\mapreader.h
+FileName=src\resources\music.h
CompileCpp=1
Folder=resources
Compile=1
@@ -698,7 +678,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit115]
-FileName=src\resources\music.cpp
+FileName=src\resources\resource.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -708,7 +688,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit116]
-FileName=src\resources\music.h
+FileName=src\resources\resource.h
CompileCpp=1
Folder=resources
Compile=1
@@ -718,7 +698,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit117]
-FileName=src\resources\resource.cpp
+FileName=src\resources\resourcemanager.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -728,7 +708,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit118]
-FileName=src\resources\resource.h
+FileName=src\resources\resourcemanager.h
CompileCpp=1
Folder=resources
Compile=1
@@ -738,7 +718,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit119]
-FileName=src\resources\resourcemanager.cpp
+FileName=src\resources\soundeffect.cpp
CompileCpp=1
Folder=resources
Compile=1
@@ -748,9 +728,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit120]
-FileName=src\resources\resourcemanager.h
+FileName=src\gui\help.h
CompileCpp=1
-Folder=resources
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -758,9 +738,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit121]
-FileName=src\resources\soundeffect.cpp
+FileName=src\gui\help.cpp
CompileCpp=1
-Folder=resources
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -768,9 +748,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit122]
-FileName=src\gui\help.h
+FileName=src\gui\inttextbox.cpp
CompileCpp=1
-Folder=gui/header
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -778,9 +758,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit124]
-FileName=src\gui\inttextbox.cpp
+FileName=src\gui\focushandler.h
CompileCpp=1
-Folder=gui/source
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -788,9 +768,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit125]
-FileName=src\gui\inttextbox.h
+FileName=src\gui\focushandler.cpp
CompileCpp=1
-Folder=gui/header
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -798,7 +778,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit126]
-FileName=src\gui\focushandler.h
+FileName=src\gui\popupmenu.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -808,7 +788,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit127]
-FileName=src\gui\focushandler.cpp
+FileName=src\gui\popupmenu.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -818,7 +798,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit128]
-FileName=src\gui\popupmenu.h
+FileName=src\gui\browserbox.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1148,7 +1128,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit61]
-FileName=src\gui\minimap.h
+FileName=src\gui\npc.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1158,7 +1138,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit63]
-FileName=src\gui\npc.h
+FileName=src\gui\npc_text.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1168,7 +1148,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit64]
-FileName=src\gui\npc_text.cpp
+FileName=src\gui\ok_dialog.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1178,7 +1158,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit65]
-FileName=src\gui\npc_text.h
+FileName=src\gui\ok_dialog.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1188,7 +1168,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit66]
-FileName=src\gui\ok_dialog.cpp
+FileName=src\gui\passwordfield.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1198,7 +1178,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit67]
-FileName=src\gui\ok_dialog.h
+FileName=src\gui\passwordfield.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1208,7 +1188,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit68]
-FileName=src\gui\passwordfield.cpp
+FileName=src\gui\playerbox.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1218,7 +1198,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit75]
-FileName=src\gui\radiobutton.h
+FileName=src\gui\requesttrade.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1228,7 +1208,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit76]
-FileName=src\gui\requesttrade.cpp
+FileName=src\gui\scrollarea.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1238,7 +1218,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit83]
-FileName=src\gui\setup.h
+FileName=src\gui\shop.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1248,7 +1228,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit87]
-FileName=src\gui\skill.h
+FileName=src\gui\slider.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1258,7 +1238,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit88]
-FileName=src\gui\slider.cpp
+FileName=src\gui\status.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1268,7 +1248,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit107]
-FileName=src\resources\buddylist.h
+FileName=src\resources\image.h
CompileCpp=1
Folder=resources
Compile=1
@@ -1278,7 +1258,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit108]
-FileName=src\resources\image.cpp
+FileName=src\resources\iteminfo.h
CompileCpp=1
Folder=resources
Compile=1
@@ -1288,9 +1268,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit123]
-FileName=src\gui\help.cpp
+FileName=src\gui\inttextbox.h
CompileCpp=1
-Folder=gui/source
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1298,7 +1278,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit129]
-FileName=src\gui\popupmenu.cpp
+FileName=src\gui\browserbox.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1308,7 +1288,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit130]
-FileName=src\gui\browserbox.h
+FileName=src\gui\updatewindow.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1318,7 +1298,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit131]
-FileName=src\gui\browserbox.cpp
+FileName=src\gui\updatewindow.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1328,9 +1308,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit132]
-FileName=src\gui\updatewindow.h
+FileName=src\gui\box.cpp
CompileCpp=1
-Folder=gui/header
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1338,9 +1318,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit133]
-FileName=src\gui\updatewindow.cpp
+FileName=src\gui\box.h
CompileCpp=1
-Folder=gui/source
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1348,9 +1328,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit134]
-FileName=src\gui\box.cpp
+FileName=src\item.h
CompileCpp=1
-Folder=gui/source
+Folder=header
Compile=1
Link=1
Priority=1000
@@ -1358,9 +1338,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit135]
-FileName=src\gui\box.h
+FileName=src\equipment.cpp
CompileCpp=1
-Folder=gui/header
+Folder=
Compile=1
Link=1
Priority=1000
@@ -1368,9 +1348,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit138]
-FileName=src\equipment.h
+FileName=src\gui\inventorywindow.h
CompileCpp=1
-Folder=header
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1378,9 +1358,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit139]
-FileName=src\item.cpp
+FileName=src\gui\inventorywindow.cpp
CompileCpp=1
-Folder=
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1388,9 +1368,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit140]
-FileName=src\gui\inventorywindow.h
+FileName=src\inventory.h
CompileCpp=1
-Folder=gui/header
+Folder=header
Compile=1
Link=1
Priority=1000
@@ -1398,9 +1378,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit141]
-FileName=src\gui\inventorywindow.cpp
+FileName=src\inventory.cpp
CompileCpp=1
-Folder=gui/source
+Folder=
Compile=1
Link=1
Priority=1000
@@ -1408,7 +1388,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit142]
-FileName=src\inventory.h
+FileName=src\configlistener.h
CompileCpp=1
Folder=header
Compile=1
@@ -1418,9 +1398,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit143]
-FileName=src\inventory.cpp
+FileName=src\graphic\imagerect.h
CompileCpp=1
-Folder=
+Folder=graphic/header
Compile=1
Link=1
Priority=1000
@@ -1428,7 +1408,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit144]
-FileName=src\configlistener.h
+FileName=src\guichanfwd.h
CompileCpp=1
Folder=header
Compile=1
@@ -1438,9 +1418,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit145]
-FileName=src\graphic\imagerect.h
+FileName=src\playerinfo.h
CompileCpp=1
-Folder=graphic/header
+Folder=header
Compile=1
Link=1
Priority=1000
@@ -1448,7 +1428,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit146]
-FileName=src\guichanfwd.h
+FileName=src\serverinfo.h
CompileCpp=1
Folder=header
Compile=1
@@ -1458,7 +1438,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit147]
-FileName=src\playerinfo.h
+FileName=src\openglgraphics.h
CompileCpp=1
Folder=header
Compile=1
@@ -1468,9 +1448,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit148]
-FileName=src\serverinfo.h
+FileName=src\openglgraphics.cpp
CompileCpp=1
-Folder=header
+Folder=
Compile=1
Link=1
Priority=1000
@@ -1478,9 +1458,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit149]
-FileName=src\openglgraphics.h
+FileName=src\gui\tabbedcontainer.h
CompileCpp=1
-Folder=header
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1498,9 +1478,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit150]
-FileName=src\openglgraphics.cpp
+FileName=src\gui\tabbedcontainer.cpp
CompileCpp=1
-Folder=
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1508,9 +1488,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit151]
-FileName=src\gui\tabbedcontainer.h
+FileName=src\resources\sdlimageloader.cpp
CompileCpp=1
-Folder=gui/header
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -1518,9 +1498,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit152]
-FileName=src\gui\tabbedcontainer.cpp
+FileName=src\resources\sdlimageloader.h
CompileCpp=1
-Folder=gui/source
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -1528,9 +1508,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit153]
-FileName=src\resources\sdlimageloader.cpp
+FileName=src\net\messageout.cpp
CompileCpp=1
-Folder=resources
+Folder=net/source
Compile=1
Link=1
Priority=1000
@@ -1538,9 +1518,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit154]
-FileName=src\resources\sdlimageloader.h
+FileName=src\net\messageout.h
CompileCpp=1
-Folder=resources
+Folder=net/header
Compile=1
Link=1
Priority=1000
@@ -1548,7 +1528,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit155]
-FileName=src\net\messageout.cpp
+FileName=src\net\packet.cpp
CompileCpp=1
Folder=net/source
Compile=1
@@ -1558,7 +1538,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit156]
-FileName=src\net\messageout.h
+FileName=src\net\packet.h
CompileCpp=1
Folder=net/header
Compile=1
@@ -1568,7 +1548,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit157]
-FileName=src\net\packet.cpp
+FileName=src\net\messagein.cpp
CompileCpp=1
Folder=net/source
Compile=1
@@ -1578,7 +1558,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit158]
-FileName=src\net\packet.h
+FileName=src\net\messagein.h
CompileCpp=1
Folder=net/header
Compile=1
@@ -1588,9 +1568,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit166]
-FileName=src\resources\imagewriter.h
+FileName=src\gui\error.h
CompileCpp=1
-Folder=resources
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1598,9 +1578,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit167]
-FileName=src\gui\error.cpp
+FileName=src\gui\debugwindow.h
CompileCpp=1
-Folder=gui/source
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1608,9 +1588,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit160]
-FileName=src\net\messagein.h
+FileName=src\gui\menuwindow.h
CompileCpp=1
-Folder=net/header
+Folder=gui/header
Compile=1
Link=1
Priority=1000
@@ -1618,7 +1598,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit161]
-FileName=src\gui\menuwindow.cpp
+FileName=src\gui\ministatus.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1628,7 +1608,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit105]
-FileName=src\resources\soundeffect.h
+FileName=src\resources\buddylist.h
CompileCpp=1
Folder=resources
Compile=1
@@ -1638,7 +1618,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit110]
-FileName=src\resources\iteminfo.h
+FileName=src\resources\itemmanager.h
CompileCpp=1
Folder=resources
Compile=1
@@ -1648,9 +1628,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit159]
-FileName=src\net\messagein.cpp
+FileName=src\gui\menuwindow.cpp
CompileCpp=1
-Folder=net/source
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1658,7 +1638,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit162]
-FileName=src\gui\menuwindow.h
+FileName=src\gui\ministatus.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1668,9 +1648,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit163]
-FileName=src\gui\ministatus.cpp
+FileName=src\resources\imagewriter.cpp
CompileCpp=1
-Folder=gui/source
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -1678,9 +1658,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit164]
-FileName=src\gui\ministatus.h
+FileName=src\resources\imagewriter.h
CompileCpp=1
-Folder=gui/header
+Folder=resources
Compile=1
Link=1
Priority=1000
@@ -1688,9 +1668,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit165]
-FileName=src\resources\imagewriter.cpp
+FileName=src\gui\error.cpp
CompileCpp=1
-Folder=resources
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1698,9 +1678,9 @@ OverrideBuildCmd=0
BuildCmd=
[Unit168]
-FileName=src\gui\error.h
+FileName=src\gui\debugwindow.cpp
CompileCpp=1
-Folder=gui/header
+Folder=gui/source
Compile=1
Link=1
Priority=1000
@@ -1708,7 +1688,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit169]
-FileName=src\gui\debugwindow.h
+FileName=src\gui\connection.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1718,7 +1698,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit170]
-FileName=src\gui\debugwindow.cpp
+FileName=src\gui\connection.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1728,7 +1708,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit171]
-FileName=src\gui\connection.h
+FileName=src\gui\gccontainer.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1738,7 +1718,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit172]
-FileName=src\gui\connection.cpp
+FileName=src\gui\gccontainer.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1748,7 +1728,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit173]
-FileName=src\gui\gccontainer.h
+FileName=src\gui\login.h
CompileCpp=1
Folder=gui/header
Compile=1
@@ -1758,7 +1738,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit174]
-FileName=src\gui\gccontainer.cpp
+FileName=src\gui\login.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1768,7 +1748,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit176]
-FileName=src\gui\gccontainer.cpp
+FileName=src\gui\login.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1798,7 +1778,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit136]
-FileName=src\item.h
+FileName=src\equipment.h
CompileCpp=1
Folder=header
Compile=1
@@ -1808,7 +1788,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit137]
-FileName=src\equipment.cpp
+FileName=src\item.cpp
CompileCpp=1
Folder=
Compile=1
@@ -1818,7 +1798,7 @@ OverrideBuildCmd=0
BuildCmd=
[Unit62]
-FileName=src\gui\npc.cpp
+FileName=src\gui\npc_text.cpp
CompileCpp=1
Folder=gui/source
Compile=1
@@ -1827,3 +1807,33 @@ Priority=1000
OverrideBuildCmd=0
BuildCmd=
+[Unit175]
+FileName=src\gui\login.h
+CompileCpp=1
+Folder=gui/header
+Compile=1
+Link=1
+Priority=1000
+OverrideBuildCmd=0
+BuildCmd=
+
+[Unit58]
+FileName=src\gui\minimap.cpp
+CompileCpp=1
+Folder=gui/source
+Compile=1
+Link=1
+Priority=1000
+OverrideBuildCmd=0
+BuildCmd=
+
+[Unit59]
+FileName=src\gui\minimap.h
+CompileCpp=1
+Folder=gui/header
+Compile=1
+Link=1
+Priority=1000
+OverrideBuildCmd=0
+BuildCmd=
+
diff --git a/src/gui/char_select.cpp b/src/gui/char_select.cpp
index 86e2b12f..b1f649ec 100644
--- a/src/gui/char_select.cpp
+++ b/src/gui/char_select.cpp
@@ -62,7 +62,7 @@ void CharSelectDialog::CharDeleteConfirm::action(const std::string &eventId)
}
CharSelectDialog::CharSelectDialog():
- Window("Select Character")
+ Window("Select Character"), mStatus(0)
{
selectButton = new Button("OK");
cancelButton = new Button("Cancel");
@@ -123,7 +123,8 @@ void CharSelectDialog::action(const std::string& eventId)
{
if (eventId == "ok" && n_character > 0) {
// Start game
- serverCharSelect();
+ attemptCharSelect();
+ mStatus = 1;
}
else if (eventId == "cancel") {
state = EXIT_STATE;
@@ -208,14 +209,23 @@ void CharSelectDialog::serverCharDelete()
}
}
-void CharSelectDialog::serverCharSelect()
+void CharSelectDialog::attemptCharSelect()
{
// Request character selection
MessageOut outMsg;
outMsg.writeInt16(0x0066);
outMsg.writeInt8(0);
+}
+void
+CharSelectDialog::checkCharSelect()
+{
+ // Receive reply
MessageIn msg = get_next_message();
+ if (state == ERROR_STATE)
+ {
+ return;
+ }
logger->log("CharSelect: Packet ID: %x, Length: %d, in_size: %d",
msg.getId(), msg.getLength(), in_size);
@@ -224,14 +234,14 @@ void CharSelectDialog::serverCharSelect()
{
char_ID = msg.readInt32();
map_path = "maps/" + msg.readString(16);
- map_path= map_path.substr(0, map_path.rfind(".")) + ".tmx.gz";
+ map_path = map_path.substr(0, map_path.rfind(".")) + ".tmx.gz";
map_address = msg.readInt32();
map_port = msg.readInt16();
player_info = char_info[0];
state = CONNECTING_STATE;
logger->log("CharSelect: Map: %s", map_path.c_str());
- logger->log("CharSelect: Server: %s:%d", iptostring(map_address),
+ logger->log("CharSelect: Server: %s:%i", iptostring(map_address),
map_port);
closeConnection();
}
@@ -278,6 +288,18 @@ void CharSelectDialog::logic()
if (n_character > 0) {
setPlayerInfo(char_info[0]);
}
+
+ if (mStatus == 1)
+ {
+ if (in_size > 2)
+ {
+ checkCharSelect();
+ }
+ else
+ {
+ flush();
+ }
+ }
}
CharCreateDialog::CharCreateDialog(Window *parent):
diff --git a/src/gui/char_select.h b/src/gui/char_select.h
index a85bb28c..3692c1e4 100644
--- a/src/gui/char_select.h
+++ b/src/gui/char_select.h
@@ -63,6 +63,8 @@ class CharSelectDialog : public Window, public gcn::ActionListener
gcn::Label *levelLabel;
gcn::Label *jobLevelLabel;
gcn::Label *moneyLabel;
+
+ int mStatus;
PlayerBox *playerBox;
@@ -74,7 +76,12 @@ class CharSelectDialog : public Window, public gcn::ActionListener
/**
* Communicate character selection to the server.
*/
- void serverCharSelect();
+ void attemptCharSelect();
+
+ /**
+ * Check server answer.
+ */
+ void checkCharSelect();
/**
* Listener for confirming character deletion.
diff --git a/src/gui/char_server.cpp b/src/gui/char_server.cpp
index 202c3e29..6766092c 100644
--- a/src/gui/char_server.cpp
+++ b/src/gui/char_server.cpp
@@ -42,9 +42,6 @@
extern SERVER_INFO **server_info;
-char server[30];
-
-
ServerSelectDialog::ServerSelectDialog():
Window("Select Server"), mStatus(NET_IDLE)
{
@@ -68,7 +65,7 @@ ServerSelectDialog::ServerSelectDialog():
100 - 3 * 5 - cancelButton->getHeight() -
scrollArea->getBorderSize()));
- //serverList->setEventId("ok");
+ serverList->setEventId("ok");
okButton->setEventId("ok");
cancelButton->setEventId("cancel");
@@ -97,7 +94,8 @@ ServerSelectDialog::~ServerSelectDialog()
delete serverListModel;
}
-void ServerSelectDialog::action(const std::string& eventId)
+void
+ServerSelectDialog::action(const std::string& eventId)
{
if (eventId == "ok") {
int index = serverList->getSelected();
@@ -105,14 +103,14 @@ void ServerSelectDialog::action(const std::string& eventId)
short port = server_info[index]->port;
openConnection(host, port);
mStatus = NET_CONNECTING;
- //server_char_server(serverList->getSelected());
}
else if (eventId == "cancel") {
state = LOGIN_STATE;
}
}
-void ServerSelectDialog::logic()
+void
+ServerSelectDialog::logic()
{
switch (mStatus)
{
@@ -126,25 +124,39 @@ void ServerSelectDialog::logic()
closeConnection();
break;
case NET_CONNECTED:
- selectServer(serverList->getSelected());
- //closeConnection();
+ attemptServerSelect(serverList->getSelected());
+ mStatus = NET_DATA;
+ break;
+ case NET_DATA:
+ if (in_size > 6)
+ {
+ skip(4);
+ checkServerSelect();
+ }
+ else
+ {
+ flush();
+ }
break;
}
}
-int ServerListModel::getNumberOfElements()
+int
+ServerListModel::getNumberOfElements()
{
return n_server;
}
-std::string ServerListModel::getElementAt(int i)
+std::string
+ServerListModel::getElementAt(int i)
{
std::stringstream s;
s << server_info[i]->name << " (" << server_info[i]->online_users << ")";
return s.str();
}
-void charServerInputHandler(SDL_KeyboardEvent *keyEvent)
+void
+charServerInputHandler(SDL_KeyboardEvent *keyEvent)
{
if (keyEvent->keysym.sym == SDLK_ESCAPE)
{
@@ -152,7 +164,8 @@ void charServerInputHandler(SDL_KeyboardEvent *keyEvent)
}
}
-void ServerSelectDialog::selectServer(int index)
+void
+ServerSelectDialog::attemptServerSelect(int index)
{
// Send login infos
MessageOut outMsg;
@@ -162,11 +175,11 @@ void ServerSelectDialog::selectServer(int index)
outMsg.writeInt32(session_ID2);
outMsg.writeInt16(0); // unknown
outMsg.writeInt8(sex);
+}
- // Skipping a mysterious 4 bytes
- while ((in_size < 4) || (out_size > 0)) flush();
- skip(4);
-
+void
+ServerSelectDialog::checkServerSelect()
+{
MessageIn msg = get_next_message();
if (msg.getId() == 0x006b)
diff --git a/src/gui/char_server.h b/src/gui/char_server.h
index f81c387b..f36ee76e 100644
--- a/src/gui/char_server.h
+++ b/src/gui/char_server.h
@@ -80,7 +80,8 @@ class ServerSelectDialog : public Window, public gcn::ActionListener {
gcn::ScrollArea *scrollArea;
int mStatus;
- void selectServer(int index);
+ void attemptServerSelect(int index);
+ void checkServerSelect();
};
void charServerInputHandler(SDL_KeyboardEvent *keyEvent);
diff --git a/src/gui/connection.cpp b/src/gui/connection.cpp
index 3cff4abd..c7eb3667 100644
--- a/src/gui/connection.cpp
+++ b/src/gui/connection.cpp
@@ -86,8 +86,20 @@ void ConnectionDialog::logic()
closeConnection();
break;
case NET_CONNECTED:
- mapLogin();
- state = GAME_STATE;
+ attemptMapLogin();
+ mStatus = NET_DATA;
+ break;
+ case NET_DATA:
+ if (in_size > 6)
+ {
+ skip(4);
+ checkMapLogin();
+ state = GAME_STATE;
+ }
+ else
+ {
+ flush();
+ }
break;
}
}
@@ -100,7 +112,7 @@ void ConnectionDialog::action(const std::string& eventId)
}
}
-void ConnectionDialog::mapLogin()
+void ConnectionDialog::attemptMapLogin()
{
// Send login infos
MessageOut outMsg;
@@ -110,11 +122,10 @@ void ConnectionDialog::mapLogin()
outMsg.writeInt32(session_ID1);
outMsg.writeInt32(session_ID2);
outMsg.writeInt8(sex);
+}
- // Skip a mysterious 4 bytes
- while ((in_size < 4)|| (out_size > 0)) flush();
- skip(4);
-
+void ConnectionDialog::checkMapLogin()
+{
MessageIn msg = get_next_message();
if (msg.getId() == SMSG_LOGIN_SUCCESS)
diff --git a/src/gui/connection.h b/src/gui/connection.h
index bde1e174..342b9f8d 100644
--- a/src/gui/connection.h
+++ b/src/gui/connection.h
@@ -61,7 +61,8 @@ class ConnectionDialog : public Window, public gcn::ActionListener
float mProgress;
int mStatus;
- void mapLogin();
+ void attemptMapLogin();
+ void checkMapLogin();
};
/**
diff --git a/src/gui/login.cpp b/src/gui/login.cpp
index e6df01da..a8e906e1 100644
--- a/src/gui/login.cpp
+++ b/src/gui/login.cpp
@@ -222,52 +222,47 @@ LoginDialog::action(const std::string& eventId)
} else {
config.setValue("username", "");
}
+
+ std::stringstream errorMsg;
+ bool error = false;
// Check login
if (user.length() == 0)
{
// No username
- wrongLoginNotice = new OkDialog("Error",
- "Enter your username first.",
- &wrongUsernameNoticeListener);
+ errorMsg << "Enter your username first.";
}
else if (user.length() < LEN_MIN_USERNAME)
{
// Name too short
- std::stringstream errorMsg;
errorMsg << "The username needs to be at least "
<< LEN_MIN_USERNAME
<< " characters long.";
- wrongLoginNotice = new OkDialog("Error", errorMsg.str(),
- &wrongUsernameNoticeListener);
}
else if (user.length() > LEN_MAX_USERNAME - 1 )
{
// Name too long
- std::stringstream errorMsg;
errorMsg << "The username needs to be less than "
<< LEN_MAX_USERNAME
<< " characters long.";
- wrongLoginNotice = new OkDialog("Error", errorMsg.str(),
- &wrongUsernameNoticeListener);
}
else if (passField->getText().length() < LEN_MIN_PASSWORD)
{
// Pass too short
- std::stringstream errorMsg;
errorMsg << "The password needs to be at least "
<< LEN_MIN_PASSWORD
<< " characters long.";
- wrongLoginNotice = new OkDialog("Error", errorMsg.str(),
- &wrongPasswordNoticeListener);
}
else if (passField->getText().length() > LEN_MAX_PASSWORD - 1 )
{
// Pass too long
- std::stringstream errorMsg;
errorMsg << "The password needs to be less than "
<< LEN_MAX_PASSWORD
<< " characters long.";
+ }
+
+ if (error)
+ {
wrongLoginNotice = new OkDialog("Error", errorMsg.str(),
&wrongPasswordNoticeListener);
}
@@ -280,7 +275,6 @@ LoginDialog::action(const std::string& eventId)
openConnection(host.c_str(), port);
mStatus = NET_CONNECTING;
registration = true;
- //attemptLogin(user + "_M", passField->getText());
}
}
}
@@ -300,6 +294,19 @@ LoginDialog::logic()
closeConnection();
logger->log("Connection closed");
break;
+ case NET_DATA:
+ // TODO: this is a very quick hack, we should implement something
+ // like a bool completePacket() in network functions.
+ if (in_size > 2)
+ {
+ checkLogin();
+ closeConnection();
+ }
+ else
+ {
+ flush();
+ }
+ break;
case NET_CONNECTED:
logger->log("Connected...");
std::string user = userField->getText();
@@ -309,7 +316,7 @@ LoginDialog::logic()
user += "_M";
}
attemptLogin(user, password);
- closeConnection();
+ mStatus = NET_DATA;
break;
}
}
@@ -333,12 +340,15 @@ LoginDialog::attemptLogin(const std::string& user, const std::string& pass)
outMsg.writeString(user, 24);
outMsg.writeString(pass, 24);
outMsg.writeInt8(0); // unknown
+}
+void
+LoginDialog::checkLogin()
+{
// Receive reply
MessageIn msg = get_next_message();
if (state == ERROR_STATE)
{
- closeConnection();
return;
}
diff --git a/src/gui/login.h b/src/gui/login.h
index f4966914..9fd866aa 100644
--- a/src/gui/login.h
+++ b/src/gui/login.h
@@ -73,6 +73,7 @@ class LoginDialog : public Window, public gcn::ActionListener {
bool registration;
void attemptLogin(const std::string& user, const std::string& pass);
+ void checkLogin();
};
/**
@@ -103,19 +104,4 @@ class WrongUsernameNoticeListener : public gcn::ActionListener {
*/
void loginInputHandler(SDL_KeyboardEvent *keyEvent);
-/*enum
-{
- LOGIN_OK = 0,
- LOGIN_WRONG_PASSWORD,
- LOGIN_UNREGISTERED_ID,
- LOGIN_REJECTED,
- LOGIN_BLOCKED,
- LOGIN_EXPIRED,
- LOGIN_NO_CONNECTION,
- LOGIN_USERNAME_TWICE = 9,
- LOGIN_CONNECTING,
- LOGIN_UNKNOWN_ERROR = -1
-
-};*/
-
#endif
diff --git a/src/net/network.h b/src/net/network.h
index 1038b954..50638683 100644
--- a/src/net/network.h
+++ b/src/net/network.h
@@ -28,6 +28,7 @@
#define NET_CONNECTED 0
#define NET_IDLE 1
#define NET_CONNECTING 2
+#define NET_DATA 3
class MessageIn;