Propojeni udalosti – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Propojeni udalosti – Python – Fórum – Programujte.comPropojeni udalosti – Python – Fórum – Programujte.com

 

crook0
Duch
24. 3. 2009   #1
-
0
-

Dobry den. Mam tu mensi problem. Mam raketku ktera by mela strilet ale problem je ze nestrili. Mam jiste mzatek v propojeni vice veci dohromady. Muzete mi prosim poradit jak by jste zaciklili vy aby po kliknuti na novou hru mohla raketka strilet?
Dekuji


# -*- coding: cp1250 -*-
import os, sys
import pygame
import random
from pygame.locals import*

pygame.font.init()

if not pygame.font:
print u'Upozornění: písmo nebude dostupné.'
if not pygame.mixer:
print u'Upozornění: zvuky nebudou dostupné.'

class Raketka(pygame.sprite.Sprite):
"Hybe s dlani po obrazovce, nasleduje mys."

def __init__(self, image):
pygame.sprite.Sprite.__init__(self)
Raketka.image = pygame.image.load(image).convert()
self.image = Raketka.image
self.rect = self.image.get_rect()

def update(self):
"presouva dlan na pozici mysi"
pos = pygame.mouse.get_pos()
self.rect.midtop = pos

class Menu(pygame.sprite.Sprite):

def __init__(self, nazev, initial_position):
pygame.sprite.Sprite.__init__(self)
Menu.image = pygame.image.load(nazev).convert()
self.image = Menu.image

self.rect = self.image.get_rect()
self.rect.topleft = initial_position

class Protivnik1(pygame.sprite.Sprite):

def __init__(self, initial_position):
pygame.sprite.Sprite.__init__(self)
Protivnik1.image = pygame.image.load("souper-kolecko.gif").convert()
self.image = Protivnik1.image

self.rect = self.image.get_rect()
self.rect.topleft = initial_position

def update(self):
novaPozice = self.rect.move(1,1)
self.rect = novaPozice

class Strela(pygame.sprite.Sprite):

def __init__(self, initial_position):
pygame.sprite.Sprite.__init__(self)
Strela.image = pygame.image.load("cara.gif").convert()
self.image = Strela.image

self.rect = self.image.get_rect()
self.rect.topleft = initial_position

def update(self):
novaPozice = self.rect.move(0,-1)
self.rect = novaPozice

def main():

"Hlavni funkce."

# Třídy objektů hry
pygame.init()
obrazovka = pygame.display.set_mode((800, 600))
pozadiHlavni = pygame.Surface(obrazovka.get_size())
pozadiHlavni = pozadiHlavni.convert()
pozadiHlavni = pygame.image.load('zeme022.jpg').convert()
pygame.mouse.set_visible(0)

# Připravíme si objekty hry
raketka = Raketka('ukazatel.gif')
mysraketka = pygame.sprite.RenderPlain(raketka)
start = Menu('a_menubutton1.gif',(40,40))
continueobr = Menu('a_menubuttonC1.gif',(100,120))
optionobr = Menu('a_menubuttonO1.gif',(160,200))
scoreobr = Menu('a_menubuttonS1.gif',(100,280))
protivnik = Protivnik1((0,0))
menuhlavni = pygame.sprite.RenderPlain(start,continueobr,optionobr,scoreobr)
protivnici = pygame.sprite.RenderPlain((protivnik))
allSprites = pygame.sprite.Group(menuhlavni,mysraketka)
casovac=pygame.time.Clock()

# Hlavní smyčka
while 1:
casovac.tick(80)
# Ošetření všech vstupních událostí
for udalost in pygame.event.get():
if udalost.type == QUIT:
return
elif udalost.type == KEYDOWN and udalost.key == K_ESCAPE:
return

elif udalost.type == MOUSEBUTTONDOWN:
pygame.sprite.groupcollide(menuhlavni, mysraketka, 0, 0)
kolize = pygame.sprite.groupcollide(menuhlavni, mysraketka, 0, 0)

for nazev in kolize:
if nazev == start:
pozadiHlavni = pygame.image.load('pozadivesmir.jpg').convert()
raketka = Raketka('raketka.gif')
mysraketka = pygame.sprite.RenderPlain(raketka)
allSprites.empty()
allSprites = pygame.sprite.Group(protivnici,mysraketka)

for udalostlevel in pygame.event.get():
if udalostlevel.type == MOUSEBUTTONDOWN:
location = pygame.mouse.get_pos()
strela = Strela(location)
allSprites.add(strela)
print "jede"

mysraketka.update()
protivnici.update()
#strela.update()
obrazovka.blit(pozadiHlavni, (0, 0))
allSprites.draw(obrazovka)
pygame.display.flip()



if __name__ == '__main__':main()
pygame.quit() # Hra skončila

Nahlásit jako SPAM
IP: 80.251.241.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Události — založil XP

Udalosti v C# — založil jirkab

C# události — založil Wabbit

Propojeni — založil caleb

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý