Хелпикс

Главная

Контакты

Случайная статья





bullet.py. button.py



bullet. py

 

 

import pygame

from pygame. sprite import Sprite

 

class Bullet(Sprite):

" " " A class to manage bullets fired from the ship. " " "

 

def __init__(self, ai_settings, screen, ship):

   " " " Create a bullet object, at the ship's current position. " " "

super(Bullet, self). __init__()

self. screen = screen

 

   # Create bullet rect at (0, 0), then set correct position.

self. rect = pygame. Rect(0, 0, ai_settings. bullet_width,

ai_settings. bullet_height)

self. rect. centerx = ship. rect. centerx

self. rect. top = ship. rect. top

 

   # Store a decimal value for the bullet's position.

self. y = float(self. rect. y)

 

self. color = ai_settings. bullet_color

self. speed_factor = ai_settings. bullet_speed_factor

 

def update(self):

   " " " Move the bullet up the screen. " " "

   # Update the decimal position of the bullet.

self. y -= self. speed_factor

   # Update the rect position.

self. rect. y = self. y

 

def draw_bullet(self):

   " " " Draw the bullet to the screen. " " "

pygame. draw. rect(self. screen, self. color, self. rect)

 

********************************************************

button. py

 

 

import pygame. font

 

class Button():

 

def __init__(self, ai_settings, screen, msg):

   " " " Initialize button attributes. " " "

self. screen = screen

self. screen_rect = screen. get_rect()

 

   # Set the dimensions and properties of the button.

self. width, self. height = 200, 50

self. button_color = (0, 255, 0)

self. text_color = (255, 255, 255)

self. font = pygame. font. SysFont(None, 48)

 

   # Build the button's rect object, and center it.

self. rect = pygame. Rect(0, 0, self. width, self. height)

self. rect. center = self. screen_rect. center

 

   # The button message only needs to be prepped once.

self. prep_msg(msg)

 

def prep_msg(self, msg):

   " " " Turn msg into a rendered image, and center text on the button. " " "

self. msg_image = self. font. render(msg, True, self. text_color,

self. button_color)

self. msg_image_rect = self. msg_image. get_rect()

self. msg_image_rect. center = self. rect. center

 

def draw_button(self):

   # Draw blank button, then draw message.

self. screen. fill(self. button_color, self. rect)

self. screen. blit(self. msg_image, self. msg_image_rect)

 

 

*****************************************************************



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.