Added level properties "contact" and "license"
authorChristoph Sommer <mail@christoph-sommer.de>
Wed, 7 Mar 2007 22:31:02 +0000 (22:31 +0000)
committerChristoph Sommer <mail@christoph-sommer.de>
Wed, 7 Mar 2007 22:31:02 +0000 (22:31 +0000)
SVN-Revision: 4931

src/level.cpp
src/level.hpp

index 8aaba20..4b222bb 100644 (file)
@@ -71,6 +71,9 @@ Level::load(const std::string& filepath)
       return;
     }
 
+    contact = "";
+    license = "";
+
     lisp::ListIterator iter(level);
     while(iter.next()) {
       const std::string& token = iter.item();
@@ -83,6 +86,10 @@ Level::load(const std::string& filepath)
         iter.value()->get(name);
       } else if(token == "author") {
         iter.value()->get(author);
+      } else if(token == "contact") {
+        iter.value()->get(contact);
+      } else if(token == "license") {
+        iter.value()->get(license);
       } else if(token == "on-menukey-script") {
         iter.value()->get(on_menukey_script);
       } else if(token == "sector") {
@@ -94,6 +101,8 @@ Level::load(const std::string& filepath)
       }
     }
 
+  if (license == "") log_warning << "The level author did not specify a license for this level. You might not be allowed to share it." << std::endl;
+
   } catch(std::exception& e) {
     std::stringstream msg;
     msg << "Problem when reading level '" << filepath << "': " << e.what();
index 1ab7448..da2fdf4 100644 (file)
@@ -35,6 +35,8 @@ class Level
 public:
   std::string name;
   std::string author;
+  std::string contact;
+  std::string license;
   std::string on_menukey_script;
   typedef std::vector<Sector*> Sectors;
   Sectors sectors;