[game-data-packager] 01/01: add support for DotEmu

Alexandre Detiste detiste-guest at moszumanska.debian.org
Mon Jul 6 10:32:33 UTC 2015


This is an automated email from the git hooks/post-receive script.

detiste-guest pushed a commit to branch master
in repository game-data-packager.

commit 160ce02ff113a8c1aa17ef847359674f57793dbb
Author: Alexandre Detiste <alexandre.detiste at gmail.com>
Date:   Mon Jul 6 12:30:22 2015 +0200

    add support for DotEmu
---
 data/gobliiins.yaml            |  2 ++
 data/gobliins2.yaml            |  2 ++
 data/goblins3.yaml             |  2 ++
 data/t7g.yaml                  |  4 +++-
 game_data_packager/__init__.py | 22 +++++++++++++++++-----
 tools/babel.py                 |  7 ++++---
 6 files changed, 30 insertions(+), 9 deletions(-)

diff --git a/data/gobliiins.yaml b/data/gobliiins.yaml
index 3b854fb..0610a47 100644
--- a/data/gobliiins.yaml
+++ b/data/gobliiins.yaml
@@ -7,6 +7,8 @@ packages:
   gobliiins-en-data:
     gog:
       url: gobliiins_pack
+    dotemu:
+      id: 25
     debian:
       provides: gobliiins-data
     install:
diff --git a/data/gobliins2.yaml b/data/gobliins2.yaml
index 088b62f..aacb045 100644
--- a/data/gobliins2.yaml
+++ b/data/gobliins2.yaml
@@ -11,6 +11,8 @@ packages:
     gog:
       url: gobliiins_pack
       game: gobliins_2_the_prince_buffoon
+    dotemu:
+      id: 25
     install:
     - intro.stk
     - gobnew.lic
diff --git a/data/goblins3.yaml b/data/goblins3.yaml
index 3b4219c..6f05060 100644
--- a/data/goblins3.yaml
+++ b/data/goblins3.yaml
@@ -19,6 +19,8 @@ packages:
     gog:
       url: gobliiins_pack
       game: goblins_quest_3
+    dotemu:
+      id: 25
     install:
     - ext.stk
     - imd.itk
diff --git a/data/t7g.yaml b/data/t7g.yaml
index da6aabf..da334e6 100644
--- a/data/t7g.yaml
+++ b/data/t7g.yaml
@@ -13,7 +13,9 @@ help_text: |
 packages:
   the-7th-guest-data:
     gog:
-      id: the_7th_guest
+      url: the_7th_guest
+    dotemu:
+      id: 2788
     install:
     - at.gjd
     - at.grv
diff --git a/game_data_packager/__init__.py b/game_data_packager/__init__.py
index 6b921b4..807aa02 100644
--- a/game_data_packager/__init__.py
+++ b/game_data_packager/__init__.py
@@ -373,9 +373,10 @@ class GameDataPackage(object):
         # necessarily)
         self.symlinks = {}
 
-        # Steam ID and path
+        # online stores metadata
         self.steam = {}
         self.gog = {}
+        self.dotemu = {}
         self.origin = {}
 
         # overide the game engine when needed
@@ -540,21 +541,24 @@ class GameData(object):
         # Extra directories where we might find game files
         self.try_repack_from = []
 
-        # Steam ID and path
+        # online stores metadata
         self.steam = {}
         self.gog = {}
+        self.dotemu = {}
         self.origin = {}
 
         # full url of online game shops
         self.url_steam = None
         self.url_gog = None
+        self.url_dotemu = None
 
         self.data = data
 
         self.argument_parser = None
 
-        for k in ('longname', 'copyright', 'compress_deb', 'help_text',
-               'steam', 'gog', 'origin', 'engine', 'genre', 'missing_langs'):
+        for k in ('longname', 'copyright', 'compress_deb', 'help_text', 
+                  'engine', 'genre', 'missing_langs',
+                  'steam', 'gog', 'dotemu', 'origin'):
             if k in self.data:
                 setattr(self, k, self.data[k])
 
@@ -797,10 +801,14 @@ class GameData(object):
         gog_url = self.gog.get('url')
         gog_pp = '22d200f8670dbdb3e253a90eee5098477c95c23d' # ScummVM
         steam_id = {self.steam.get('id')}
+        dotemu_id = self.dotemu.get('id')
+        dotemu_pp = '32202' # ScummVM
         for package in self.packages.values():
             gog_url = package.gog.get('url', gog_url)
             gog_pp = package.gog.get('pp', gog_pp)
             steam_id.add(package.steam.get('id'))
+            dotemu_id = package.dotemu.get('id', dotemu_id)
+            dotemu_pp = package.dotemu.get('pp', dotemu_pp)
         steam_id.discard(None)
         www = list()
         if steam_id:
@@ -811,6 +819,10 @@ class GameData(object):
             self.url_gog = 'http://www.gog.com/game/' + gog_url + '?pp=' + gog_pp
             if '://www.gog.com/' not in self.help_text:
                 www.append(self.url_gog)
+        if dotemu_id:
+            self.url_dotemu = 'http://www.dotemu.com/affiliate/%s/node/%d' % (
+                              dotemu_pp, dotemu_id)
+            www.append(self.url_dotemu)
         if www:
             random.shuffle(www)
             self.help_text += '\nThis game can be bought online here:\n  '
@@ -870,7 +882,7 @@ class GameData(object):
 
     def _populate_package(self, package, d):
         for k in ('expansion_for', 'expansion_for_ext', 'longname', 'symlinks', 'install_to',
-                'install_to_docdir', 'install_contents_of', 'steam', 'debian',
+                'install_to_docdir', 'install_contents_of', 'steam', 'debian', 'dotemu',
                 'rip_cd', 'architecture', 'aliases', 'better_version', 'langs',
                 'copyright', 'engine', 'gog', 'origin', 'lang', 'component', 'section'):
             if k in d:
diff --git a/tools/babel.py b/tools/babel.py
index 2e2882b..0f86f93 100755
--- a/tools/babel.py
+++ b/tools/babel.py
@@ -46,6 +46,7 @@ for name, game in load_games().items():
     stats['missing_langs'] = game.missing_langs
     stats['url_steam'] = game.url_steam
     stats['url_gog'] = game.url_gog
+    stats['url_dotemu'] = game.url_dotemu
     for l in game.missing_langs:
         if l not in langs:
             langs[l] = 0
@@ -69,7 +70,7 @@ html.write('''<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "ht
 )
 for lang in langs_order:
     html.write('  <td><b>%s</b></td>\n' % lang)
-html.write('<td>Steam</td><td>GOG.com</td></tr>\n')
+html.write('<td>Steam</td><td>GOG.com</td><td>DotEmu</td></tr>\n')
 
 # BODY
 last_genre = None
@@ -91,7 +92,7 @@ for game in games:
         else:
             html.write('  <td> </td>\n')
 
-    for url in (game['url_steam'], game['url_gog']):
+    for url in (game['url_steam'], game['url_gog'], game['url_dotemu']):
         if url:
             html.write('  <td align=center><a href="%s"><b>X</b></a></td>\n' % url)
         else:
@@ -104,7 +105,7 @@ for lang in langs_order:
     html.write('  <td><b>%s</b></td>\n' % langs[lang])
 
 html.write('''
-<td colspan=2> </td>
+<td colspan=3> </td>
 </tr>
 </table>
 <ul>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git



More information about the Pkg-games-commits mailing list