]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - r_modules.c
implemented real support for QW skins (pants, shirt, glow, cropped pcx
[xonotic/darkplaces.git] / r_modules.c
index fc0186a3e852e50fe4b71a8992fa9bb5785dc30e..df260db6780f1de6006ebd44c4877e12a9948c34 100644 (file)
@@ -17,7 +17,7 @@ rendermodule_t rendermodule[MAXRENDERMODULES];
 
 void R_Modules_Init(void)
 {
-       Cmd_AddCommand("r_restart", R_Modules_Restart);
+       Cmd_AddCommand("r_restart", R_Modules_Restart, "restarts renderer");
 }
 
 void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), void(*newmap)(void))
@@ -28,10 +28,13 @@ void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), voi
                if (rendermodule[i].name == NULL)
                        break;
                if (!strcmp(name, rendermodule[i].name))
-                       Sys_Error("R_RegisterModule: module \"%s\" registered twice\n", name);
+               {
+                       Con_Printf("R_RegisterModule: module \"%s\" registered twice\n", name);
+                       return;
+               }
        }
        if (i >= MAXRENDERMODULES)
-               Sys_Error("R_RegisterModule: ran out of renderer module slots (%i)\n", MAXRENDERMODULES);
+               Sys_Error("R_RegisterModule: ran out of renderer module slots (%i)", MAXRENDERMODULES);
        rendermodule[i].active = 0;
        rendermodule[i].name = name;
        rendermodule[i].start = start;
@@ -47,7 +50,10 @@ void R_Modules_Start(void)
                if (rendermodule[i].name == NULL)
                        continue;
                if (rendermodule[i].active)
-                       Sys_Error("R_StartModules: module \"%s\" already active\n", rendermodule[i].name);
+               {
+                       Con_Printf ("R_StartModules: module \"%s\" already active\n", rendermodule[i].name);
+                       continue;
+               }
                rendermodule[i].active = 1;
                rendermodule[i].start();
        }
@@ -70,6 +76,7 @@ void R_Modules_Shutdown(void)
 
 void R_Modules_Restart(void)
 {
+       Host_StartVideo();
        Con_Print("restarting renderer\n");
        R_Modules_Shutdown();
        R_Modules_Start();