diff options
author | Blitzkev <blitzkev@gmail.com> | 2010-02-19 16:22:49 (GMT) |
---|---|---|
committer | Blitzkev <blitzkev@gmail.com> | 2010-02-19 16:22:49 (GMT) |
commit | 86a4bc229c903ead1b67b6e735e79c2669e26791 (patch) | |
tree | 21809b7129d87bcf991a9fd0a959e5c92e9f7f6b /MAFH.activity/pippy_app.py | |
parent | 69c6d36e55bce5e401af659575505a5a9a420a2f (diff) |
Merge
Diffstat (limited to 'MAFH.activity/pippy_app.py')
-rw-r--r-- | MAFH.activity/pippy_app.py | 47 |
1 files changed, 22 insertions, 25 deletions
diff --git a/MAFH.activity/pippy_app.py b/MAFH.activity/pippy_app.py index a824bb8..393680d 100644 --- a/MAFH.activity/pippy_app.py +++ b/MAFH.activity/pippy_app.py @@ -6,7 +6,7 @@ import os.path from random import * from PopUp import PopUp -from Items import get_item, Item +from Items import get_item, Item, InvalidItemException from Enemy import get_enemy, Enemy from Hero import Hero from Dungeon import Dungeon @@ -286,11 +286,15 @@ class Player: self.battlePlayer.HP=data[12] i=13 self.battlePlayer.inv_Ar=[] - while data[i]!= 'End Inventory': - self.battlePlayer.inv_Ar.append(get_item(data[i])) - i+=1 + while not data[i]== 'End Inventory': + try: + self.battlePlayer.inv_Ar.append(get_item(data[i])) + i+=1 + print(data[i]) + print(get_item(data[i]).name) + except InvalidItemException: + break i+=1 - line=data[i] j=0 while data[i]!='End Equip': if data[i]==None: @@ -389,13 +393,14 @@ class Player: for item in self.battlePlayer.inv_Ar: if item.type=="key": self.battlePlayer.inv_Ar.remove(item) + if self.dgn==None: + self.dgn=Dungeon('al1.txt') if reload: self.dgn=Dungeon(self.dgn.fileName) elif self.dgn: + self.currentMenu.updateByName("Save",player,screen) self.battlePlayer.MHP+=2 self.dgn=Dungeon(self.dgn.next) - else: - self.dgn=Dungeon('al1.txt') if self.dgn.theme != self.theme: self.loadImages(self.dgn.theme) self.theme=self.dgn.theme @@ -671,7 +676,7 @@ class BattleEngine: screen.blit(inputText,pygame.Rect(250,400,200,30)) - if self.timeBonus<1: + if self.timeBonus<1 and self.timeBonus>=0: screen.blit(pygame.transform.scale(pygame.image.load(HUD_PATH+"bt_"+repr(int(self.timeBonus*10)*10)+".gif"),(275,50)),(5,200,150,50)) pygame.display.flip() @@ -688,6 +693,7 @@ class BattleEngine: def attack(self,attacker,attackName): defender=self.enemies[self.selEnemyIndex] if attackName=="critical": + self.player.atkTutorial=True attacker.setBonusAP(attacker.currentAnswer+int(self.timeBonus*10)) if isinstance(defender,Enemy) and defender.weakness=='normal': attacker.setBonusAP(attacker.BAB*2) @@ -696,10 +702,10 @@ class BattleEngine: tup=(tup[0]+1,tup[1]) self.player.multiplicationStats[self.player.critDifficulty-1]=tup if not player.scanTutorial: - player.popUp=PopUp(10,10,["To discover an enemy's weakness","select scan"]) - player.scanTutorial=True + self.player.popUp=PopUp(10,10,["To discover an enemy's weakness","select scan"]) + self.player.scanTutorial=True else: - player.popUp=None + self.player.popUp=None elif attackName=="Fire": attacker.setBonusAP(int(self.timeBonus*20)+10) if isinstance(defender,Enemy) and defender.weakness=='fire': @@ -711,7 +717,7 @@ class BattleEngine: tup=self.player.geometryStats[self.player.geomDifficulty-1] tup=(tup[0]+1,tup[1]) self.player.geometryStats[self.player.geomDifficulty-1]=tup - self.player.geomTutorial=True + self.player.magTutorial=True self.player.popUp=None elif attackName=="Heal": @@ -722,7 +728,7 @@ class BattleEngine: tup=self.player.geometryStats[self.player.geomDifficulty-1] tup=(tup[0]+1,tup[1]) self.player.geometryStats[self.player.geomDifficulty-1]=tup - self.player.geomTutorial=True + self.player.magTutorial=True self.player.popUp=None elif attackName=="Lightning": @@ -736,7 +742,7 @@ class BattleEngine: tup=self.player.geometryStats[self.player.geomDifficulty-1] tup=(tup[0]+1,tup[1]) self.player.geometryStats[self.player.geomDifficulty-1]=tup - self.player.geomTutorial=True + self.player.magTutorial=True self.player.popUp=None elif attackName=="Missile": @@ -750,7 +756,7 @@ class BattleEngine: tup=self.player.geometryStats[self.player.geomDifficulty-1] tup=(tup[0]+1,tup[1]) self.player.geometryStats[self.player.geomDifficulty-1]=tup - self.player.geomTutorial=True + self.player.magTutorial=True self.player.popUp=None elif attackName=="Division": @@ -1678,7 +1684,7 @@ def startPuzzle(player): player.inPuzzle=True player.traversal=False if not player.puzzleTutorial: - player.popUp=PopUp(10,10,["This door has a special kind of lock","To unlock it, you have to","Re-arrange the tiles so they make an image"]) + player.popUp=PopUp(10,10,["This door has a special kind of lock","To unlock it, you have to","Re-arrange the tiles","using the arrow keys","to make the image whole"]) else: player.popUp=None def stopPuzzle(player,solved): @@ -2032,15 +2038,6 @@ def drawPuzzle(player,screen): #draw background and completed image screen.fill((0,0,0),(0,0,1200,900)) screen.blit(player.puzzle.puzBG,(75,-750,1200,900)) - if player.puzzleTutorial==False: - font=pygame.font.SysFont("cmr10",35,False,False) - y=0 - screen.fill((255,255,255),(0,2,1200,200)) - lines=["This door is locked with a special lock. In order to unlock it, you must"," re-arrange the tiles and make the image whole. Use the arrow keys ","to slide the tiles. You can view the completed image by pressing","any other button. To give up, press or backspace."] - screen.blit(pygame.image.load(TOUR_PATH+"button/"+"buttonX.gif"),(570,150,40,40)) - for message in lines: - screen.blit(font.render(message,True,(75,0,0)),(0,20+y,200,300)) - y+=40 if player.puzzle.showFull: screen.blit(player.puzzle.completedPuzzle,(300,100,600,400)) else: |