Verfasst: Sonntag 2. November 2008, 19:36
schon passiert, hatte vergessen es hier reinzuschreiben. danke
mfg
raecher-der-enterbten
mfg
raecher-der-enterbten
Seit 2002 Diskussionen rund um die Programmiersprache Python
https://www.python-forum.de/
Code: Alles auswählen
def load_image(file):
file = os.path.join('data', 'images', file)
try:
surface = pygame.image.load(file)
except pygame.error:
raise SystemExit, '"%s" %s not found'%(file, pygame.get_error())
return surface.convert_alpha()
def load_images(*files):
imgs = []
for file in files:
imgs.append(load_image(file))
return imgs
def load_image_alpha(file, colorkey=None):
file = os.path.join('data', 'images', file)
try:
surface = pygame.image.load(file)
except pygame.error:
raise SystemExit, '"%s" %s not found'%(file, pygame.get_error())
if colorkey is not None:
if colorkey is -1:
colorkey = surface.get_at((0,0))
surface.set_colorkey(colorkey, RLEACCEL)
return surface.convert_alpha()
Code: Alles auswählen
import pygame
import random
breite=800
hoehe=800
screen = pygame.display.set_mode((breite,hoehe))
clock = pygame.time.Clock()
boden1=pygame.image.load("Boden1.png")
Hintergrund=pygame.image.load("Hintergrund.png")
Hintergrund2=pygame.image.load("hintergrund2.png")
Mariorechts=pygame.image.load("mario.gif")
Mariolinks=pygame.image.load("mario2links.png")
Mario=Mariorechts
MarioX=100
MarioY=602
Hintergrundx=0
Bodenx=0
JumpNichtmoeglich=True
Jump=False
Bewegung=False
rechts=False
links=False
running=True
JumpAktiv=False
Fallen=False
while running:
hintergrund=screen.blit(Hintergrund,(Hintergrundx,0))
hintergrund2=screen.blit(Hintergrund2,(900,0))
boden=screen.blit(boden1,(Bodenx,hoehe-100))
mario=screen.blit(Mario,(MarioX,MarioY))
pygame.display.flip()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.KEYDOWN:
if event.key==pygame.K_RIGHT:
if JumpAktiv == False:
Bewegung=True
rechts=True
elif event.key==pygame.K_LEFT:
if JumpAktiv == False:
Bewegung=True
links=True
elif event.key==pygame.K_SPACE:
if MarioY==602:
Jump=True
JumpAktiv=True
elif event.type == pygame.KEYUP:
if event.key==pygame.K_RIGHT:
Bewegung=False
rechts=False
elif event.key==pygame.K_LEFT:
Bewegung=False
rechts=False
if Jump:
MarioY-=20
if MarioY < 300:
Jump=False
if Bewegung:
if rechts:
MarioX+=20
Mario=Mariorechts
elif links:
if MarioX != 0:
MarioX+=-20
Mario=Mariolinks
if MarioY < 300: #Fallen
Fallen=True
else:
JumpAktiv=False
if Fallen:
MarioY+=20
if MarioY>600:
Fallen=False
Code: Alles auswählen
def loadImage(filename, colorkey = None):
image = pygame.image.load(filename)
if image.get_alpha() == None:
image = image.convert()
else:
image = image.convert_alpha()
if colorkey is not None:
if colorkey is -1:
colorkey = image.get_at((0,0))
image.set_colorkey(colorkey, RLEACCEL)
return image
class Tileset(object):
def __init__(self, image ,colorkey ,tileWidth, tileHeight):
self.__image = loadImage(image,colorkey)
self.__tileWidth = tileWidth
self.__tileHeight = tileHeight
self.__tileTypes = dict()
def getImage(self):
return self.__image
def setImage(self, image, colorkey):
self.__image = loadImage(image,colorkey )
def getTileWidth(self):
return self.__tileWidth
def getTileHeight(self):
return self.__tileHeight
def getTileSize(self):
return (self.__tileWidth, self.__tileHeight)
def addTile(self, Mario, tileWidth,tileHeight ):
self.__tileTypes[Mario] = TileType(Mario, 0, 0, self.__tileWidth, self.__tileHeight)
def getTile(self, Mario):
try:
return self.__tileTypes[Mario]
except KeyError:
return None
Code: Alles auswählen
class Tileset(object):
def __init__(self, image_filename, colorkey, tile_width, tile_height):
self._image = None
self.image = (image_filename, colorkey)
self.tile_width = tile_width
self.tile_height = tile_height
self.tile_types = dict()
def _get_image(self):
return self._image
def _set_image(self, filename_and_colorkey):
self._image = load_image(*filename_and_colorkey)
image = property(_get_image, _set_image)
@property
def tile_size(self):
return (self.tile_width, self.tile_height)
def add_tile(self, tile_content):
self.tile_types[tile_content] = TileType(tile_content,
0,
0,
self.tile_width,
self.tile_height)
def get_tile(self, tile):
return self.tile_types.get(tile)
Code: Alles auswählen
import pygame
import random
breite=800
hoehe=800
screen = pygame.display.set_mode((breite,hoehe))
clock = pygame.time.Clock()
def Mario_rechts():
Mariorechts1= pygame.image.load("mario1.gif")
Mariorechts2= pygame.image.load("mario2.gif")
Mariorechts3= pygame.image.load("mario3.gif")
Mariorechts4= pygame.image.load("mario4.gif")
Mariorechts5= pygame.image.load("mario5.gif")
Mariorechts6= pygame.image.load("mario6.gif")
MarioX=68
MarioY=602
mario=screen.blit(Mariorechts1,(MarioX,MarioY))
mario=screen.blit(Mariorechts2,(MarioX,MarioY))
mario=screen.blit(Mariorechts3,(MarioX,MarioY))
mario=screen.blit(Mariorechts4,(MarioX,MarioY))
mario=screen.blit(Mariorechts5,(MarioX,MarioY))
mario=screen.blit(Mariorechts6,(MarioX,MarioY))
Mario_rechts()
Code: Alles auswählen
map.handleInput (key)
Code: Alles auswählen
global name "key" is not defined
Ich will jetzt nicht zu zynisch klingen, aber: Du fängst falsch an!waldmeister xD hat geschrieben: Wenn ich das besagte Tutorial ausführe und das Script starte, dann öffnet sich zwar ein Fenster, aber es schließt sich sofort wieder.
Was mache ich falsch? Wie kann ich das Script/ Fenster länger offen lassen, sprich mit einer Wait/Sleep Funktion versehen?
Du erkennst das Problem bei Deinem Vorschlag?Pyanfänger hat geschrieben:Kann irgendwer den ausgelagerten Code wo anders auslagern .. ? Is nämlich nich mehr vorhanden :/