Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/anim/Animation Styles
diff options
context:
space:
mode:
authorslm <jtmengel@gmail.com>2010-08-05 18:21:45 (GMT)
committer slm <jtmengel@gmail.com>2010-08-05 18:21:45 (GMT)
commit725c625e6f129e7972177483b59295e9e3d8b0a9 (patch)
tree0e7c72bb56b5695acc7faeac18b5af9ca64f0dec /anim/Animation Styles
parent04334feb88aa124afca62dec8f4f742539c90e3e (diff)
Added files which I had previously forgotten to add
Diffstat (limited to 'anim/Animation Styles')
-rwxr-xr-xanim/Animation Styles/AnimatedSprite.py141
-rwxr-xr-xanim/Animation Styles/AnimatedSpriteTest.py317
-rw-r--r--anim/Animation Styles/AnimatedSpriteTest.py~289
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/bmp16/Buttons.bmpbin0 -> 57656 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/bmp16/text.txt2
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/bmp24/Buttons.bmpbin0 -> 86456 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/bmp24/text.txt2
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/gif/Buttons.gifbin0 -> 4053 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/gif/text.txt2
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/gift/Buttons.gifbin0 -> 2722 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/gift/text.txt2
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/png/Buttons.pngbin0 -> 5786 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/png/text.txt2
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/pngt/Buttons.pngbin0 -> 6542 bytes
-rwxr-xr-xanim/Animation Styles/AnimationPerLine/pngt/text.txt2
-rwxr-xr-xanim/Animation Styles/Buttons.psdbin0 -> 88230 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/1.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/2.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/3.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/4.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/5.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/6.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/7.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/8.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a1/9.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/1.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/2.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/3.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/4.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/5.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/6.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/7.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/8.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp16/a2/9.bmpbin0 -> 3256 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/1.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/2.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/3.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/4.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/5.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/6.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/7.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/8.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a1/9.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/1.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/2.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/3.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/4.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/5.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/6.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/7.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/8.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/bmp24/a2/9.bmpbin0 -> 4856 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/1.gifbin0 -> 259 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/2.gifbin0 -> 411 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/3.gifbin0 -> 334 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/4.gifbin0 -> 272 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/5.gifbin0 -> 314 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/6.gifbin0 -> 282 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/7.gifbin0 -> 344 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/8.gifbin0 -> 400 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a1/9.gifbin0 -> 388 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/1.gifbin0 -> 259 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/2.gifbin0 -> 411 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/3.gifbin0 -> 334 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/4.gifbin0 -> 272 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/5.gifbin0 -> 314 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/6.gifbin0 -> 282 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/7.gifbin0 -> 344 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/8.gifbin0 -> 400 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gif/a2/9.gifbin0 -> 388 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/1.gifbin0 -> 207 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/2.gifbin0 -> 316 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/3.gifbin0 -> 297 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/4.gifbin0 -> 241 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/5.gifbin0 -> 250 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/6.gifbin0 -> 233 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/7.gifbin0 -> 228 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/8.gifbin0 -> 258 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a1/9.gifbin0 -> 304 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/1.gifbin0 -> 207 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/2.gifbin0 -> 316 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/3.gifbin0 -> 297 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/4.gifbin0 -> 241 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/5.gifbin0 -> 250 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/6.gifbin0 -> 233 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/7.gifbin0 -> 228 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/8.gifbin0 -> 258 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/gift/a2/9.gifbin0 -> 304 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/1.pngbin0 -> 3012 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/2.pngbin0 -> 3215 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/3.pngbin0 -> 3115 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/4.pngbin0 -> 3055 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/5.pngbin0 -> 3124 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/6.pngbin0 -> 3111 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/7.pngbin0 -> 3247 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/8.pngbin0 -> 3230 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a1/9.pngbin0 -> 3270 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/1.pngbin0 -> 3013 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/2.pngbin0 -> 3227 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/3.pngbin0 -> 3116 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/4.pngbin0 -> 3056 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/5.pngbin0 -> 3134 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/6.pngbin0 -> 3112 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/7.pngbin0 -> 3246 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/8.pngbin0 -> 3237 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/png/a2/9.pngbin0 -> 3273 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/1.pngbin0 -> 3049 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/2.pngbin0 -> 3356 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/3.pngbin0 -> 3178 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/4.pngbin0 -> 3095 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/5.pngbin0 -> 3234 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/6.pngbin0 -> 3177 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/7.pngbin0 -> 3092 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/8.pngbin0 -> 3171 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a1/9.pngbin0 -> 3195 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/1.pngbin0 -> 3035 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/2.pngbin0 -> 3353 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/3.pngbin0 -> 3178 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/4.pngbin0 -> 3081 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/5.pngbin0 -> 3235 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/6.pngbin0 -> 3174 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/7.pngbin0 -> 3074 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/8.pngbin0 -> 3174 bytes
-rwxr-xr-xanim/Animation Styles/IndividualFrames/pngt/a2/9.pngbin0 -> 3177 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp16/1.bmpbin0 -> 28856 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp16/2.bmpbin0 -> 28856 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp16/text.txt2
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp24/1.bmpbin0 -> 43256 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp24/2.bmpbin0 -> 43256 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/bmp24/text.txt2
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gif/1.gifbin0 -> 1883 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gif/2.gifbin0 -> 1883 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gif/text.txt2
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gift/1.gifbin0 -> 1162 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gift/2.gifbin0 -> 1388 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/gift/text.txt2
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/png/1.pngbin0 -> 4317 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/png/2.pngbin0 -> 4342 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/png/text.txt2
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/pngt/1.pngbin0 -> 4164 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/pngt/2.pngbin0 -> 5185 bytes
-rwxr-xr-xanim/Animation Styles/OneSheetPerAnimation/pngt/text.txt2
142 files changed, 771 insertions, 0 deletions
diff --git a/anim/Animation Styles/AnimatedSprite.py b/anim/Animation Styles/AnimatedSprite.py
new file mode 100755
index 0000000..6796600
--- /dev/null
+++ b/anim/Animation Styles/AnimatedSprite.py
@@ -0,0 +1,141 @@
+import pygame
+
+class Spritesheet:
+ """
+ Class from http://www.scriptedfun.com/transcript-2-using-sprite-sheets-and-drawing-the-background/
+
+ This class can be used to seporate images from the sprite sheet
+ """
+ def __init__(self, filename):
+ self.sheet = pygame.image.load(filename)#.convert()
+
+ def imgat(self, rect):
+ rect = pygame.Rect(rect)
+ image = pygame.Surface(rect.size)#.convert()
+ image.blit(self.sheet, (0, 0), rect)
+ return image
+
+ def imgsat(self, rects):
+ imgs = []
+ for rect in rects:
+ imgs.append(self.imgat(rect))
+ return imgs
+
+ def img_extract( self, cols, rows, width, height ):
+ rect_list = []
+ for y in range(0, rows):
+ for x in range(0, cols):
+ rect_list.append( (width*x, height*y, width, height) )
+ return self.imgsat( rect_list)
+
+
+class AnimatedSprite(pygame.sprite.Sprite):
+ """
+ http://shinylittlething.com/2009/07/21/pygame-and-animated-sprites/
+ """
+
+ def __init__(self,images,textfileName,fps = 10):
+ pygame.sprite.Sprite.__init__(self)
+ self._images = images
+
+ # Track the time we started, and the time between updates.
+ # Then we can figure out when we have to switch the image.
+ self._start = pygame.time.get_ticks()
+ self._delay = 1000 / fps
+ self._last_update = 0
+ self._frame = 0
+ self.animations = {}
+
+ if textfileName != '':
+ f = open(textfileName, 'r')
+ currentLine = f.readline()
+ while currentLine != '':
+ animValues = currentLine.split(",")
+ #This is a list called animations that at each position contains a list of two values. the first value is the start position
+ #of the given animation and the second is the end position of the given animation
+ self.animations[animValues[0]] = [int(animValues[1]), int(animValues[2])]
+ currentLine = f.readline()
+
+ # Call update to set our first image.
+ #self.update(pygame.time.get_ticks())
+
+ def addImages(self, images):
+
+ self._images.extend(images)
+
+ def update(self, t):
+ # This method updates the animation in a situation where there is only one animation contained within the object.
+
+ #calculates the amount of time that has passed since the last update
+ timePassed = t - self._last_update
+ #checks if enough time has passed that it would need to update the frame of the animation
+ if timePassed > self._delay:
+ #since enough time has passed, it will determine how many times the frame was supposed to change since the last update
+ frameChanges = int(timePassed/self._delay)
+ #goes to the frame that it should be at right now and skips any frames that would have already been over and done with
+ self._frame += frameChanges
+ #checks if the current frame is past the final frame and continues to check over and over until it is not
+ while self._frame >= len(self._images):
+ #since we are past the final frame it is now figuring out how many frames past the final frame we have actually gone
+ framesPast = self._frame - len(self._images)
+ #sets the current frame to the frame it should be at
+ self._frame = framesPast - 1
+ #sets the current image to the image associated with the current frame
+ self.image = self._images[self._frame]
+ #sets the last update value to the current time so that at the next update the time change is accurate
+ self._last_update = t
+
+ def updateAnimation(self, t, animName):
+ # This method updates the animation based on the start and end frame of the specific animation you are on.
+ #This means that if your object contains multiple animations, you can use this method to reference the exact
+ #animation that you are using.
+
+ #calculates the amount of time that has passed since the last update
+ timePassed = t - self._last_update
+ #checks if enough time has passed that it would need to update the frame of the animation
+ if timePassed > self._delay:
+ #Checks to make sure that the current frame is actually set to a position within the animation
+ if self._frame < self.animations.get(animName)[0] or self._frame > self.animations.get(animName)[1]:
+ #corrects the position of the current frame
+ self._frame = self.animations.get(animName)[0]
+ #since enough time has passed, it will determine how many times the frame was supposed to change since the last update
+ frameChanges = int(timePassed/self._delay)
+ #goes to the frame that it should be at right now and skips any frames that would have already been over and done with
+ self._frame += frameChanges
+ #checks if the current frame is past the final frame of the current animation and continues to check over and over
+ #until it is not
+ while self._frame >= self.animations.get(animName)[1]:
+ #Determines how many frames past the final frame of the animation it is
+ framesPast = self._frame - self.animations.get(animName)[1]
+ #Sets the current frame to the frame it should be at
+ self._frame = framesPast - 1 + self.animations.get(animName)[0]
+ #sets the current image to the image associated with the current frame
+ self.image = self._images[self._frame]
+ #sets the last update value to the current time so that at the next update the time change is accurate
+ self._last_update = t
+
+ def nextFrame(self):
+ # This definition is designed to simply move to the next frame.
+ # All of the other definitions only move to the nex frame if
+ # enough time has passed based on the framerate. With this
+ # definition I can go right to the next frame allowing me to
+ # see how fast a framerate I can get to and not be limited by
+ # what I define.
+
+ self._frame += 1
+ if self._frame >= len(self._images):
+ framesPast = self._frame - len(self._images)
+ self._frame = framesPast
+ self.image = self._images[self._frame]
+
+ def nextAnimFrame(self, animName):
+ # This definition is designed to simply move to the next frame of the specified animation.
+ if self._frame < self.animations[animName][0]:
+ self._frame = self.animations[animName][0]
+
+ self._frame += 1
+ if self._frame > self.animations[animName][1]:
+ framesPast = self._frame - self.animations[animName][1]
+ self._frame = framesPast - 1 + self.animations[animName][0]
+ self.image = self._images[self._frame]
+
diff --git a/anim/Animation Styles/AnimatedSpriteTest.py b/anim/Animation Styles/AnimatedSpriteTest.py
new file mode 100755
index 0000000..1f8bbe5
--- /dev/null
+++ b/anim/Animation Styles/AnimatedSpriteTest.py
@@ -0,0 +1,317 @@
+#! /usr/bin/env python
+from AnimatedSprite import Spritesheet
+from AnimatedSprite import AnimatedSprite
+import pygame
+import time
+pygame.init()
+
+make=input("How many images would you like to load? ")
+img={}
+ft="" #filetype
+r=0 #frame refreshes
+i=1 #cycles images
+SIZE = WIDTH, HEIGHT = 600,400 #screen sizes
+t=0 #trial number
+
+BACKGROUNDR=152
+BACKGROUNDG=0
+BACKGROUNDB=152
+
+AnimPerLineArr=[
+ [".bmp","AnimationPerLine/bmp16/"],
+ [".bmp","AnimationPerLine/bmp24/"],
+ [".gif","AnimationPerLine/gif/"] ,
+ [".gif","AnimationPerLine/gift/"] ,
+ [".png","AnimationPerLine/png/"] ,
+ [".png","AnimationPerLine/pngt/"] ]
+
+FixedWidthArr=[
+ [".bmp","FixedWithSheets/bmp16/"],
+ [".bmp","FixedWithSheets/bmp24/"],
+ [".gif","FixedWithSheets/gif/"] ,
+ [".gif","FixedWithSheets/gift/"] ,
+ [".png","FixedWithSheets/png/"] ,
+ [".png","FixedWidthSheets/pngt/"] ]
+
+OneSheetArr=[
+ [".bmp","OneSheetPerAnimation/bmp16/"],
+ [".bmp","OneSheetPerAnimation/bmp24/"],
+ [".gif","OneSheetPerAnimation/gif/"] ,
+ [".gif","OneSheetPerAnimation/gift/"] ,
+ [".png","OneSheetPerAnimation/png/"] ,
+ [".png","OneSheetPerAnimation/pngt/"] ]
+
+IndivFrameArr=[
+ [".bmp","IndividualFrames/bmp16/"],
+ [".bmp","IndividualFrames/bmp24/"],
+ [".gif","IndividualFrames/gif/"] ,
+ [".gif","IndividualFrames/gift/"] ,
+ [".png","IndividualFrames/png/"] ,
+ [".png","IndividualFrames/pngt/"] ]
+
+screen = pygame.display.set_mode(SIZE) #Screen Set 600x400
+
+screen.fill((BACKGROUNDR, BACKGROUNDG, BACKGROUNDB))
+
+"""Reading Individual Frames
+"""
+
+def readIndivFrames(fileType, path):
+ switch1 = [
+ [pygame.image.load("%sa1/1%s"%(path,fileType))],
+ [pygame.image.load("%sa1/2%s"%(path,fileType))],
+ [pygame.image.load("%sa1/3%s"%(path,fileType))],
+ [pygame.image.load("%sa1/4%s"%(path,fileType))],
+ [pygame.image.load("%sa1/5%s"%(path,fileType))],
+ [pygame.image.load("%sa1/6%s"%(path,fileType))],
+ [pygame.image.load("%sa1/7%s"%(path,fileType))],
+ [pygame.image.load("%sa1/8%s"%(path,fileType))],
+ [pygame.image.load("%sa1/9%s"%(path,fileType))]
+ ]
+
+ switch2 = [
+ [pygame.image.load("%sa2/1%s"%(path,fileType))],
+ [pygame.image.load("%sa2/2%s"%(path,fileType))],
+ [pygame.image.load("%sa2/3%s"%(path,fileType))],
+ [pygame.image.load("%sa2/4%s"%(path,fileType))],
+ [pygame.image.load("%sa2/5%s"%(path,fileType))],
+ [pygame.image.load("%sa2/6%s"%(path,fileType))],
+ [pygame.image.load("%sa2/7%s"%(path,fileType))],
+ [pygame.image.load("%sa2/8%s"%(path,fileType))],
+ [pygame.image.load("%sa2/9%s"%(path,fileType))]
+ ]
+
+ instances= []
+
+ cnt = make
+
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(switch1,'',10),[(40*cnt),0,2,2]])
+
+ animatedSprites.append([AnimatedSprite(switch2,'',10),[(40*cnt),40,2,2]])
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextFrame()
+ instances[groups][1][0].nextFrame()
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image[0], (instances[groups][0][0].image[0].get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image[0], (instances[groups][1][0].image[0].get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+#-----------------------------------------------------------------
+
+def readPerLine(fileType, path):
+
+ spriteSheet1 = Spritesheet(("%sButtons%s"%(path,fileType)))
+
+ instances= []
+
+ cnt = make
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,2,40,40),("%stext.txt"%(path)),10),[(40*cnt),0,2,2]])
+
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,2,40,40),("%stext.txt"%(path)),10),[(40*cnt),40,2,2]])
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextAnimFrame("anim1")
+ instances[groups][1][0].nextAnimFrame("anim2")
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image, (instances[groups][0][0].image.get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image, (instances[groups][1][0].image.get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+#-----------------------------------------------------------------
+def readIndivSheet(fileType, path):
+
+ spriteSheet1 = Spritesheet(("%s1%s"%(path,fileType)))
+ spriteSheet2 = Spritesheet(("%s2%s"%(path,fileType)))
+
+ instances= []
+
+ cnt = make
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,1,40,40),("%stext.txt"%(path)),10),[(40*cnt),0,2,2]])
+ animatedSprites[0][0].addImages(spriteSheet2.img_extract(9,1,40,40))
+
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,1,40,40),("%stext.txt"%(path)),10),[(40*cnt),40,2,2]])
+ animatedSprites[1][0].addImages(spriteSheet2.img_extract(9,1,40,40))
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextAnimFrame("anim1")
+ instances[groups][1][0].nextAnimFrame("anim2")
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > WIDTH - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > HEIGHT - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > WIDTH - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > HEIGHT - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image, (instances[groups][0][0].image.get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image, (instances[groups][1][0].image.get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((BACKGROUNDR,BACKGROUNDG,BACKGROUNDB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+
+#-----------------------------------------------------------------
+iterator = 0
+print "\nTesting One Sheet Per Animation"
+print ""
+while iterator < len(AnimPerLineArr):
+
+ print ""
+ print OneSheetArr[iterator][1]
+ readIndivSheet(OneSheetArr[iterator][0],OneSheetArr[iterator][1])
+ iterator += 1
+
+iterator = 0
+print ""
+print "Testing One Animation Per Line"
+print ""
+while iterator < len(OneSheetArr):
+
+ print ""
+ print AnimPerLineArr[iterator][1]
+ readPerLine(AnimPerLineArr[iterator][0],AnimPerLineArr[iterator][1])
+ iterator += 1
+
+iterator = 0
+print ""
+print "Testing Individual Frames"
+print ""
+while iterator < len(IndivFrameArr):
+
+ print ""
+ print IndivFrameArr[iterator][1]
+ readIndivFrames(IndivFrameArr[iterator][0],IndivFrameArr[iterator][1])
+ iterator += 1
diff --git a/anim/Animation Styles/AnimatedSpriteTest.py~ b/anim/Animation Styles/AnimatedSpriteTest.py~
new file mode 100644
index 0000000..1aac3bb
--- /dev/null
+++ b/anim/Animation Styles/AnimatedSpriteTest.py~
@@ -0,0 +1,289 @@
+from AnimatedSprite import Spritesheet, AnimatedSprite
+import sys, pygame, time
+pygame.init()
+
+print "Animated Sprite Test - Authors Dave Silverman and Scott Mengel"
+
+#--------------------------------------------------------------
+#CONSTANTS AND VARIABLES
+
+make=input("How many images would you like to load? ")
+img={}
+ft="" #filetype
+r=0 #frame refreshes
+i=1 #cycles images
+size = width, height = 600,400 #screen sizes
+t=0 #trial number
+
+AnimPerLineArr=[ ["bmp","AnimationPerLine/bmp16/"] , ["bmp","AnimationPerLine/bmp24/"] , ["gif","AnimationPerLine/gif/"] , ["gif","AnimationPerLine/gift/"] , ["png","AnimationPerLine/png/"] , ["png","AnimationPerLine/pngt/"] ]
+FixedWidthArr=[ ["bmp","FixedWithSheets/bmp16/"] , ["bmp","FixedWithSheets/bmp24/"] , ["gif","FixedWithSheets/gif/"] , ["gif","FixedWithSheets/gift/"] , ["png","FixedWithSheets/png/"] , ["png","FixedWidthSheets/pngt/"] ]
+OneSheetArr=[ ["bmp","OneSheetPerAnimation/bmp16/"] , ["bmp","OneSheetPerAnimation/bmp24/"] , ["gif","OneSheetPerAnimation/gif/"] , ["gif","OneSheetPerAnimation/gift/"] , ["png","OneSheetPerAnimation/png/"] , ["png","OneSheetPerAnimation/pngt/"] ]
+IndivFrameArr=[ ["bmp","IndividualFrames/bmp16/"] , ["bmp","IndividualFrames/bmp24/"] , ["gif","IndividualFrames/gif/"] , ["gif","IndividualFrames/gift/"] , ["png","IndividualFrames/png/"] , ["png","IndividualFrames/pngt/"] ]
+
+screen = pygame.display.set_mode(size) #Screen Set 600x400
+backgroundR = 152
+backgroundG = 0
+backgroundB = 152
+screen.fill((backgroundR, backgroundG, backgroundB))
+#-----------------------------------------------------------------
+#Reading Individual Frames
+
+def readIndivFrames(fileType, path):
+ switch1 = [
+ [pygame.image.load("%sa1/1.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/2.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/3.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/4.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/5.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/6.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/7.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/8.%s"%(path,fileType))],
+ [pygame.image.load("%sa1/9.%s"%(path,fileType))]
+ ]
+
+ switch2 = [
+ [pygame.image.load("%sa2/1.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/2.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/3.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/4.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/5.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/6.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/7.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/8.%s"%(path,fileType))],
+ [pygame.image.load("%sa2/9.%s"%(path,fileType))]
+ ]
+
+ instances= []
+
+ cnt = make
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(switch1,'',10),[(40*cnt),0,2,2]])
+
+ animatedSprites.append([AnimatedSprite(switch2,'',10),[(40*cnt),40,2,2]])
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextFrame()
+ instances[groups][1][0].nextFrame()
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image[0], (instances[groups][0][0].image[0].get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image[0], (instances[groups][1][0].image[0].get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((backgroundR,backgroundG,backgroundB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+#-----------------------------------------------------------------
+
+def readPerLine(fileType, path):
+
+ spriteSheet1 = Spritesheet(("%sButtons.%s"%(path,fileType)))
+
+ instances= []
+
+ cnt = make
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,2,40,40),("%stext.txt"%(path)),10),[(40*cnt),0,2,2]])
+
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,2,40,40),("%stext.txt"%(path)),10),[(40*cnt),40,2,2]])
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextAnimFrame("anim1")
+ instances[groups][1][0].nextAnimFrame("anim2")
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image, (instances[groups][0][0].image.get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image, (instances[groups][1][0].image.get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((backgroundR,backgroundG,backgroundB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+#-----------------------------------------------------------------
+def readIndivSheet(fileType, path):
+
+ spriteSheet1 = Spritesheet(("%s1.%s"%(path,fileType)))
+ spriteSheet2 = Spritesheet(("%s2.%s"%(path,fileType)))
+
+ instances= []
+
+ cnt = make
+ while cnt > 0:
+ animatedSprites = []
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,1,40,40),("%stext.txt"%(path)),10),[(40*cnt),0,2,2]])
+ animatedSprites[0][0].addImages(spriteSheet2.img_extract(9,1,40,40))
+
+ animatedSprites.append([AnimatedSprite(spriteSheet1.img_extract(9,1,40,40),("%stext.txt"%(path)),10),[(40*cnt),40,2,2]])
+ animatedSprites[1][0].addImages(spriteSheet2.img_extract(9,1,40,40))
+
+ instances.append(animatedSprites)
+
+ cnt = cnt - 1
+
+ trials = 0
+ while trials < 5:
+
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][1][0] = 40 * groups
+ instances[groups][0][1][1] = 0
+ instances[groups][1][1][0] = 40 * groups
+ instances[groups][1][1][1] = 40
+ groups = groups - 1
+
+ changes = 0
+ start = time.time()
+ while changes < 500:
+ groups = len(instances) - 1
+ while groups >= 0:
+ instances[groups][0][0].nextAnimFrame("anim1")
+ instances[groups][1][0].nextAnimFrame("anim2")
+
+ if instances[groups][0][1][0] < 0 or instances[groups][0][1][0] > width - 40:
+ instances[groups][0][1][2] = instances[groups][0][1][2] * -1
+
+ if instances[groups][0][1][1] < 0 or instances[groups][0][1][1] > height - 40:
+ instances[groups][0][1][3] = instances[groups][0][1][3] * -1
+
+ if instances[groups][1][1][0] < 0 or instances[groups][1][1][0] > width - 40:
+ instances[groups][1][1][2] = instances[groups][1][1][2] * -1
+
+ if instances[groups][1][1][1] < 0 or instances[groups][1][1][1] > height - 40:
+ instances[groups][1][1][3] = instances[groups][1][1][3] * -1
+
+
+ instances[groups][0][1][0] += instances[groups][0][1][2]
+ instances[groups][0][1][1] += instances[groups][0][1][3]
+
+ instances[groups][1][1][0] += instances[groups][1][1][2]
+ instances[groups][1][1][1] += instances[groups][1][1][3]
+
+ screen.blit(instances[groups][0][0].image, (instances[groups][0][0].image.get_rect().move(instances[groups][0][1][0], instances[groups][0][1][1])))
+ screen.blit(instances[groups][1][0].image, (instances[groups][1][0].image.get_rect().move(instances[groups][1][1][0], instances[groups][1][1][1])))
+
+ groups = groups - 1
+ pygame.display.flip()
+ screen.fill((backgroundR,backgroundG,backgroundB))
+ changes = changes + 1
+ trials = trials + 1
+ print(trials)
+ print(1/((time.time() -start)/500))
+
+
+#-----------------------------------------------------------------
+iterator = 0
+print""
+print "Testing One Sheet Per Animation"
+print ""
+while iterator < len(AnimPerLineArr):
+
+ print""
+ print OneSheetArr[iterator][1]
+ readIndivSheet(OneSheetArr[iterator][0],OneSheetArr[iterator][1])
+ iterator += 1
+
+iterator = 0
+print""
+print "Testing One Animation Per Line"
+print ""
+while iterator < len(OneSheetArr):
+
+ print ""
+ print AnimPerLineArr[iterator][1]
+ readPerLine(AnimPerLineArr[iterator][0],AnimPerLineArr[iterator][1])
+ iterator += 1
+
+iterator = 0
+print ""
+print "Testing Individual Frames"
+print ""
+while iterator < len(IndivFrameArr):
+
+ print ""
+ print IndivFrameArr[iterator][1]
+ readIndivFrames(IndivFrameArr[iterator][0],IndivFrameArr[iterator][1])
+ iterator += 1
diff --git a/anim/Animation Styles/AnimationPerLine/bmp16/Buttons.bmp b/anim/Animation Styles/AnimationPerLine/bmp16/Buttons.bmp
new file mode 100755
index 0000000..7edcb3c
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/bmp16/Buttons.bmp
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/bmp16/text.txt b/anim/Animation Styles/AnimationPerLine/bmp16/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/bmp16/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/AnimationPerLine/bmp24/Buttons.bmp b/anim/Animation Styles/AnimationPerLine/bmp24/Buttons.bmp
new file mode 100755
index 0000000..a96ed6b
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/bmp24/Buttons.bmp
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/bmp24/text.txt b/anim/Animation Styles/AnimationPerLine/bmp24/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/bmp24/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/AnimationPerLine/gif/Buttons.gif b/anim/Animation Styles/AnimationPerLine/gif/Buttons.gif
new file mode 100755
index 0000000..8725ade
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/gif/Buttons.gif
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/gif/text.txt b/anim/Animation Styles/AnimationPerLine/gif/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/gif/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/AnimationPerLine/gift/Buttons.gif b/anim/Animation Styles/AnimationPerLine/gift/Buttons.gif
new file mode 100755
index 0000000..4be81f6
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/gift/Buttons.gif
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/gift/text.txt b/anim/Animation Styles/AnimationPerLine/gift/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/gift/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/AnimationPerLine/png/Buttons.png b/anim/Animation Styles/AnimationPerLine/png/Buttons.png
new file mode 100755
index 0000000..83bff0c
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/png/Buttons.png
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/png/text.txt b/anim/Animation Styles/AnimationPerLine/png/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/png/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/AnimationPerLine/pngt/Buttons.png b/anim/Animation Styles/AnimationPerLine/pngt/Buttons.png
new file mode 100755
index 0000000..cb6766f
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/pngt/Buttons.png
Binary files differ
diff --git a/anim/Animation Styles/AnimationPerLine/pngt/text.txt b/anim/Animation Styles/AnimationPerLine/pngt/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/AnimationPerLine/pngt/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/Buttons.psd b/anim/Animation Styles/Buttons.psd
new file mode 100755
index 0000000..a1571e2
--- /dev/null
+++ b/anim/Animation Styles/Buttons.psd
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/1.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/1.bmp
new file mode 100755
index 0000000..57630e3
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/2.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/2.bmp
new file mode 100755
index 0000000..90af77a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/3.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/3.bmp
new file mode 100755
index 0000000..1751a4a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/3.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/4.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/4.bmp
new file mode 100755
index 0000000..1f292d1
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/4.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/5.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/5.bmp
new file mode 100755
index 0000000..fd8cc0e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/5.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/6.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/6.bmp
new file mode 100755
index 0000000..df3a2eb
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/6.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/7.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/7.bmp
new file mode 100755
index 0000000..51b0052
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/7.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/8.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/8.bmp
new file mode 100755
index 0000000..9302c64
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/8.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a1/9.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a1/9.bmp
new file mode 100755
index 0000000..f5c6191
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a1/9.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/1.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/1.bmp
new file mode 100755
index 0000000..4def064
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/2.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/2.bmp
new file mode 100755
index 0000000..3750af4
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/3.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/3.bmp
new file mode 100755
index 0000000..636c6f3
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/3.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/4.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/4.bmp
new file mode 100755
index 0000000..646b407
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/4.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/5.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/5.bmp
new file mode 100755
index 0000000..11a9bf5
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/5.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/6.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/6.bmp
new file mode 100755
index 0000000..ca1ba7b
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/6.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/7.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/7.bmp
new file mode 100755
index 0000000..9375c15
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/7.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/8.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/8.bmp
new file mode 100755
index 0000000..53b66f9
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/8.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp16/a2/9.bmp b/anim/Animation Styles/IndividualFrames/bmp16/a2/9.bmp
new file mode 100755
index 0000000..088558c
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp16/a2/9.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/1.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/1.bmp
new file mode 100755
index 0000000..e910cec
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/2.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/2.bmp
new file mode 100755
index 0000000..0545f38
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/3.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/3.bmp
new file mode 100755
index 0000000..a154b29
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/3.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/4.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/4.bmp
new file mode 100755
index 0000000..4ab21f9
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/4.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/5.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/5.bmp
new file mode 100755
index 0000000..0a55d39
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/5.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/6.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/6.bmp
new file mode 100755
index 0000000..ad3f1b1
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/6.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/7.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/7.bmp
new file mode 100755
index 0000000..915ab5b
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/7.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/8.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/8.bmp
new file mode 100755
index 0000000..b36287d
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/8.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a1/9.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a1/9.bmp
new file mode 100755
index 0000000..2cab5a4
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a1/9.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/1.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/1.bmp
new file mode 100755
index 0000000..1b41dff
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/2.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/2.bmp
new file mode 100755
index 0000000..71cca69
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/3.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/3.bmp
new file mode 100755
index 0000000..a374206
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/3.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/4.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/4.bmp
new file mode 100755
index 0000000..37c4304
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/4.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/5.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/5.bmp
new file mode 100755
index 0000000..51f1acb
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/5.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/6.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/6.bmp
new file mode 100755
index 0000000..483043c
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/6.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/7.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/7.bmp
new file mode 100755
index 0000000..d99e779
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/7.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/8.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/8.bmp
new file mode 100755
index 0000000..223b87e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/8.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/bmp24/a2/9.bmp b/anim/Animation Styles/IndividualFrames/bmp24/a2/9.bmp
new file mode 100755
index 0000000..088a0f5
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/bmp24/a2/9.bmp
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/1.gif b/anim/Animation Styles/IndividualFrames/gif/a1/1.gif
new file mode 100755
index 0000000..4a89216
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/1.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/2.gif b/anim/Animation Styles/IndividualFrames/gif/a1/2.gif
new file mode 100755
index 0000000..b5019d8
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/2.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/3.gif b/anim/Animation Styles/IndividualFrames/gif/a1/3.gif
new file mode 100755
index 0000000..a87ddc6
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/3.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/4.gif b/anim/Animation Styles/IndividualFrames/gif/a1/4.gif
new file mode 100755
index 0000000..2a398e6
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/4.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/5.gif b/anim/Animation Styles/IndividualFrames/gif/a1/5.gif
new file mode 100755
index 0000000..93e5b8d
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/5.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/6.gif b/anim/Animation Styles/IndividualFrames/gif/a1/6.gif
new file mode 100755
index 0000000..0e73825
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/6.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/7.gif b/anim/Animation Styles/IndividualFrames/gif/a1/7.gif
new file mode 100755
index 0000000..061669a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/7.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/8.gif b/anim/Animation Styles/IndividualFrames/gif/a1/8.gif
new file mode 100755
index 0000000..90dcfda
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/8.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a1/9.gif b/anim/Animation Styles/IndividualFrames/gif/a1/9.gif
new file mode 100755
index 0000000..aa194d9
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a1/9.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/1.gif b/anim/Animation Styles/IndividualFrames/gif/a2/1.gif
new file mode 100755
index 0000000..09134f4
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/1.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/2.gif b/anim/Animation Styles/IndividualFrames/gif/a2/2.gif
new file mode 100755
index 0000000..d9ebbc2
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/2.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/3.gif b/anim/Animation Styles/IndividualFrames/gif/a2/3.gif
new file mode 100755
index 0000000..de17bd4
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/3.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/4.gif b/anim/Animation Styles/IndividualFrames/gif/a2/4.gif
new file mode 100755
index 0000000..87450de
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/4.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/5.gif b/anim/Animation Styles/IndividualFrames/gif/a2/5.gif
new file mode 100755
index 0000000..f95b8d9
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/5.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/6.gif b/anim/Animation Styles/IndividualFrames/gif/a2/6.gif
new file mode 100755
index 0000000..3462272
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/6.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/7.gif b/anim/Animation Styles/IndividualFrames/gif/a2/7.gif
new file mode 100755
index 0000000..ac5f084
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/7.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/8.gif b/anim/Animation Styles/IndividualFrames/gif/a2/8.gif
new file mode 100755
index 0000000..d9d3989
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/8.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gif/a2/9.gif b/anim/Animation Styles/IndividualFrames/gif/a2/9.gif
new file mode 100755
index 0000000..bcdd274
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gif/a2/9.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/1.gif b/anim/Animation Styles/IndividualFrames/gift/a1/1.gif
new file mode 100755
index 0000000..2aad244
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/1.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/2.gif b/anim/Animation Styles/IndividualFrames/gift/a1/2.gif
new file mode 100755
index 0000000..ed22525
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/2.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/3.gif b/anim/Animation Styles/IndividualFrames/gift/a1/3.gif
new file mode 100755
index 0000000..246cd12
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/3.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/4.gif b/anim/Animation Styles/IndividualFrames/gift/a1/4.gif
new file mode 100755
index 0000000..722f240
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/4.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/5.gif b/anim/Animation Styles/IndividualFrames/gift/a1/5.gif
new file mode 100755
index 0000000..6a71348
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/5.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/6.gif b/anim/Animation Styles/IndividualFrames/gift/a1/6.gif
new file mode 100755
index 0000000..0dd2145
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/6.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/7.gif b/anim/Animation Styles/IndividualFrames/gift/a1/7.gif
new file mode 100755
index 0000000..1e9914b
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/7.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/8.gif b/anim/Animation Styles/IndividualFrames/gift/a1/8.gif
new file mode 100755
index 0000000..390124b
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/8.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a1/9.gif b/anim/Animation Styles/IndividualFrames/gift/a1/9.gif
new file mode 100755
index 0000000..61c8c3c
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a1/9.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/1.gif b/anim/Animation Styles/IndividualFrames/gift/a2/1.gif
new file mode 100755
index 0000000..a79f1e0
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/1.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/2.gif b/anim/Animation Styles/IndividualFrames/gift/a2/2.gif
new file mode 100755
index 0000000..b2579e3
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/2.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/3.gif b/anim/Animation Styles/IndividualFrames/gift/a2/3.gif
new file mode 100755
index 0000000..42f2c74
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/3.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/4.gif b/anim/Animation Styles/IndividualFrames/gift/a2/4.gif
new file mode 100755
index 0000000..61b944a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/4.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/5.gif b/anim/Animation Styles/IndividualFrames/gift/a2/5.gif
new file mode 100755
index 0000000..865f4c7
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/5.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/6.gif b/anim/Animation Styles/IndividualFrames/gift/a2/6.gif
new file mode 100755
index 0000000..9fa7cf2
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/6.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/7.gif b/anim/Animation Styles/IndividualFrames/gift/a2/7.gif
new file mode 100755
index 0000000..d7627b2
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/7.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/8.gif b/anim/Animation Styles/IndividualFrames/gift/a2/8.gif
new file mode 100755
index 0000000..965acc1
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/8.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/gift/a2/9.gif b/anim/Animation Styles/IndividualFrames/gift/a2/9.gif
new file mode 100755
index 0000000..0509dad
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/gift/a2/9.gif
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/1.png b/anim/Animation Styles/IndividualFrames/png/a1/1.png
new file mode 100755
index 0000000..663ca83
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/1.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/2.png b/anim/Animation Styles/IndividualFrames/png/a1/2.png
new file mode 100755
index 0000000..6f44ab5
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/2.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/3.png b/anim/Animation Styles/IndividualFrames/png/a1/3.png
new file mode 100755
index 0000000..c49ab7e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/3.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/4.png b/anim/Animation Styles/IndividualFrames/png/a1/4.png
new file mode 100755
index 0000000..63eb7e2
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/4.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/5.png b/anim/Animation Styles/IndividualFrames/png/a1/5.png
new file mode 100755
index 0000000..2aaa600
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/5.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/6.png b/anim/Animation Styles/IndividualFrames/png/a1/6.png
new file mode 100755
index 0000000..8fa9737
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/6.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/7.png b/anim/Animation Styles/IndividualFrames/png/a1/7.png
new file mode 100755
index 0000000..1de0311
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/7.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/8.png b/anim/Animation Styles/IndividualFrames/png/a1/8.png
new file mode 100755
index 0000000..7d6332a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/8.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a1/9.png b/anim/Animation Styles/IndividualFrames/png/a1/9.png
new file mode 100755
index 0000000..5a8b0ea
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a1/9.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/1.png b/anim/Animation Styles/IndividualFrames/png/a2/1.png
new file mode 100755
index 0000000..98b3d72
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/1.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/2.png b/anim/Animation Styles/IndividualFrames/png/a2/2.png
new file mode 100755
index 0000000..6ec3dac
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/2.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/3.png b/anim/Animation Styles/IndividualFrames/png/a2/3.png
new file mode 100755
index 0000000..157dfc8
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/3.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/4.png b/anim/Animation Styles/IndividualFrames/png/a2/4.png
new file mode 100755
index 0000000..5719ab6
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/4.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/5.png b/anim/Animation Styles/IndividualFrames/png/a2/5.png
new file mode 100755
index 0000000..3cfd8a3
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/5.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/6.png b/anim/Animation Styles/IndividualFrames/png/a2/6.png
new file mode 100755
index 0000000..750ed8b
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/6.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/7.png b/anim/Animation Styles/IndividualFrames/png/a2/7.png
new file mode 100755
index 0000000..ce7756e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/7.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/8.png b/anim/Animation Styles/IndividualFrames/png/a2/8.png
new file mode 100755
index 0000000..e28a906
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/8.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/png/a2/9.png b/anim/Animation Styles/IndividualFrames/png/a2/9.png
new file mode 100755
index 0000000..b6b2cd8
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/png/a2/9.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/1.png b/anim/Animation Styles/IndividualFrames/pngt/a1/1.png
new file mode 100755
index 0000000..dab1239
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/1.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/2.png b/anim/Animation Styles/IndividualFrames/pngt/a1/2.png
new file mode 100755
index 0000000..56312a7
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/2.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/3.png b/anim/Animation Styles/IndividualFrames/pngt/a1/3.png
new file mode 100755
index 0000000..4ceb540
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/3.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/4.png b/anim/Animation Styles/IndividualFrames/pngt/a1/4.png
new file mode 100755
index 0000000..38d640a
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/4.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/5.png b/anim/Animation Styles/IndividualFrames/pngt/a1/5.png
new file mode 100755
index 0000000..dcc14d4
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/5.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/6.png b/anim/Animation Styles/IndividualFrames/pngt/a1/6.png
new file mode 100755
index 0000000..cb2f933
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/6.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/7.png b/anim/Animation Styles/IndividualFrames/pngt/a1/7.png
new file mode 100755
index 0000000..497ed6f
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/7.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/8.png b/anim/Animation Styles/IndividualFrames/pngt/a1/8.png
new file mode 100755
index 0000000..693ac1e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/8.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a1/9.png b/anim/Animation Styles/IndividualFrames/pngt/a1/9.png
new file mode 100755
index 0000000..e83b570
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a1/9.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/1.png b/anim/Animation Styles/IndividualFrames/pngt/a2/1.png
new file mode 100755
index 0000000..06f2b7c
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/1.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/2.png b/anim/Animation Styles/IndividualFrames/pngt/a2/2.png
new file mode 100755
index 0000000..f20ed10
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/2.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/3.png b/anim/Animation Styles/IndividualFrames/pngt/a2/3.png
new file mode 100755
index 0000000..6681f2e
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/3.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/4.png b/anim/Animation Styles/IndividualFrames/pngt/a2/4.png
new file mode 100755
index 0000000..ff3f0f1
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/4.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/5.png b/anim/Animation Styles/IndividualFrames/pngt/a2/5.png
new file mode 100755
index 0000000..1152066
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/5.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/6.png b/anim/Animation Styles/IndividualFrames/pngt/a2/6.png
new file mode 100755
index 0000000..458e680
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/6.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/7.png b/anim/Animation Styles/IndividualFrames/pngt/a2/7.png
new file mode 100755
index 0000000..4097b74
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/7.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/8.png b/anim/Animation Styles/IndividualFrames/pngt/a2/8.png
new file mode 100755
index 0000000..e6ee9b2
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/8.png
Binary files differ
diff --git a/anim/Animation Styles/IndividualFrames/pngt/a2/9.png b/anim/Animation Styles/IndividualFrames/pngt/a2/9.png
new file mode 100755
index 0000000..314aabf
--- /dev/null
+++ b/anim/Animation Styles/IndividualFrames/pngt/a2/9.png
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp16/1.bmp b/anim/Animation Styles/OneSheetPerAnimation/bmp16/1.bmp
new file mode 100755
index 0000000..9798a08
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp16/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp16/2.bmp b/anim/Animation Styles/OneSheetPerAnimation/bmp16/2.bmp
new file mode 100755
index 0000000..68ba0ba
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp16/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp16/text.txt b/anim/Animation Styles/OneSheetPerAnimation/bmp16/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp16/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp24/1.bmp b/anim/Animation Styles/OneSheetPerAnimation/bmp24/1.bmp
new file mode 100755
index 0000000..7ff69f4
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp24/1.bmp
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp24/2.bmp b/anim/Animation Styles/OneSheetPerAnimation/bmp24/2.bmp
new file mode 100755
index 0000000..a771b04
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp24/2.bmp
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/bmp24/text.txt b/anim/Animation Styles/OneSheetPerAnimation/bmp24/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/bmp24/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gif/1.gif b/anim/Animation Styles/OneSheetPerAnimation/gif/1.gif
new file mode 100755
index 0000000..223321b
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gif/1.gif
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gif/2.gif b/anim/Animation Styles/OneSheetPerAnimation/gif/2.gif
new file mode 100755
index 0000000..56c1a0f
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gif/2.gif
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gif/text.txt b/anim/Animation Styles/OneSheetPerAnimation/gif/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gif/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gift/1.gif b/anim/Animation Styles/OneSheetPerAnimation/gift/1.gif
new file mode 100755
index 0000000..895ff39
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gift/1.gif
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gift/2.gif b/anim/Animation Styles/OneSheetPerAnimation/gift/2.gif
new file mode 100755
index 0000000..61d6302
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gift/2.gif
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/gift/text.txt b/anim/Animation Styles/OneSheetPerAnimation/gift/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/gift/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/OneSheetPerAnimation/png/1.png b/anim/Animation Styles/OneSheetPerAnimation/png/1.png
new file mode 100755
index 0000000..99f9800
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/png/1.png
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/png/2.png b/anim/Animation Styles/OneSheetPerAnimation/png/2.png
new file mode 100755
index 0000000..41b01d4
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/png/2.png
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/png/text.txt b/anim/Animation Styles/OneSheetPerAnimation/png/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/png/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file
diff --git a/anim/Animation Styles/OneSheetPerAnimation/pngt/1.png b/anim/Animation Styles/OneSheetPerAnimation/pngt/1.png
new file mode 100755
index 0000000..37d045a
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/pngt/1.png
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/pngt/2.png b/anim/Animation Styles/OneSheetPerAnimation/pngt/2.png
new file mode 100755
index 0000000..b7a00a1
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/pngt/2.png
Binary files differ
diff --git a/anim/Animation Styles/OneSheetPerAnimation/pngt/text.txt b/anim/Animation Styles/OneSheetPerAnimation/pngt/text.txt
new file mode 100755
index 0000000..dc66dbe
--- /dev/null
+++ b/anim/Animation Styles/OneSheetPerAnimation/pngt/text.txt
@@ -0,0 +1,2 @@
+anim1,0,8
+anim2,9,17 \ No newline at end of file