[sbfury] 4 new revisions pushed by hugoruscitti on 2010-01-01 21:34 GMT

1 view
Skip to first unread message

codesite...@google.com

unread,
Jan 1, 2010, 4:35:08 PM1/1/10
to losersjue...@googlegroups.com
4 new revisions:

Revision: 92f976ac5b
Author: hugoruscitti
Date: Fri Jan 1 13:21:54 2010
Log: creating window
http://code.google.com/p/sbfury/source/detail?r=92f976ac5b

Revision: 9c44c31423
Author: hugoruscitti
Date: Fri Jan 1 13:25:12 2010
Log: creating function to load images.
http://code.google.com/p/sbfury/source/detail?r=9c44c31423

Revision: d11c1bb27b
Author: hugoruscitti
Date: Fri Jan 1 13:33:31 2010
Log: using image sheet for sprites.
http://code.google.com/p/sbfury/source/detail?r=d11c1bb27b

Revision: a35fb2f081
Author: hugoruscitti
Date: Fri Jan 1 13:33:57 2010
Log: adding sheet.py
http://code.google.com/p/sbfury/source/detail?r=a35fb2f081

==============================================================================
Revision: 92f976ac5b
Author: hugoruscitti
Date: Fri Jan 1 13:21:54 2010
Log: creating window
http://code.google.com/p/sbfury/source/detail?r=92f976ac5b

Added:
/data/logo.png
/sbfury/sbfury.py
/sbfury/test.py

=======================================
--- /dev/null
+++ /data/logo.png Fri Jan 1 13:21:54 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /sbfury/sbfury.py Fri Jan 1 13:21:54 2010
@@ -0,0 +1,31 @@
+from PySFML import sf
+import sys
+
+app = sf.RenderWindow()
+app.Create(sf.VideoMode(720, 480), "sbfury")
+
+# Es el contenedor del evento.
+event = sf.Event()
+input = app.GetInput()
+
+clock = sf.Clock()
+color = sf.Color(200, 200, 200)
+
+app.UseVerticalSync(True)
+
+while True:
+ dt = app.GetFrameTime()
+ app.Clear(color)
+
+
+ while app.GetEvent(event):
+
+ if event.Type == sf.Event.KeyPressed:
+ if event.Key.Code == sf.Key.Escape:
+ app.Close()
+ sys.exit(0)
+ elif event.Type == sf.Event.Closed:
+ sys.exit(0)
+
+
+ app.Display()
=======================================
--- /dev/null
+++ /sbfury/test.py Fri Jan 1 13:21:54 2010
@@ -0,0 +1,2 @@
+import sbfury
+sbfury.main()

==============================================================================
Revision: 9c44c31423
Author: hugoruscitti
Date: Fri Jan 1 13:25:12 2010
Log: creating function to load images.
http://code.google.com/p/sbfury/source/detail?r=9c44c31423

Added:
/sbfury/common.py
Modified:
/sbfury/sbfury.py
/sbfury/test.py

=======================================
--- /dev/null
+++ /sbfury/common.py Fri Jan 1 13:25:12 2010
@@ -0,0 +1,16 @@
+import os
+from PySFML import sf
+
+def load_image(filename):
+ "Genera un objeto Image a partir de la ruta indicada."
+
+ dirname = os.path.abspath(os.path.dirname(__file__))
+ path = os.path.join(dirname, '..', 'data', filename)
+
+ image = sf.Image()
+ image.LoadFromFile(path)
+
+ return image
+
+
+
=======================================
--- /sbfury/sbfury.py Fri Jan 1 13:21:54 2010
+++ /sbfury/sbfury.py Fri Jan 1 13:25:12 2010
@@ -1,5 +1,6 @@
from PySFML import sf
import sys
+import common

app = sf.RenderWindow()
app.Create(sf.VideoMode(720, 480), "sbfury")
@@ -13,10 +14,16 @@

app.UseVerticalSync(True)

+
+image = common.load_image("logo.png")
+sprite = sf.Sprite(image)
+
while True:
dt = app.GetFrameTime()
app.Clear(color)

+ app.Draw(sprite)
+

while app.GetEvent(event):

=======================================
--- /sbfury/test.py Fri Jan 1 13:21:54 2010
+++ /sbfury/test.py Fri Jan 1 13:25:12 2010
@@ -1,2 +1,3 @@
import sbfury
+
sbfury.main()

==============================================================================
Revision: d11c1bb27b
Author: hugoruscitti
Date: Fri Jan 1 13:33:31 2010
Log: using image sheet for sprites.
http://code.google.com/p/sbfury/source/detail?r=d11c1bb27b

Modified:
/sbfury/common.py
/sbfury/sbfury.py

=======================================
--- /sbfury/common.py Fri Jan 1 13:25:12 2010
+++ /sbfury/common.py Fri Jan 1 13:33:31 2010
@@ -1,5 +1,6 @@
import os
from PySFML import sf
+import sheet

def load_image(filename):
"Genera un objeto Image a partir de la ruta indicada."
@@ -14,3 +15,7 @@

+def load_sheet(filename, cols=1, rows=1):
+ image = load_image(filename)
+ image_sheet = sheet.ImageSheet(image, cols, rows)
+ return image_sheet
=======================================
--- /sbfury/sbfury.py Fri Jan 1 13:25:12 2010
+++ /sbfury/sbfury.py Fri Jan 1 13:33:31 2010
@@ -4,6 +4,7 @@

app = sf.RenderWindow()
app.Create(sf.VideoMode(720, 480), "sbfury")
+app.SetPosition(300, 200)

# Es el contenedor del evento.
event = sf.Event()
@@ -15,16 +16,15 @@
app.UseVerticalSync(True)


-image = common.load_image("logo.png")
-sprite = sf.Sprite(image)
+image = common.load_sheet("../data/shaolin/stand.png", 4, 1)
+sprite = sf.Sprite(image.image)
+image.Assign(sprite)

while True:
dt = app.GetFrameTime()
app.Clear(color)
-
app.Draw(sprite)

-
while app.GetEvent(event):

if event.Type == sf.Event.KeyPressed:
@@ -34,5 +34,4 @@
elif event.Type == sf.Event.Closed:
sys.exit(0)

-
app.Display()

==============================================================================
Revision: a35fb2f081
Author: hugoruscitti
Date: Fri Jan 1 13:33:57 2010
Log: adding sheet.py
http://code.google.com/p/sbfury/source/detail?r=a35fb2f081

Added:
/sbfury/sheet.py

=======================================
--- /dev/null
+++ /sbfury/sheet.py Fri Jan 1 13:33:57 2010
@@ -0,0 +1,47 @@
+# License: Public Domain
+# Author: Hugo Ruscitti (http://www.losersjuegos.com.ar)
+
+from PySFML import sf
+
+class ImageSheet:
+
+ def __init__(self, image, cols=1, rows=1):
+ self.image = image
+ self.len_frames = cols * rows
+ self.cols = cols
+ self.rows = rows
+ self.frame_width = image.GetWidth() / cols
+ self.frame_height = image.GetHeight() / rows
+ self.sub_rect = sf.IntRect(0, 0, self.frame_width,
self.frame_height)
+ self.SetFrameIndex(0)
+
+ def SetFrameIndex(self, index):
+ self.index = index
+
+ frame_col = index % self.cols
+ frame_row = index / self.cols
+
+ dx = frame_col * self.frame_width - self.sub_rect.Left
+ dy = frame_row * self.frame_height - self.sub_rect.Top
+
+ self.sub_rect.Offset(dx, dy)
+
+ def Assign(self, sprite):
+ "Sets the sprite's image with animation state."
+
+ sprite.SetImage(self.image)
+ sprite.SetSubRect(self.sub_rect)
+
+ def NextFrame(self):
+ has_restarted = False
+ current_index = self.index + 1
+
+ if current_index >= self.len_frames:
+ current_index = 0
+ has_restarted = True
+
+ self.SetFrameIndex(current_index)
+ return has_restarted
+
+ def GetFrameIndex(self):
+ return self.index

Reply all
Reply to author
Forward
0 new messages