Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Aguiar <alanjas@hotmail.com>2013-08-14 02:03:47 (GMT)
committer Alan Aguiar <alanjas@hotmail.com>2013-08-14 02:03:47 (GMT)
commit10e7e4b5fef943d605b254cb0860b505c4f82083 (patch)
tree34341530f4313a48514bf86ea3241cd3495fe132
parent5774b53c9c7d485e4efaac291abbd3e2e99644ce (diff)
add over help on a1g6
-rw-r--r--.settings/org.eclipse.core.resources.prefs2
-rw-r--r--src/assets/data/area1game6_data.py14
-rw-r--r--src/game/Area1Game6.py81
3 files changed, 61 insertions, 36 deletions
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
index d7659e1..6982d44 100644
--- a/.settings/org.eclipse.core.resources.prefs
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -10,8 +10,10 @@ encoding//src/api/MultiLabel.py=utf-8
encoding//src/api/Sprite.py=utf-8
encoding//src/api/Vector.py=utf-8
encoding//src/assets/data/area1game3_data.py=utf-8
+encoding//src/assets/data/area1game6_data.py=utf-8
encoding//src/game/Area1Game1.py=utf-8
encoding//src/game/Area1Game3.py=utf-8
+encoding//src/game/Area1Game4.py=utf-8
encoding//src/game/Area1Game6.py=utf-8
encoding//src/game/Area1Game7.py=utf-8
encoding//src/game/Area2Game2.py=utf-8
diff --git a/src/assets/data/area1game6_data.py b/src/assets/data/area1game6_data.py
index adbbd7d..35c808e 100644
--- a/src/assets/data/area1game6_data.py
+++ b/src/assets/data/area1game6_data.py
@@ -5,11 +5,11 @@ from gettext import gettext as _
HELP = {
- 1: _('pérdida de sangre\npor la vagina , que ocurre\naproximadamente cada 28 dias'),
- 2: _('primer menstruación\nen las mujeres, sucede entre los 10 y 17 años'),
- 3: _('primera eyaculación\nexpulsión de semen que se produce durante el sueño'),
- 4: _('célula con cola\ngameto masculino, que produce el testículo'),
- 5: _('célula\ngameto femenino, que produce el ovario'),
- 6: _('proceso de 9 meses\ngestación de un nuevo ser humano'),
- 7: _('órgano\ndel aparato reproductor femenino'),
+ 0: _('primer menstruación\nen las mujeres, sucede entre los 10 y 17 años'),
+ 1: _('primera eyaculación\nexpulsión de semen que se produce durante el sueño'),
+ 2: _('célula con cola\ngameto masculino, que produce el testículo'),
+ 3: _('célula\ngameto femenino, que produce el ovario'),
+ 4: _('proceso de 9 meses\ngestación de un nuevo ser humano'),
+ 5: _('órgano\ndel aparato reproductor femenino'),
+ 6: _('pérdida de sangre\npor la vagina, que ocurre\naproximadamente cada 28 dias')
} \ No newline at end of file
diff --git a/src/game/Area1Game6.py b/src/game/Area1Game6.py
index 448c738..760d1b2 100644
--- a/src/game/Area1Game6.py
+++ b/src/game/Area1Game6.py
@@ -8,7 +8,7 @@ from api.Button import CButton
from api.Points import CPoints
from api.MultiLabel import CMultiLabel
from api.Mouse import *
-import api.Math as Math
+import api.Math as CMath
import api.Image as Image
from api.Vector import CVector
from api.Game import CGame
@@ -32,6 +32,18 @@ DY = 0
import imp
+WORD1 = [(400, 0), (800, 0), (400, 50), (800, 50)]
+WORD2a = [(150, 100), (350, 100), (150, 150), (350, 150)]
+WORD2b = [(400, 100), (600, 100), (400, 150), (600, 150)]
+WORD3a = [(0, 200), (350, 200), (0, 250), (350, 250)]
+WORD3b = [(400, 200), (800, 200), (400, 250), (800, 250)]
+WORD4a = [(250, 300), (350, 300), (250, 350), (350, 350)]
+WORD4b = [(400, 300), (500, 300), (400, 350), (500, 350)]
+WORD5a = [(200, 350), (350, 350), (200, 400), (350, 400)]
+WORD5b = [(400, 350), (600, 350), (400, 400), (600, 400)]
+WORD6 = [(150, 500), (350, 500), (150, 550), (350, 550)]
+WORD7 = [(350, 0), (400, 0), (350, 600), (400, 600)]
+
#Piece class hereda de CSprite
class Piece(CSprite):
@@ -70,7 +82,7 @@ class Piece(CSprite):
x, y = CMouse().getPos()
self.setXY(x, y)
if self.clicked():
- d = Math.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY())
+ d = CMath.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY())
if (d < self.MIN_DISTANCE):
self.setState(STATE_ADJUST)
@@ -81,7 +93,7 @@ class Piece(CSprite):
elif (self.mState == STATE_ADJUST):
- if (Math.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY()) < self.RADIUS_COLLISION):
+ if (CMath.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY()) < self.RADIUS_COLLISION):
@@ -91,7 +103,7 @@ class Piece(CSprite):
elif (self.mState == STATE_RETURN):
- dist = Math.dist(self.mPos.getX() , self.mPos.getY(), self.mOrigin.getX(), self.mOrigin.getY())
+ dist = CMath.dist(self.mPos.getX() , self.mPos.getY(), self.mOrigin.getX(), self.mOrigin.getY())
if (dist < self.RADIUS_COLLISION):
#play(Sonido mal)
self.setState(STATE_STALE)
@@ -127,7 +139,7 @@ class Piece(CSprite):
vec = CVector(self.mOrigin.getX() - self.mPos.getX(), self.mOrigin.getY() - self.mPos.getY())
vec.normalize()
- dist = Math.dist(self.mOrigin.getX(), self.mOrigin.getY(), self.mPos.getX(), self.mPos.getY())
+ dist = CMath.dist(self.mOrigin.getX(), self.mOrigin.getY(), self.mPos.getX(), self.mPos.getY())
vec.mul(dist/self.TIME_ADJUST)
self.setVelXY(vec.getX(), vec.getY())
@@ -290,21 +302,18 @@ class CArea1Game6(CGameState):
self.loadInfo()
self.list_temp = self.dic_help.keys()
-
+ self.mListHelps = []
# Label with the Help (for mouseover)
- self.mHelp01 = CMultiLabel()
- self.mHelp01.bgColor = (0x99, 0x99, 0x66)
- self.mHelp01.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20)
- self.mHelp01.set_center((914, 188))
- self.mHelp01.set_size((350, 280))
- self.mHelp01.set_text(self.dic_help[1])
-
- self.mHelp02 = CMultiLabel()
- self.mHelp02.bgColor = (0x99, 0x99, 0x66)
- self.mHelp02.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20)
- self.mHelp02.set_center((914, 188))
- self.mHelp02.set_size((350, 280))
- self.mHelp02.set_text(self.dic_help[2])
+ for i in range(7):
+ l = CMultiLabel()
+ l.bgColor = (0x99, 0x99, 0x66)
+ l.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20)
+ l.set_center((914, 188))
+ l.set_size((350, 280))
+ l.set_text(self.dic_help[i])
+ self.mListHelps.append(l)
+
+
#CGame().addChild(self.mHelp01)
@@ -323,20 +332,34 @@ class CArea1Game6(CGameState):
ms = MenuState.CMenuState()
CGame().setState(ms)
return
-
- """elif self.mWord01.mouseOver():
- self.mHelpActive = self.mHelp01
-
- elif self.mWord02.mouseOver():
- self.mHelpActive = self.mHelp02"""
-
+
+ x = CMouse().getX()
+ y = CMouse().getY()
+
+ if CMath.pointInsidePolygon(x,y, WORD1):
+ self.mHelpActive = 0
+ elif CMath.pointInsidePolygon(x,y, WORD2a) or CMath.pointInsidePolygon(x,y, WORD2b):
+ self.mHelpActive = 1
+ elif CMath.pointInsidePolygon(x,y, WORD3a) or CMath.pointInsidePolygon(x,y, WORD3b):
+ self.mHelpActive = 2
+ elif CMath.pointInsidePolygon(x,y, WORD4a) or CMath.pointInsidePolygon(x,y, WORD4b):
+ self.mHelpActive = 3
+ elif CMath.pointInsidePolygon(x,y, WORD5a) or CMath.pointInsidePolygon(x,y, WORD5b):
+ self.mHelpActive = 4
+ elif CMath.pointInsidePolygon(x,y, WORD6):
+ self.mHelpActive = 5
+ elif CMath.pointInsidePolygon(x,y, WORD7):
+ self.mHelpActive = 6
+ else:
+ self.mHelpActive = None
+
# this optimize the repetitive remove/add the same sprite
if not (self.mHelpPrevious == self.mHelpActive):
# if previous not is none
if self.mHelpPrevious:
- CGame().removeChild(self.mHelpPrevious)
-
- CGame().addChild(self.mHelpActive)
+ CGame().removeChild(self.mListHelps[self.mHelpPrevious])
+ if self.mHelpActive:
+ CGame().addChild(self.mListHelps[self.mHelpActive])
self.mHelpPrevious = self.mHelpActive