1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
# -*- coding: utf-8 -*-
import os
import sys
import pygame
from pygame.locals import *
dir_main = os.getcwd()
pic_cards = 'Cards.png'
dir_cards = dir_main + '/' + pic_cards
pygame.init()
#Sans os.path.join...
cardsprite_ex = pygame.image.load(dir_cards)
#Charger l'image
try:
print("Searching %s in %s" % (pic_cards, dir_main))
cardsprite = pygame.image.load(os.path.join(dir_main, pic_cards))
except:
raise(UserWarning, "Impossible de trouver 'Cards.png'")
#Background White
white = (255, 255, 255)
#Taile de la fenetre selon le nombre de pixel.
screen = pygame.display.set_mode(cardsprite.get_size())
#Convertir les sprites de cartes
cardsprite.convert()
#Obtenir un beau rectangle
screenrect = screen.get_rect()
#Background
bg = pygame.Surface((screen.get_size()))
bgrect = bg.get_rect()
bg.fill((white))
bg.convert()
screen.blit(bg, (0, 0))
nb_cards = 52 #52 cartes, Sans Joker
cards = [] # List cards
size_cards = ((74,100)) #Selon GIMP chaque carte est de +- 73x99
#Premiere Rangé
for nbr in range(1,14,1):
cards.append(cardsprite.subsurface((73*(nbr-1), 100, 72, 100)))
#Deuxième Rangé
for nbr in range(14,27,1):
cards.append(cardsprite.subsurface((73*(nbr-14), 100, 72, 100)))
#Troisième Rangé
for nbr in range(27,40,1):
cards.append(cardsprite.subsurface((73*(nbr-27), 100, 72, 100)))
#Quatrième Rangé
for nbr in range(40,53,1):
cards.append(cardsprite.subsurface((73*(nbr-40), 100, 72, 100)))
print len(cards)
for nbr in range(len(cards)):
cards[nbr].set_colorkey((0, 0, 0))
cards[nbr] = cards[nbr].convert_alpha()
print("converted nbr", nbr)
for nbr in range(len(cards)):
screen.blit(cards[nbr], (nbr*73, 0))
print("blitted nbr", nbr)
screen.blit(cards[nbr], (nbr*73, 0))
clock = pygame.time.Clock() #create pygame clock object
mainloop = True
FPS = 30 # desired max. frame rate in frames per second.
playtime = 0
cycletime = 0
interval = .30 #Interval entre chaque image
picnr = 0
while mainloop:
milliseconds = clock.tick(FPS) # Milliseconde depuis l'ancien FRAME
seconds = milliseconds / 1000.0 # Seconde depuis lancien FRAME
playtime += seconds
cycletime += seconds
if cycletime > interval:
mypicture = cards[picnr] ##
screen.blit(bg.subsurface((300,300,100,73)),(300,300)) ##
screen.blit(mypicture, (200,200))
picnr += 1
if picnr > 12:
picnr = 0
cycletime = 0
for event in pygame.event.get():
if event.type == pygame.QUIT:
mainloop = False # pygame window closed by user
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
mainloop = False # user pressed ESC
pygame.display.set_caption("[FPS]: %.2f picture: %i" % (clock.get_fps(), picnr))
pygame.display.flip() # flip the screen 30 times a second
print("This 'game' was played for {:.2f} seconds".format(playtime)) |
Partager