Software-Emitting
Der programmierte Erfolg

Python Spiele

Python Spiele


Hier will ich einmal meine Spiele in Python vorstellen.
Damit diese hier auch wirklich funktionieren, braucht man Python 2 und Pygame.
Ich habe bisher sämtliche Spiele, die hier erscheinen werden, auf einem Raspberry Pi programmiert. 



1. Spiel

Bei diesem Spiel, welches ich "Creep" genannt habe (die Grafiken sehen *creepy* aus), geht es darum, einen Creep über den Bildschirm fahren zu lassen und dabei die  Personen einzufangen. Die Personen bewegen sich jedoch nicht. Das ganze wäre an sich ja so ziemlich langweilig, also habe ich eine Figur, den Hunter, eingefügt. Diese Figur verfolgt den Creep und versucht ihn zu schnappen, bevor er die Personen gefangen hat. Es gibt unendlich viele Personen, also man kann das Spiel sozusagen für immer spielen. Der Hunter ist etwas langsamer als der Creep, darum hat man noch eine Chance, vor ihm zu entkommen. Das Spiel ist dennoch recht schwer. 

Der Code ist soweit durchkommentiert, sodass jeder ihn verstehen kann, der sich ein wenig mit Python auskennt. Es gibt sicherlich noch andere Methoden wie man dieses Spiel verbessern kann. Wenn ich die Zeit finde, werde ich das tun und dann vielleicht einen Hintergrund und Gegenstände hinzufügen, damit es schwerer wird.

Um das Spiel zum Laufen zu bringen, muss man die von mir hier eingefügten .PNG  Bilder speichern und in den Ordner mit dem Programm einfügen. Dann werden diese geladen. Bitte die Figuren mit "hunter.png", "creep.png" und "person.png" abspeichern. Unter dem dritten Bild befindet sich ein komplett weißes Bild, das wird auch benötigt, wie dem Programmcode zu entnehmen ist. Das sollte man "blank.png" nennen.

Bilder:










 <--- hier ist ein Bild







CODE:

 

"""

Creep

 Use the arrow keys for movement

 11.2.2018

"""


#imports

import pygame

from pygame.locals import *

import random

from sys import exit


#initialisation of pygame

pygame.init()

screen = pygame.display.set_mode((800,600))

pygame.display.set_caption('CREEEEEEP !!')

screen.fill((255,255,255))

BACKGROUND_COLOR = (255,255,255)

clock = pygame.time.Clock()


#image loading

creep = pygame.image.load('creep.png').convert()

hunter = pygame.image.load('hunter.png').convert()

person = pygame.image.load('person.png').convert()

blank = pygame.image.load('blank.png').convert()


def display(message):

    screen.fill(BACKGROUND_COLOR)

    #Write something onto the Screen

    font = pygame.font.Font(None,36)

    text = font.render(message, 0, (10,10,10))

    screen.blit(text, (0,0))


def game():

    #Variables

    hunter_x = random.randint(1,600)

    hunter_y = random.randint(1,600)

    creep_x = random.randint(1,600)

    creep_y = random.randint(1,600)

    x_change = 0

    y_change = 0

    person_x = 0

    person_y = 0

    score = 0

    end = False

    iscaught = True


    while not end:

        #Stop routine

        for event in pygame.event.get():

            if event.type == QUIT:

                end = True


            ####  Creep Movement ###

            if event.type == pygame.KEYDOWN:

                if event.key == pygame.K_LEFT:

                    x_change = -2

                elif event.key == pygame.K_RIGHT:

                    x_change = 2

                elif event.key == pygame.K_UP:

                    y_change = -2

                elif event.key == pygame.K_DOWN:

                    y_change = 2

            if event.type == pygame.KEYUP:

                if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:

                    x_change = 0

                if event.key == pygame.K_UP or event.key == pygame.K_DOWN:

                    y_change = 0

            #### END Creep Movement ###


        #real game

        #set a person somewhere if actual person is caught

        if iscaught == True:

            screen.blit(blank, (person_x, person_y))

            person_x = random.randint(1,600)

            person_y = random.randint(1,600)

            screen.blit(person, (person_x, person_y))

            iscaught = False


        if person_x != 0 and person_y !=0:

            screen.blit(person, (person_x, person_y))

        screen.blit(creep, (creep_x,creep_y))

        screen.blit(hunter, (hunter_x,hunter_y))

        creep_x += x_change

        creep_y += y_change

        #movement of the Hunter

        if hunter_x > creep_x:

            hunter_x -= 1

        if hunter_x < creep_x:

            hunter_x += 1

        if hunter_y > creep_y:

            hunter_y -= 1

        if hunter_y < creep_y:

            hunter_y += 1

        #end Hunter Movement


        #test if Hunter caught creep

        if hunter_x == creep_x and hunter_y == creep_y:

            display("You Lost!")

            end = True


        #Test if Creep caught person

        if creep_x >= person_x and creep_y >= person_y and creep_x < person_x+20 and creep_y < person_y+20:

            score += 1

            display("Score = " + str(score))

            iscaught = True


        pygame.display.update()

        clock.tick(50)


#Start the game

game()

pygame.quit()

exit()

############################################################################################

Das wäre das erste Spiel. Demnächst kommen neue hinzu

 








Kommentar zu dieser Seite hinzufügen:
Ihr Name:
Ihre Nachricht: