]> git.jsancho.org Git - dungeon-master.git/blobdiff - src/main.cpp
Some things
[dungeon-master.git] / src / main.cpp
index 3a76eaf70c2f6c3944d95046f4518ff1c491b3ef..c469aa1ae3cc7230b283aa2f4eacf6fc7d71c101 100644 (file)
@@ -1,13 +1,62 @@
+/* Dungeon Master --- Adventure generator for GNU Guile
+   Copyright © 2019 Javier Sancho <jsf@jsancho.org>
+
+   Dungeon Master is free software; you can redistribute it and/or modify it
+   under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   Dungeon Master is distributed in the hope that it will be useful, but
+   WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with Haunt.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
 #include <irrlicht/irrlicht.h>
-#include <libguile.h>
+#include "paths.h"
+
+#include <iostream>
 
 using namespace irr;
 using namespace core;
 using namespace video;
+using namespace gui;
 
 int main()
 {
-  scm_init_guile();
-  scm_primitive_load(scm_from_locale_string("plugins/default/main.scm"));
+  std::set<std::string> paths = get_data_paths();
+  for (std::set<std::string>::iterator it=paths.begin(); it!=paths.end(); it++)
+    std::cout << *it << std::endl;
+  IrrlichtDevice* device =
+    createDevice(EDT_OPENGL,
+                 dimension2d<u32>(640, 480), 16,
+                 false, false, false, 0);
+  if (!device)
+    return 1;
+
+  device->setWindowCaption(L"Dungeon Master");
+
+  IVideoDriver* driver = device->getVideoDriver();
+  IGUIEnvironment* env = device->getGUIEnvironment();
+
+  env->addStaticText(L"Dungeon Master", rect<s32>(150,20,350,40), true);
+
+  IGUITabControl* tab = env->addTabControl(rect<s32>(50, 60, 850, 600));
+  tab->addTab(L"First");
+  tab->addTab(L"Second");
+  tab->addTab(L"Third");
+
+  while (device->run())
+    {
+      driver->beginScene(true, true, SColor(0, 200, 200, 200));
+      env->drawAll();
+      driver->endScene();
+    }
+
+  device->drop();
+
   return 0;
 }