summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2004-12-14 22:18:31 +0000
committerBjørn Lindeijer <bjorn@lindeijer.nl>2004-12-14 22:18:31 +0000
commitce7b81dd5af4aacc16fb2ff974faee4325aba20f (patch)
treeacbfea9e0809d377cb6d65f9266cfe14a7206b1d
parent900d3ce7ea8e64e6d0bac360d86fef921f37e43b (diff)
downloadMana-ce7b81dd5af4aacc16fb2ff974faee4325aba20f.tar.gz
Mana-ce7b81dd5af4aacc16fb2ff974faee4325aba20f.tar.bz2
Mana-ce7b81dd5af4aacc16fb2ff974faee4325aba20f.tar.xz
Mana-ce7b81dd5af4aacc16fb2ff974faee4325aba20f.zip
Mainly been rewriting the guide to compiling TMW on Windows
-rw-r--r--docs/HACKING.txt11
-rw-r--r--docs/INSTALL/mingw.txt70
-rw-r--r--docs/INSTALL/win32.txt103
-rw-r--r--docs/ReadMe.txt11
-rw-r--r--src/graphic/graphic.cpp4
-rw-r--r--src/gui/login.cpp1
6 files changed, 82 insertions, 118 deletions
diff --git a/docs/HACKING.txt b/docs/HACKING.txt
index 6f34b383..b36f5e2a 100644
--- a/docs/HACKING.txt
+++ b/docs/HACKING.txt
@@ -7,7 +7,8 @@ standard specifying how code is written down. Not doing so can cause quite some
annoyance for certain coders and easily creates more version conflicts than
necessary.
-* Code is indented using 4 spaces, no tabs.
+* Indentation:
+ Code is indented using 4 spaces, no tabs.
* Control constructs like this:
@@ -24,6 +25,7 @@ necessary.
/*
* Documentation about behaviour
+ * ...
*/
void function(param1, param2) {
}
@@ -32,6 +34,13 @@ necessary.
};
Ending parenthesis may be on next line for clarity.
+
+ Bad:
+
+ if (condition)
+ statement;
+
+ if (condition) statement;
* Use of whitespace example:
diff --git a/docs/INSTALL/mingw.txt b/docs/INSTALL/mingw.txt
deleted file mode 100644
index cd295fc3..00000000
--- a/docs/INSTALL/mingw.txt
+++ /dev/null
@@ -1,70 +0,0 @@
-----------------------------------------------------------------------
-Windows The Mana World Developers Getting Started Howto (MinGW + MSYS)
-----------------------------------------------------------------------
-
-* Get the MinGW 3.1.0 from http://www.mingw.org/
-
-* Get MSYS 1.0.1 from there too
-
-* Install MinGW
-
-* Install MSYS (and do the normalization with MinGW it comes up with)
-
-* Get Allegro 4.1.17 from http://alleg.sf.net/
-
-* Install Allegro in MSYS, following MinGW32+MSYS installation instructions
- in docs/build/mingw32.txt
-
-* Get Guichan 0.1.0 from http://guichan.darkbits.org
-
- * After unzipping, change _declspec to __declspec in the following file:
-
- include/guichan/platform.hpp:59
-
- * In MSYS, do "export HAVE_ALLEGRO=yes" to get the Guichan configure to
- believe Allegro is present (which should be now)
-
- * For Guichan, run
-
- ./configure --prefix=/mingw --disable-sdl --disable-opengl
-
- This stops it from trying to build the unwanted parts and makes it install
- the includes and libraries in the right place.
-
- * Finish off with "make" and "make install"
-
-* Get alfont from http://nekros.freeshell.org/delirium/alfont.php
-
- * In MSYS in alfont directory, run ./fixunix.sh
-
- * Change the target in the Makefile to MINGW32_STATIC by uncommenting the
- line and commenting the DJGPP one.
-
- * Run make
-
- * Copy the resulting .a file from lib/mingw32 to /mingw/lib
- * Copy the includes from include to /mingw/include
-
-* Get jgmod from http://surf.to/jgmod
-
- * In MSYS, go into the jgmod/src dir and type make
-
- * Copy jgmod/lib/djgpp/libjgmod.a over to /mingw/lib
- * Copy src/jgmod.h over to /mingw/include
-
-* Now you're ready for The Mana World. Start with checkout out the latest
- source from CVS. CVS root is
- ":pserver:sull.homelinux.net:/var/home/cvs/repository" and module is "tmw".
- TortoiseCVS is a useful CVS client that integrates with Windows Explorer.
- (http://www.tortoisecvs.org/)
-
-* In MSYS go to the tmw directory, and run
-
- make -f makefile.mgw
-
- This should compile you a working tmw.exe, seems to be statically linked.
- To make it a bit smaller (towards 850k) you can do
-
- strip tmw.exe
-
- Might be a good idea to include that in the makefile.
diff --git a/docs/INSTALL/win32.txt b/docs/INSTALL/win32.txt
index 921e0e4e..64e8a239 100644
--- a/docs/INSTALL/win32.txt
+++ b/docs/INSTALL/win32.txt
@@ -1,75 +1,96 @@
-How to compile and install TMW on my Win32 Box
-==============================================
-
-Author: Alexander Baldeck (aka kth5)
-Email: kth5@cboxx.de
-Homepage: alex.cboxx.de
+How setup Dev-C++ to compile TMW on a Win32 Box
+===============================================
The Mana World project
======================
Homepage: themanaworld.sourceforge.net
IRC: irc.freenode.net / #manaworld
+
0. Index
========
1. Requirements
2. Installing Dev-C++
-3. Updating Dev-C++ and Allegro installation
-6. Installing The Mana World
-7. Notes
+3. Installing the required libraries
+4. Compiling The Mana World
+
1. Requirements
===============
-In this tutorial we will use DevC++ b/c of the fact that
-it's a free and one of best - if not THE best - IDE you
-can get on Win32. Remember, Win32 was not meant for GCC
-and stuff so you will probably run into trouble unless
-you really know what you're doing, so best stick with
-Dev-C++.
+In this tutorial we will use DevC++ because of the fact that it's a very good
+free IDE for Win32 built around GCC. Remember, Win32 was not meant for GCC and
+stuff so you will probably run into trouble unless you really know what you're
+doing, so best stick with Dev-C++.
-Furthermore TMW depends on the following libraries:
+Besides a C++ compiler, TMW depends on the following libraries:
1) Allegro 4.1.x
2) Alfont 1.91
3) JGmod 0.99
+4) Guichan 0.1.0-CVS
2. Installing Dev-C++
=====================
-I recommend that you get the latest stable version. Though
-this tutorial is written for and tested w/ Dev-C++ 4.9.90
-it may also apply to any later version. Get 4.9.90 here:
+I recommend that you get the latest beta version, which is 4.9.9.1 at the time
+of writing. Though this tutorial is written for and tested with that, it may
+also apply to the latest stable version. Get Dev-C++ here:
- http://prdownloads.sourceforge.net/dev-cpp/devcpp4990setup.exe
+ http://www.bloodshed.net/
-After you fetched it simply run and install. As soon as it is
-installed you need to adjust a couple of enviroment-variables.
-I will assume that you know how to do this.
+After you fetched it simply run and install.
-If you have Dev-C++ installed to "C:\Dev-Cpp" - the default -
-your envars should contain these:
-SET PATH=C:\Dev-Cpp\bin;C:\otherpaths
-SET MINGDIR=C:\Dev-Cpp
+3. Installing the required libraries
+====================================
-Don't worry this won't hurt your Win32 unless you replace the
-contents of PATH. ;-)
+Lucky for us, all the libs have DevPaks that are very easy drop-ins for
+Dev-C++, without any complex actions on your side. We'll download them from
+http://devpaks.org/.
+Because Guichan can work with SDL as well as Allegro, and because we plan to
+switch to SDL anyway, we'll install SDL and SDL_image too, even though TMW
+doesn't require them at this time.
-3. Updating Dev-C++ and Allegro installation
-=====================
+Get the following list of DevPaks:
+
+- Allegro (http://devpaks.org/show.php?devpak=2)
+- AllegroFont (http://devpaks.org/show.php?devpak=88)
+- JGMOD (http://devpaks.org/show.php?devpak=121)
+- SDL (http://devpaks.org/show.php?devpak=57)
+- SDL_image (http://devpaks.org/show.php?devpak=25)
+- Guichan (http://guichan.darkbits.org/downloads/guichan.DevPak)
+
+Install them all through the Dev-C++ package manager.
+
+NOTE: At the time of writing there is a problem with the SDL_image package.
+You need to solve this by downloading the file SDL_image-devel-1.2.3-VC6.zip
+from the link below and extracting from it the SDL_image.lib file and put that
+in your Dev-C++ lib directory.
+
+ http://www.libsdl.org/projects/SDL_image/
+
+You should now be fully equipped for compiling the latest TMW CVS code!
+
+
+4. Compiling The Mana World
+===========================
+
+Check out The Mana World from CVS using either the command line cvs tool or
+TortoiseCVS, pick what you like to use most and install that. Next, check out
+the tmw module from our repository. The CVSROOT is:
+
+ :pserver:anoncvs@sull.homelinux.net:/var/home/cvs/repository
+
+Open "The Mana World.dev" in Dev-C++. From there on you should be able to
+start compilition with Excute -> Compile. A file called tmw.exe should appear
+in the same directory as where you opened the .dev from.
-Since the GCC in Dev-C++ is pretty old, we should get something
-newer. This - fortunately - is not very hard to do. Simply fo to
-"Tools" and then to "Check for Upgrades/Packages".
-This will give you the Webupdate dialog where you should click
-on the "Check for upgrades" button.
-When you see the list look for "g++-3.4.1" and "gcc-core-3.4.1"
-in the group "Dev-C++ MINGW System". After you have done that,
-select the group you might want to check out a group called
-"Allegro"! ;-)
+Before you can actually run the executable you may need to move a few DLLs over
+from your Dev-Cpp/dll directory to the directory containing tmw.exe. The
+currently required DLLs are alleg41.dll, guichan.dll and guichan_allegro.dll.
+Have fun hacking The Mana World!
-TODO \ No newline at end of file
diff --git a/docs/ReadMe.txt b/docs/ReadMe.txt
index c0754c9e..ccd48283 100644
--- a/docs/ReadMe.txt
+++ b/docs/ReadMe.txt
@@ -27,9 +27,10 @@
- Bertram for Debian installation script
Powered by:
- - Allegro
- - AllegroFont
- - JMod
+ - Allegro (game programming library)
+ - AllegroFont (truetype font drawing)
+ - JMod (module playback)
+ - Guichan (gui framework)
0. Index
@@ -70,6 +71,10 @@ Remember: the server is only for development or demo purposes (Thanks again to U
4. Version history
------------------
+0.0.8a
+- Added controlling player with arrow keys
+- Rewrote gui with Guichan
+
0.0.8
- added sound support for macosx
- added primitive inventory
diff --git a/src/graphic/graphic.cpp b/src/graphic/graphic.cpp
index 7feba86b..50b1083c 100644
--- a/src/graphic/graphic.cpp
+++ b/src/graphic/graphic.cpp
@@ -358,8 +358,8 @@ new_tileset->spriteset[0]->draw(vbuffer, 0, 0);
node->text_x = (get_x(node->coordinates)-camera_x)*16-22+get_x_offset(node)-offset_x;
node->text_y = (get_y(node->coordinates)-camera_y)*16-25+get_y_offset(node)-offset_y;
- int r_x = node->text_x-get_x_offset(node);
- int r_y = node->text_y-get_y_offset(node);
+ //int r_x = node->text_x-get_x_offset(node);
+ //int r_y = node->text_y-get_y_offset(node);
if(node->action==MONSTER_DEAD)
new_monsterset->spriteset[(get_direction(node->coordinates)/2)+4*(node->job-1002)+8*MONSTER_DEAD]->draw(vbuffer, node->text_x, node->text_y);
diff --git a/src/gui/login.cpp b/src/gui/login.cpp
index 94c9729e..2f07090f 100644
--- a/src/gui/login.cpp
+++ b/src/gui/login.cpp
@@ -91,7 +91,6 @@ void login() {
userField->setEventId("ok");
passField->setEventId("ok");
- keepCheck->setEventId("ok");
okButton->setEventId("ok");
cancelButton->setEventId("cancel");