From 4acc83bb2a0cb307e4018992df662fffaca2b611 Mon Sep 17 00:00:00 2001
From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08>
Date: Fri, 16 Apr 2010 08:35:24 +0000
Subject: [PATCH] dokk (the docking game):  - Added Outro

git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2026 5a81b35b-ba03-0410-adc8-b2c5c5119f08
---
 examples/dokk/datafiles/dengue/top_ten.ini    | 30 ++++++++++++-------
 examples/dokk/datafiles/glyoxalase/level.ini  | 11 +++++++
 .../dokk/datafiles/glyoxalase/top_ten.ini     | 11 +++++++
 examples/dokk/datafiles/tutorial_1/level.ini  |  4 +--
 examples/dokk/dokk.py                         | 22 +++++++++-----
 examples/dokk/level.py                        |  9 ++++--
 6 files changed, 63 insertions(+), 24 deletions(-)

diff --git a/examples/dokk/datafiles/dengue/top_ten.ini b/examples/dokk/datafiles/dengue/top_ten.ini
index 0e9aec53f..ad2da7c8e 100644
--- a/examples/dokk/datafiles/dengue/top_ten.ini
+++ b/examples/dokk/datafiles/dengue/top_ten.ini
@@ -1,32 +1,40 @@
+[10]
+score = 32.7570391734
+name = AAA
+
 [1]
-score = 1.08804896275
-name = STU
+score = 1.06508742174
+name = AAA
 
 [3]
-score = 1.26454350948
+score = 1.22069145838
 name = STU
 
 [2]
-score = 1.22069145838
+score = 1.08804896275
 name = STU
 
 [5]
-score = 1.57162377437
+score = 1.34045518637
 name = STU
 
 [4]
-score = 1.34045518637
+score = 1.26454350948
 name = STU
 
 [7]
-score = 2.58003196716
-name = STU
-
-[6]
 score = 1.87384883563
 name = BIO
 
-[8]
+[6]
+score = 1.57162377437
+name = STU
+
+[9]
 score = 2.80041636229
 name = AAA
 
+[8]
+score = 2.58003196716
+name = STU
+
diff --git a/examples/dokk/datafiles/glyoxalase/level.ini b/examples/dokk/datafiles/glyoxalase/level.ini
index 0a6a6a2e2..929f2cd04 100644
--- a/examples/dokk/datafiles/glyoxalase/level.ini
+++ b/examples/dokk/datafiles/glyoxalase/level.ini
@@ -98,6 +98,17 @@ TEXTCOLORGREEN1: 255
 TEXTCOLORBLUE1: 64
 TEXTSIZE1: 40
 
+[END]
+TEXTTIME: -1
+TEXTCOLORRED: 255
+TEXTCOLORGREEN: 255
+TEXTCOLORBLUE: 255
+TEXTSIZE: 25
+TEXT_COUNT: 1
+
+TEXT1: Herzliche Gratulation, Sie haben alle
+       Levels erfolgreich absolviert!
+
 [Box]
 XMIN:-30
 XMAX:70
diff --git a/examples/dokk/datafiles/glyoxalase/top_ten.ini b/examples/dokk/datafiles/glyoxalase/top_ten.ini
index 8b1378917..04ef7715c 100644
--- a/examples/dokk/datafiles/glyoxalase/top_ten.ini
+++ b/examples/dokk/datafiles/glyoxalase/top_ten.ini
@@ -1 +1,12 @@
+[1]
+score = 4.51828575532
+name = AAA
+
+[3]
+score = 41.7281535268
+name = EAA
+
+[2]
+score = 7.16148045063
+name = AAA
 
diff --git a/examples/dokk/datafiles/tutorial_1/level.ini b/examples/dokk/datafiles/tutorial_1/level.ini
index 88a301549..a8291bfef 100644
--- a/examples/dokk/datafiles/tutorial_1/level.ini
+++ b/examples/dokk/datafiles/tutorial_1/level.ini
@@ -13,12 +13,12 @@ TEXTCOLORBLUE: 255
 TEXTSIZE: 30
 TEXT_QUICKSTART: 6
 TEXT_COUNT: 10
-TEXT1: Hallo und herzlich wilkommen zu dokk
+TEXT1: Hallo und herzlich willkommen zu dokk
   dem Docking-Spiel
 TEXTTIME1: 3000
 
 TEXT2: Ihre Aufgabe ist es, den Liganden (gr�n),
-  in die richtige Position auf dem Protein (weiss) zu bringen
+  in die richtige Position im Protein (weiss) zu bringen
 TEXTTIME2: 8000
 
 TEXT3: Dieses erste Level ist ein �bungslevel. Sie lernen hier, wie man die 
diff --git a/examples/dokk/dokk.py b/examples/dokk/dokk.py
index ea7422fb4..c164f2a29 100644
--- a/examples/dokk/dokk.py
+++ b/examples/dokk/dokk.py
@@ -21,18 +21,24 @@ class Dokk(object):
       self.levels_ = levels
         
   def NextLevel(self):
-    self._current_index += 1
-    if(self._current_index < len(self.levels_)):
+    if self.HasNextLevel():
+      self._current_index += 1
       self._LoadLevel()
-    else:
-      self._current_index -=1
   
   def PreviousLevel(self):
-    self._current_index -= 1
-    if(self._current_index >= 0):
+    if self.HasPreviousLevel():
+      self._current_index -= 1
       self._LoadLevel()
-    else:
-      self._current_index +=1
+  
+  def HasNextLevel(self):
+    if(self._current_index < len(self.levels_)-1):
+      return True
+    return False
+  
+  def HasPreviousLevel(self):
+    if(self._current_index > 0):
+      return True
+    return False
   
   def Restart(self):
     self._current_index = -1
diff --git a/examples/dokk/level.py b/examples/dokk/level.py
index aecad8035..a0e729b32 100644
--- a/examples/dokk/level.py
+++ b/examples/dokk/level.py
@@ -8,8 +8,7 @@ from protein import Protein
 from score_updater import ScoreUpdater
 from config import Config, TopTen
 from dokk import Dokk
-from level_messages import LevelIntro
-from level_messages import LevelEnd
+from level_messages import LevelMessages, LevelIntro, LevelEnd
 from name_enter import HUDNameInput
 from level_info import LevelInfo
 
@@ -209,4 +208,8 @@ class Level(QtCore.QObject):
       
   def _FinishEnterName(self):
     self.topten.SetValue(self.hud_name_input.GetName(),self.GetScore())
-    Dokk().NextLevel()
+    if (Dokk().HasNextLevel()):
+      Dokk().NextLevel()
+    else:
+      hud_end_message = LevelMessages(self.config.End,self)
+      hud_end_message.Start()
-- 
GitLab