stratagus-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Stratagus-CVS] stratagus/src/clone ccl.c


From: Jimmy Salmon
Subject: [Stratagus-CVS] stratagus/src/clone ccl.c
Date: Wed, 19 Nov 2003 21:27:30 -0500

CVSROOT:        /cvsroot/stratagus
Module name:    stratagus
Branch:         
Changes by:     Jimmy Salmon <address@hidden>   03/11/19 21:27:30

Modified files:
        src/clone      : ccl.c 

Log message:
        Added LoadPud and LoadMap, removed CclDefineMap

Patches:
Index: stratagus/src/clone/ccl.c
diff -u stratagus/src/clone/ccl.c:1.133 stratagus/src/clone/ccl.c:1.134
--- stratagus/src/clone/ccl.c:1.133     Sun Nov 16 13:41:38 2003
+++ stratagus/src/clone/ccl.c   Wed Nov 19 21:27:29 2003
@@ -26,7 +26,7 @@
 //      Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 //      02111-1307, USA.
 //
-//     $Id: ccl.c,v 1.133 2003/11/16 18:41:38 martinxyz Exp $
+//     $Id: ccl.c,v 1.134 2003/11/20 02:27:29 jsalmon3 Exp $
 
 //@{
 
@@ -1571,6 +1571,21 @@
     return SCM_UNSPECIFIED;
 }
 #elif defined(USE_LUA)
+local int CclLoadPud(lua_State* l)
+{
+    const char* name;
+    char buffer[1024];
+
+    if (lua_gettop(l) != 1 || !lua_isstring(l, 1)) {
+       lua_pushstring(l, "incorrect argument");
+       lua_error(l);
+    }
+    name = lua_tostring(l, 1);
+    LoadPud(LibraryFileName(name, buffer), &TheMap);
+
+    // FIXME: LoadPud should return an error
+    return 0;
+}
 #endif
 
 /**
@@ -1596,30 +1611,23 @@
     return SCM_UNSPECIFIED;
 }
 #elif defined(USE_LUA)
-#endif
-
-/**
-**     Define a map.
-**
-**     @param width    Map width.
-**     @param height   Map height.
-*/
-#if defined(USE_GUILE) || defined(USE_SIOD)
-local SCM CclDefineMap(SCM width, SCM height)
+local int CclLoadMap(lua_State* l)
 {
-    TheMap.Width = gh_scm2int(width);
-    TheMap.Height = gh_scm2int(height);
-
-    TheMap.Fields = calloc(TheMap.Width * TheMap.Height, 
sizeof(*TheMap.Fields));
-    TheMap.Visible[0] = calloc(TheMap.Width * TheMap.Height / 8, 1);
-    InitUnitCache();
-    // FIXME: this should be CreateMap or InitMap?
+    const char* name;
+    char buffer[1024];
 
-    // MapX = MapY = 0;
+    if (lua_gettop(l) != 1 || !lua_isstring(l, 1)) {
+       lua_pushstring(l, "incorrect argument");
+       lua_error(l);
+    }
+    name = lua_tostring(l, 1);
+    if (strcasestr(name, ".pud")) {
+       LoadPud(LibraryFileName(name, buffer), &TheMap);
+    }
 
-    return SCM_UNSPECIFIED;
+    // FIXME: LoadPud should return an error
+    return 0;
 }
-#elif defined(USE_LUA)
 #endif
 
 /*............................................................................
@@ -1802,7 +1810,6 @@
 
     gh_new_procedure1_0("load-pud", CclLoadPud);
     gh_new_procedure1_0("load-map", CclLoadMap);
-    gh_new_procedure2_0("define-map", CclDefineMap);
 
     gh_new_procedure0_0("units", CclUnits);
 
@@ -1877,9 +1884,8 @@
 
     print_welcome();
 #elif defined(USE_LUA)
-//    lua_register(Lua, "LoadPud", CclLoadPud);
-//    lua_register(Lua, "LoadMap", CclLoadMap);
-//    lua_register(Lua, "DefineMap", CclDefineMap);
+    lua_register(Lua, "LoadPud", CclLoadPud);
+    lua_register(Lua, "LoadMap", CclLoadMap);
 
 //    lua_register(Lua, "Units", CclUnits);
 
@@ -1986,7 +1992,7 @@
     }
 
     fprintf(fd, ";;; -----------------------------------------\n");
-    fprintf(fd, ";;; $Id: ccl.c,v 1.133 2003/11/16 18:41:38 martinxyz Exp 
$\n");
+    fprintf(fd, ";;; $Id: ccl.c,v 1.134 2003/11/20 02:27:29 jsalmon3 Exp $\n");
 
     fprintf(fd, "(set-video-resolution! %d %d)\n", VideoWidth, VideoHeight);
     
@@ -2006,7 +2012,7 @@
     }
 
     fprintf(fd, "--[[\n");
-    fprintf(fd, "      $Id: ccl.c,v 1.133 2003/11/16 18:41:38 martinxyz Exp 
$\n");
+    fprintf(fd, "      $Id: ccl.c,v 1.134 2003/11/20 02:27:29 jsalmon3 Exp 
$\n");
     fprintf(fd, "]]\n");
 
     fprintf(fd, "SetVideoResolution(%d, %d)\n", VideoWidth, VideoHeight);
@@ -2033,7 +2039,7 @@
     }
 
     fprintf(fd, ";;; -----------------------------------------\n");
-    fprintf(fd, ";;; $Id: ccl.c,v 1.133 2003/11/16 18:41:38 martinxyz Exp 
$\n");
+    fprintf(fd, ";;; $Id: ccl.c,v 1.134 2003/11/20 02:27:29 jsalmon3 Exp $\n");
 
     // Global options
     if (OriginalFogOfWar) {
@@ -2114,7 +2120,7 @@
     }
 
     fprintf(fd, "--[[\n");
-    fprintf(fd, "      $Id: ccl.c,v 1.133 2003/11/16 18:41:38 martinxyz Exp 
$\n");
+    fprintf(fd, "      $Id: ccl.c,v 1.134 2003/11/20 02:27:29 jsalmon3 Exp 
$\n");
     fprintf(fd, "]]\n");
 
     fprintf(fd, "SetVideoFullscreen(%s)\n", VideoFullScreen ? "true" : 
"false");
@@ -2174,7 +2180,7 @@
     extern SCM oblistvar;
 
     CLprintf(file, "\n;;; -----------------------------------------\n");
-    CLprintf(file, ";;; MODULE: CCL $Id: ccl.c,v 1.133 2003/11/16 18:41:38 
martinxyz Exp $\n\n");
+    CLprintf(file, ";;; MODULE: CCL $Id: ccl.c,v 1.134 2003/11/20 02:27:29 
jsalmon3 Exp $\n\n");
 
     for (list = oblistvar; gh_list_p(list); list = gh_cdr(list)) {
        SCM sym;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]