Mods library
[dungeon-master.git] / src / mods.cpp
1 #include <libguile.h>
2 #include "mods.h"
3
4 SCM register_generator(SCM name, SCM proc)
5 {
6   printf ("Register: %s\n", scm_to_locale_string(name));
7   scm_call_1(proc, scm_from_int(-1));
8   return SCM_UNSPECIFIED;
9 }
10
11 void init_dungeon_master_module(void *unused)
12 {
13   scm_c_define_gsubr("register-generator", 2, 0, 0, (scm_t_subr)register_generator);
14   scm_c_export("register-generator", NULL);
15 }
16
17 void scm_init_dungeon_master_module()
18 {
19   scm_c_define_module("dungeon-master", init_dungeon_master_module, NULL);
20 }
21
22 void load_mods()
23 {
24   scm_init_guile();
25   scm_init_dungeon_master_module();
26   scm_primitive_load(scm_from_locale_string("mods/default/main.scm"));
27 }