Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/MAFH2/BattleEngine.py
diff options
context:
space:
mode:
authorslm <jtmengel@gmail.com>2010-07-20 20:29:13 (GMT)
committer slm <jtmengel@gmail.com>2010-07-20 20:29:13 (GMT)
commit2df5376c9fcf9954affa2d0cb2db7a91a4ffbb81 (patch)
tree7b710dddf8bf0cbb5305465b10b8bd3d03175227 /MAFH2/BattleEngine.py
parent8055c1f3479c83d3e1c6642651755fb346d75cd1 (diff)
Made additions to GameEngine.py to expect draw.dirtyList[] objects to be returned and appended to a master __dirtyList in GameEngine, which will then pygame.display.update(__dirtyList) which should improve framerates with numerous static images on screen at the same time.
Diffstat (limited to 'MAFH2/BattleEngine.py')
-rw-r--r--MAFH2/BattleEngine.py29
1 files changed, 19 insertions, 10 deletions
diff --git a/MAFH2/BattleEngine.py b/MAFH2/BattleEngine.py
index 8a0da13..98e9b0a 100644
--- a/MAFH2/BattleEngine.py
+++ b/MAFH2/BattleEngine.py
@@ -2,9 +2,10 @@ from fortuneengine.GameEngineElement import GameEngineElement
from Enemy import get_enemy
from BattleMenu import BattleMenuHolder
from MagicMenu import MagicMenuHolder
-from AnimatedSprite import Spritesheet
+from drawableobject.Spritesheet import Spritesheet
from Items import get_item
-from drawableobject import DrawableObject, DynamicDrawableObject, Spritesheet
+from drawableobject.DrawableObject import DrawableObject
+from drawableobject.DynamicDrawableObject import DynamicDrawableObject
import pygame
from constants import CHAR_PATH, HUD_PATH
@@ -14,6 +15,7 @@ import random
PLAYER_WAIT = 1
PLAYER_MULT = 2
+_dirtyList=[]
class BattleEngine(GameEngineElement):
def __init__(self, dgn):
@@ -372,24 +374,31 @@ class BattleEngine(GameEngineElement):
# \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/
#
def draw(self,screen,time_delta):
+ _dirtyList=[]
x=250
y=150
i = 1
-
+
tick_time = pygame.time.get_ticks()
# Draw Enemy and Item Selection
for enemy in self.enemy_list:
- if enemy.alive:
- if self.active_target == i:
- screen.blit(self.__images['arrow_select'], (x+(i*200),y-25))
- enemy.sprite.update( tick_time )
- screen.blit(enemy.sprite.image, (x+(i*200),y))
- i = i+1
+ if enemy.alive and self.active_target == i:
+# screen.blit(self.__images['arrow_select'], (x+(i*200),y-25)) #1 orig
+ _dirtyList.append(self.__images['arrow_select'].get_rect().move((x+(i*200),y-25))) #1 new
+ enemy.sprite.updateAnim( tick_time ) #2 orig
+# screen.blit(enemy.sprite.image, (x+(i*200),y) ) #3 orig
+ _dirtyList.append(enemy.sprite.image.get_rect().move( (x+(i*200),y) )) #3 new
+ i = i+1
# Draw Hud
profile = self.game_engine.get_object('profile')
# Player Health
health = 10 - profile.hero.healthLevel()
- screen.blit(self.__images['hp'][health], (25,25))
+# screen.blit(self.__images['hp'][health], (25,25)) #4 orig
+ _dirtyList.append( self.__images['hp'][health].get_rect().move((25,25)) ) #4 new
+ enemy.sprite.updateAnim( tick_time ) #2 new
+ #what the hell does ^^ do??
+# pygame.display.update(_dirtyList) #5 new
+ return _dirtyList