]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/reference-counted.cpp
Revert "reference counted refactor"
[guile-irrlicht.git] / src / reference-counted.cpp
index eabc3efa0706d16d07deb53dc69fa3925f554a53..1060df4b56c9d657216ace980e44190719c7df89 100644 (file)
 #include <libguile.h>
 
 #include "device.h"
+#include "gsubr.h"
 #include "reference-counted.h"
+#include "scene-node-animator.h"
 
 extern "C" {
 
   void
   init_reference_counted (void)
   {
-    scm_c_define_gsubr ("drop!", 1, 0, 0, (scm_t_subr)irr_drop);
-    scm_c_export ("drop!", NULL);
+    DEFINE_GSUBR ("drop!", 1, 0, 0, irr_drop);
   }
 
   SCM
@@ -42,6 +43,10 @@ extern "C" {
       {
         result = unwrap_device (wrapped_obj)->drop ();
       }
+    else if (scene_node_animator_p (wrapped_obj))
+      {
+        result = unwrap_scene_node_animator (wrapped_obj)->drop ();
+      }
     else
       {
         scm_error (scm_arg_type_key, NULL, "Object cannot be dropped: ~S",