Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/MAFH2/BattleEngine.py
diff options
context:
space:
mode:
Diffstat (limited to 'MAFH2/BattleEngine.py')
-rw-r--r--MAFH2/BattleEngine.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/MAFH2/BattleEngine.py b/MAFH2/BattleEngine.py
new file mode 100644
index 0000000..c31c4d3
--- /dev/null
+++ b/MAFH2/BattleEngine.py
@@ -0,0 +1,57 @@
+from GameEngine import GameEngineElement
+from Enemy import get_enemy
+import pygame
+
+from constants import CHAR_PATH
+
+from gettext import gettext as _
+
+class BattleEngine(GameEngineElement):
+ def __init__(self, dgn):
+ GameEngineElement.__init__(self, has_draw=True, has_event=True)
+
+ self.dgn = dgn
+ self.current_room = dgn.get_current_room()
+
+ self.enemy_list = []
+
+ for i in range(0,4):
+ e_index = self.current_room.get_enemy( i )
+
+ if e_index != '0':
+ self.enemy_list.append( get_enemy( e_index ) )
+
+
+ self.game_engine.start_event_timer(1, 150)
+
+ self.add_to_engine()
+ self.game_engine.get_object('mesg').add_line( _('Enemies present, prepare to fight!') )
+
+ def __attack_phase(self):
+ # Enemy Attack
+ # Check player health
+ pass
+
+ def __end_battle(self):
+ #Give items if any
+ #self terminate
+ pass
+
+ def event_handler(self, event):
+ if event.type == pygame.USEREVENT+1:
+ return True
+
+ # We don't want to allow other things to run durning battle
+ return True
+
+ def draw(self, screen):
+ x=250
+ y=150
+ i = 1
+
+ tick_time = pygame.time.get_ticks()
+
+ for enemy in self.enemy_list:
+ enemy.sprite.update( tick_time )
+ screen.blit(enemy.sprite.image, (x+(i*200),y,200,200))
+ i = i+1