summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomáš Chvátal <scarabeus@gentoo.org>2009-08-13 12:27:11 +0200
committerTomáš Chvátal <scarabeus@gentoo.org>2009-08-13 12:27:11 +0200
commit8564839b95baa987d921a5aaabd9ed3e15ba30fa (patch)
tree6af41da402bbafc8d8824f8a6747b15d7a65d377 /devel/games-arcade/atomorun2008/files
parent( dev-games/clanlib ) removed die on econf clanlib-2.0.3.ebuild (diff)
downloadgamerlay-8564839b95baa987d921a5aaabd9ed3e15ba30fa.tar.gz
gamerlay-8564839b95baa987d921a5aaabd9ed3e15ba30fa.tar.bz2
gamerlay-8564839b95baa987d921a5aaabd9ed3e15ba30fa.zip
Move to 2 folder layout where one is for devel and one for fixed things.
Diffstat (limited to 'devel/games-arcade/atomorun2008/files')
-rw-r--r--devel/games-arcade/atomorun2008/files/atomorun2008-1.0.diff686
-rwxr-xr-xdevel/games-arcade/atomorun2008/files/atomorun2008.pngbin0 -> 4003 bytes
2 files changed, 686 insertions, 0 deletions
diff --git a/devel/games-arcade/atomorun2008/files/atomorun2008-1.0.diff b/devel/games-arcade/atomorun2008/files/atomorun2008-1.0.diff
new file mode 100644
index 0000000..1d74aa4
--- /dev/null
+++ b/devel/games-arcade/atomorun2008/files/atomorun2008-1.0.diff
@@ -0,0 +1,686 @@
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap1b.txt atomorun2008-1.0/resources/heightmaps/heightmap1b.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap1b.txt 2008-03-13 15:33:12.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap1b.txt 2008-08-13 16:43:42.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap1b.png 2.1 3.0 0.08
+-resources/heightmaps/alphamap1b.png resources/textures/grass.png resources/textures/grass.png resources/textures/stone.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap1b.png 2.1 3.0 0.08
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap1b.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone.png
+ 200.0 100.0 100.0
+-resources/meshes/tree.zms 0.15
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.15
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap1.txt atomorun2008-1.0/resources/heightmaps/heightmap1.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap1.txt 2008-03-13 15:33:06.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap1.txt 2008-08-13 16:43:45.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap1.png 2.1 3.0 0.08
+-resources/heightmaps/alphamap1.png resources/textures/grass.png resources/textures/grass.png resources/textures/stone.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap1.png 2.1 3.0 0.08
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap1.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone.png
+ 200.0 100.0 100.0
+-resources/meshes/tree.zms 0.15
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.15
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap2b.txt atomorun2008-1.0/resources/heightmaps/heightmap2b.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap2b.txt 2008-03-13 15:33:20.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap2b.txt 2008-08-13 16:44:54.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap2b.png 2.1 3.0 0.08
+-resources/heightmaps/alphamap2b.png resources/textures/stone4.png resources/textures/grass.png resources/textures/stone4.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap2b.png 2.1 3.0 0.08
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap2b.png /usr/share/games/atomorun2008/resources/textures/stone4.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone4.png
+ 140.0 30.0 100.0
+-resources/meshes/tree.zms 0.15
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.15
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap2.txt atomorun2008-1.0/resources/heightmaps/heightmap2.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap2.txt 2008-03-13 15:33:16.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap2.txt 2008-08-13 17:09:15.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap2.png 2.1 3.0 0.08
+-resources/heightmaps/alphamap2.png resources/textures/stone4.png resources/textures/grass.png resources/textures/stone4.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap2.png 2.1 3.0 0.08
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap2.png /usr/share/games/atomorun2008/resources/textures/stone4.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone4.png
+ 140.0 30.0 100.0
+-resources/meshes/tree.zms 0.15
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.15
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap3b.txt atomorun2008-1.0/resources/heightmaps/heightmap3b.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap3b.txt 2008-03-13 15:33:26.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap3b.txt 2008-08-13 16:45:55.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap3b.png 2.1 3.0 0.1
+-resources/heightmaps/alphamap3b.png resources/textures/snow.png resources/textures/grass2.png resources/textures/sand.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap3b.png 2.1 3.0 0.1
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap3b.png /usr/share/games/atomorun2008/resources/textures/snow.png /usr/share/games/atomorun2008/resources/textures/grass2.png /usr/share/games/atomorun2008/resources/textures/sand.png
+ 100.0 100.0 100.0
+-resources/meshes/tree.zms 0.08
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.08
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmap3.txt atomorun2008-1.0/resources/heightmaps/heightmap3.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmap3.txt 2008-03-13 15:33:22.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmap3.txt 2008-08-13 16:44:52.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmap3.png 2.1 3.0 0.1
+-resources/heightmaps/alphamap3.png resources/textures/snow.png resources/textures/grass2.png resources/textures/sand2.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap3.png 2.1 3.0 0.1
++/usr/share/games/atomorun2008/resources/heightmaps/alphamap3.png /usr/share/games/atomorun2008/resources/textures/snow.png /usr/share/games/atomorun2008/resources/textures/grass2.png /usr/share/games/atomorun2008/resources/textures/sand2.png
+ 110.0 100.0 100.0
+-resources/meshes/tree.zms 0.08
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.08
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/heightmapSpecial.txt atomorun2008-1.0/resources/heightmaps/heightmapSpecial.txt
+--- atomorun2008-1.0-O/resources/heightmaps/heightmapSpecial.txt 2008-03-13 15:37:20.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/heightmapSpecial.txt 2008-08-13 16:46:19.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/heightmapSpecial.png 2.9 3.0 0.08
+-resources/heightmaps/alphamapSpecial.png resources/textures/sand.png resources/textures/grass.png resources/textures/stone.png
++/usr/share/games/atomorun2008/resources/heightmaps/heightmapSpecial.png 2.9 3.0 0.08
++/usr/share/games/atomorun2008/resources/heightmaps/alphamapSpecial.png /usr/share/games/atomorun2008/resources/textures/sand.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone.png
+ 200.0 100.0 100.0
+-resources/meshes/tree.zms 0.3
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.3
+diff -Naur atomorun2008-1.0-O/resources/heightmaps/start.txt atomorun2008-1.0/resources/heightmaps/start.txt
+--- atomorun2008-1.0-O/resources/heightmaps/start.txt 2008-03-10 20:07:24.000000000 +0100
++++ atomorun2008-1.0/resources/heightmaps/start.txt 2008-08-13 16:46:54.000000000 +0200
+@@ -1,4 +1,4 @@
+-resources/heightmaps/start.png 3.0 3.0 0.2
+-resources/heightmaps/startalphamap.png resources/textures/sand.png resources/textures/grass.png resources/textures/stone.png
++/usr/share/games/atomorun2008/resources/heightmaps/start.png 3.0 3.0 0.2
++/usr/share/games/atomorun2008/resources/heightmaps/startalphamap.png /usr/share/games/atomorun2008/resources/textures/sand.png /usr/share/games/atomorun2008/resources/textures/grass.png /usr/share/games/atomorun2008/resources/textures/stone.png
+ 10.0 10.0 10.0
+-resources/meshes/tree.zms 0.04f
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/meshes/tree.zms 0.04f
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl1b.txt atomorun2008-1.0/resources/lvls/lvl1b.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl1b.txt 2008-03-10 23:20:28.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl1b.txt 2008-08-13 16:49:39.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap1b.txt resources/textures/skys/bg1.png
+-0.01
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap1b.txt /usr/share/games/atomorun2008/resources/textures/skys/bg1.png
++0.01
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl1.txt atomorun2008-1.0/resources/lvls/lvl1.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl1.txt 2008-03-13 13:17:52.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl1.txt 2008-08-13 16:49:39.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap1.txt resources/textures/skys/bg1.png
+-0.006
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap1.txt /usr/share/games/atomorun2008/resources/textures/skys/bg1.png
++0.006
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl2b.txt atomorun2008-1.0/resources/lvls/lvl2b.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl2b.txt 2008-03-07 14:03:58.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl2b.txt 2008-08-13 16:49:39.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap2b.txt resources/textures/skys/bg2.png
+-0.01
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap2b.txt /usr/share/games/atomorun2008/resources/textures/skys/bg2.png
++0.01
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl2.txt atomorun2008-1.0/resources/lvls/lvl2.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl2.txt 2008-03-13 13:17:56.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl2.txt 2008-08-13 16:49:39.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap2.txt resources/textures/skys/bg2.png
+-0.006
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap2.txt /usr/share/games/atomorun2008/resources/textures/skys/bg2.png
++0.006
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl3b.txt atomorun2008-1.0/resources/lvls/lvl3b.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl3b.txt 2008-03-10 23:06:06.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl3b.txt 2008-08-13 16:49:38.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap3b.txt resources/textures/skys/bg3.png
+-0.0065
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap3b.txt /usr/share/games/atomorun2008/resources/textures/skys/bg3.png
++0.0065
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvl3.txt atomorun2008-1.0/resources/lvls/lvl3.txt
+--- atomorun2008-1.0-O/resources/lvls/lvl3.txt 2008-03-13 13:18:00.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvl3.txt 2008-08-13 16:49:38.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmap3.txt resources/textures/skys/bg3.png
+-0.004
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmap3.txt /usr/share/games/atomorun2008/resources/textures/skys/bg3.png
++0.004
+diff -Naur atomorun2008-1.0-O/resources/lvls/lvlSpecial.txt atomorun2008-1.0/resources/lvls/lvlSpecial.txt
+--- atomorun2008-1.0-O/resources/lvls/lvlSpecial.txt 2008-03-11 10:30:46.000000000 +0100
++++ atomorun2008-1.0/resources/lvls/lvlSpecial.txt 2008-08-13 16:49:38.000000000 +0200
+@@ -1,3 +1,3 @@
+ Die Beginner Schlucht
+-resources/heightmaps/heightmapSpecial.txt resources/textures/skys/bg4.png
+-0.004
+\ Kein Zeilenumbruch am Dateiende.
++/usr/share/games/atomorun2008/resources/heightmaps/heightmapSpecial.txt /usr/share/games/atomorun2008/resources/textures/skys/bg4.png
++0.004
+diff -Naur atomorun2008-1.0-O/resources/meshes/player.zms atomorun2008-1.0/resources/meshes/player.zms
+--- atomorun2008-1.0-O/resources/meshes/player.zms 2008-03-11 01:06:00.000000000 +0100
++++ atomorun2008-1.0/resources/meshes/player.zms 2008-08-13 16:51:02.000000000 +0200
+@@ -1,4 +1,4 @@
+-1 236 368 1 resources/textures/player.png
++1 236 368 1 /usr/share/games/atomorun2008/resources/textures/player.png
+ 1.0000000 1.0000000 1.0000000 50.000000 0.5000000
+ -0.087130 0.000000 -0.996185 -0.426591 -0.001810 1.378833
+ 0.521409 0.761193 -0.385601 0.839694 1.548141 2.932071
+@@ -603,4 +603,4 @@
+ 1 0.096514 0.960192 -0.262136 4 227 0.333002 0.546875 215 0.582031 0.546875 226 0.582031 0.362488 234 0.411636 0.376480
+ 1 0.138911 0.957516 0.252718 4 215 0.582031 0.546875 225 0.831061 0.546875 235 0.752426 0.376480 226 0.582031 0.362488
+ 1 -0.221843 0.948011 -0.228167 4 233 0.411636 0.717270 224 0.582031 0.731262 215 0.582031 0.546875 227 0.333002 0.546875
+-1 -0.242874 0.935816 0.255461 4 224 0.582031 0.731262 232 0.752426 0.717270 225 0.831061 0.546875 215 0.582031 0.546875
+\ Kein Zeilenumbruch am Dateiende.
++1 -0.242874 0.935816 0.255461 4 224 0.582031 0.731262 232 0.752426 0.717270 225 0.831061 0.546875 215 0.582031 0.546875
+diff -Naur atomorun2008-1.0-O/resources/meshes/tree.zms atomorun2008-1.0/resources/meshes/tree.zms
+--- atomorun2008-1.0-O/resources/meshes/tree.zms 2008-03-10 23:58:50.000000000 +0100
++++ atomorun2008-1.0/resources/meshes/tree.zms 2008-08-13 16:51:09.000000000 +0200
+@@ -1,4 +1,4 @@
+-0 60 50 1 resources/textures/tree3.png
++0 60 50 1 /usr/share/games/atomorun2008/resources/textures/tree3.png
+ 0.573046 0.818415 0.042116 0.375114 0.537144 -0.996494
+ 0.955443 -0.292093 0.042116 0.625274 -0.189371 -0.996494
+ 0.017426 -0.998932 0.042116 0.011620 -0.651792 -0.996494
+@@ -108,4 +108,4 @@
+ 1 0.169799 0.364136 0.915737 3 50 0.214922 0.351324 58 0.400933 0.144056 59 0.590816 0.502449
+ 1 0.364121 0.169792 0.915744 3 50 0.214922 0.351324 59 0.590816 0.502449 51 0.205659 0.629667
+ 1 0.387311 -0.103780 0.916090 3 51 0.205659 0.629667 59 0.590816 0.502449 52 0.377479 0.848843
+-1 0.229308 -0.327486 0.916608 3 52 0.377479 0.848843 59 0.590816 0.502449 53 0.649984 0.906299
+\ Kein Zeilenumbruch am Dateiende.
++1 0.229308 -0.327486 0.916608 3 52 0.377479 0.848843 59 0.590816 0.502449 53 0.649984 0.906299
+diff -Naur atomorun2008-1.0-O/resources/meshes/zweisteinexporter.py atomorun2008-1.0/resources/meshes/zweisteinexporter.py
+--- atomorun2008-1.0-O/resources/meshes/zweisteinexporter.py 2008-02-05 18:52:54.000000000 +0100
++++ atomorun2008-1.0/resources/meshes/zweisteinexporter.py 2008-08-13 16:51:39.000000000 +0200
+@@ -52,7 +52,7 @@
+ uvfile = str(myMesh.faces[o].image).split(None,1)[-1][1:-2]
+ if (uvfile != "o"):
+ if (uvfile != ""):
+- uvfilefinal = "resources/textures/" + uvfile;
++ uvfilefinal = "/usr/share/games/atomorun2008/resources/textures/" + uvfile;
+
+ file.write("%i %i %i %i %s" % (hasMaterials, anzahlverts, anzahlfaces, hasUV, uvfilefinal))
+
+diff -Naur atomorun2008-1.0-O/src/application.d atomorun2008-1.0/src/application.d
+--- atomorun2008-1.0-O/src/application.d 2008-03-13 16:33:20.000000000 +0100
++++ atomorun2008-1.0/src/application.d 2008-08-14 13:31:16.000000000 +0200
+@@ -24,6 +24,8 @@
+
+ import std.stdio;
+ import std.stream;
++import std.c.stdlib;
++import std.string;
+
+ class Application : Task, ActionListener {
+ public:
+@@ -137,31 +139,41 @@
+ default: break;
+ };
+ };
++
++ static const char[] PREF_FILE = ".atomorun2008/savegame";
++
++public char[] pref_file() {
++ char * home = getenv("HOME");
++ if (home is null)
++ throw new Error("HOME environment variable is not defined");
++ return std.string.toString(home) ~ "/" ~ PREF_FILE;
++ }
++
+
+ private:
+ void addPrize(int p) {
+ File savegame = new File();
+- savegame.open("resources/savegame", FileMode.In);
++ savegame.open(pref_file(), FileMode.In);
+ int[] savegameData;
+ while (!savegame.eof) {
+ savegameData ~= 0;
+ savegame.readf(&savegameData[length-1]);
+ };
+ savegame.close();
+- savegame.open("resources/savegame", FileMode.Out);
+- if (p>savegameData[0] && attribute == "resources/lvls/lvl1.txt") savegame.writef(p, " ");
++ savegame.open(pref_file(), FileMode.Out);
++ if (p>savegameData[0] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl1.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[0], " ");
+- if (p>savegameData[1] && attribute == "resources/lvls/lvl2.txt") savegame.writef(p, " ");
++ if (p>savegameData[1] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl2.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[1], " ");
+- if (p>savegameData[2] && attribute == "resources/lvls/lvl3.txt") savegame.writef(p, " ");
++ if (p>savegameData[2] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl3.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[2], " ");
+- if (p>savegameData[3] && attribute == "resources/lvls/lvlSpecial.txt") savegame.writef(p, " ");
++ if (p>savegameData[3] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvlSpecial.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[3], " ");
+- if (p>savegameData[4] && attribute == "resources/lvls/lvl1b.txt") savegame.writef(p, " ");
++ if (p>savegameData[4] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl1b.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[4], " ");
+- if (p>savegameData[5] && attribute == "resources/lvls/lvl2b.txt") savegame.writef(p, " ");
++ if (p>savegameData[5] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl2b.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[5], " ");
+- if (p>savegameData[6] && attribute == "resources/lvls/lvl3b.txt") savegame.writef(p, " ");
++ if (p>savegameData[6] && attribute == "/usr/share/games/atomorun2008/resources/lvls/lvl3b.txt") savegame.writef(p, " ");
+ else savegame.writef(savegameData[6], " ");
+ savegame.close();
+ };
+diff -Naur atomorun2008-1.0-O/src/dengine.d atomorun2008-1.0/src/dengine.d
+--- atomorun2008-1.0-O/src/dengine.d 2008-03-11 11:44:54.000000000 +0100
++++ atomorun2008-1.0/src/dengine.d 2008-08-14 11:25:16.000000000 +0200
+@@ -12,7 +12,7 @@
+
+ class DEngine : Task {
+ void init() {
+- Config.load("resources/config.cfg");
++ Config.load("/etc/games/atomorun2008/config.cfg");
+
+ myTasks ~= Window.getInstance();
+ myTasks ~= Input.getInstance();
+@@ -37,4 +37,4 @@
+
+ private:
+ Task[] myTasks;
+-};
++};
+diff -Naur atomorun2008-1.0-O/src/fontwriter.d atomorun2008-1.0/src/fontwriter.d
+--- atomorun2008-1.0-O/src/fontwriter.d 2008-02-05 19:42:32.000000000 +0100
++++ atomorun2008-1.0/src/fontwriter.d 2008-08-13 16:26:12.000000000 +0200
+@@ -20,10 +20,10 @@
+ class FontWriter : Unit {
+ mixin Singleton;
+ override void init() {
+- myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "resources/fonts/nfont_12auf256.png");
+- myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "resources/fonts/nfont_14auf256.png");
+- myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "resources/fonts/nfont_18auf512.png");
+- myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "resources/fonts/nfont_24auf512.png");
++ myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "/usr/share/games/atomorun2008/resources/fonts/nfont_12auf256.png");
++ myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "/usr/share/games/atomorun2008/resources/fonts/nfont_14auf256.png");
++ myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "/usr/share/games/atomorun2008/resources/fonts/nfont_18auf512.png");
++ myFonts ~= cast(TextureFont)ResourceManager.getInstance().need(TextureFont.classinfo, "/usr/share/games/atomorun2008/resources/fonts/nfont_24auf512.png");
+ use(myFonts[length-1]);
+ };
+ override void uninit() {
+diff -Naur atomorun2008-1.0-O/src/game.d atomorun2008-1.0/src/game.d
+--- atomorun2008-1.0-O/src/game.d 2008-03-13 14:04:08.000000000 +0100
++++ atomorun2008-1.0/src/game.d 2008-08-13 16:26:12.000000000 +0200
+@@ -58,9 +58,9 @@
+ myBackgroundTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, myBackgroundFile);
+ mySceneManager.addItem(myBackgroundTexture);
+
+- myExplosionTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "resources/textures/explosion.png");
++ myExplosionTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "/usr/share/games/atomorun2008/resources/textures/explosion.png");
+
+- myExplosionSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "resources/sounds/explosion.wav");
++ myExplosionSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "/usr/share/games/atomorun2008/resources/sounds/explosion.wav");
+ Mix_PlayChannel(-1, myExplosionSound.sound, 0);
+
+ myPlayer = new Player();
+diff -Naur atomorun2008-1.0-O/src/heightmap.d atomorun2008-1.0/src/heightmap.d
+--- atomorun2008-1.0-O/src/heightmap.d 2008-03-13 15:42:20.000000000 +0100
++++ atomorun2008-1.0/src/heightmap.d 2008-08-13 16:26:12.000000000 +0200
+@@ -83,7 +83,7 @@
+
+ if (ARBMultitexture.isEnabled() && ARBShaderObjects.isEnabled()) {
+ myShader = new HLSLShader;
+- myShader.load("resources/shaders/vertexshader_terrain.fx", "resources/shaders/fragmentshader_terrain.fx");
++ myShader.load("/usr/share/games/atomorun2008/resources/shaders/vertexshader_terrain.fx", "/usr/share/games/atomorun2008/resources/shaders/fragmentshader_terrain.fx");
+ };
+
+ myTexture0 = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, alphamapFilename);
+diff -Naur atomorun2008-1.0-O/src/image.d atomorun2008-1.0/src/image.d
+--- atomorun2008-1.0-O/src/image.d 2008-03-13 15:46:26.000000000 +0100
++++ atomorun2008-1.0/src/image.d 2008-08-13 16:26:12.000000000 +0200
+@@ -57,7 +57,7 @@
+ };
+ };
+ override void loadDefault() {
+- loadSpecific("resources/textures/standardpic.png");
++ loadSpecific("/usr/share/games/atomorun2008/resources/textures/standardpic.png");
+ };
+
+ int width() { return myWidth; };
+diff -Naur atomorun2008-1.0-O/src/loader.d atomorun2008-1.0/src/loader.d
+--- atomorun2008-1.0-O/src/loader.d 2008-03-11 16:37:08.000000000 +0100
++++ atomorun2008-1.0/src/loader.d 2008-08-13 16:26:12.000000000 +0200
+@@ -29,7 +29,7 @@
+ Loader.getInstance.uninit();
+ };
+ void init() {
+- myTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "resources/textures/loading.png");
++ myTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "/usr/share/games/atomorun2008/resources/textures/loading.png");
+ };
+ void refresh() {
+ glBindTexture(GL_TEXTURE_2D, myTexture.texture);
+diff -Naur atomorun2008-1.0-O/src/menuecopyright.d atomorun2008-1.0/src/menuecopyright.d
+--- atomorun2008-1.0-O/src/menuecopyright.d 2008-03-13 16:24:28.000000000 +0100
++++ atomorun2008-1.0/src/menuecopyright.d 2008-08-13 16:26:12.000000000 +0200
+@@ -20,15 +20,15 @@
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+
+diff -Naur atomorun2008-1.0-O/src/menue.d atomorun2008-1.0/src/menue.d
+--- atomorun2008-1.0-O/src/menue.d 2008-03-11 17:05:24.000000000 +0100
++++ atomorun2008-1.0/src/menue.d 2008-08-13 16:26:12.000000000 +0200
+@@ -33,10 +33,10 @@
+
+ class Menue : ActionListener {
+ void init(APP_STATE theState) {
+- myHeightmap = cast(Heightmap)ResourceManager.getInstance.need(Heightmap.classinfo, "resources/heightmaps/start.txt");
+- myTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "resources/textures/menue_shade.png");
+- myClickSound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/menue_click.wav");
+- myOverSound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/menue_over.wav");
++ myHeightmap = cast(Heightmap)ResourceManager.getInstance.need(Heightmap.classinfo, "/usr/share/games/atomorun2008/resources/heightmaps/start.txt");
++ myTexture = cast(Texture2D)ResourceManager.getInstance.need(Texture2D.classinfo, "/usr/share/games/atomorun2008/resources/textures/menue_shade.png");
++ myClickSound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav");
++ myOverSound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+
+
+ pos.x = 0;
+diff -Naur atomorun2008-1.0-O/src/menueitem.d atomorun2008-1.0/src/menueitem.d
+--- atomorun2008-1.0-O/src/menueitem.d 2008-01-22 16:46:30.000000000 +0100
++++ atomorun2008-1.0/src/menueitem.d 2008-08-13 16:26:12.000000000 +0200
+@@ -19,7 +19,7 @@
+ myPosition = thePosition;
+ myDimension = theDimension;
+ myBB2D = new BoundingBox2D(Point2D(myPosition.x,myPosition.x+myDimension.x), Point2D(myPosition.y+myDimension.y,myPosition.y));
+- myTexture = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "resources/textures/gui.png");
++ myTexture = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "/usr/share/games/atomorun2008/resources/textures/gui.png");
+ };
+ void refresh() {};
+ void uninit() {
+diff -Naur atomorun2008-1.0-O/src/menuelost.d atomorun2008-1.0/src/menuelost.d
+--- atomorun2008-1.0-O/src/menuelost.d 2008-03-13 16:24:32.000000000 +0100
++++ atomorun2008-1.0/src/menuelost.d 2008-08-13 16:26:12.000000000 +0200
+@@ -20,21 +20,21 @@
+ class MenueLost : MenueImpl {
+ public:
+ override void init(Menue theMenue) {
+- mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/game_end.wav");
++ mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/game_end.wav");
+ Mix_PlayChannel(-1, mySound.sound, 0);
+
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+ override void refresh() {
+diff -Naur atomorun2008-1.0-O/src/menuelvl.d atomorun2008-1.0/src/menuelvl.d
+--- atomorun2008-1.0-O/src/menuelvl.d 2008-03-13 16:35:20.000000000 +0100
++++ atomorun2008-1.0/src/menuelvl.d 2008-08-13 16:57:30.000000000 +0200
+@@ -16,48 +16,60 @@
+ import texture2d;
+
+ import std.stream;
++import std.c.stdlib;
++import std.string;
+
+ import std.stdio;
+
+ class MenueLVL : MenueImpl {
+-public:
++public:
++
++ static const char[] PREF_FILE = ".atomorun2008/savegame";
++
++public char[] pref_file() {
++ char * home = getenv("HOME");
++ if (home is null)
++ throw new Error("HOME environment variable is not defined");
++ return std.string.toString(home) ~ "/" ~ PREF_FILE;
++ }
++
+ override void init(Menue theMenue) {
+ myButtons.length = 1;
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37), ".main menu", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37), ".main menu", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "Main");
+
+ myImageButtons.length = 7;
+ myImageButtons[0] = new ImageButton();
+- myImageButtons[0].init(Point2D(50, Config["window_height"]-250), Point2D(128,128),"Level 1", "resources/textures/lvls/lvl1_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[0].addActionListener(theMenue, "Game", "resources/lvls/lvl1.txt");
++ myImageButtons[0].init(Point2D(50, Config["window_height"]-250), Point2D(128,128),"Level 1", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl1_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[0].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl1.txt");
+
+ myImageButtons[1] = new ImageButton();
+- myImageButtons[1].init(Point2D(250, Config["window_height"]-250), Point2D(128,128),"Level 2", "resources/textures/lvls/lvl2_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[1].addActionListener(theMenue, "Game", "resources/lvls/lvl2.txt");
++ myImageButtons[1].init(Point2D(250, Config["window_height"]-250), Point2D(128,128),"Level 2", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl2_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[1].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl2.txt");
+
+ myImageButtons[2] = new ImageButton();
+- myImageButtons[2].init(Point2D(450, Config["window_height"]-250), Point2D(128,128),"Level 3", "resources/textures/lvls/lvl3_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[2].addActionListener(theMenue, "Game", "resources/lvls/lvl3.txt");
++ myImageButtons[2].init(Point2D(450, Config["window_height"]-250), Point2D(128,128),"Level 3", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl3_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[2].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl3.txt");
+
+ myImageButtons[3] = new ImageButton();
+- myImageButtons[3].init(Point2D(250, Config["window_height"]-650), Point2D(128,128),"Special Level", "resources/textures/lvls/lvl4_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[3].addActionListener(theMenue, "Game", "resources/lvls/lvlSpecial.txt");
++ myImageButtons[3].init(Point2D(250, Config["window_height"]-650), Point2D(128,128),"Special Level", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl4_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[3].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvlSpecial.txt");
+
+ myImageButtons[4] = new ImageButton();
+- myImageButtons[4].init(Point2D(50, Config["window_height"]-450), Point2D(128,128),"Level 4", "resources/textures/lvls/lvl5_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[4].addActionListener(theMenue, "Game", "resources/lvls/lvl1b.txt");
++ myImageButtons[4].init(Point2D(50, Config["window_height"]-450), Point2D(128,128),"Level 4", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl5_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[4].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl1b.txt");
+
+ myImageButtons[5] = new ImageButton();
+- myImageButtons[5].init(Point2D(250, Config["window_height"]-450), Point2D(128,128),"Level 5", "resources/textures/lvls/lvl6_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[5].addActionListener(theMenue, "Game", "resources/lvls/lvl2b.txt");
++ myImageButtons[5].init(Point2D(250, Config["window_height"]-450), Point2D(128,128),"Level 5", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl6_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[5].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl2b.txt");
+
+ myImageButtons[6] = new ImageButton();
+- myImageButtons[6].init(Point2D(450, Config["window_height"]-450), Point2D(128,128),"Level 6", "resources/textures/lvls/lvl7_thumb.png", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
+- myImageButtons[6].addActionListener(theMenue, "Game", "resources/lvls/lvl3b.txt");
++ myImageButtons[6].init(Point2D(450, Config["window_height"]-450), Point2D(128,128),"Level 6", "/usr/share/games/atomorun2008/resources/textures/lvls/lvl7_thumb.png", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
++ myImageButtons[6].addActionListener(theMenue, "Game", "/usr/share/games/atomorun2008/resources/lvls/lvl3b.txt");
+
+ File hm = new File();
+- hm.open("resources/savegame", FileMode.In);
++ hm.open(pref_file(), FileMode.In);
+ int data;
+ while (!hm.eof) {
+ hm.readf(&data);
+@@ -65,9 +77,9 @@
+ };
+ hm.close();
+
+- myTexGold = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "resources/textures/prize/gold.png");
+- myTexSilver = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "resources/textures/prize/silver.png");
+- myTexBronze = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "resources/textures/prize/bronze.png");
++ myTexGold = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "/usr/share/games/atomorun2008/resources/textures/prize/gold.png");
++ myTexSilver = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "/usr/share/games/atomorun2008/resources/textures/prize/silver.png");
++ myTexBronze = cast(Texture2D)ResourceManager.getInstance().need((Texture2D.classinfo), "/usr/share/games/atomorun2008/resources/textures/prize/bronze.png");
+ };
+ override void refresh() {
+ foreach(button; myButtons) button.refresh();
+diff -Naur atomorun2008-1.0-O/src/menuemain.d atomorun2008-1.0/src/menuemain.d
+--- atomorun2008-1.0-O/src/menuemain.d 2008-03-13 16:27:08.000000000 +0100
++++ atomorun2008-1.0/src/menuemain.d 2008-08-13 16:26:12.000000000 +0200
+@@ -19,15 +19,15 @@
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+ override void refresh() {
+diff -Naur atomorun2008-1.0-O/src/menuewonbronze.d atomorun2008-1.0/src/menuewonbronze.d
+--- atomorun2008-1.0-O/src/menuewonbronze.d 2008-03-13 16:24:34.000000000 +0100
++++ atomorun2008-1.0/src/menuewonbronze.d 2008-08-13 16:26:12.000000000 +0200
+@@ -19,21 +19,21 @@
+ class MenueWonBronze : MenueImpl {
+ public:
+ override void init(Menue theMenue) {
+- mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/game_end.wav");
++ mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/game_end.wav");
+ Mix_PlayChannel(-1, mySound.sound, 0);
+
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+ override void refresh() {
+diff -Naur atomorun2008-1.0-O/src/menuewongold.d atomorun2008-1.0/src/menuewongold.d
+--- atomorun2008-1.0-O/src/menuewongold.d 2008-03-13 16:24:36.000000000 +0100
++++ atomorun2008-1.0/src/menuewongold.d 2008-08-13 16:26:12.000000000 +0200
+@@ -19,21 +19,21 @@
+ class MenueWonGold : MenueImpl {
+ public:
+ override void init(Menue theMenue) {
+- mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/game_end.wav");
++ mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/game_end.wav");
+ Mix_PlayChannel(-1, mySound.sound, 0);
+
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+ override void refresh() {
+diff -Naur atomorun2008-1.0-O/src/menuewonsilver.d atomorun2008-1.0/src/menuewonsilver.d
+--- atomorun2008-1.0-O/src/menuewonsilver.d 2008-03-13 16:23:28.000000000 +0100
++++ atomorun2008-1.0/src/menuewonsilver.d 2008-08-13 16:26:12.000000000 +0200
+@@ -19,21 +19,21 @@
+ class MenueWonSilver : MenueImpl {
+ public:
+ override void init(Menue theMenue) {
+- mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "resources/sounds/game_end.wav");
++ mySound = cast(Sound)ResourceManager.getInstance().need((Sound.classinfo), "/usr/share/games/atomorun2008/resources/sounds/game_end.wav");
+ Mix_PlayChannel(-1, mySound.sound, 0);
+
+ myButtons.length = 3;
+
+ myButtons[0] = new Button;
+- myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[0].init(Point2D(Config["window_width"]-250, 220), Point2D(256,37),".start game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[0].addActionListener(theMenue, "Menue", "LVL");
+
+ myButtons[1] = new Button;
+- myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[1].init(Point2D(Config["window_width"]-250, 170), Point2D(256,37),".copyrights", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[1].addActionListener(theMenue, "Menue", "Copyright");
+
+ myButtons[2] = new Button;
+- myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "resources/sounds/menue_click.wav", "resources/sounds/menue_over.wav");
++ myButtons[2].init(Point2D(Config["window_width"]-250, 120), Point2D(256,37),".quit game", "/usr/share/games/atomorun2008/resources/sounds/menue_click.wav", "/usr/share/games/atomorun2008/resources/sounds/menue_over.wav");
+ myButtons[2].addActionListener(theMenue, "Menue", "Quit");
+ };
+ override void refresh() {
+diff -Naur atomorun2008-1.0-O/src/meshzms.d atomorun2008-1.0/src/meshzms.d
+--- atomorun2008-1.0-O/src/meshzms.d 2008-03-13 15:01:34.000000000 +0100
++++ atomorun2008-1.0/src/meshzms.d 2008-08-13 16:26:12.000000000 +0200
+@@ -85,7 +85,7 @@
+ };
+
+ void loadDefault() {
+- loadSpecific("resources/meshes/defaultmesh.zms");
++ loadSpecific("/usr/share/games/atomorun2008/resources/meshes/defaultmesh.zms");
+ };
+
+ override void unloadSpecific() {
+diff -Naur atomorun2008-1.0-O/src/player.d atomorun2008-1.0/src/player.d
+--- atomorun2008-1.0-O/src/player.d 2008-03-13 14:59:00.000000000 +0100
++++ atomorun2008-1.0/src/player.d 2008-08-13 16:26:12.000000000 +0200
+@@ -22,10 +22,10 @@
+ public:
+
+ void init() {
+- myMesh = cast(MeshZMS)ResourceManager.getInstance.need(MeshZMS.classinfo, "resources/meshes/player.zms");
+- myJumpSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "resources/sounds/player_jump.wav");
+- myLandSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "resources/sounds/player_land2.wav");
+- myWalkSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "resources/sounds/player_walk.wav");
++ myMesh = cast(MeshZMS)ResourceManager.getInstance.need(MeshZMS.classinfo, "/usr/share/games/atomorun2008/resources/meshes/player.zms");
++ myJumpSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "/usr/share/games/atomorun2008/resources/sounds/player_jump.wav");
++ myLandSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "/usr/share/games/atomorun2008/resources/sounds/player_land2.wav");
++ myWalkSound = cast(Sound)ResourceManager.getInstance.need(Sound.classinfo, "/usr/share/games/atomorun2008/resources/sounds/player_walk.wav");
+
+ };
+ void uninit() {
+diff -Naur atomorun2008-1.0-O/src/sound.d atomorun2008-1.0/src/sound.d
+--- atomorun2008-1.0-O/src/sound.d 2008-03-11 12:34:46.000000000 +0100
++++ atomorun2008-1.0/src/sound.d 2008-08-13 16:26:12.000000000 +0200
+@@ -25,7 +25,7 @@
+ mySound = null;
+ };
+ override void loadDefault() {
+- loadSpecific("resources/sounds/defaultsound.wav");
++ loadSpecific("/usr/share/games/atomorun2008/resources/sounds/defaultsound.wav");
+ };
+
+ Mix_Chunk* sound() { return mySound; };
diff --git a/devel/games-arcade/atomorun2008/files/atomorun2008.png b/devel/games-arcade/atomorun2008/files/atomorun2008.png
new file mode 100755
index 0000000..ce18ef9
--- /dev/null
+++ b/devel/games-arcade/atomorun2008/files/atomorun2008.png
Binary files differ