From 8bf56af29452f9d2224512a7e99b624e59b497b3 Mon Sep 17 00:00:00 2001 From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Tue, 13 Apr 2010 15:31:32 +0000 Subject: [PATCH] dokk (the docking game): - added new texts to levels - added pause cam git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@1983 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- examples/dokk/config.py | 3 +- examples/dokk/datafiles/dengue/level.ini | 86 +++++++++------ examples/dokk/datafiles/glyoxalase/level.ini | 75 +++++++------ examples/dokk/datafiles/retinol/level.ini | 64 ++++++----- examples/dokk/datafiles/thrombin/level.ini | 104 ++++++++---------- examples/dokk/datafiles/tutorial_1/level.ini | 100 ++++++++++------- .../dokk/datafiles/tutorial_1/top_ten.ini | 6 +- examples/dokk/datafiles/tutorial_2/level.ini | 85 +++++++------- .../dokk/datafiles/tutorial_2/top_ten.ini | 4 +- examples/dokk/glwin.py | 8 +- examples/dokk/level.py | 7 +- examples/dokk/level_info.py | 24 +++- examples/dokk/ligand.py | 4 +- 13 files changed, 320 insertions(+), 250 deletions(-) diff --git a/examples/dokk/config.py b/examples/dokk/config.py index 7fc526da3..7fb7a3efa 100644 --- a/examples/dokk/config.py +++ b/examples/dokk/config.py @@ -54,7 +54,8 @@ class TopTen(): def IsTopTen(self,score): self._config.UpdateValues() try: - if score < float(self._config.str(10)["SCORE"]): + print score, float(self._config.Get(str(10))["SCORE"]) + if score < float(self._config.Get(str(10))["SCORE"]): return True except AttributeError: return True diff --git a/examples/dokk/datafiles/dengue/level.ini b/examples/dokk/datafiles/dengue/level.ini index e4e0f4dd8..2d05f85af 100644 --- a/examples/dokk/datafiles/dengue/level.ini +++ b/examples/dokk/datafiles/dengue/level.ini @@ -11,35 +11,51 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 4 +TEXT_COUNT: 8 +TEXT1: So die �bungsphase ist vorbei.. + Bei den kommenden Levels m�ssen sie den Liganden + m�glichst gut am Protein andocken. +TEXTTIME1: 300 -TEXT1: 3 -TEXTTIME1: 150 -TEXTCOLORRED1: 255 -TEXTCOLORGREEN1: 0 -TEXTCOLORBLUE1: 0 -TEXTSIZE1: 40 +TEXT2: Sie k�nnen die aktuelle Score links oben ablesen. Wenn + Sie mit der Score zufrieden sind, k�nnen Sie "FIT" dr�cken + um das Level zu beenden. +TEXTTIME2: 800 -TEXT2: 2 -TEXTTIME2: 150 -TEXTCOLORRED2: 255 -TEXTCOLORGREEN2: 165 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 70 - -TEXT3: 1 -TEXTTIME3: 150 -TEXTCOLORRED3: 255 -TEXTCOLORGREEN3: 255 -TEXTCOLORBLUE3: 0 -TEXTSIZE3: 100 - -TEXT4: LOS! -TEXTTIME4: 200 -TEXTCOLORRED4: 0 -TEXTCOLORGREEN4: 255 -TEXTCOLORBLUE4: 0 -TEXTSIZE4: 130 +TEXT3: Je schneller Sie ein Level absolvieren, umso kleiner wird der Zeitmalus + der zu Ihrer score addiert wird. +TEXTTIME3: 800 + +TEXT4: Sind Sie bereit? Jetzt wird es ernst. +TEXTTIME4: 600 + +TEXT5: 3 +TEXTTIME5: 150 +TEXTCOLORRED5: 255 +TEXTCOLORGREEN5: 0 +TEXTCOLORBLUE5: 0 +TEXTSIZE5: 40 + +TEXT6: 2 +TEXTTIME6: 150 +TEXTCOLORRED6: 255 +TEXTCOLORGREEN6: 165 +TEXTCOLORBLUE6: 0 +TEXTSIZE6: 70 + +TEXT7: 1 +TEXTTIME7: 150 +TEXTCOLORRED7: 255 +TEXTCOLORGREEN7: 255 +TEXTCOLORBLUE7: 0 +TEXTSIZE7: 100 + +TEXT8: LOS! +TEXTTIME8: 150 +TEXTCOLORRED8: 0 +TEXTCOLORGREEN8: 255 +TEXTCOLORBLUE8: 0 +TEXTSIZE8: 130 [NTT] TEXTTIME: 200 @@ -55,16 +71,16 @@ TEXTTIME1: 4000 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 40 TEXT2: RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME2: 8000 -TEXTCOLORRED2: 0 -TEXTCOLORGREEN2: 255 +TEXTTIME2: -1 +TEXTCOLORRED2: 255 +TEXTCOLORGREEN2: 64 TEXTCOLORBLUE2: 0 -TEXTSIZE2: 100 +TEXTSIZE2: 40 [TT] TEXTTIME: 200 @@ -78,11 +94,11 @@ TEXT1: Bravo, Sie wurden $RANKer! RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME1: 2000 +TEXTTIME1: 4000 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 80 +TEXTSIZE1: 40 [Box] XMIN:-1000 @@ -105,4 +121,4 @@ ROTZ:0.3 FRAMESKIP: 10 [Name] -TEXT: Bitte geben Sie ihr K�rzel ein: +TEXT: Bitte geben Sie ihr K�rzel ein: diff --git a/examples/dokk/datafiles/glyoxalase/level.ini b/examples/dokk/datafiles/glyoxalase/level.ini index b4e0f5e07..59e69589d 100644 --- a/examples/dokk/datafiles/glyoxalase/level.ini +++ b/examples/dokk/datafiles/glyoxalase/level.ini @@ -11,35 +11,47 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 4 +TEXT_COUNT: 7 +TEXT1: Gesunder Optimismus ist gut.. +TEXTTIME1: 300 -TEXT1: 3 -TEXTTIME1: 150 -TEXTCOLORRED1: 255 -TEXTCOLORGREEN1: 0 -TEXTCOLORBLUE1: 0 -TEXTSIZE1: 40 +TEXT2: F�r dieses Level brauchen Sie jedoch mehr +TEXTTIME4: 600 -TEXT2: 2 -TEXTTIME2: 150 -TEXTCOLORRED2: 255 -TEXTCOLORGREEN2: 165 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 70 - -TEXT3: 1 +TEXT3: 3 TEXTTIME3: 150 TEXTCOLORRED3: 255 -TEXTCOLORGREEN3: 255 +TEXTCOLORGREEN3: 0 TEXTCOLORBLUE3: 0 -TEXTSIZE3: 100 +TEXTSIZE3: 40 -TEXT4: LOS! -TEXTTIME4: 200 -TEXTCOLORRED4: 0 -TEXTCOLORGREEN4: 255 +TEXT4: 2 +TEXTTIME4: 150 +TEXTCOLORRED4: 255 +TEXTCOLORGREEN4: 0 TEXTCOLORBLUE4: 0 -TEXTSIZE4: 130 +TEXTSIZE4: 70 + +TEXT5: 1 +TEXTTIME5: 150 +TEXTCOLORRED5: 255 +TEXTCOLORGREEN5: 0 +TEXTCOLORBLUE5: 0 +TEXTSIZE5: 100 + +TEXT6: Viel Gl�ck! +TEXTTIME6: 150 +TEXTCOLORRED6: 255 +TEXTCOLORGREEN6: 0 +TEXTCOLORBLUE6: 0 +TEXTSIZE6: 100 + +TEXT7: (Sie werden es brauchen) +TEXTTIME7: 150 +TEXTCOLORRED7: 255 +TEXTCOLORGREEN7: 0 +TEXTCOLORBLUE7: 0 +TEXTSIZE7: 80 [NTT] TEXTTIME: 200 @@ -55,16 +67,16 @@ TEXTTIME1: 4000 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 40 TEXT2: RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME2: 8000 -TEXTCOLORRED2: 0 -TEXTCOLORGREEN2: 255 +TEXTTIME2: -1 +TEXTCOLORRED2: 255 +TEXTCOLORGREEN2: 64 TEXTCOLORBLUE2: 0 -TEXTSIZE2: 100 +TEXTSIZE2: 40 [TT] TEXTTIME: 200 @@ -74,15 +86,16 @@ TEXTCOLORBLUE: 0 TEXTSIZE: 16 TEXT_COUNT: 1 -TEXT1: Bravo, Sie wurden $RANKer! +TEXT1: Wow, Chuck Norris ist stolz auf Sie. + Sie wurden $RANKer! RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME1: 2000 +TEXTTIME1: 4000 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 80 +TEXTSIZE1: 40 [Box] XMIN:-1000 @@ -105,4 +118,4 @@ ROTZ:0.3 FRAMESKIP: 10 [Name] -TEXT: Bitte geben Sie ihr K�rzel ein: +TEXT: Bitte geben Sie ihr K�rzel ein: diff --git a/examples/dokk/datafiles/retinol/level.ini b/examples/dokk/datafiles/retinol/level.ini index a506f6bf9..4d0091d4d 100644 --- a/examples/dokk/datafiles/retinol/level.ini +++ b/examples/dokk/datafiles/retinol/level.ini @@ -11,35 +11,41 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 4 +TEXT_COUNT: 6 +TEXT1: Super sie haben es bis hier hin geschafft. + Jetzt wird es richtig schwer. +TEXTTIME1: 300 -TEXT1: 3 -TEXTTIME1: 150 -TEXTCOLORRED1: 255 -TEXTCOLORGREEN1: 0 -TEXTCOLORBLUE1: 0 -TEXTSIZE1: 40 - -TEXT2: 2 -TEXTTIME2: 150 -TEXTCOLORRED2: 255 -TEXTCOLORGREEN2: 165 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 70 +TEXT2: Ich sehe Sie sind bereit... +TEXTTIME4: 600 -TEXT3: 1 +TEXT3: 3 TEXTTIME3: 150 TEXTCOLORRED3: 255 -TEXTCOLORGREEN3: 255 +TEXTCOLORGREEN3: 0 TEXTCOLORBLUE3: 0 -TEXTSIZE3: 100 +TEXTSIZE3: 40 -TEXT4: LOS! -TEXTTIME4: 200 -TEXTCOLORRED4: 0 -TEXTCOLORGREEN4: 255 +TEXT4: 2 +TEXTTIME4: 150 +TEXTCOLORRED4: 255 +TEXTCOLORGREEN4: 165 TEXTCOLORBLUE4: 0 -TEXTSIZE4: 130 +TEXTSIZE4: 70 + +TEXT5: 1 +TEXTTIME5: 150 +TEXTCOLORRED5: 255 +TEXTCOLORGREEN5: 255 +TEXTCOLORBLUE5: 0 +TEXTSIZE5: 100 + +TEXT6: LOS! +TEXTTIME6: 150 +TEXTCOLORRED6: 0 +TEXTCOLORGREEN6: 255 +TEXTCOLORBLUE6: 0 +TEXTSIZE6: 130 [NTT] TEXTTIME: 200 @@ -55,16 +61,16 @@ TEXTTIME1: 4000 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 40 TEXT2: RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME2: 8000 -TEXTCOLORRED2: 0 -TEXTCOLORGREEN2: 255 +TEXTTIME2: -1 +TEXTCOLORRED2: 255 +TEXTCOLORGREEN2: 64 TEXTCOLORBLUE2: 0 -TEXTSIZE2: 100 +TEXTSIZE2: 40 [TT] TEXTTIME: 200 @@ -78,11 +84,11 @@ TEXT1: Bravo, Sie wurden $RANKer! RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME1: 2000 +TEXTTIME1: 4000 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 80 +TEXTSIZE1: 40 [Box] XMIN:-1000 diff --git a/examples/dokk/datafiles/thrombin/level.ini b/examples/dokk/datafiles/thrombin/level.ini index 79c419f16..60f3527c5 100644 --- a/examples/dokk/datafiles/thrombin/level.ini +++ b/examples/dokk/datafiles/thrombin/level.ini @@ -11,50 +11,40 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 9 -TEXT1: Hallo und herzlich wilkommen zu dokk - dem Dokking-Spiel -TEXTTIME1: 5000 - -TEXT2: Mit diesem Spiel wird Ihnen demonstriert wie ein... -TEXTTIME2: 1000 - -TEXT3: Sie k�nnen mit dem 3D-Input Device den Liganden sowohl drehen als auch verschieben. -TEXTTIME3: 3000 - -TEXT4: Falls Fragen bestehen, k�nnen Sie sich gerne an eine unserer Fachkr�fte wenden. -TEXTTIME4: 3000 - -TEXT5: So nun kann es los gehen. -TEXTTIME5: 1000 - -TEXT6: 3 -TEXTTIME6: 1500 -TEXTCOLORRED6: 255 -TEXTCOLORGREEN6: 0 +TEXT_COUNT: 6 +TEXT1: Ich denke Sie haben das Spielprinzip verstanden. +TEXTTIME1: 300 + +TEXT2: Gut, sind Sie bereit? Und schon gehts los. +TEXTTIME4: 600 + +TEXT3: 3 +TEXTTIME3: 150 +TEXTCOLORRED3: 255 +TEXTCOLORGREEN3: 0 +TEXTCOLORBLUE3: 0 +TEXTSIZE3: 40 + +TEXT4: 2 +TEXTTIME4: 150 +TEXTCOLORRED4: 255 +TEXTCOLORGREEN4: 165 +TEXTCOLORBLUE4: 0 +TEXTSIZE4: 70 + +TEXT5: 1 +TEXTTIME5: 150 +TEXTCOLORRED5: 255 +TEXTCOLORGREEN5: 255 +TEXTCOLORBLUE5: 0 +TEXTSIZE5: 100 + +TEXT6: LOS! +TEXTTIME6: 150 +TEXTCOLORRED6: 0 +TEXTCOLORGREEN6: 255 TEXTCOLORBLUE6: 0 -TEXTSIZE6: 40 - -TEXT7: 2 -TEXTTIME7: 1500 -TEXTCOLORRED7: 255 -TEXTCOLORGREEN7: 165 -TEXTCOLORBLUE7: 0 -TEXTSIZE7: 70 - -TEXT8: 1 -TEXTTIME8: 1500 -TEXTCOLORRED8: 255 -TEXTCOLORGREEN8: 255 -TEXTCOLORBLUE8: 0 -TEXTSIZE8: 100 - -TEXT9: LOS! -TEXTTIME9: 2000 -TEXTCOLORRED9: 0 -TEXTCOLORGREEN9: 255 -TEXTCOLORBLUE9: 0 -TEXTSIZE9: 130 +TEXTSIZE6: 130 [NTT] TEXTTIME: 200 @@ -70,16 +60,16 @@ TEXTTIME1: 4000 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 40 TEXT2: RMSD: $RMSD Zeitmalus: $TIMEMALUS Endergebnis: $SCORE -TEXTTIME2: 8000 -TEXTCOLORRED2: 0 -TEXTCOLORGREEN2: 255 +TEXTTIME2: -1 +TEXTCOLORRED2: 255 +TEXTCOLORGREEN2: 64 TEXTCOLORBLUE2: 0 -TEXTSIZE2: 100 +TEXTSIZE2: 40 [TT] TEXTTIME: 200 @@ -87,23 +77,17 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 0 TEXTCOLORBLUE: 0 TEXTSIZE: 16 -TEXT_COUNT: 2 +TEXT_COUNT: 1 TEXT1: Bravo, Sie wurden $RANKer! + RMSD: $RMSD + Zeitmalus: $TIMEMALUS + Endergebnis: $SCORE TEXTTIME1: 4000 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 100 - -TEXT2: RMSD: $RMSD - Zeitmalus: $TIMEMALUS - Endergebnis: $SCORE -TEXTTIME2: 8000 -TEXTCOLORRED2: 0 -TEXTCOLORGREEN2: 255 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 100 +TEXTSIZE1: 40 [Box] XMIN:-25 @@ -129,4 +113,4 @@ FRAMESKIP: 10 RMSD: 0 [Name] -TEXT: Bitte geben Sie ihr K�rzel ein: +TEXT: Bitte geben Sie ihr K�rzel ein: diff --git a/examples/dokk/datafiles/tutorial_1/level.ini b/examples/dokk/datafiles/tutorial_1/level.ini index 49c99aa85..8d11da552 100644 --- a/examples/dokk/datafiles/tutorial_1/level.ini +++ b/examples/dokk/datafiles/tutorial_1/level.ini @@ -11,35 +11,56 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 4 +TEXT_COUNT: 10 +TEXT1: Hallo und herzlich wilkommen zu dokk + dem Docking-Spiel +TEXTTIME1: 300 -TEXT1: 3 -TEXTTIME1: 150 -TEXTCOLORRED1: 255 -TEXTCOLORGREEN1: 0 -TEXTCOLORBLUE1: 0 -TEXTSIZE1: 40 - -TEXT2: 2 -TEXTTIME2: 150 -TEXTCOLORRED2: 255 -TEXTCOLORGREEN2: 165 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 70 - -TEXT3: 1 -TEXTTIME3: 150 -TEXTCOLORRED3: 255 -TEXTCOLORGREEN3: 255 -TEXTCOLORBLUE3: 0 -TEXTSIZE3: 100 - -TEXT4: LOS! -TEXTTIME4: 200 -TEXTCOLORRED4: 0 -TEXTCOLORGREEN4: 255 -TEXTCOLORBLUE4: 0 -TEXTSIZE4: 130 +TEXT2: Ihre Aufgabe ist es, den Liganden (gr�n), + in die richtige Position auf dem Protein (weiss) zu bringen +TEXTTIME2: 800 + +TEXT3: Dieses erste Level ist ein �bungslevel. Sie lernen hier, wie man die + Position des Liganden ver�ndern kann. +TEXTTIME3: 800 + +TEXT4: Sie k�nnen mit dem 3D-Input Device den Liganden verschieben, + indem Sie den Joystick in die entsprechende Richtung bewegen. +TEXTTIME4: 800 + +TEXT5: Falls Fragen bestehen, k�nnen Sie sich gerne an eine unserer Fachkr�fte wenden. +TEXTTIME5: 500 + +TEXT6: Sind Sie bereit? Es geht los. +TEXTTIME6: 600 + +TEXT7: 3 +TEXTTIME7: 150 +TEXTCOLORRED7: 255 +TEXTCOLORGREEN7: 0 +TEXTCOLORBLUE7: 0 +TEXTSIZE7: 40 + +TEXT8: 2 +TEXTTIME8: 150 +TEXTCOLORRED8: 255 +TEXTCOLORGREEN8: 165 +TEXTCOLORBLUE8: 0 +TEXTSIZE8: 70 + +TEXT9: 1 +TEXTTIME9: 150 +TEXTCOLORRED9: 255 +TEXTCOLORGREEN9: 255 +TEXTCOLORBLUE9: 0 +TEXTSIZE9: 100 + +TEXT10: LOS! +TEXTTIME10: 150 +TEXTCOLORRED10: 0 +TEXTCOLORGREEN10: 255 +TEXTCOLORBLUE10: 0 +TEXTSIZE10: 130 [NTT] TEXTTIME: 200 @@ -50,11 +71,12 @@ TEXTSIZE: 16 TEXT_COUNT: 1 TEXT1: Leider haben Sie es nicht geschafft! -TEXTTIME1: 4000 + Sie k�nnen erneut veruschen, dieses Level zu absolvieren +TEXTTIME1: -1 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 30 [TT] TEXTTIME: 200 @@ -65,20 +87,20 @@ TEXTSIZE: 16 TEXT_COUNT: 1 TEXT1: Bravo, Sie sie haben es geschafft! - Sie d�rfen das n�chste Level bestreiten -TEXTTIME1: 2000 + Sie d�rfen das n�chste Level bestreiten +TEXTTIME1: -1 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 65 +TEXTSIZE1: 30 [Box] -XMIN:-1000 -XMAX:1000 -YMIN:-1000 -YMAX:1000 -ZMIN:-1000 -ZMAX:1000 +XMIN:-50 +XMAX:50 +YMIN:-100 +YMAX:100 +ZMIN:-100 +ZMAX:100 [Start] POSX:10.0 diff --git a/examples/dokk/datafiles/tutorial_1/top_ten.ini b/examples/dokk/datafiles/tutorial_1/top_ten.ini index 7a8928728..7e4e61eff 100644 --- a/examples/dokk/datafiles/tutorial_1/top_ten.ini +++ b/examples/dokk/datafiles/tutorial_1/top_ten.ini @@ -1,3 +1,3 @@ -[1] -score = 99.0 -name = N/A +[10] +score = 1.0 +name = N/A \ No newline at end of file diff --git a/examples/dokk/datafiles/tutorial_2/level.ini b/examples/dokk/datafiles/tutorial_2/level.ini index 49c99aa85..193557e00 100644 --- a/examples/dokk/datafiles/tutorial_2/level.ini +++ b/examples/dokk/datafiles/tutorial_2/level.ini @@ -1,7 +1,7 @@ [Level] -NAME: Tutorial 1 -DIFFICULTY: Basic Training -TIME: 60000 +NAME: Tutorial 2 +DIFFICULTY: Advanced Training +TIME: 6000 SAVE: 0 GOAL: 1.0 @@ -11,35 +11,45 @@ TEXTCOLORRED: 255 TEXTCOLORGREEN: 255 TEXTCOLORBLUE: 255 TEXTSIZE: 16 -TEXT_COUNT: 4 +TEXT_COUNT: 7 +TEXT1: Sehr gut Sie haben das Spielprinzip verstanden + und k�nnen den Liganden bereits verschieben +TEXTTIME1: 300 -TEXT1: 3 -TEXTTIME1: 150 -TEXTCOLORRED1: 255 -TEXTCOLORGREEN1: 0 -TEXTCOLORBLUE1: 0 -TEXTSIZE1: 40 - -TEXT2: 2 -TEXTTIME2: 150 -TEXTCOLORRED2: 255 -TEXTCOLORGREEN2: 165 -TEXTCOLORBLUE2: 0 -TEXTSIZE2: 70 - -TEXT3: 1 -TEXTTIME3: 150 -TEXTCOLORRED3: 255 -TEXTCOLORGREEN3: 255 -TEXTCOLORBLUE3: 0 -TEXTSIZE3: 100 - -TEXT4: LOS! -TEXTTIME4: 200 -TEXTCOLORRED4: 0 -TEXTCOLORGREEN4: 255 +TEXT2: In diesem �bungslevel lernen Sie, wie der Ligand rotiert werden kann. + Dazu k�nnen Sie den Joystick drehen oder ziehen und bewegen. +TEXTTIME2: 800 + +TEXT3: Sind Sie bereit? Es wird ein wenig schwerer. +TEXTTIME3: 600 + +TEXT4: 3 +TEXTTIME4: 150 +TEXTCOLORRED4: 255 +TEXTCOLORGREEN4: 0 TEXTCOLORBLUE4: 0 -TEXTSIZE4: 130 +TEXTSIZE4: 40 + +TEXT5: 2 +TEXTTIME5: 150 +TEXTCOLORRED5: 255 +TEXTCOLORGREEN5: 165 +TEXTCOLORBLUE5: 0 +TEXTSIZE5: 70 + +TEXT6: 1 +TEXTTIME6: 150 +TEXTCOLORRED6: 255 +TEXTCOLORGREEN6: 255 +TEXTCOLORBLUE6: 0 +TEXTSIZE6: 100 + +TEXT7: LOS! +TEXTTIME7: 150 +TEXTCOLORRED7: 0 +TEXTCOLORGREEN7: 255 +TEXTCOLORBLUE7: 0 +TEXTSIZE7: 130 [NTT] TEXTTIME: 200 @@ -49,12 +59,13 @@ TEXTCOLORBLUE: 0 TEXTSIZE: 16 TEXT_COUNT: 1 -TEXT1: Leider haben Sie es nicht geschafft! -TEXTTIME1: 4000 +TEXT1: Es scheint mir, dass Sie dieses Level + gerne wiederholen m�chten.. +TEXTTIME1: -1 TEXTCOLORRED1: 255 TEXTCOLORGREEN1: 64 TEXTCOLORBLUE1: 0 -TEXTSIZE1: 50 +TEXTSIZE1: 20 [TT] TEXTTIME: 200 @@ -64,13 +75,13 @@ TEXTCOLORBLUE: 0 TEXTSIZE: 16 TEXT_COUNT: 1 -TEXT1: Bravo, Sie sie haben es geschafft! - Sie d�rfen das n�chste Level bestreiten -TEXTTIME1: 2000 +TEXT1: Bravo, Sie sie haben die �bungslevels erfolgreich durch gespielt! + Sie d�rfen nun die "echten" Levels bestreiten.. +TEXTTIME1: -1 TEXTCOLORRED1: 0 TEXTCOLORGREEN1: 255 TEXTCOLORBLUE1: 64 -TEXTSIZE1: 65 +TEXTSIZE1: 20 [Box] XMIN:-1000 diff --git a/examples/dokk/datafiles/tutorial_2/top_ten.ini b/examples/dokk/datafiles/tutorial_2/top_ten.ini index 7a8928728..87465536d 100644 --- a/examples/dokk/datafiles/tutorial_2/top_ten.ini +++ b/examples/dokk/datafiles/tutorial_2/top_ten.ini @@ -1,3 +1,3 @@ -[1] -score = 99.0 +[10] +score = 1.0 name = N/A diff --git a/examples/dokk/glwin.py b/examples/dokk/glwin.py index b703874ff..43dace440 100644 --- a/examples/dokk/glwin.py +++ b/examples/dokk/glwin.py @@ -3,11 +3,9 @@ from ost import gfx from PyQt4.QtGui import * from PyQt4.QtCore import * from PyQt4.QtOpenGL import * -import OpenGL.GL as ogl from spnav_input import SpnavInputDevice -from hud import HUD -from hud import HUDObject +from hud import HUD, HUDObject UPDATE_INTERVAL = 20 @@ -35,11 +33,7 @@ class DokkGLCanvas(QGLWidget): gfx.Scene().InitGL() def paintGL(self): - ogl.glMatrixMode(ogl.GL_MODELVIEW); - ogl.glPushMatrix(); gfx.Scene().RenderGL() - ogl.glMatrixMode(ogl.GL_MODELVIEW); - ogl.glPopMatrix(); def SetLevel(self, level): self.spnav_input.SetLevel(level) diff --git a/examples/dokk/level.py b/examples/dokk/level.py index edbede190..ef1998a79 100644 --- a/examples/dokk/level.py +++ b/examples/dokk/level.py @@ -84,7 +84,10 @@ class Level(QtCore.QObject): return rmsd + self.GetTimeMalus() def GetRank(self): - return self.topten.GetRank(self.GetScore()) + score = self.GetScore() + if self.topten.IsTopTen(self.GetScore()): + return self.topten.GetRank(self.GetScore()) + return -1 def GetTTDiff(self): return self.topten.GetDiff(self.GetScore()) @@ -143,7 +146,7 @@ class Level(QtCore.QObject): self.stop_time = time.time() Dokk().gl_win.SetLockInput(True) if self._started: - if self.GetRank() > 0: + if self.GetRank() > 0 or self.GetRMSD()<= float(self.config.Level["GOAL"]): self.hud_level_end_tt.Start() else: self.hud_level_end_ntt.Start() diff --git a/examples/dokk/level_info.py b/examples/dokk/level_info.py index 759147ef1..97cb2776f 100644 --- a/examples/dokk/level_info.py +++ b/examples/dokk/level_info.py @@ -1,7 +1,7 @@ import dokk from PyQt4 import QtCore, QtGui from hud import * -from ost import gui +from ost import mol, geom class LevelInfo(QtCore.QObject): def __init__(self, level, parent=None): @@ -16,6 +16,7 @@ class LevelInfo(QtCore.QObject): else: self.highscore = None self.level_info = LevelDetails(level.config.Level["NAME"],level.config.Level["DIFFICULTY"]) + self.demo_cam = DemoCam(self) self.connect(level,QtCore.SIGNAL("Started()"),self.Finish) self.connect(level,QtCore.SIGNAL("Stopped()"),self.Start) self.connect(level,QtCore.SIGNAL("Closed()"),self.Finish) @@ -30,6 +31,7 @@ class LevelInfo(QtCore.QObject): self.start = False if self.highscore: self.highscore.Finish() + self.demo_cam.Finish() self.level_info.Finish() def Timeout(self): @@ -37,6 +39,7 @@ class LevelInfo(QtCore.QObject): if self.highscore: self.highscore.Start() self.level_info.Start() + self.demo_cam.Start() class HighScore(QtCore.QObject): @@ -93,4 +96,21 @@ class LevelDetails(QtCore.QObject): def Finish(self): dokk.Dokk().gl_win.RemoveHUDObject(self.hud_diffi_text) dokk.Dokk().gl_win.RemoveHUDObject(self.hud_name_text) - dokk.Dokk().gl_win.RemoveHUDObject(self.hud_bg) \ No newline at end of file + dokk.Dokk().gl_win.RemoveHUDObject(self.hud_bg) + + +class DemoCam(QtCore.QTimer): + def __init__(self, parent=None): + QtCore.QTimer.__init__(self) + QtCore.QObject.connect(self, QtCore.SIGNAL("timeout()"), self.OnTimer) + + def Start(self): + dokk.Dokk().GetLevel().Solve() + self.start(10) + + def Finish(self): + self.stop() + + def OnTimer(self): + gfx.Scene().Apply(gfx.InputEvent(gfx.INPUT_DEVICE_MOUSE, gfx.INPUT_COMMAND_ROTY, 0.25), False) + \ No newline at end of file diff --git a/examples/dokk/ligand.py b/examples/dokk/ligand.py index e970f560d..f6b5feb26 100644 --- a/examples/dokk/ligand.py +++ b/examples/dokk/ligand.py @@ -4,7 +4,7 @@ from ost import mol class Ligand: def __init__(self, ligand, config=None): self.handle=ligand - self.the_solution_=ligand.Copy().CreateFullView() + self.solution=ligand.Copy().CreateFullView() self.go=gfx.Entity("Ligand", gfx.CPK, self.handle) self.go.SetColor(gfx.GREEN, 'ele=C') self.go.cpk_options.SetSphereDetail(7) @@ -71,7 +71,7 @@ class Ligand: def RMSDToSolution(self): return alg.CalculateRMSD(self.handle.CreateFullView(), - self.the_solution_) + self.solution) def Solve(self): edi=self.handle.RequestXCSEditor() -- GitLab