Python et sa bibliothèque de développement de jeu gratuit, Pygame, gèrent une grande partie du travail de détail de développement de jeux pour vous, vous permettant de vous concentrer sur votre conception de jeu. Pourtant, Crysis n'a pas été écrit en un jour, vous aurez donc besoin de commencer où les jeux vidéo eux-mêmes ont commencé par faire un jeu comme "Pong." Il pourrait ne pas être ce que vous avez trouvé dans la conception de jeux à faire, mais il va vous apprendre les bases et vous obtenez un jeu de démarrer rapidement.
Ouvrir veille, à partir de votre menu Démarrer de Windows par défaut IDE Python. Cliquez "Fichier" et "Nouvelle fenêtre." Immédiatement enregistrer votre nouveau fichier et de lui donner le nom "Ping.py."
Obtenez l'environnement de jeu prêt. Tapez la commande suivante dans votre fichier Ping.py:
import os, sys
pygame d'importation
de pygame.locals importer *
écran = pygame.display.set_mode ((640480))
Cette importations en provenance de Python commandes supplémentaires que vous aurez besoin d'écrire votre jeu et crée une nouvelle fenêtre pour votre jeu de tourner dans. Hit "F5" pour exécuter le programme. Sinon, cliquez sur "Course" et "Module Run" dans le menu. Les deux auront le même résultat - une fenêtre complètement transparent apparaît sur votre bureau. Il sera 640 pixels de large et 480 pixels de haut.
Et il va se planter et vous donner un message d'erreur assez rapidement parce que même si la fenêtre a été créée, rien n'a été fait avec elle.
Créer la palette du joueur. Ajoutez le code suivant à votre jeu immédiatement au-dessous de la dernière section de code:
PADDLE_WIDTH = 50
PADDLE_HEIGHT = 10
p1Paddle = pygame.Rect (10, 430, PADDLE_WIDTH, PADDLE_HEIGHT)
PADDLE_COLOR = pygame.color.Color ("rouge")
SCREEN_COLOR = pygame.color.Color ("noir")
GO
Cela indique à l'ordinateur comment de nombreux pixels de large et haute pagaie du joueur doivent être ainsi que de quelle couleur il devrait être. Il indique également Python que vous voulez que votre pagaie pour être 10 pixels du côté gauche de l'écran et 430 pixels du haut de l'écran. Rappelez-vous, l'écran est de 640 pixels de large et 480 pixels de haut, de sorte que la palette sera sur le côté gauche de l'écran, près du fond.
En outre, il définit ce que l'écran lui-même aura la couleur noire.
Créer la rondelle. Tapez la commande suivante dans votre jeu:
puckSpeedX = 1
puckSpeedY = 1
PUCK_COLOR = pygame.color.Color ("vert")
rondelle = pygame.Rect (320,240,10,10)
Cela indique à l'ordinateur de quelle couleur la rondelle sera et où il devrait être situé sur l'écran. Dans ce cas, il sera de 320 pixels de la gauche et 240 pixels de haut. Il sera également de 10 pixels de large et 10 pixels de haut.
Enfin, puisque la rondelle se déplace de sa propre volonté, il a besoin d'une vitesse. Souvent dans un jeu en 2D tels que "Pong," il est plus facile de diviser vitesses dans l'immensité de l'objet se déplace horizontalement et à quelle vitesse il se déplace verticalement. Dans ce cas, la rondelle se déplace horizontalement (X) à une vitesse de 1 et se déplace verticalement (Y) à une vitesse de 1 également.
Mettre en place la boucle de jeu en tapant:
while True:
p1Paddle.left = pygame.mouse.get_pos () [0]
puck.left = puck.left + puckSpeedX
puck.top = puck.top + puckSpeedY
screen.fill (SCREEN_COLOR)
GO
screen.fill (PADDLE_COLOR, p1Paddle)
screen.fill (PUCK_COLOR, rondelle)
pygame.time.delay (10)
Going ligne par ligne, le "tout en vrai" commande indique le jeu pour continuer à fonctionner indéfiniment ou jusqu'à ce que l'utilisateur appuie sur la "Près" bouton sur sa fenêtre.
Ensuite, il indique à l'ordinateur que la palette du joueur doit être à la même place sur l'écran, horizontalement, que le pointeur de la souris. De cette façon, le joueur peut suivre la rondelle en déplaçant sa souris. La rondelle est lui-même déplacé en ajoutant ses vitesses X et Y à sa position sur l'écran. Ensuite, il attire le fond d'écran, la palette du joueur et la rondelle, dans cet ordre. Frapper "F5" pour lancer le jeu.
Notez tous les problèmes? Aucun de vos graphiques en cours d'élaboration à l'écran. Presque tous les jeux modernes utilisent un truc appelé "double buffering" pour dessiner à l'écran. Cela signifie graphiques sont dessinés à la mémoire d'abord, puis dessiné, tout à la fois, à l'écran plus tard. Sans le double buffering, graphismes du jeu ont l'habitude de scintillement. Pour dire Python pour écrire effectivement les graphiques à l'écran de l'ordinateur, ou "retourner le tampon," ajoutez la ligne suivante pour le jeu:
pygame.display.flip ()
GO
Presse "F5" pour lancer le jeu. Il ya toujours une assez grande faille dans le jeu: la rondelle vole seulement à travers la palette et hors de l'écran comme si elle n'y était pas.
Ajouter détection de collision à la rondelle. Cela peut nécessiter un peu de recyclage sur freshman algèbre. Ajoutez ce code à votre boucle de jeu:
si puck.colliderect (p1Paddle):
puckSpeedY = puckSpeedY * -1si puck.top lt; 0 ou puck.bottom gt; 480:
puckSpeedY = puckSpeedY * -1
si puck.left lt; 0 ou puck.right gt; 640:
puckSpeedX = puckSpeedX * -1
Aller un par un, considérer ce qui arrive ici. Si la rondelle entre en collision avec la palette du joueur, alors il est la vitesse Y est multiplié par moins-1. Donc, si la vitesse Y (rappelez-vous, cela signifie vitesse verticale) était de 1, il est maintenant de moins-1. Donc, il se déplace dans la direction opposée à la verticale. La même chose arrive si la rondelle frappe le haut ou le bas de l'écran. Et enfin, si la rondelle frappe le côté gauche ou droit de l'écran, sa vitesse de X (ou sa vitesse horizontale) est multiplié par moins-1. Frapper "F5" pour lancer votre jeu et voir l'effet.