diff dmsimple.c @ 354:ba284f5e7ea5

More work on editor, etc.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 16 Oct 2012 01:49:15 +0300
parents a8f00ee363e1
children 59045853853d
line wrap: on
line diff
--- a/dmsimple.c	Tue Oct 16 01:33:26 2012 +0300
+++ b/dmsimple.c	Tue Oct 16 01:49:15 2012 +0300
@@ -285,7 +285,6 @@
         goto error_exit;
     }
 
-
     if (!engineInitializeVideo())
         goto error_exit;
 
@@ -310,7 +309,37 @@
 
     // Final initializations
     if ((err = engine.demoInit()) != DMERR_OK)
+    {
+        dmError("Failure in demoInit(), %d: %s\n",
+            err, dmErrorStr(err));
         goto error_exit;
+    }
+
+    // Initialize effects
+    if ((err = dmInitializeEffects()) != DMERR_OK)
+    {
+        dmError("Effects initialization failed, %d: %s\n",
+            err, dmErrorStr(err));
+        goto error_exit;
+    }
+
+    // Use a timeline, if set
+    if (engine.timeline != NULL)
+    {
+        if ((err = dmLoadTimeline(engine.timeline, &engine.tl)) != DMERR_OK)
+        {
+            dmError("Error loading timeline, %d: %s\n", err,
+                dmErrorStr(err));
+            goto error_exit;
+        }
+
+        if ((err = dmPrepareTimeline(engine.tl, engine.ptl)) != DMERR_OK)
+        {
+            dmError("Error creating prepared timeline, %d: %s\n",
+                err, dmErrorStr(err));
+            goto error_exit;
+        }
+    }
 
     dmPrint(1, "Starting up.\n");
 
@@ -433,6 +462,9 @@
 #endif
     SDL_UnlockAudio();
 
+    dmFreeTimeline(engine.tl);
+    dmFreePreparedTimelineData(engine.ptl);
+    dmShutdownEffects();
     dmres_close();    
 
     if (engine.demoShutdown != NULL)