diff options
Diffstat (limited to 'games-action/torustrooper/files')
-rw-r--r-- | games-action/torustrooper/files/digest-torustrooper-0.22 | 3 | ||||
-rw-r--r-- | games-action/torustrooper/files/torustrooper-0.22.diff | 881 | ||||
-rw-r--r-- | games-action/torustrooper/files/torustrooper.png | bin | 0 -> 3106 bytes |
3 files changed, 884 insertions, 0 deletions
diff --git a/games-action/torustrooper/files/digest-torustrooper-0.22 b/games-action/torustrooper/files/digest-torustrooper-0.22 new file mode 100644 index 0000000..74c2eb6 --- /dev/null +++ b/games-action/torustrooper/files/digest-torustrooper-0.22 @@ -0,0 +1,3 @@ +MD5 1abb57950b96f1a7f7ac8364e9a42322 tt0_22.zip 6315755 +RMD160 d72fdb66cd103ed0a935c079531a7d271e982506 tt0_22.zip 6315755 +SHA256 6fcbb3de9ac5cfce38253f71257143631a978c625b041c8527d18ddb5c8813fa tt0_22.zip 6315755 diff --git a/games-action/torustrooper/files/torustrooper-0.22.diff b/games-action/torustrooper/files/torustrooper-0.22.diff new file mode 100644 index 0000000..2528d95 --- /dev/null +++ b/games-action/torustrooper/files/torustrooper-0.22.diff @@ -0,0 +1,881 @@ +diff -Naur tt/import/opengl.d tt-gentoo/import/opengl.d +--- tt/import/opengl.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/opengl.d 2007-09-20 08:35:29.000000000 +0200 +@@ -1,10 +1,4 @@ +-version (Win32) {
+- private import std.c.windows.windows;
+- extern(Windows):
+-}
+-version (linux) {
+ extern(C):
+-}
+
+ alias uint GLenum;
+ alias ubyte GLboolean;
+@@ -1116,7 +1110,7 @@ + /*************************************************************/
+
+ void /*APIENTRY*/glAccum (GLenum op, GLfloat value);
+-void /*APIENTRY*/glAlphaFunc (GLenum func, GLclampf ref);
++void /*APIENTRY*/glAlphaFunc (GLenum func, GLclampf);
+ GLboolean /*APIENTRY*/glAreTexturesResident (GLsizei n, GLuint *textures, GLboolean *residences);
+ void /*APIENTRY*/glArrayElement (GLint i);
+ void /*APIENTRY*/glBegin (GLenum mode);
+@@ -1369,7 +1363,7 @@ + void /*APIENTRY*/glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
+ void /*APIENTRY*/glSelectBuffer (GLsizei size, GLuint *buffer);
+ void /*APIENTRY*/glShadeModel (GLenum mode);
+-void /*APIENTRY*/glStencilFunc (GLenum func, GLint ref, GLuint mask);
++void /*APIENTRY*/glStencilFunc (GLenum func, GLint, GLuint mask);
+ void /*APIENTRY*/glStencilMask (GLuint mask);
+ void /*APIENTRY*/glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
+ void /*APIENTRY*/glTexCoord1d (GLdouble s);
+diff -Naur tt/import/openglu.d tt-gentoo/import/openglu.d +--- tt/import/openglu.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/openglu.d 2007-09-20 08:35:35.000000000 +0200 +@@ -1,11 +1,6 @@ + import opengl;
+
+-version (Win32) {
+- extern(Windows):
+-}
+-version (linux) {
+ extern(C):
+-}
+
+ GLubyte* gluErrorString (
+ GLenum errCode);
+diff -Naur tt/import/SDL.d tt-gentoo/import/SDL.d +--- tt/import/SDL.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/SDL.d 2007-09-20 08:35:03.000000000 +0200 +@@ -20,18 +20,28 @@ + slouken@devolution.com
+ */
+
+-import SDL_types;
+-import SDL_getenv;
+-import SDL_error;
+-import SDL_rwops;
+-import SDL_timer;
+-import SDL_audio;
+-import SDL_cdrom;
+-import SDL_joystick;
+-import SDL_events;
+-import SDL_video;
+-import SDL_byteorder;
+-import SDL_Version;
++public import SDL_keysym_;
++public import SDL_version_;
++public import SDL_active;
++public import SDL_audio;
++public import SDL_byteorder;
++public import SDL_cdrom;
++public import SDL_copying;
++public import SDL_endian;
++public import SDL_error;
++public import SDL_events;
++public import SDL_getenv;
++public import SDL_joystick;
++public import SDL_keyboard;
++public import SDL_mouse;
++public import SDL_mutex;
++public import SDL_quit;
++public import SDL_rwops;
++public import SDL_syswm;
++public import SDL_thread;
++public import SDL_timer;
++public import SDL_types;
++public import SDL_video;
+
+ extern(C):
+
+@@ -73,20 +83,3 @@ + */
+ void SDL_Quit();
+
+-/+
+-void SDL_SetModuleHandle(void *hInst);
+-extern(Windows) void* GetModuleHandle(char*);
+-
+-static this()
+-{
+- /* Load SDL dynamic link library */
+- if (SDL_Init(SDL_INIT_NOPARACHUTE) < 0)
+- throw new Error("Error loading SDL");
+- SDL_SetModuleHandle(GetModuleHandle(null));
+-}
+-
+-static ~this()
+-{
+- SDL_Quit();
+-}
+-+/
+diff -Naur tt/import/SDL_events.d tt-gentoo/import/SDL_events.d +--- tt/import/SDL_events.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/import/SDL_events.d 2007-09-20 08:35:03.000000000 +0200 +@@ -304,8 +304,8 @@ + If 'state' is set to SDL_QUERY, SDL_EventState() will return the
+ current processing state of the specified event.
+ */
+-const uint SDL_QUERY = cast(uint) -1;
+-const uint SDL_IGNORE = 0;
+-const uint SDL_DISABLE = 0;
+-const uint SDL_ENABLE = 1;
++const int SDL_QUERY = -1;
++const int SDL_IGNORE = 0;
++const int SDL_DISABLE = 0;
++const int SDL_ENABLE = 1;
+ Uint8 SDL_EventState(Uint8 type, int state);
+diff -Naur tt/import/SDL_keyboard.d tt-gentoo/import/SDL_keyboard.d +--- tt/import/SDL_keyboard.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/SDL_keyboard.d 2007-09-20 08:35:03.000000000 +0200 +@@ -26,7 +26,7 @@ + // !!! A hack! struct SDL_keysym is defined in this module,
+ // !!! so we need to resolve the nameclash...
+ // !!! Definitely won't work on *NIX but for now will do.
+-import SDL_Keysym;
++import SDL_keysym_;
+
+ extern(C):
+
+diff -Naur tt/import/SDL_keysym_.d tt-gentoo/import/SDL_keysym_.d +--- tt/import/SDL_keysym_.d 1970-01-01 01:00:00.000000000 +0100 ++++ tt-gentoo/import/SDL_keysym_.d 2007-09-20 08:35:03.000000000 +0200 +@@ -0,0 +1,308 @@ ++/*
++ SDL - Simple DirectMedia Layer
++ Copyright (C) 1997, 1998, 1999, 2000, 2001 Sam Lantinga
++
++ This library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Library General Public
++ License as published by the Free Software Foundation; either
++ version 2 of the License, or (at your option) any later version.
++
++ This library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Library General Public License for more details.
++
++ You should have received a copy of the GNU Library General Public
++ License along with this library; if not, write to the Free
++ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++
++ Sam Lantinga
++ slouken@devolution.com
++*/
++
++/* What we really want is a mapping of every raw key on the keyboard.
++ To support international keyboards, we use the range 0xA1 - 0xFF
++ as international virtual keycodes. We'll follow in the footsteps of X11...
++ The names of the keys
++ */
++
++alias int SDLKey;
++enum {
++ /* The keyboard syms have been cleverly chosen to map to ASCII */
++ SDLK_UNKNOWN = 0,
++ SDLK_FIRST = 0,
++ SDLK_BACKSPACE = 8,
++ SDLK_TAB = 9,
++ SDLK_CLEAR = 12,
++ SDLK_RETURN = 13,
++ SDLK_PAUSE = 19,
++ SDLK_ESCAPE = 27,
++ SDLK_SPACE = 32,
++ SDLK_EXCLAIM = 33,
++ SDLK_QUOTEDBL = 34,
++ SDLK_HASH = 35,
++ SDLK_DOLLAR = 36,
++ SDLK_AMPERSAND = 38,
++ SDLK_QUOTE = 39,
++ SDLK_LEFTPAREN = 40,
++ SDLK_RIGHTPAREN = 41,
++ SDLK_ASTERISK = 42,
++ SDLK_PLUS = 43,
++ SDLK_COMMA = 44,
++ SDLK_MINUS = 45,
++ SDLK_PERIOD = 46,
++ SDLK_SLASH = 47,
++ SDLK_0 = 48,
++ SDLK_1 = 49,
++ SDLK_2 = 50,
++ SDLK_3 = 51,
++ SDLK_4 = 52,
++ SDLK_5 = 53,
++ SDLK_6 = 54,
++ SDLK_7 = 55,
++ SDLK_8 = 56,
++ SDLK_9 = 57,
++ SDLK_COLON = 58,
++ SDLK_SEMICOLON = 59,
++ SDLK_LESS = 60,
++ SDLK_EQUALS = 61,
++ SDLK_GREATER = 62,
++ SDLK_QUESTION = 63,
++ SDLK_AT = 64,
++ /*
++ Skip uppercase letters
++ */
++ SDLK_LEFTBRACKET = 91,
++ SDLK_BACKSLASH = 92,
++ SDLK_RIGHTBRACKET = 93,
++ SDLK_CARET = 94,
++ SDLK_UNDERSCORE = 95,
++ SDLK_BACKQUOTE = 96,
++ SDLK_a = 97,
++ SDLK_b = 98,
++ SDLK_c = 99,
++ SDLK_d = 100,
++ SDLK_e = 101,
++ SDLK_f = 102,
++ SDLK_g = 103,
++ SDLK_h = 104,
++ SDLK_i = 105,
++ SDLK_j = 106,
++ SDLK_k = 107,
++ SDLK_l = 108,
++ SDLK_m = 109,
++ SDLK_n = 110,
++ SDLK_o = 111,
++ SDLK_p = 112,
++ SDLK_q = 113,
++ SDLK_r = 114,
++ SDLK_s = 115,
++ SDLK_t = 116,
++ SDLK_u = 117,
++ SDLK_v = 118,
++ SDLK_w = 119,
++ SDLK_x = 120,
++ SDLK_y = 121,
++ SDLK_z = 122,
++ SDLK_DELETE = 127,
++ /* End of ASCII mapped keysyms */
++
++ /* International keyboard syms */
++ SDLK_WORLD_0 = 160, /* 0xA0 */
++ SDLK_WORLD_1 = 161,
++ SDLK_WORLD_2 = 162,
++ SDLK_WORLD_3 = 163,
++ SDLK_WORLD_4 = 164,
++ SDLK_WORLD_5 = 165,
++ SDLK_WORLD_6 = 166,
++ SDLK_WORLD_7 = 167,
++ SDLK_WORLD_8 = 168,
++ SDLK_WORLD_9 = 169,
++ SDLK_WORLD_10 = 170,
++ SDLK_WORLD_11 = 171,
++ SDLK_WORLD_12 = 172,
++ SDLK_WORLD_13 = 173,
++ SDLK_WORLD_14 = 174,
++ SDLK_WORLD_15 = 175,
++ SDLK_WORLD_16 = 176,
++ SDLK_WORLD_17 = 177,
++ SDLK_WORLD_18 = 178,
++ SDLK_WORLD_19 = 179,
++ SDLK_WORLD_20 = 180,
++ SDLK_WORLD_21 = 181,
++ SDLK_WORLD_22 = 182,
++ SDLK_WORLD_23 = 183,
++ SDLK_WORLD_24 = 184,
++ SDLK_WORLD_25 = 185,
++ SDLK_WORLD_26 = 186,
++ SDLK_WORLD_27 = 187,
++ SDLK_WORLD_28 = 188,
++ SDLK_WORLD_29 = 189,
++ SDLK_WORLD_30 = 190,
++ SDLK_WORLD_31 = 191,
++ SDLK_WORLD_32 = 192,
++ SDLK_WORLD_33 = 193,
++ SDLK_WORLD_34 = 194,
++ SDLK_WORLD_35 = 195,
++ SDLK_WORLD_36 = 196,
++ SDLK_WORLD_37 = 197,
++ SDLK_WORLD_38 = 198,
++ SDLK_WORLD_39 = 199,
++ SDLK_WORLD_40 = 200,
++ SDLK_WORLD_41 = 201,
++ SDLK_WORLD_42 = 202,
++ SDLK_WORLD_43 = 203,
++ SDLK_WORLD_44 = 204,
++ SDLK_WORLD_45 = 205,
++ SDLK_WORLD_46 = 206,
++ SDLK_WORLD_47 = 207,
++ SDLK_WORLD_48 = 208,
++ SDLK_WORLD_49 = 209,
++ SDLK_WORLD_50 = 210,
++ SDLK_WORLD_51 = 211,
++ SDLK_WORLD_52 = 212,
++ SDLK_WORLD_53 = 213,
++ SDLK_WORLD_54 = 214,
++ SDLK_WORLD_55 = 215,
++ SDLK_WORLD_56 = 216,
++ SDLK_WORLD_57 = 217,
++ SDLK_WORLD_58 = 218,
++ SDLK_WORLD_59 = 219,
++ SDLK_WORLD_60 = 220,
++ SDLK_WORLD_61 = 221,
++ SDLK_WORLD_62 = 222,
++ SDLK_WORLD_63 = 223,
++ SDLK_WORLD_64 = 224,
++ SDLK_WORLD_65 = 225,
++ SDLK_WORLD_66 = 226,
++ SDLK_WORLD_67 = 227,
++ SDLK_WORLD_68 = 228,
++ SDLK_WORLD_69 = 229,
++ SDLK_WORLD_70 = 230,
++ SDLK_WORLD_71 = 231,
++ SDLK_WORLD_72 = 232,
++ SDLK_WORLD_73 = 233,
++ SDLK_WORLD_74 = 234,
++ SDLK_WORLD_75 = 235,
++ SDLK_WORLD_76 = 236,
++ SDLK_WORLD_77 = 237,
++ SDLK_WORLD_78 = 238,
++ SDLK_WORLD_79 = 239,
++ SDLK_WORLD_80 = 240,
++ SDLK_WORLD_81 = 241,
++ SDLK_WORLD_82 = 242,
++ SDLK_WORLD_83 = 243,
++ SDLK_WORLD_84 = 244,
++ SDLK_WORLD_85 = 245,
++ SDLK_WORLD_86 = 246,
++ SDLK_WORLD_87 = 247,
++ SDLK_WORLD_88 = 248,
++ SDLK_WORLD_89 = 249,
++ SDLK_WORLD_90 = 250,
++ SDLK_WORLD_91 = 251,
++ SDLK_WORLD_92 = 252,
++ SDLK_WORLD_93 = 253,
++ SDLK_WORLD_94 = 254,
++ SDLK_WORLD_95 = 255, /* 0xFF */
++
++ /* Numeric keypad */
++ SDLK_KP0 = 256,
++ SDLK_KP1 = 257,
++ SDLK_KP2 = 258,
++ SDLK_KP3 = 259,
++ SDLK_KP4 = 260,
++ SDLK_KP5 = 261,
++ SDLK_KP6 = 262,
++ SDLK_KP7 = 263,
++ SDLK_KP8 = 264,
++ SDLK_KP9 = 265,
++ SDLK_KP_PERIOD = 266,
++ SDLK_KP_DIVIDE = 267,
++ SDLK_KP_MULTIPLY = 268,
++ SDLK_KP_MINUS = 269,
++ SDLK_KP_PLUS = 270,
++ SDLK_KP_ENTER = 271,
++ SDLK_KP_EQUALS = 272,
++
++ /* Arrows + Home/End pad */
++ SDLK_UP = 273,
++ SDLK_DOWN = 274,
++ SDLK_RIGHT = 275,
++ SDLK_LEFT = 276,
++ SDLK_INSERT = 277,
++ SDLK_HOME = 278,
++ SDLK_END = 279,
++ SDLK_PAGEUP = 280,
++ SDLK_PAGEDOWN = 281,
++
++ /* Function keys */
++ SDLK_F1 = 282,
++ SDLK_F2 = 283,
++ SDLK_F3 = 284,
++ SDLK_F4 = 285,
++ SDLK_F5 = 286,
++ SDLK_F6 = 287,
++ SDLK_F7 = 288,
++ SDLK_F8 = 289,
++ SDLK_F9 = 290,
++ SDLK_F10 = 291,
++ SDLK_F11 = 292,
++ SDLK_F12 = 293,
++ SDLK_F13 = 294,
++ SDLK_F14 = 295,
++ SDLK_F15 = 296,
++
++ /* Key state modifier keys */
++ SDLK_NUMLOCK = 300,
++ SDLK_CAPSLOCK = 301,
++ SDLK_SCROLLOCK = 302,
++ SDLK_RSHIFT = 303,
++ SDLK_LSHIFT = 304,
++ SDLK_RCTRL = 305,
++ SDLK_LCTRL = 306,
++ SDLK_RALT = 307,
++ SDLK_LALT = 308,
++ SDLK_RMETA = 309,
++ SDLK_LMETA = 310,
++ SDLK_LSUPER = 311, /* Left "Windows" key */
++ SDLK_RSUPER = 312, /* Right "Windows" key */
++ SDLK_MODE = 313, /* "Alt Gr" key */
++ SDLK_COMPOSE = 314, /* Multi-key compose key */
++
++ /* Miscellaneous function keys */
++ SDLK_HELP = 315,
++ SDLK_PRINT = 316,
++ SDLK_SYSREQ = 317,
++ SDLK_BREAK = 318,
++ SDLK_MENU = 319,
++ SDLK_POWER = 320, /* Power Macintosh power key */
++ SDLK_EURO = 321, /* Some european keyboards */
++ SDLK_UNDO = 322, /* Atari keyboard has Undo */
++
++ /* Add any other keys here */
++
++ SDLK_LAST
++}
++
++/* Enumeration of valid key mods (possibly OR'd together) */
++alias int SDLMod;
++enum {
++ KMOD_NONE = 0x0000,
++ KMOD_LSHIFT= 0x0001,
++ KMOD_RSHIFT= 0x0002,
++ KMOD_LCTRL = 0x0040,
++ KMOD_RCTRL = 0x0080,
++ KMOD_LALT = 0x0100,
++ KMOD_RALT = 0x0200,
++ KMOD_LMETA = 0x0400,
++ KMOD_RMETA = 0x0800,
++ KMOD_NUM = 0x1000,
++ KMOD_CAPS = 0x2000,
++ KMOD_MODE = 0x4000,
++ KMOD_RESERVED = 0x8000
++}
++
++const uint KMOD_CTRL = (KMOD_LCTRL|KMOD_RCTRL);
++const uint KMOD_SHIFT = (KMOD_LSHIFT|KMOD_RSHIFT);
++const uint KMOD_ALT = (KMOD_LALT|KMOD_RALT);
++const uint KMOD_META = (KMOD_LMETA|KMOD_RMETA);
+diff -Naur tt/import/SDL_mixer.d tt-gentoo/import/SDL_mixer.d +--- tt/import/SDL_mixer.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/SDL_mixer.d 2007-09-20 08:35:03.000000000 +0200 +@@ -22,7 +22,7 @@ +
+ // convert to D by shinichiro.h
+
+-/* $Id: SDL_mixer.d,v 1.1.1.1 2004/11/10 13:45:22 kenta Exp $ */
++/* $Id: SDL_mixer.d,v 1.1.1.1 2006/11/19 07:54:54 kenta Exp $ */
+
+ import SDL;
+
+diff -Naur tt/import/SDL_syswm.d tt-gentoo/import/SDL_syswm.d +--- tt/import/SDL_syswm.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/import/SDL_syswm.d 2007-09-20 08:35:03.000000000 +0200 +@@ -22,7 +22,7 @@ +
+ /* Include file for SDL custom system window manager hooks */
+
+-import SDL_Version;
++import SDL_version_;
+
+ extern(C):
+
+diff -Naur tt/import/SDL_version_.d tt-gentoo/import/SDL_version_.d +--- tt/import/SDL_version_.d 1970-01-01 01:00:00.000000000 +0100 ++++ tt-gentoo/import/SDL_version_.d 2007-09-20 08:35:03.000000000 +0200 +@@ -0,0 +1,75 @@ ++/*
++ SDL - Simple DirectMedia Layer
++ Copyright (C) 1997, 1998, 1999, 2000, 2001 Sam Lantinga
++
++ This library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Library General Public
++ License as published by the Free Software Foundation; either
++ version 2 of the License, or (at your option) any later version.
++
++ This library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Library General Public License for more details.
++
++ You should have received a copy of the GNU Library General Public
++ License along with this library; if not, write to the Free
++ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
++
++ Sam Lantinga
++ slouken@devolution.com
++*/
++
++/* This header defines the current SDL version */
++
++import SDL_types;
++
++extern(C):
++
++/* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL
++*/
++const uint SDL_MAJOR_VERSION = 1;
++const uint SDL_MINOR_VERSION = 2;
++const uint SDL_PATCHLEVEL = 6;
++
++struct SDL_version {
++ Uint8 major;
++ Uint8 minor;
++ Uint8 patch;
++}
++
++/* This macro can be used to fill a version structure with the compile-time
++ * version of the SDL library.
++ */
++void SDL_VERSION(SDL_version* X)
++{
++ X.major = SDL_MAJOR_VERSION;
++ X.minor = SDL_MINOR_VERSION;
++ X.patch = SDL_PATCHLEVEL;
++}
++
++/* This macro turns the version numbers into a numeric value:
++ (1,2,3) -> (1203)
++ This assumes that there will never be more than 100 patchlevels
++*/
++uint SDL_VERSIONNUM(Uint8 X, Uint8 Y, Uint8 Z)
++{
++ return X * 1000 + Y * 100 + Z;
++}
++
++/* This is the version number macro for the current SDL version */
++const uint SDL_COMPILEDVERSION = SDL_MAJOR_VERSION * 1000 +
++ SDL_MINOR_VERSION * 100 +
++ SDL_PATCHLEVEL;
++
++/* This macro will evaluate to true if compiled with SDL at least X.Y.Z */
++bit SDL_VERSION_ATLEAST(Uint8 X, Uint8 Y, Uint8 Z)
++{
++ return (SDL_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z));
++}
++
++/* This function gets the version of the dynamically linked SDL library.
++ it should NOT be used to fill a version structure, instead you should
++ use the SDL_Version() macro.
++ */
++SDL_version * SDL_Linked_Version();
+diff -Naur tt/Makefile tt-gentoo/Makefile +--- tt/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ tt-gentoo/Makefile 2007-09-20 08:35:03.000000000 +0200 +@@ -0,0 +1,27 @@ ++DC=gdmd ++#DC=gdc ++ifeq ($(DC), gdmd) ++DFLAGS=-O -d -release -Iimport -Isrc ++#DFLAGS=-g -debug -Iimport -Isrc ++DOUT=-of ++else ++DFLAGS=-O -frelease -Iimport -Isrc ++#DFLAGS=-g -fdebug -Iimport -Isrc ++DOUT=-o ++endif ++ ++DSRC=$(shell find src/ -name "*.d") ++SOURCES=$(DSRC) import/SDL_video.d import/SDL_mixer.d ++OBJS=$(SOURCES:.d=.o) ++EXE=torustrooper ++ ++all: $(EXE) ++ ++$(EXE): $(OBJS) ++ gcc -o $@ $(OBJS) -lbulletml_d -lgphobos -lpthread -lm -lSDL -lGL -lGLU -lSDL_mixer -lstdc++ ++ ++$(OBJS): %.o: %.d ++ $(DC) -c $(DOUT)$@ $(DFLAGS) $< ++ ++ ++ +diff -Naur tt/src/abagames/tt/barrage.d tt-gentoo/src/abagames/tt/barrage.d +--- tt/src/abagames/tt/barrage.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/src/abagames/tt/barrage.d 2007-09-20 08:35:03.000000000 +0200 +@@ -17,6 +17,7 @@ + private import abagames.tt.bulletimpl;
+ private import abagames.tt.bullettarget;
+ private import abagames.tt.shape;
++import linux_listdir;
+
+ /**
+ * Barrage pattern.
+@@ -30,11 +31,12 @@ + int prevWait, postWait;
+ bool noXReverse = false;
+
+- public static this() {
++ public static void randInit() {
+ rand = new Rand;
+ }
+
+ public static void setRandSeed(long seed) {
++ if (!rand) rand = new Rand;
+ rand.setSeed(seed);
+ }
+
+@@ -93,29 +95,31 @@ + public class BarrageManager {
+ private:
+ static BulletMLParserTinyXML *parser[char[]][char[]];
++ static BulletMLParserTinyXML *parser2[char[]];
+ static const char[] BARRAGE_DIR_NAME = "barrage";
+
+ public static void load() {
+- char[][] dirs = listdir(BARRAGE_DIR_NAME);
++ char[][] dirs = linux_listdir.listdir(BARRAGE_DIR_NAME);
+ foreach (char[] dirName; dirs) {
+- char[][] files = listdir(BARRAGE_DIR_NAME ~ "/" ~ dirName);
++ char[][] files = linux_listdir.listdir(BARRAGE_DIR_NAME ~ "/" ~ dirName);
+ foreach (char[] fileName; files) {
+ if (getExt(fileName) != "xml")
+ continue;
+- parser[dirName][fileName] = getInstance(dirName, fileName);
++ char[] barrageName = dirName ~ "/" ~ fileName;
++ parser2[barrageName] = getInstance(dirName, fileName);
+ }
+ }
+ }
+
+ public static BulletMLParserTinyXML* getInstance(char[] dirName, char[] fileName) {
+- if (!parser[dirName][fileName]) {
+- char[] barrageName = dirName ~ "/" ~ fileName;
+- Logger.info("Load BulletML: " ~ barrageName);
+- parser[dirName][fileName] =
+- BulletMLParserTinyXML_new(std.string.toStringz(BARRAGE_DIR_NAME ~ "/" ~ barrageName));
+- BulletMLParserTinyXML_parse(parser[dirName][fileName]);
++ char[] barrageName = dirName ~ "/" ~ fileName;
++ if (!parser2[barrageName]) {
++ Logger.info("Load BulletML: " ~ barrageName);
++ parser2[barrageName] =
++ BulletMLParserTinyXML_new(std.string.toStringz(BARRAGE_DIR_NAME ~ "/" ~ barrageName));
++ BulletMLParserTinyXML_parse(parser2[barrageName]);
+ }
+- return parser[dirName][fileName];
++ return parser2[barrageName];
+ }
+
+ public static BulletMLParserTinyXML*[] getInstanceList(char[] dirName) {
+diff -Naur tt/src/abagames/tt/enemy.d tt-gentoo/src/abagames/tt/enemy.d +--- tt/src/abagames/tt/enemy.d 2005-01-09 12:50:00.000000000 +0100 ++++ tt-gentoo/src/abagames/tt/enemy.d 2007-09-20 08:35:03.000000000 +0200 +@@ -59,6 +59,9 @@ +
+ public static this() {
+ rand = new Rand;
++ ShipShape.randInit();
++ Particle.randInit();
++ Barrage.randInit();
+ }
+
+ public static void setRandSeed(long seed) {
+diff -Naur tt/src/abagames/tt/particle.d tt-gentoo/src/abagames/tt/particle.d +--- tt/src/abagames/tt/particle.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/src/abagames/tt/particle.d 2007-09-20 08:35:03.000000000 +0200 +@@ -42,7 +42,7 @@ + float d1, d2, md1, md2;
+ float width, height;
+
+- public static this() {
++ public static void randInit() {
+ rand = new Rand;
+ }
+
+diff -Naur tt/src/abagames/tt/shape.d tt-gentoo/src/abagames/tt/shape.d +--- tt/src/abagames/tt/shape.d 2004-11-12 23:46:02.000000000 +0100 ++++ tt-gentoo/src/abagames/tt/shape.d 2007-09-20 08:35:03.000000000 +0200 +@@ -66,10 +66,10 @@ + Vector rocketPos, fragmentPos;
+ int color;
+
+- static this() {
++ public static void randInit() {
+ rand = new Rand;
+ }
+-
++
+ public this(long randSeed) {
+ rand.setSeed(randSeed);
+ }
+@@ -809,7 +809,7 @@ + _collision = new Vector;
+ return _shape = v;
+ }
+-
++
+ public float size(float v) {
+ return _size = v;
+ }
+diff -Naur tt/src/abagames/tt/stagemanager.d tt-gentoo/src/abagames/tt/stagemanager.d +--- tt/src/abagames/tt/stagemanager.d 2005-01-09 12:50:00.000000000 +0100 ++++ tt-gentoo/src/abagames/tt/stagemanager.d 2007-09-20 08:35:03.000000000 +0200 +@@ -435,25 +435,25 @@ + br.setLongRange(longRange);
+ BulletMLParserTinyXML*[] ps;
+ int psn;
+- if (baseDir) {
+- ps = BarrageManager.getInstanceList(baseDir);
+- int pi = rand.nextInt(ps.length);
+- br.addBml(ps[pi], rank, true, speedRank);
+- } else {
++ // if (baseDir) {
++ // ps = BarrageManager.getInstanceList(baseDir);
++ // int pi = rand.nextInt(ps.length);
++ // br.addBml(ps[pi], rank, true, speedRank);
++ // } else {
+ br.addBml("basic", "straight.xml", rank, true, speedRank);
+- }
+- ps = BarrageManager.getInstanceList("morph");
+- psn = ps.length;
++ // }
++ // ps = BarrageManager.getInstanceList("morph");
++ psn = 13;
+ for (int i = 0; i < morphCnt; i++) {
+- int pi = rand.nextInt(ps.length);
+- while (!ps[pi]) {
+- pi--;
++ int pi = rand.nextInt(13);
++ // while (!ps[pi]) {
++ // pi--;
+ if (pi < 0)
+- pi = ps.length - 1;
+- }
+- br.addBml(ps[pi], morphRank, true, speedRank);
+- delete ps[pi];
+- psn--;
++ pi = 13 - 1;
++ // }
++// br.addBml(ps[pi], morphRank, true, speedRank);
++ // delete ps[pi];
++ // psn--;
+ }
+ return br;
+ }
+diff -Naur tt/src/abagames/util/bulletml/bullet.d tt-gentoo/src/abagames/util/bulletml/bullet.d +--- tt/src/abagames/util/bulletml/bullet.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/src/abagames/util/bulletml/bullet.d 2007-09-20 08:35:03.000000000 +0200 +@@ -77,7 +77,7 @@ + this.runner = runner;
+ }
+
+- public void set(BulletMLRunner* runner,
++ public void set(BulletMLRunner* runner,
+ float x, float y, float deg, float speed, float rank) {
+ set(x, y, deg, speed, rank);
+ setRunner(runner);
+diff -Naur tt/src/abagames/util/iterator.d tt-gentoo/src/abagames/util/iterator.d +--- tt/src/abagames/util/iterator.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/src/abagames/util/iterator.d 2007-09-20 08:35:03.000000000 +0200 +@@ -35,4 +35,7 @@ + }
+ }
+
+-alias ArrayIterator!(char[]) StringIterator;
++//alias ArrayIterator!(char[]) StringIterator;
++class StringIterator : ArrayIterator!(char[]) {
++ this(char[][] d) { super(d); }
++} +\ Kein Zeilenumbruch am Dateiende. +diff -Naur tt/src/abagames/util/logger.d tt-gentoo/src/abagames/util/logger.d +--- tt/src/abagames/util/logger.d 2004-11-10 22:45:22.000000000 +0100 ++++ tt-gentoo/src/abagames/util/logger.d 2007-09-20 08:35:03.000000000 +0200 +@@ -5,7 +5,7 @@ + */
+ module abagames.util.logger;
+
+-private import std.stream;
++private import std.cstream;
+ private import std.string;
+
+ /**
+@@ -56,28 +56,28 @@ +
+ public static void info(char[] msg, bool nline = true) {
+ if (nline)
+- stderr.writeLine(msg);
++ derr.writeLine(msg);
+ else
+- stderr.writeString(msg);
++ derr.writeString(msg);
+ }
+
+ public static void info(double n, bool nline = true) {
+ if (nline)
+- stderr.writeLine(std.string.toString(n));
++ derr.writeLine(std.string.toString(n));
+ else
+- stderr.writeString(std.string.toString(n) ~ " ");
++ derr.writeString(std.string.toString(n) ~ " ");
+ }
+
+ public static void error(char[] msg) {
+- stderr.writeLine("Error: " ~ msg);
++ derr.writeLine("Error: " ~ msg);
+ }
+
+ public static void error(Exception e) {
+- stderr.writeLine("Error: " ~ e.toString());
++ derr.writeLine("Error: " ~ e.toString());
+ }
+
+ public static void error(Error e) {
+- stderr.writeLine("Error: " ~ e.toString());
++ derr.writeLine("Error: " ~ e.toString());
+ if (e.next)
+ error(e.next);
+ }
+diff -Naur tt/src/abagames/util/sdl/luminous.d tt-gentoo/src/abagames/util/sdl/luminous.d +--- tt/src/abagames/util/sdl/luminous.d 2005-01-01 21:40:28.000000000 +0100 ++++ tt-gentoo/src/abagames/util/sdl/luminous.d 2007-09-20 08:35:03.000000000 +0200 +@@ -9,6 +9,7 @@ + private import std.string;
+ private import opengl;
+ private import abagames.util.actor;
++import std.c.string;
+
+ /**
+ * Luminous effect texture.
+diff -Naur tt/src/linux_listdir.d tt-gentoo/src/linux_listdir.d +--- tt/src/linux_listdir.d 1970-01-01 01:00:00.000000000 +0100 ++++ tt-gentoo/src/linux_listdir.d 2007-09-20 08:35:03.000000000 +0200 +@@ -0,0 +1,45 @@ ++private import std.string; ++ ++/*************************************************** ++ * Return contents of directory. ++ */ ++ ++extern (C) ++{ ++ struct DIR; ++ ++ struct Dirent ++ { ++ uint d_ino; ++ uint d_off; ++ ushort d_reclen; ++ char d_type; ++ char[256] d_name; /* NAME_MAX+1 from linux/limits.h */ ++ }; ++ ++ DIR* opendir(char* name); ++ int closedir(DIR* dir); ++ Dirent* readdir(DIR* dir); ++} ++ ++char[][] listdir(char[] pathname) ++{ ++ ++ Dirent* entry; ++ DIR* dir = opendir(toStringz(pathname)); ++ char[][] result; ++ entry = readdir(dir); ++ while ( entry !is null ) ++ { ++ ++ if ( std.string.strcmp(entry.d_name.ptr, ".") != 0 ++ && std.string.strcmp(entry.d_name.ptr, "..") != 0) ++ { ++ result ~= std.string.toString(entry.d_name.ptr).dup; ++ } ++ entry = readdir(dir); ++ } ++ closedir(dir); ++ return result; ++ ++} diff --git a/games-action/torustrooper/files/torustrooper.png b/games-action/torustrooper/files/torustrooper.png Binary files differnew file mode 100644 index 0000000..6060a42 --- /dev/null +++ b/games-action/torustrooper/files/torustrooper.png |