V BOB.  WWW-TEXNOLOGIYA VA HTML TILI




Download 27,94 Mb.
Pdf ko'rish
bet119/153
Sana19.05.2024
Hajmi27,94 Mb.
#244031
1   ...   115   116   117   118   119   120   121   122   ...   153
Bog'liq
10-sinf yangi

V BOB. 
WWW-TEXNOLOGIYA VA HTML TILI
Spraytlar guruhi yaratilganidan so‘ng ularni o‘yin sikliga qo‘shgan holda spraytlar guruhidan 
foydalanish mumkin.
Spraytlar guruhi yaratilganidan so‘ng har bir yangi yaratilgan spraytni spraytlar guruhiga 
qo‘shish zarur. Buning uchun .add funksiyasidan foydalaniladi.
Sintaksisi:
all_sprites=pygame.add(sprayt identifikatori
)
all_sprites – spraytlar guruhi nomi;
sprayt identifikatori
– guruhga qo‘shiluvchi sprayt identifikatori.
AMALIY FAOLIYAT
Funksiya nomi
Tavsifi
.update()
Spraytlar guruhini yangilash.
.draw()
O‘yin oynasiga spraytlarni chizish.
.add()
Spraytlar guruhiga yangi sprayt qo‘shish.
all_sprites.update()
Spraytlar guruhi yangilanadi.
screen.blit(bg,(0,0))
O‘yin oynasiga “bg” identifikatorli fon beriladi.
all_sprites.draw(screen)
“screen” identifikatorli o‘yin oynasida spraytlar 
guruhidagi spraytlar chiziladi.
all_sprites = pygame.sprite.Group()
Spraytlar guruhi yaratiladi.
player = Player()
“Player” sinfining “player” obyekti yaratildi.
all_sprites.add(player)
Spraytlar guruhiga yangi sprayt qo‘shiladi.
Yuqoridagi funksiya va qism dasturlardan foydalangan holda mashina yo‘li fonli, oyna 
markazida yashil kvadrat ko‘rinishidagi spraytli o‘yin dasturi kodini yozing.
import pygame
PyGame moduli yuklanadi.
WIDTH = 800
Oyna kengligi uchun WIDTH 
o‘zgaruvchisiga 800 px beriladi.
HEIGHT = 650
Oyna balandligi uchun HEIGHT 
o‘zgaruvchisiga 800 px beriladi.
GREEN = (0, 255, 0)
GREEN o‘zgaruvchisiga RGB tizimida 
yashil rang beriladi.
bg = pygame.image.load("background.png")
O‘yin oynasi uchun bg o‘zgaruvchisiga 
rasm yuklanadi.
class Player(pygame.sprite.Sprite):
Player sinf yaratiladi.
def __init__(self):
Sprayt yaratish funksiyasi yaratiladi.
pygame.sprite.Sprite.__init__(self)
Sprayt uchun self o‘zlashtiriladi.


167
167
167
167
self.image = pygame.Surface((50, 
100))
Sprayt o‘lchami beriladi.
self.image.fill(GREEN)
Sprayt rangi beriladi.
self.rect = self.image.get_rect()
Sprayt uchun chegara belgilanadi.
self.rect.center = (WIDTH / 2, HEIGHT / 2)
Sprayt o‘yin oynasiga joylashtiriladi.
pygame.init()
PyGame ishga tushadi.
pygame.display.set_caption("Race")
O‘yin oynasi sarlavhasi beriladi.
all_sprites = pygame.sprite.Group()
Spraytlar guruhi yaratiladi.
player = Player()
Player sinfining player obyekti yaratildi.
all_sprites.add(player)
Player spraytlar guruhiga qo‘shiladi.
running = True
“running”ga True qiymati beriladi.
w
hile running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
O‘yin sikli ishga tushadi.
all_sprites.update()
Spraytlar guruhi yangilanadi.
screen.blit(bg, (0, 0))
Fonga rasm o‘rnatiladi.
all_sprites.draw(screen)
Spraytlar guruhi o‘yin oynasiga 
chiziladi.
pygame.display.flip()
O‘yin oynasi yangilanadi.
pygame.quit()
O‘yindan chiqiladi.
Kod ishga tushirilgach, “Race”
sarlavhali, mashina yo‘li fonli va oyna 
markazida yashil rangdagi sprayt 
joylashtirilgan o‘yin oynasi hosil bo‘ladi.
Har bir sprayt 2 ta asosiy xususiyatga ega bo‘lishi lozim: image va rect. image 
spraytning tashqi ko‘rinishi uchun xizmat qiladi, rect esa sprayt uchun chegara belgilab 
beradi. Mana shu chegara orqali uni joylashtirish va harakatlantirish mumkin.

Download 27,94 Mb.
1   ...   115   116   117   118   119   120   121   122   ...   153




Download 27,94 Mb.
Pdf ko'rish