Hi, I haven't progressed too far into this yet as I needed to port it to compile under Linux first.
Here is how to get it to compile under Linux (prerequisites: CURL, FMODEX, Allegro):
Extract the source archive.
In that directory, apply these patches:
internet.diff:
--- a/internet.c 2008-03-23 14:47:52.000000000 +1030
+++ b/internet.c 2011-07-14 17:34:26.000000000 +0930
@@ -3,9 +3,9 @@
#include "stdio.h"
// USE HERE THE PROPER DEFINITION FOR THE OS YOU ARE COMPILING DEFLEKTOR ON
-#define INTT_WIN // Windows
+//#define INTT_WIN // Windows
//#define INTT_MAC // Macintosh
-//#define INTT_LNX // Linux
+#define INTT_LNX // Linux
//#define INTT_OTR // Other
#ifdef INTT_WIN
(this adjusts what platform it thinks we are compiling on)
juego.diff:
--- a/juego.c 2008-05-22 17:48:22.000000000 +0930
+++ b/juego.c 2011-07-14 17:30:26.000000000 +0930
@@ -2782,7 +2782,15 @@
i=ism_cambiar_dato_objeto(movs[f].id,dato,dif,SUMAR);
}
else
- (dato==D_X?movs[f].m0:movs[f].m1)=(dif<0?-1:1);
+ {
+ int tmp = 1;
+ if (dif < 0) tmp = -1;
+ if (dato==D_X)
+ movs[f].m0 = tmp;
+ else
+ movs[f].m1 = tmp;
+// (dato==D_X?movs[f].m0:movs[f].m1)=(dif<0?-1:1);
+ }
if(!i && mover_n)
for(i=0;i<3;i++)
if(movs[f].id==movs[i].anclado)
@@ -2806,7 +2814,17 @@
i=ism_cambiar_dato_objeto(movs[f].id,dato,dif,SUMAR);
}
else
- (dato==D_X?movs[f].m0:movs[f].m1)=dif;
+ {
+ int tmp = 1;
+ if (dif < 0) tmp = -1;
+ if (dato==D_X)
+ movs[f].m0 = tmp;
+ else
+ movs[f].m1 = tmp;
+// (dato==D_X?movs[f].m0:movs[f].m1)=(dif<0?-1:1);
+ }
+
+// (dato==D_X?movs[f].m0:movs[f].m1)=dif;
if(!i)
for(i=1;i<num_movs;i++)
if(movs[f].id==movs[i].anclado)
(which fixes some bizarre misuse of lvalues which more recent GCCs will not accept)
Then, you can compile it like:
gcc *.c -lalleg -lfmodex -lcurl -I /usr/include/fmodex/ -o alien8
You'll also need to copy the *.dat files from the Windows or Mac archives, into the source directory, because they are not included with the source and are needed.
Compiled on Arch Linux, x86_64.