Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- Created on Fri Nov 2 15:54:38 2018
- @author: Eier
- """
- ### HER KOMMER BASIC KOMPONENTER ###
- ### IMPORTERER BIBLIOTEKER ###
- import pygame
- import time
- import random
- import pyganim
- pygame.init() #Starter opp pygame
- display_width=800 #Setter bredde på spillet
- display_height=600 #Setter høyde på spillet
- ### DEFINERER FARGER ###
- black=(0,0,0)
- white=(255,255,255)
- red=(255,0,0)
- green=(0,255,0)
- blue=(0,0,255)
- ### DEFINERER STØRRELSEN PÅ BILDENE ###
- pacman_size=32
- dot_size=4
- gameDisplay = pygame.display.set_mode((display_width,display_height)) #Lager spillvinduet
- pygame.display.set_caption("Pacman") #Tittelen på spillvinduet
- clock = pygame.time.Clock() #Setter tiden for spillet
- ### HER KOMMER BILDEFILENE ###
- #Laster opp bildene
- pacmanOImg=pygame.image.load("pacmanO.png")
- pacmanCImg=pygame.image.load("pacmanC.png")
- dotImg=pygame.image.load("dot1.png")
- ghostG_Img=pygame.image.load("ghostGreen1.png")
- ghostG2_Img=pygame.image.load("ghostGreen2.png")
- ghostB_Img=pygame.image.load("ghostBlue1.png")
- ghostB2_Img=pygame.image.load("ghostBlue2.png")
- ghostP_Img=pygame.image.load("ghostPurple1.png")
- ghostP2_Img=pygame.image.load("ghostPurple2.png")
- veggV_Img=pygame.image.load("vegg1.png")
- veggH_Img=pygame.image.load("vegg2.png")
- #ghostListe=[ghostG_Img,ghostB_Img,ghostP_Img]
- ### HER KOMMER EN LISTE MED FUNKSJONER ###
- def pacmanO(x,y): #Viser pacman
- gameDisplay.blit(pacmanOImg,(x,y))
- def dot(a,b): #Viser en dott
- gameDisplay.blit(dotImg,(a,b))
- def ghostP(c,d): #Viser et lilla spøkelse
- gameDisplay.blit(ghostP_Img,(c,d))
- #def ghosts(c,d):
- # ghostL=ghostListe
- # for ghost in ghostL:
- # gameDisplay.blit(ghost,(c,d))
- def veggV(e,f): #Viser vertikal vegg
- gameDisplay.blit(veggV_Img,(e,f))
- def veggH(g,h): #Viser horisontal vegg
- gameDisplay.blit(veggH_Img,(g,h))
- def text_objects(text,font):
- textSurface=font.render(text, True, white)
- return textSurface,textSurface.get_rect()
- def message_display(text):
- largeText=pygame.font.Font("freesansbold.ttf",115)
- TextSurf, TextRect=text_objects(text,largeText)
- TextRect.center = ((display_width/2),(display_height/2))
- gameDisplay.blit(TextSurf, TextRect)
- pygame.display.update()
- time.sleep(2)
- game_loop()
- def crash(): #Crash-funksjonen
- message_display("You lost!")
- ### HER KOMMER SELVE SPILLLØKKEN ###
- def game_loop():
- ### Definerer posisjonene til objektene ###
- x=(display_width*0.45) #Definerer x
- y=(display_height*0.8) #Definerer y
- x_change=0
- y_change=0
- a=(200)
- b=(200)
- c=(400)
- d=(200)
- e=(500)
- f=(310)
- g=(500)
- h=(300)
- gameExit=False #Sier at spillet ikke har blitt avsluttet
- while not gameExit: #Loopen kjører når gameExit=False
- for event in pygame.event.get():
- if event.type==pygame.QUIT:
- pygame.quit()
- quit()
- ### Styrer handlingene ved tastetrykk ###
- if event.type==pygame.KEYDOWN:
- if event.key==pygame.K_LEFT:
- x_change=-2
- y_change=0
- elif event.key==pygame.K_RIGHT:
- x_change=2
- y_change=0
- elif event.key==pygame.K_UP:
- y_change=-2
- x_change=0
- elif event.key==pygame.K_DOWN:
- y_change=2
- x_change=0
- x+=x_change #Setter x lik endringen i x-retning
- y+=y_change #Sette ry lik endringen i y-retning
- gameDisplay.fill(black) #Setter bakgrunnsfargen
- ### Viser bildene i spillvinudet ###
- pacmanO(x,y) #Pacman kommer til syne i punktet (x,y)
- dot(e,f) #Dotten kommer til syne i punktet (a,b)
- dot(e+20,f) #En ny dott kommer i a+20, på linje med y
- ghostP(c,d)
- #random.randrange(0,4) Random plassering til spøkelser?
- #0=opp 1=ned 2=høyre 3=venstre
- veggH(g,h)
- veggV(e,f)
- ### Avslutter spillet ###
- if x > display_width-pacman_size or x<0:
- crash()
- if y > display_height-pacman_size or y<0:
- crash()
- pygame.display.update() #Oppdaterer hele vinduet
- clock.tick(60) #Setter frames per second
- ### HER KJØRES FUNKSJONENE ###
- game_loop()
- pygame.quit() #Avslutter spillet
- quit()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement